0

私は二次元リストに関連する単語を含むabecedaryを含むリストを作成しました。しかし、リストに含まれる単語を見つけて関連する単語を出力しようとすると、次のようにスローされます。

TypeError: list indices must be integers, not list

これが私のコードです:

import parallel
import time
import string

abc=[['a','EB'], ['b','F8']]

print ("Write something: ")
text = raw_input()
lent=len(text)
print (lent)
p=parallel.Parallel()
text1=list(text)

for x in text1:
print (x)
    i=0
for i in abc:
    if x in abc[0][i]:
           print(abc[0][i])
       p.setData(int('0x'+abc[0][i],16))

 time.sleep(0.5)
4

2 に答える 2

1
>>> abc = [['a','EB'],['b','F8']]
>>> for i in abc:
...    print i
...
['a', 'EB']
['b', 'F8']

したがって、おそらくこれが必要です。

for i in abc:
    if x == i[0]:
           print(i[1])
于 2012-03-20T06:48:52.267 に答える
0

タイプエラーはこちら

 if x in abc[0][i]:

iリストになり、最初のパスiはに['a','EB']なり、2番目のパスiはになります['b','F8']

別のリストで何かにインデックスを付けることは意味がありません。おそらくiインデックスだと思っていたでしょうが、Pythonではforループが代わりに値をループします。

于 2012-03-20T06:47:58.287 に答える