web-dev-qa-db-ja.com

Python文字列インデックスの配列

Pythonで配列のインデックスとして文字列を使用することは可能ですか?

例えば:

myArray = []
myArray["john"] = "johns value"
myArray["jeff"] = "jeffs value"
print myArray["john"]
59
Petey B

欲しいものは 連想配列 と呼ばれます。 pythonこれらは 辞書 と呼ばれます。

辞書は、他の言語では「連想記憶」または「連想配列」として見られることがあります。一連の数字でインデックス付けされるシーケンスとは異なり、辞書はキーでインデックス付けされます。キーは不変のタイプでもかまいません;文字列と数字は常にキーにすることができます。

myDict = {}
myDict["john"] = "johns value"
myDict["jeff"] = "jeffs value"

上記の辞書を作成する別の方法:

myDict = {"john": "johns value", "jeff": "jeffs value"}

値へのアクセス:

print myDict["jeff"] # => "jeffs value"

キーの取得(Python v2):

print myDict.keys() # => ["john", "jeff"]

python辞書内部について学習したい場合は、次の25分間のビデオプレゼンテーションをお勧めします。 https://www.youtube.com/watch?v=C4Kc8xzcA68 。「マイティ辞書」と呼ばれます。

131
miku

さらに良いことに、 OrderedDict を試してください(リストのようなものが欲しいと仮定します)。リスト要素に順序があるようにキーにも順序があるため、通常の辞書よりもリストに近い。通常の辞書では、キーの順序は任意です。

これはPython 3および2.7で利用可能です。以前のバージョンのPythonで使用したい場合は、インストール可能なモジュールを見つけることができます。

4
gaefan