PyQt:如何从Python转换为QDate格式

4 投票
1 回答
8361 浏览
提问于 2025-04-18 03:03

QtCore.QDate 接受三个整数作为参数:先是年份,然后是月份,最后是日期。举个例子:

myDateEdit.setMaximumDate(QtCore.QDate(2015, 12, 28)) 

如果想把 QDate 的“风格”转换成 Python,可以使用:

myPythonicDate=myDateEdit.date().toPyDate()
print myPythonicDate
'2014-04-17'

问题是:

# With a variable:

myPythonicDate='2014-04-17'

用什么语法来声明 QDate 对象... 下面的写法是行不通的:

myDateEdit.setDate(QtCore.QDate(myPythonicDate))

1 个回答

8

QDatefromString 方法可以帮你完成日期格式的转换:

myPythonicDate='2014-04-17'
qtDate = QtCore.QDate.fromString(myPythonicDate, 'yyyy-MM-dd')
print qtDate.year(), qtDate.month(), qtDate.day()
2014 4 17

yyyy-MM-dd 是你日期的格式;其中 yyyy 表示四位数的年份,而 MMdd 则表示月份和日期都是两位数。想了解更多字段选项,可以查看 fromString 的相关文档。

撰写回答