【发布时间】:2019-04-23 15:53:33
【问题描述】:
我正在从 AWS 中的 IAM 中提取证书信息并尝试格式化到期日期。但是,当尝试分割日期时,我收到错误 TypeError: 'datetime.datetime' object has no attribute 'getitem'
我确信可能有一个明显的解决方法,但我运气不佳。
conn = boto3.client('iam')
iamcerts = conn.list_server_certificates()
response = iamcerts['ServerCertificateMetadataList']
for i in response:
year = int(i['Expiration'][0:4])
month = int(i['Expiration'][5:7])
day = int(i['Expiration'][8:10])
exp = date(year, month, day)
daysleft = exp - today
文件“test2.py”,第 39 行,在 年份 = int(i['Expiration'][0:4]) TypeError: 'datetime.datetime' 对象没有属性 'getitem'
我想要做的是切掉年、月和日,并将它们分配给相应的变量,以便找出证书到期前还剩多少时间。
【问题讨论】:
-
您正在尝试将日期时间对象视为字符串进行切片。您可以将其转换为字符串并以这种方式访问它,也可以使用您尝试提取的属性的访问方法,
.year,.day,.month -
i['Expiration']是错误消息所说的,datetime.datetime的实例,不是str。请咨询the documentation,了解如何从对象中提取所需数据。
标签: python datetime amazon-iam