私はPythonが初めてで、このステートメントに出くわしました
data = dict( (k, v) for k, v in data.items() if v != 'null')
彼らがここで口述を構築するために何をしているのか、私は本当に知りません。少し説明していただけますか?dict() で for ループを使用する理由と、if が後に来るのはなぜですか? 私はpython docsでこのようなものを見ませんでした。
みんなありがとう
私はPythonが初めてで、このステートメントに出くわしました
data = dict( (k, v) for k, v in data.items() if v != 'null')
彼らがここで口述を構築するために何をしているのか、私は本当に知りません。少し説明していただけますか?dict() で for ループを使用する理由と、if が後に来るのはなぜですか? 私はpython docsでこのようなものを見ませんでした。
みんなありがとう
への引数は、から引き出されdict()
たキーと値のペア (つまり ) で構成されるタプルを生成するジェネレータ式です。組み込み関数は、そのようなタプルのリストまたはシーケンスから辞書オブジェクトを自動的に構築できます。例:(k, v)
data.items()
dict()
>>> kvs = [('a', 1), ('b', 2)]
>>> dict(kvs)
{'a': 1, 'b': 2}
修飾子はif v != 'null'
、値 (つまり、タプルの 2 番目の項目) が等しい要素を無視/スキップするようにジェネレーターに指示します'null'
(より正確には、値が と等しくないペアのみを生成します'null'
)。
ジェネレータ式のより詳細な説明については、PEP 289を参照してください。