0
我有一個「asin.txt」文件:的Python 2:IndexError:列表索引超出範圍
in,Huawei1,DE
out,Huawei2,UK
out,Huawei3,none
in,Huawei4,FR
in,Huawei5,none
in,Huawei6,none
out,Huawei7,IT
我打開這個文件,添加一個OrderedDict
:
from collections import OrderedDict
reader = csv.reader(open('asin.txt','r'),delimiter=',')
reader1 = csv.reader(open('asin.txt','r'),delimiter=',')
d = OrderedDict((row[0], row[1].strip()) for row in reader)
d1 = OrderedDict((row[1], row[2].strip()) for row in reader1)
然後我想創建變量(a,b,c,d),所以如果我們把asin.txt
的第一行代碼寫成如下形式:a = in
; b = Huawei1
; c = Huawei1
; d = DE
。要做到這一點我使用的是「for」循環:
from itertools import izip
for (a, b), (c, d) in izip(d.items(), d1.items()): # here
try:
.......
它之前的工作,但現在,出於某種原因,它打印錯誤:
d = OrderedDict((row[0], row[1].strip()) for row in reader)
IndexError: list index out of range
我該如何解決呢?
看起來像你的文件減免一些行,只擁有0或1場。 – zhangyangyu
您是否檢查過您文件中的每一行都是您所期望的格式?例如,如果編輯文件,空白行很容易在最後蠕動。 –