これはあなたがどのような大会を提案するのかということはほんのわずかな質問です。最近、私は人々の多くの例を見てきましたdict(key1=val1, key2=val2)
私はより熟語{"key1": val1, "key2": val2}
だと思うものの代わりに。私はその理由がキーのために""
を使用することを避けることだと思うが、私は確信していない。おそらくdict()
-syntaxは他の言語に近いでしょうか?確か文字列キーで辞書を構築するときに、Pythonでdictや{}を書くべきでしょうか?
答えて
私はここに流れに逆らって行くつもりです:それはあなたに合っている場合dict()
メソッドを使用します
が、概説制限を保ちます他の答えに留意してください。いくつかの利点は、この方法にあります。
- それは
{
と}
が入力しにくいですキーボードレイアウトのキーと値のペア - あたり以下の3文字だ
- いくつかの状況ですっきり見えます(AltGr- 7とAltGr-0はここに入力すると速くなります)
ここには正解がないのは明らかですが、私はあなたのことが一番好きです。私は、SOが、評判が最も高いユーザーからのコメントを自動的に投票する不運な傾向があると思います。 – Gurgeh
、{}を使用し、以下のコード単純&タイプを保つには、私の目標
さて、ここでは両方を持つことはできません。 2つ以上のキーの場合、 'dict()'メソッドは、PEP8の推奨に従うならば、2つの引用符と1つのスペース文字をキーと値のペアより少なくすることを意味します。 –
{"key1": val1, "key2": val2}
、より慣用的である常に。私はほとんどキーワード引数を持つdict
に遭遇することはほとんどなく、私は確かにそれを書こうと誘惑されたことはありません。キーワード引数はPythonの識別子でなければならないので、それは、また、より一般的です:
>>> {"foo bar": 1}
{'foo bar': 1}
>>> dict(foo bar=1)
------------------------------------------------------------
File "<ipython console>", line 1
dict(foo bar=1)
^
SyntaxError: invalid syntax
>>> dict("foo bar"=1)
------------------------------------------------------------
File "<ipython console>", line 1
SyntaxError: keyword can't be an expression (<ipython console>, line 1)
Pythonが他の言語で句読点を使用する単語を使用する場合があります。ラインノイズが少なくなります。 'dict()'を使うと読みやすくなります(キーが有効なPython識別子でない場合は使用できません;その場合は何を使うべきか疑問はありません)。 – jfs
中括弧{}には多少の曖昧さがあります。考えてみましょう:
>>> x = {'one','two','three'}
>>> type(x)
<type 'set'>
>>> x = {}
>>> type(x)
<type 'dict'>
set()
またはdict()
を使用してとの曖昧性がないのに対し。
良い点ですが、これは他の点があると考えると非常にマイナーです。 – jamylak
- 1. 辞書の辞書をPythonで構築する
- 2. 辞書や文字列をXMLに書き込む
- 3. Pythonで文字列を置き換えるときに辞書を渡すことはできますか?
- 4. htmlページにPHPコードを書くべきでしょうか?
- 5. Pythonで文字列を辞書に変換しますか?
- 6. 文字列を辞書に置き換えることはできますか?
- 7. 辞書をキーで文字列カウンタにする
- 8. 辞書をPythonで書く
- 9. vba excel関数を書くことができませんパラメータが文字列か辞書であるか
- 10. Pythonで辞書を動的に構築する方法
- 11. 効率的にPython辞書をC++で構築する方法
- 12. Pythonは:辞書内のキーは、私は辞書をしたと仮定すると、文字列
- 13. Python:この辞書をソート(dictのdict)
- 14. 文字列をPythonリストと辞書に変換しますか?
- 15. 辞書のキーと値から文字列を作成する
- 16. 文字列の文字を辞書のpythonと比較する
- 17. Python 3 - Excelセルに辞書のキーと値を書き込む
- 18. Pythonで辞書を文字列に変換する
- 19. Pythonはマルチプロセッシングで辞書を構築しています
- 20. Python辞書、同じ文字列がキーに入ります
- 21. python 2.7辞書からの値でraw_input文字列を置き換えます。
- 22. Python辞書の構築について
- 23. C#:式や関数を辞書のキーとして使用できますか?
- 24. forループを使って文字列長の辞書を構築するには?
- 25. クリアリストや辞書Angularjsにおけるキーで、値の構造
- 26. 文字列を辞書の値で置き換えるにはどうすればよいですか? Pythonの
- 27. Pythonで辞書/キーを変更する
- 28. オブジェクトと文字列の辞書をファイルに書き出します。
- 29. Intellisenseを活用するコードを書くべきでしょうか?
- 30. 辞書順の文字列を並べ替えるpython
これは明らかに1つ以上の方法があります。 – wim
'{}'バージョンの明白な利点は、後で文字列以外のキーを使用する場合、行全体。 – James
安全な側にいるためには、常に「ベルトとブレース」のような2つの方法を組み合わせることができます: '' kwargs = {"key1": "val1"、 "key2": "val2"}; d = dict(** kwargs) ''。 – Blair