我有两个压缩在一起的列表,我可以将列表打印出来查看,但是当我尝试将列表导出到csv文件中时,创建了csv文件,但其为空。不知道为什么像即时消息使用相同的方法来分别保存两个列表,它的工作原理。
import csv
import random
import datetime
import calendar
with open("Duty Name List.csv") as CsvNameList:
NameList = CsvNameList.read().split("\n")
date = datetime.datetime.now()
MaxNumofDays = calendar.monthrange(date.year,date.month)
print (NameList)
print(date.year)
print(date.month)
print(MaxNumofDays[1])
x = MaxNumofDays[1] + 1
daylist = list(range(1,x))
print(daylist)
ShuffledList = random.sample(NameList,len(daylist))
print(ShuffledList)
RemainderList = set(NameList) - set(ShuffledList)
print(RemainderList)
with open("remainder.csv","w") as f:
wr = csv.writer(f,delimiter="\n")
wr.writerow(RemainderList)
AssignedDutyList = zip(daylist,ShuffledList)
print(list(AssignedDutyList))
with open("AssignedDutyList.csv","w") as g:
wr = csv.writer(g)
wr.writerow(list(AssignedDutyList))
没有错误消息产生。
答案 0 :(得分:1)
在Python 3中,此行
drawable.getBitmap()
创建一个名为x <- c(" 2", " 3", " II", " III")
title <- c("a 2", "adbs", "ddig", "difo 3", "fgij III", "sdgoij")
endsWith(title, x)
的{{3}}。
此行
AssignedDutyList = zip(daylist,ShuffledList)
耗尽迭代器。当执行此行
AssignedDutyList
迭代器没有更多输出,因此不会将任何内容写入文件。
解决方案是在必须重用迭代器内容的情况下,将在迭代器上调用print(list(AssignedDutyList))
的结果存储在变量中,而不是迭代器本身中。
wr.writerow(list(AssignedDutyList))
作为奖励,list
这个名称现在是指实际列表,因此对将来的代码阅读者来说比较容易混淆。