我试图转换日期时间,但我无法弄清楚如何让我的字符串成为整数。我之后尝试添加[0](输入[" created_at"]但不是运气
代码:
$
了解数据中的项目:
`$` convertedTweet = {}
for entry in item:
convertedTweet["created_at"] = item["created_at"]
fmt = '%Y-%m-%dT%H:%M:%SZ'
temp = datetime.strptime(entry['created_at'],'%a %b %d %H:%M:%S +0000 %Y').replace(tzinfo=pytz.UTC)
print temp.strftime(fmt)
错误:
temp = datetime.strptime(entry['created_at'],'%a %b %d %H:%M:%S +0000 %Y').replace(tzinfo=pytz.UTC)
TypeError: string indices must be integers
答案 0 :(得分:3)
看起来item
是一本字典(正如您所做的那样 - item["created_at"]
,并且它不会为您带来错误)。
如果是这样,当您循环字典时 -
for entry in item:
entry
表示字典中的键,很可能是字符串。因此,当您尝试执行 - entry['created_at']
时 - 当您尝试对字符串使用字符串索引时,它会出错,这是不可能的。
看起来你根本不需要循环,你可以直接访问 - item["created_at"]
- 来获取日期时间。示例 -
convertedTweet["created_at"] = item["created_at"]
temp = datetime.strptime(item["created_at"],'%a %b %d %H:%M:%S +0000 %Y').replace(tzinfo=pytz.UTC)
print temp.strftime('%Y-%m-%dT%H:%M:%SZ')