[英]filling text file with dates
我想给我的文件加上日期,而我却遇到02问题:
from datetime import date, datetime, timedelta
def perdelta(start, end, delta):
curr = start
while curr < end:
yield curr
curr += delta
fo = open("dattes.txt","wb")
for result in perdelta(date(2011, 10, 10), date(2011, 12, 12), timedelta(days=4)):
fo.write(result)
fo.close()
1-我收到此错误:
追溯(最近一次通话):文件“ C:\\ test \\ date.txt”,位于fo.write(result)中的第12行TypeError:必须为字符串或缓冲区,而不是datetime.date
2-i希望输出日期是连续的(在日,月和年之间不带“-”)
一项更改将解决两个问题:
fo.write(result.strftime('%Y%m%d\n'))
使用datetime.date.strftime格式化日期。
如果您不希望201110102011101420111018....
则可能需要在中间201110102011101420111018....
换行符( '\\n'
)。
所以,
...
for result in perdelta(date(2011, 10, 10), date(2011, 12, 12), timedelta(days=4)):
fo.write(result.strftime('%Y%m%d\n'))
....
替代
...
for result in perdelta(date(2011, 10, 10), date(2011, 12, 12), timedelta(days=4)):
fo.write('{0:%Y%m%d}\n', result)
...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.