57

Pythonを理解し始めたところです。私はこの質問とその回答を読みました:

Pythonで中括弧を使用できないというのは本当ですか?

そして、特に単純なプログラムのようなページ以来、中括弧がどのように機能するかをまだ理解できません。

http://wiki.python.org/moin/SimplePrograms

いたるところに中かっこを使用します。角かっこと通常の曲線括弧は理解できますが、「辞書の定義」が何を意味するのか、またはそれらが何を表すのかわかりません。

4

5 に答える 5

97

「中括弧」は、Pythonで辞書を定義するために使用されます。辞書は、ある値を別の値にマップするデータ構造です。これは、英語の辞書が単語をその定義にマップする方法のようなものです。

Python:

dict = {
    "a" : "Apple",
    "b" : "Banana",
}

これらは、次のように、%を使用する古いCスタイルの代わりに、文字列のフォーマットにも使用されます。

ds = ['a', 'b', 'c', 'd']
x = ['has_{} 1'.format(d) for d in ds]

print x

['has_a 1', 'has_b 1', 'has_c 1', 'has_d 1']

多くの「Cのような」言語であるため、コードブロックを表すために使用されることはありません。

C:

if (condition) {
    // do this
}

更新: Pythonのdictデータ型に加えて、Pythonには(Python 2.7以降)同様に設定されています。これも中括弧を使用し、次のように宣言されています。

my_set = {1, 2, 3, 4}
于 2012-02-08T16:32:46.373 に答える
23

Pythonでは、中括弧を使用して辞書を定義します。

a={'one':1, 'two':2, 'three':3}
a['one']=1
a['three']=3

他の言語では、{}はフロー制御の一部として使用されます。ただし、Pythonは読み取り可能なコードに重点を置いているため、フロー制御としてインデントを使用していました。

for entry in entries:
     code....

中かっこに関しては、Pythonには小さなイースターエッグがあります。これをPythonシェルで実行して、楽しんでください。

from __future__ import braces
于 2012-02-08T17:39:34.597 に答える
9

C中括弧( )などの言語{}では、フロー制御で使用されるプログラムブロックを作成するために使用されます。Pythonでは、中括弧を使用してディクショナリ(キー/値マッピング)と呼ばれるデータ構造を定義し、空白のインデントを使用してプログラムブロックを定義します。

于 2012-02-08T16:33:37.823 に答える
5

Pythonの辞書は、キーと値のペアを格納するデータ構造です。連想配列のように使用できます。辞書を宣言するときは、中括弧が使用されます。

d = {'One': 1, 'Two' : 2, 'Three' : 3 }
print d['Two'] # prints "2"

中括弧は、Pythonの制御レベルを示すために使用されていません。代わりに、Pythonはこの目的のためにインデントを使用します。

Python全般を学ぶには、本当に良いリソースが必要だと思います。https://stackoverflow.com/q/175001/10077を参照してください

于 2012-02-08T16:32:19.003 に答える
0

辞書は、単なる連番ではなく、キー(文字列など)によってアクセスされる配列のようなものです。キーと値のペアが含まれています。電話帳を使用する場合と同じように、キーを使用して値を検索できます:key = name、number=value。

このような辞書を定義するには、中括弧を使用してこの構文を使用します。http ://wiki.python.org/moin/SimpleProgramsも参照してください。

于 2012-02-08T16:33:17.063 に答える