Я обнаружил проблему.Строки:
@pyqtProperty(DataPoint, notify=forecastChanged)
def current(self):
return DataPoint(self._forecast.currently())
Являются виновником.Изменение на
@pyqtProperty(DataPoint, notify=forecastChanged)
def current(self):
return self._datapoint
Где self._datapoint
, ранее установленный в DataPoint, решает его.
Из этого я заключаю, что управление памятью в Python таково, что временные объекты действительно очень временны, больше похожи на C ++, чем на C #, а временный DataPoint
сразу же исчезает из области видимости и памяти по возвращении current()