63

Pythonの中括弧と角括弧の違いは何ですか?

A ={1,2}
B =[1,2]

印刷ABて端末に表示しても、違いはありませんでした。それは本当ですか?

そして時々、いくつかのコードの使用に気づき、{}さまざま[]な変数を初期化しました。

A=[]B={}

そこに違いはありますか?

4

3 に答える 3

13

それらはさまざまなタイプを作成します。

>>> type({})
<type 'dict'>
>>> type([])
<type 'list'>
>>> type({1, 2})
<type 'set'>
>>> type({1: 2})
<type 'dict'>
>>> type([1, 2])
<type 'list'>
于 2014-03-13T21:37:44.153 に答える
0

これら 2 つのブレースは、異なる目的で使用されます。リストにいくつかの要素を含め、それらをインデックス番号 (0 から始まる) で整理するだけの場合は、 を使用して、[]必要に応じて要素を追加します。{}のような値にカスタム ID を指定できるという点で特別ですa = {"John": 14}。これで、年齢のリストを作成して、誰の年齢がどこにあるかを覚えておく代わりに、 でジョンの年齢にアクセスできますa["John"]

[]リストと{}呼ばれ、辞書と呼ばれます (Python では)。辞書は基本的にリストの便利な形式であり、より簡単な方法でデータにアクセスできます。

ただし、辞書には落とし穴があります。多くの場合、辞書に入れるデータは以前と同じ順序のままではありません。したがって、各値を 1 つずつ見ていくと、期待どおりの順序にはなりません。これを回避するための特別な辞書がありますが、この行を追加from collections import OrderedDict{}OrderedDict(). ですが、今のところ気にする必要はないと思います。

于 2015-07-18T18:52:33.120 に答える