python - 我如何循环数月,一次跳过三个?
问题描述
我有以下数组:
dates
array(['2015-07-01T00:00:00.000000000', '2015-08-01T00:00:00.000000000',
'2015-09-01T00:00:00.000000000', '2015-10-01T00:00:00.000000000',
'2015-11-01T00:00:00.000000000', '2015-12-01T00:00:00.000000000',
'2016-01-01T00:00:00.000000000', '2016-02-01T00:00:00.000000000',
'2016-03-01T00:00:00.000000000', '2016-04-01T00:00:00.000000000',
'2016-05-01T00:00:00.000000000', '2016-06-01T00:00:00.000000000',
'2016-07-01T00:00:00.000000000', '2016-08-01T00:00:00.000000000',
'2016-09-01T00:00:00.000000000', '2016-10-01T00:00:00.000000000',
'2016-11-01T00:00:00.000000000', '2016-12-01T00:00:00.000000000',
'2017-01-01T00:00:00.000000000', '2017-02-01T00:00:00.000000000',
'2017-03-01T00:00:00.000000000', '2017-04-01T00:00:00.000000000',
'2017-05-01T00:00:00.000000000', '2017-06-01T00:00:00.000000000',
'2017-07-01T00:00:00.000000000', '2017-08-01T00:00:00.000000000',
'2017-09-01T00:00:00.000000000', '2017-10-01T00:00:00.000000000',
'2017-11-01T00:00:00.000000000', '2017-12-01T00:00:00.000000000'],
dtype='datetime64[ns]')
我会在第一次迭代时创建一个循环,在第二3 months
次迭代中,dates[0]
依此类推dates[3]
dates[3]
dates[6]
这就是我正在做的
c1 = 0
c2 = 3
for i,j in enumerate(dates[:-3]):
v1 = dates[c1]
v2 = dates[c2]
c1 = c1 + 3
c2 = c2 + 3
有没有更优雅的方法来做到这一点?
解决方案
for date1, date2 in zip(dates[:-3:3], dates[3::3]):
# do stuff
推荐阅读
- sess.run - 带有字符串变量名的 Sess.run
- html - 我应该如何在css中拆分网格?
- mysql - 如何为 MySQL 放置基于条件的查询
- apache-kafka - 我可以配置 Kafka Streams 内部主题 avro 模式主题名称 stategy 吗?
- java - 使用 Criteria api 查找半径内的坐标
- php - codeigniter:一切正常。仅针对一张表,显示错误“表不存在”。它存在于数据库中,也可以在本地主机上正常工作
- tensorflow - 如何识别“.tflite”转换过程的tensoflow模型的输入和输出数组?
- postgresql - 有多少用户在 n 天内有 2 次或更多交易,甚至没有跳过一天
- python - 在 Django REST Framework 中,如何获取上一页隐藏输入发送的“查询参数”?
- asp.net-mvc - 如何检查启用自定义发票编号是否会导致重复的发票编号