19

dateTimePythonで通常のクラスを使用する既存のコードがたくさんありますが、プログラムをアップグレードするときにQtGui.QdateTimeEdit()クラスを使用していますが、そのクラスはQdateTime通常のオブジェクトと互換性がないように見えるオブジェクトを返しdateTimeます。

それで、QdateTime通常のPythonに変換するための正しい方法はありdateTimeますか?それ以外の場合は、それをその部分に分割し、dateTimeそこから通常のオブジェクトを再作成しますか?Python3.2でPyQt4を使用しています。ありがとう。

4

3 に答える 3

23

QDateTimetoPyDateTime通常datetimeのオブジェクトを返すメソッドがあります。

In : from PyQt4 import QtCore

In : QtCore.PYQT_VERSION_STR
Out: '4.8.6'

In : QtCore.QT_VERSION_STR
Out: '4.7.4'

In : now = QtCore.QDateTime.currentDateTime()

In : now
Out: PyQt4.QtCore.QDateTime(2011, 12, 11, 20, 12, 47, 55)

In : now.toPyDateTime()
Out: datetime.datetime(2011, 12, 11, 20, 12, 47, 55000)
于 2011-12-12T01:17:49.917 に答える
18

PyQt- .toPyDateTime()QtCore.QDateTimeオブジェクトで使用

>>> from PyQt4.QtCore import QDateTime
>>> qdate = QDateTime(2012, 12, 20, 11, 59, 59)
>>> qdate
PyQt4.QtCore.QDateTime(2012, 12, 20, 11, 59, 59)
>>> date = qdate.toPyDateTime()
>>> date
datetime.datetime(2012, 12, 20, 11, 59, 59)

PySide- .toPython()QtCore.QDateTimeオブジェクトで使用

>>> from PySide.QtCore import QDateTime
>>> qdate = QDateTime(2012, 12, 20, 11, 59, 59)
>>> qdate
PySide.QtCore.QDateTime(2012, 12, 20, 11, 59, 59, 0, 0)
>>> date = qdate.toPython()
>>> date
datetime.datetime(2012, 12, 20, 11, 59, 59)
于 2011-12-12T01:27:15.847 に答える
2
print(self.dte1.date().getDate())
print(self.dte1.date().toString("yyyy-MM-dd"))

toString()Python文字列のメソッドのみが必要です

于 2017-09-15T09:08:27.947 に答える