我正在尝试将字符串日期转换为Python中的时间戳,如帖子here中所述。当我在帖子中运行代码示例时,遇到错误。例如:
>>> import time
>>> import datetime
>>> s = "01/12/2011"
>>> time.mktime(datetime.datetime.strptime(s, "%d/%m/%Y").timetuple())
Traceback (most recent call last):
File "<pyshell#31>", line 1, in <module>
time.mktime(datetime.datetime.strptime(s, "%d/%m/%Y").timetuple())
File "C:\Python34\lib\_strptime.py", line 15, in <module>
import calendar
File "C:\Python34\calendar.py", line 9, in <module>
calendar = wckCalendar.Calendar(root, command=echo)
NameError: name 'wckCalendar' is not defined
>>>
在运行时看起来代码隐式尝试import calendar
并在进程中抛出错误。当我直接导入日历时,我得到同样的错误:
>>> import calendar
Traceback (most recent call last):
File "<pyshell#36>", line 1, in <module>
import calendar
File "C:\Python34\calendar.py", line 9, in <module>
calendar = wckCalendar.Calendar(root, command=echo)
NameError: name 'wckCalendar' is not defined
>>>
我只是希望能够做到以下几点:
>>> import time
>>> import datetime
>>> s = "01/12/2011"
>>> time.mktime(datetime.datetime.strptime(s, "%d/%m/%Y").timetuple())
有什么想法吗?
Windows 7上的Python 3.4.1 32位*
答案 0 :(得分:1)
感谢@ J.F。塞巴斯蒂安。我被name shadowing trap
抓住了。我犯了一个愚蠢的错误,就是命名我的一个模块calendar.py
。删除此文件后,一切运行正常。我希望这篇文章不是浪费,有人可能有一天会发现它有用。