3

私は2次元配列を持っています:

[[], ['shotgun', 'weapon'], ['pistol', 'weapon'], ['cheesecake', 'food'], []]

そこから値を呼び出すにはどうすればよいですか? たとえば、私はしたいしprint (name + " " + type)、取得します

散弾銃の武器

そうする方法が見つかりません。どういうわけかprint list[2][1]、エラーさえも何も出力しません。

4

4 に答える 4

6
>>> mylist = [[], ['shotgun', 'weapon'], ['pistol', 'weapon'], ['cheesecake', 'f
ood'], []]
>>> print mylist[2][1]
weapon

いくつかのことを覚えておいてください。

  1. リストに名前を付けないでください、リスト...これはPythonの予約語です
  2. リストはインデックス 0 から始まり ますmylist[0][]
    mylist[1][0]'shotgun'
  3. 辞書などの代替データ構造を検討してください。
于 2012-10-10T19:05:23.987 に答える
3

インデックスを介したアクセスは、次のいずれでも機能しますsequence (String, List, Tuple): -

>>> list1 = [[], ['shotgun', 'weapon'], ['pistol', 'weapon'], ['cheesecake', 'food'], []]
>>> list1[1]
['shotgun', 'weapon']
>>> print list1[1][1]
weapon
>>> print ' '.join(list1[1])
shotgun weapon
>>>  

リストで結合を使用して、リストから文字列を取得できます..

于 2012-10-10T19:03:53.407 に答える
0
In [80]: [[], ['shotgun', 'weapon'], ['pistol', 'weapon'], ['cheesecake', 'food'], []]
Out[80]: [[], ['shotgun', 'weapon'], ['pistol', 'weapon'], ['cheesecake', 'food'], []]

In [81]: a = [[], ['shotgun', 'weapon'], ['pistol', 'weapon'], ['cheesecake', 'food'], []]

In [82]: a[1]
Out[82]: ['shotgun', 'weapon']

In [83]: a[2][1]
Out[83]: 'weapon'

すべてのリスト要素を取得するには、以下のようにforループを使用する必要があります。

In [89]: a
Out[89]: [[], ['shotgun', 'weapon'], ['pistol', 'weapon'], ['cheesecake', 'food'], []]

In [90]: for item in a:
    print " ".join(item)
   ....:     

shotgun weapon
pistol weapon
cheesecake food
于 2012-10-10T19:09:33.967 に答える
0
array = [[], ['shotgun', 'weapon'], ['pistol', 'weapon'], ['cheesecake', 'food'], []]
print " ".join(array[1])

を使用して配列にスライスし[1]、次に使用して配列の内容を結合します' '.join()

于 2012-10-10T19:05:02.093 に答える