Python 而循环不';循环浏览日期时不要停止
为什么这个while循环从未停止过Python 而循环不';循环浏览日期时不要停止,python,loops,pandas,Python,Loops,Pandas,为什么这个while循环从未停止过 t = pd.to_datetime('2016.03.04') T = pd.to_datetime('2019.09.04') dates = T while dates > t: dates = T- pd.DateOffset(years=1) print(dates) 请帮助问题在于没有对偏移量求和 更改此行: dates = T - pd.DateOffset(years=1) 为此: dates -= pd.Date
t = pd.to_datetime('2016.03.04')
T = pd.to_datetime('2019.09.04')
dates = T
while dates > t:
dates = T- pd.DateOffset(years=1)
print(dates)
请帮助问题在于没有对偏移量求和 更改此行:
dates = T - pd.DateOffset(years=1)
为此:
dates -= pd.DateOffset(years=1)
我想你应该这样做,而不是循环:
dates = pd.date_range('2016.03.04',periods=4,freq=pd.DateOffset(years=1))
print(dates)
输出:
DatetimeIndex(['2016-03-04', '2017-03-04', '2018-03-04', '2019-03-04'], dtype='datetime64[ns]', freq='<DateOffset: kwds={'years': 1}>')
DatetimeIndex(['2016-03-04','2017-03-04','2018-03-04','2019-03-04',dtype='datetime64[ns]',freq='')
因为您的条件始终为真;)将其更改为:dates-=pd.DateOffset(years=1)
作为一条一般性建议,我建议不要在这里创建只在大小写(t
和t
)上不同的变量,因为这将使读者非常困惑(以及可读性计数)。