【发布时间】:2018-03-09 19:27:06
【问题描述】:
我正在尝试获取带有日期的文本文件并重新格式化它们。例如:'1/31/2017' 变为 '2017-1-31T:00:00:00Z'
代码:
with open("test.rtf") as f:
data = f.readlines()
for line in data:
a,b,c = line.split("/")
if len(a) < 2:
a = "0" + a
if len(b) <2:
b = "0" + b
print(c,"-",a,"-",b,"T:00:00:Z")
但是,它返回一个错误: 回溯(最近一次通话最后): 文件“pubdateformat.py”,第 8 行,在 a,b,c = line.split("/") ValueError: 需要超过 1 个值才能解压
谁能解释一下这是什么意思?
感谢您的帮助!
【问题讨论】:
-
确实
line.split("/")似乎返回了一个只有 2 项的列表。不过,对于它的价值,我建议您查看datetime 库来为您执行此操作,而不是手动转换字符串。特别要注意strftime和strptime。 -
您的
data似乎包含没有"/"的行,因此 split 将只返回该行。
标签: python