-
Python関数datetime.now()とdatetime.today()の違いは何ですか?
関数datetime.now()はキーワード引数としてtzinfoを取りますが、datetime.today()はキーワード引数を取りません。ドキュメントの引用- datetime.now()は、現在のローカルの日付と時刻を返します。オプションの引数tzがNoneまたは指定されていない場合、これはtoday()のようになりますが、可能であれば、time.time()タイムスタンプを通過することで得られるよりも高い精度を提供します(たとえば、これは、 C gettimeofday()関数)。
-
ネストされた関数はPythonでどのように機能しますか?
入れ子関数については、次のコードを参照してください。コードでは、内部関数がローカル変数である囲んでいるスコープから変数にアクセスできることがわかります。 def mulFunc(num1): def mul(num2): return num1 * num2 return mul res = mulFunc(15) // The following prints 300 i.e. 20*15 print(res(20)) 上記は、num1とnum 2の乗算、つまり300を出力します
-
Pythonで正規表現を使用して2つの文字列を比較するにはどうすればよいですか?
次のコードを使用して、指定された文字列を比較できます 例 import re s1 = 'Pink Forest' s2 = 'Pink Forrest' if bool(re.search(s1,s2))==True: print 'Strings match' else: print 'Strings do not match' 出力 これにより、出力が得られます Strings do not match
-
Pythonでリストのリストの長さを取得するにはどうすればよいですか?
ネストされたループを使用して、リストの各サブリスト内の要素の数をカウントできます >>> a=[[1, 2, 3], [4, 5, 6]] >>> c=0 >>> for x in a: for y in x: c=c+1 >>> c 6
-
Pythonでリストを定義するにはどうすればよいですか?
リストはPythonのシーケンスデータ型です。これは、角かっこ([])で囲まれた、必ずしも同じタイプである必要はない要素のコンマ区切りのリストです。リストは順序付けられたコレクションです。 Listオブジェクトの個々の要素には、ゼロベースのインデックスでアクセスできます。 例 list1 = ['physics', 'chemistry', 1997, 2000]; list2 = [1, 2, 3, 4, 5 ]; list3 = ["a", "b", "c", "d"] 出力
-
Pythonでリストの空の例外を処理するための最良の方法は何ですか?
リストは要素の順序付けられたシーケンスです。リスト内の個々の要素は、0から始まり、長さ-1までのインデックスを使用してアクセスされます。インデックスがこの範囲を超えると、IndexError例外が発生します。 次の例では、無限ループを使用して、一度に1つの要素をポップします。最後の要素がポップされた後でもループが実行しようとすると、IndexError例外が発生します。メカニズムを除いて、tryを使用してトラップします。 a=[1,2,3] while True: try: b=a.pop() print (b) &nbs
-
Pythonでリストを反復処理する方法は?
リストオブジェクトを反復処理する方法はいくつかあります。 Pythonのforステートメントには、リストが使い果たされるまでリストをトラバースするバリアントがあります。これは、Javaのforeachステートメントと同等です。その構文は-です for var in list: stmt1 stmt2 例 次のスクリプトは、リスト内のすべてのアイテムを出力します L=[10,20,30,40,50] for var in L: print (L.index(var),var) 出力 生成される出力は-です。 0 10 1 20 2 30 3 40 4
-
Pythonでタプルを反復処理する方法は?
タプルオブジェクトを反復処理する方法はいくつかあります。 Pythonのforステートメントには、タプルが使い果たされるまでタプルをトラバースするバリアントがあります。これは、Javaのforeachステートメントと同等です。その構文は-です for var in tuple: stmt1 stmt2 例 次のスクリプトは、リスト内のすべてのアイテムを出力します T = (10,20,30,40,50) for var in T: print (T.index(var),var) 出力 生成される出力は-です。 0 10 1 20 2 30 3 40 4 50 別のアプローチは、タプルの
-
タプルのPythonリストを反復処理するにはどうすればよいですか?
最も簡単な方法は、ネストされた2つのforループを使用することです。外側のループは各タプルをフェッチし、内側のループはタプルから各アイテムをトラバースします。内部print()関数end =’‘は、タプル内のすべてのアイテムを1行で印刷します。別のprint()は、各タプルの後に改行を導入します。 例 L=[(1,2,3), (4,5,6), (7,8,9,10)] for x in L: for y in x: print(y, end=' ') print() 出力 1 2 3 4 5 6 7 8 9 10
-
Pythonで1行に複数のステートメントを提供するにはどうすればよいですか?
統一インデントのブロック内の複数のステートメントが複合ステートメントを形成します。通常、各ステートメントはエディターの個別の物理行に書き込まれます。ただし、ブロック内のステートメントは、セミコロンで区切られている場合は1行で記述できます。以下は、別々の行に書かれた3つのステートメントのコードです a=10 b=20 c=a*b print (c) これらのステートメントは、セミコロンを間に置くことで1行で非常にうまく記述できます。 a=10; b=20; c=1*b; print (c) インデントが増加した新しいブロックは、通常、if、else、while、for、tryステートメントの場
-
Pythonで整数の文字列を複素数に解凍するにはどうすればよいですか?
文字列には、カンマで区切られた2つの整数が含まれています。最初に、数字を持つ2つの文字列のリストに分割されます。 >>> s="1,2".split(",") >>> s ['1', '2'] 次に、2つの項目が整数に変換され、complex()関数の引数として使用されます >>> complex(int(s[0]), int(s[1])) (1+2j) これにより、複素数の整数の文字列が解凍されます
-
Pythonで変数への参照を割り当てることはできますか?
Pythonの変数の概念はC/C++とは異なります。 C / C ++では、変数はメモリ内の名前付きの場所です。ある値が別の値に割り当てられている場合でも、別の場所にコピーが作成されます。 int x=5; int y=x; たとえば、C ++では、&演算子は宣言された変数のアドレスを返します。 cout<x<<&x<<y<<&y; これにより、xとyの両方に同じ値が含まれていても、異なるアドレスが出力されます。アドレスを参照変数に格納することで、エイリアスを作成できます int x=5; int &y=x; y=10; c
-
Pythonを使用してテキストファイル内を検索して置換するにはどうすればよいですか?
次のコードは、指定されたテキストファイルの置換を行います。 置換後、テキストは新しいテキストファイルbar.txtに書き込まれます 例 f1 = open('foo.txt', 'r') f2 = open('bar.txt', 'w') for line in f1: print line f2.write(line.replace('Poetry', 'Prose')) f2 = open('bar.txt', '
-
PythonでUnicode(UTF-8)ファイルを読み書きする方法は?
ioモジュールが推奨され、Python 3のオープン構文と互換性があります。次のコードは、Pythonでunicode(UTF-8)ファイルの読み取りと書き込みに使用されます 例 import io with io.open(filename,'r',encoding='utf8') as f: text = f.read() # process Unicode text with io.open(filename,'w',encoding='utf8') as f: f.w
-
Pythonで正規表現を使用してURLをどのように検証しますか?
ほとんどすべてが有効なURLであるため、validateメソッドはありません。それを分割するための句読点の規則がいくつかあります。句読点がなくても、有効なURLがあります。 状況に応じて、次の方法を使用します。 データを信頼し、プロトコルがHTTPであるかどうかを確認したいだけの場合は、urlparseが最適です。 URLを実際に真のURLにしたい場合は、面倒でマニアックな正規表現を使用してください 実際のWebアドレスであることを確認したい場合は、次のコードを使用してください 例 import urllib try: urllib.urlop
-
Pythonで正規表現を使用してメールIDを検証するにはどうすればよいですか?
次のコードは、Pythonで正規表現を使用して特定のメールIDを検証します 例 import re s = '[email protected]' match = re.search(r'\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}\b', s, re.I) print match.group() 出力 これにより、出力が得られます [email protected]
-
どこでも複数の単語に一致するPython正規表現を書く方法は?
Python正規表現を使用した次のコードは、指定された文字列内の指定された複数の単語と一致します 例 import re s = "These are roses and lilies and orchids, but not marigolds or .." r = re.compile(r'\broses\b | \bmarigolds\b | \borchids\b', flags=re.I | re.X) print r.findall(s) 出力 これにより出力が得られます ['roses', 'orchids',
-
Pythonの文字列からサブ文字列を取得するにはどうすればよいですか?
Pythonでは、文字列データ型は文字の順序付けられたシーケンスです。すべてのシーケンスデータ型はスライスをサポートしています。スライス演算子「:」を使用すると、メイン文字列からサブ文字列を取得できます。 例 >>> string="Hello How are you?" >>> string[6:9] 'How' スライス演算子-には2つのオペランドが必要です。最初のオペランドは、目的の部分文字列の最初の文字のインデックスです。結果のサブストリングには、第2オペランドまでのインデックスにメインストリングの文字が含まれま
-
Pythonで文字列の最後の4文字を取得するにはどうすればよいですか?
Pythonのスライス演算子は2つのオペランドを取ります。最初のオペランドはスライスの始まりです。インデックスはデフォルトで左から数えられます。負のオペランドは、最後からカウントを開始します。 2番目のオペランドは、スライスの最後の文字のインデックスです。省略した場合、スライスは最後まで進みます。 最後の4文字が必要です。したがって、位置の開始を終了から-4でカウントし、2番目のオペランドを省略すると、終了になります。 >>> string = "Thanks. I am fine" >>> string[-4:] 'fine
-
Pythonで辞書の値で辞書のリストを並べ替えるにはどうすればよいですか?
Pythonには、反復可能オブジェクトの要素を特定の順序で並べ替える組み込み関数sorted()があります。 sorted(iterable[, key][, reverse] 2番目のパラメーターは、戻り値がソートのキーとして使用される関数です。 3番目のパラメータはデフォルトでfalseです。trueの場合、ソートされたリストは降順で表示されます。 辞書キーの値をソートされた関数のキーとして定義するラムダ関数を使用します。次の例では、キーに関連付けられた値の昇順に従って辞書のリストを並べ替えます。 >>> dictlist=[{'name':'