我正在尝试将日期写入.txt文件。以下是我为此做的代码,但它总是给我一个错误。
import datetime
mylist = []
today = datetime.date.today()
mylist.append(today)
print mylist[0]
file = open('Date.txt', 'a')
file.write(mylist)
file.close()
此代码给出了以下错误:
回溯(最近一次调用最后一次):文件“/ Volumes / CHROME USB / STORAGE / Date.py“,第9行,in file.write(mylist)TypeError:参数1必须是字符串或只读字符缓冲区,而不是列表
有人请给我一个工作代码示例吗?
答案 0 :(得分:1)
File#write
需要一个字符串,而不是列表。试试file.write(repr(mylist))
。
答案 1 :(得分:1)
您只能编写字符串,它在错误中说明。 所以你可以这样做把liste(用字符串转换)写入txt文件:
file.write(str(mylist))
简单示例
>>> a= [1,2,3]
>>> b = str(a)
>>> b
'[1, 2, 3]'
>>> f = open("data","w")
>>> f.write(b)
>>> f.close()
>>>
$ cat data
[1, 2, 3]
答案 2 :(得分:1)
如果要编写列表的内容,请执行以下操作:
for entry in mylist:
file.write(str(entry))
或
map(lambda x: file.write(str(x)), mylist)