![](/img/trans.png)
[英]Python: Maintaining original order when zipping two lists into a dictionary
[英]Python: Zipping multiple lists into a dictionary
好的,所以我從要創建詞典的csv文件中提取了6個列表,其中一個列表是鍵值,其他5個都包含附加到該鍵的值。 如果它們的鍵與第7個列表(c6)中的值匹配,我將刪除某些行。 感謝您的幫助,請立即寫信,讓我從csv的正確列中填充列表。 我也有很多讀者,因為它們只能循環瀏覽一次。
with open (r'filea', 'r', newline='') as f:
tread=csv.reader(f, delimiter=',')
aread=csv.reader(f, delimiter=',')
bread=csv.reader(f, delimiter=',')
cread=csv.reader(f, delimiter=',')
dread=csv.reader(f, delimiter=',')
eread=csv.reader(f, delimiter=',')
tlist= []
alist= []
blist= []
clist= []
dlist= []
elist= []
for row in tread:
tlist.append(row[0])
for row in aread:
alist.append(row[1])
print (alist)
for row in bread:
blist.append(row[2])
print (blist)
for row in cread:
clist.append(row[3])
for row in dread:
dlist.append(row[4])
for row in eread:
elist.append(row[5])
fulldict = dict(zip(tlist, [alist, blist, clist, dlist, elist]))
print (fulldict)
for key in c6:
if key in fulldict:
del fulldict[key]
if key not in fulldict:
pass
with open (r'fileb', 'w', newline='') as g:
wrt=csv.writer(g)
for row in fulldict.items():
wrt.writerow(row)
with open (r'filea', 'r', newline='') as f:
data = {}
exclude = set()
for row in csv.reader(f, delimiter=','):
data[row[0]] = row[1:6]
exclude.add(row[6])
for key in exclude:
if key in data:
del data[key]
with open (r'fileb', 'w', newline='') as g:
wrt=csv.writer(g)
# do the writing
我結束do the writing
因為我不知道你想寫什么。 您的編寫代碼是錯誤的,因為dict的items()
是(key, value)
元組的列表。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.