相关疑难解决方法(0)

迭代Python中的一系列日期

我有以下代码来执行此操作,但我怎样才能做得更好?现在我认为它比嵌套循环更好,但是当你在列表理解中有一个生成器时,它开始得到Perl-one-liner.

day_count = (end_date - start_date).days + 1
for single_date in [d for d in (start_date + timedelta(n) for n in range(day_count)) if d <= end_date]:
    print strftime("%Y-%m-%d", single_date.timetuple())
Run Code Online (Sandbox Code Playgroud)

笔记

  • 我实际上并没有用它来打印.这只是为了演示目的.
  • start_dateend_date变量是datetime.date因为我不需要时间戳对象.(它们将用于生成报告).

样本输出

对于开始日期2009-05-30和结束日期2009-06-09:

2009-05-30
2009-05-31
2009-06-01
2009-06-02
2009-06-03
2009-06-04
2009-06-05
2009-06-06
2009-06-07
2009-06-08
2009-06-09
Run Code Online (Sandbox Code Playgroud)

python iteration datetime

334
推荐指数
13
解决办法
25万
查看次数

如何使一个python numpy arange of datetime

我有一些输入数据,输入文件中的时间戳是从文件名中指定的日期时间开始的小时数.

这有点无用,所以我需要将它转换为python datetime.datetime对象,然后将它放在一个numpy数组中.我可以写一个for循环,但我想做的事情如下:

numpy.arange(datetime.datetime(2000, 1,1), datetime.datetime(2000, 1,2), datetime.timedelta(hours=1))
Run Code Online (Sandbox Code Playgroud)

这会引发TypeError.

可以这样做吗?我坚持使用python 2.6和numpy 1.6.1.

python datetime numpy timedelta

26
推荐指数
5
解决办法
4万
查看次数

生成python中给定范围内的所有日期

我有两个字符串变量,其中包含yyyy-mm-dd格式的日期,如下所示:

date1 = '2011-05-03'
date2 = '2011-05-10'
Run Code Online (Sandbox Code Playgroud)

我想编写生成date1到date2范围内所有日期的代码.如何在Python中完成?

python datetime

24
推荐指数
5
解决办法
4万
查看次数

为什么要从熊猫中删除日期时间?

我在 Pandas 中处理大量数据分析并每天使用 pandas.datetime。最近我收到警告“FutureWarning:不推荐使用 pandas.datetime 类,并将在未来版本中从 Pandas 中删除。改为从 datetime 模块导入。” 我之前使用过 datetime lib,当 datetime 无法使用时,我想这样做,并且我知道它是一个与“日期”更相关的库,但是有人知道这种转向 datetime 库背后的想法吗?

python datetime pandas

16
推荐指数
1
解决办法
9103
查看次数

将月份对解析为日期时间

假设我有2个字符串'Jan-2010'和'Mar-2010',我想解析它,它返回2个日期时间对象:2010年1月1日和2010年3月31日(即最后一天).

什么是python中最好的策略?我应该只是将字符串拆分为令牌或使用正则表达式然后使用日历函数来说明"Mar-2010"的月份的最后一天(第一天是微不足道的,在这种情况下它总是1,除非我想要这个月的第一个工作日).

有什么建议?提前致谢.

python datetime

4
推荐指数
2
解决办法
2501
查看次数

为两个日期创建一个循环

可能重复:
迭代Python中的一系列日期

我有两个条目:

date1 = 2004.09.25
date2 = 2004.10.08
Run Code Online (Sandbox Code Playgroud)

我想在Python中编写一个脚本来识别日期范围并打印它们.这样的事情:

for i in range(date1:date2):
    print i
Run Code Online (Sandbox Code Playgroud)

我是否需要以特定格式定义日期的日期?预期的输出如下:

2004.09.25
2004.09.26
.
.
.
2004.10.08
Run Code Online (Sandbox Code Playgroud)

python for-loop date python-2.7

4
推荐指数
1
解决办法
2万
查看次数

python - 获取某个时间间隔内的所有日期

给定两个日期,例如:

December 1, 2017
June 1, 2018
Run Code Online (Sandbox Code Playgroud)

我想得到这个结果:

January 1, 2018
February 1, 2018
March 1, 2018
April 1, 2018
May 1, 2018
June 1, 2018
Run Code Online (Sandbox Code Playgroud)

另外,我还想修改间隔。在上述情况下,间隔是每月。我还希望它变成每季度和半年一次。

因此,给定December 1, 2017June 1, 2018,它将生成March 1, 2018半年等等......

我还希望它包含在内,这意味着结束日期也应该包含在内

有没有Python包或者函数可以实现这个功能?

python date

4
推荐指数
1
解决办法
2587
查看次数

如何在Python中将日期范围划分为几个月?

我有以下日期范围:

begin: 2018-02-15
end: 2018-04-23
Run Code Online (Sandbox Code Playgroud)

我要实现以下目标:

["2018-02-15 - 2018-02-28", "2018-03-01 - 2018-03-31", "2018-04-01 - 2018-04-23"]
Run Code Online (Sandbox Code Playgroud)

本质上,我想将给定的日期范围划分为几个月。我想不出一种在Python中完成此操作的方法。

我在这里考虑了解决方案,但是,这会根据指定的时间间隔拆分日期范围。我希望能够动态分割日期范围。

因此,鉴于日期范围为2018年2月15日至2018年4月23日,我希望能够获得该范围内的各个月份,如下所示:

  • 2018年2月15日至2018年2月28日
  • 2018年3月1日至2018年3月31日
  • 2018年4月1日至2018年4月23日

python datetime python-3.x

1
推荐指数
2
解决办法
2357
查看次数