Vip*_*ash 1 python datetime dictionary python-3.x keyerror
所以我刚开始学习Python并尝试制作一个程序来告诉你某一天的具体日期。我发现datetime并尝试使用它,但问题是即使密钥存在,我也会收到密钥错误。
这是我的代码:
import datetime
def day_finder(dd,mm,yy):
tags = { '1' : 'Monday' ,'2' : 'Tuesday' ,'3' : 'Wednesday' ,'4' : 'Thursday' ,'5' : 'Friday' ,'6' : 'Saturday' ,'7' : 'Sunday' }
return tags[int(datetime.datetime(yy,mm,dd).isoweekday())]
d = int(input("Enter a date"))
m = int(input("Enter a month"))
y = int(input("Enter a year"))
print (day_finder(d,m,y))
Run Code Online (Sandbox Code Playgroud)
您正在搜索int工作日数字,但您应该检查字符串,因为字典中的键是str类型。例如:
>>> tags = { '1' : 'Monday' ,'2' : 'Tuesday' ,'3' : 'Wednesday' ,'4' : 'Thursday' ,'5' : 'Friday' ,'6' : 'Saturday' ,'7' : 'Sunday' }
>>> import datetime
>>> tags[str(datetime.datetime(1990,03,28).isoweekday())]
'Wednesday'
Run Code Online (Sandbox Code Playgroud)
但是,您不需要dict对象来根据关键日期编号获取工作日名称。.strftime('%A')您可以通过在对象上使用以下方式获得所需的结果datetime:
>>> datetime.datetime(1990,03,28).strftime("%A")
'Wednesday'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4661 次 |
| 最近记录: |