例如我有这个简单的类:
from PyQt4 import QtGui, QtCore
import sys
from datetime import datetime
print datetime.strptime('Wed, 06-Feb-2014 12:05:12', '%a, %d-%b-%Y %H:%M:%S')
class Application(QtGui.QWidget):
def __init__(self):
super(Application, self).__init__()
print datetime.strptime('Wed, 06-Feb-2014 12:05:12', '%a, %d-%b-%Y %H:%M:%S')
def main():
app = QtGui.QApplication(sys.argv)
ex = Application()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
当我运行它时,我得到以下输出:
2014-02-06 12:05:12
Traceback (most recent call last):
File "vkPlayListSync.py", line 23, in <module>
main()
File "vkPlayListSync.py", line 18, in main
ex = Application()
File "vkPlayListSync.py", line 12, in __init__
print datetime.strptime('Wed, 06-Feb-2014 12:05:12', '%a, %d-%b-%Y %H:%M:%S')
File "/usr/lib/python2.7/_strptime.py", line 325, in _strptime
(data_string, format))
ValueError: time data 'Wed, 06-Feb-2014 12:05:12' does not match format '%a, %d-%b-%Y %H:%M:%S'
所以第一行是 strptime,但是第二次调用类 __init()__ 方法会抛出错误。我没有足够的 Python 和 PyQt 经验,所以无法理解如何解决这个问题。我还没有在 stackoverflow 或谷歌中找到答案。
请您参考如下方法:
QApplication 启动正在更改您的语言环境,这样 'Wed, 06-Feb-2014 12:05:12' 不再是有效日期(即工作日和月份名称是另一种语言)。尝试使用 LC_ALL="C" 运行您的应用程序。
