创建函数:

def date_range(start_date,end_date):for n in range(int((end_date-start_date).days)):yield start_date+datetime.timedelta(n)

调用:

for i in date_range(start_date,end_date):

实例:写一个程序,用户输入起始日期, 该程序可以计算后续的 120天中, 哪些是周 1, 周3, 周5, 周日。 并且把这些天打印出来。

import datetime

def date_range(start_date,end_date):for n in range(int((end_date-start_date).days)):yield start_date+datetime.timedelta(n)

dict1={'monday':[],'wednesday':[],'friday':[],'sunday':[]}

newday=input('输入时间,年月日按‘-’分割:')

newday=datetime.datetime.strptime(newday,'%Y-%m-%d')

addday=datetime.timedelta(days=120)

n_day=newday+adddayfor i indate_range(newday,n_day):if i.weekday()==0:

dict1['monday'].append(datetime.datetime.strftime(i,'%Y%m%d'))if i.weekday()==2:

dict1['wednesday'].append(datetime.datetime.strftime(i,'%Y%m%d'))if i.weekday()==4:

dict1['friday'].append(datetime.datetime.strftime(i,'%Y%m%d'))if i.weekday() == 6:

dict1['sunday'].append(datetime.datetime.strftime(i,'%Y%m%d'))

print(dict1)

strptime():由字符串格式转化为日期格式的函数为: datetime.datetime.strptime()。我们输入的日期和时间是字符串,要处理日期和时间,首先必须把str转换为datetime。转换方法是通过datetime.strptime()实现,需要一个日期和时间的格式化字符串:

>>>day = datetime.strptime(‘2019-5-1 5:54:45’, ‘%Y-%m-%d %H:%M:%S’)

>>>day

>>>datetime.datetime(2019, 5, 1, 5, 54, 45)

>>> print(day)

2019-05-01 05:54:45

>>> type(day)

strftime():由日期格式转化为字符串格式的函数为: datetime.datetime.strftime()。后台提取到datetime对象后,要把它格式化为字符串显示给用户,就需要转换为str,转换方法是通过strftime()实现的,同样需要一个日期和时间的格式化字符串:

>>> s=datetime.strftime(datetime.now(), “%Y-%m-%d %H:%M”)

>>> s

‘2019-05-15 15:26’

>>> type(s)

>>> print(s)

2019-05-15 15:26

datetime加减:对日期和时间进行加减实际上就是把datetime往后或往前计算,得到新的datetime。加减可以直接用+和-运算符,不过需要导入timedelta这个类, 如以下例子:

>>> from datetime import datetime, timedelta

>>> now = datetime.now()

>>> now

datetime.datetime(2019, 5, 15, 15, 29, 17, 470262)

>>> now + timedelta(hours=8)

datetime.datetime(2019, 5, 15, 23, 29, 17, 470262)

>>> now - timedelta(days=2)

datetime.datetime(2019, 5, 13, 15, 29, 17, 470262)

>>> now + timedelta(days=2, hours=12)

datetime.datetime(2019, 5, 18, 3, 29, 17, 470262)

>>> now - timedelta(days=2.5)

datetime.datetime(2019, 5, 13, 3, 29, 17, 470262)

python时间段_python--时间段遍历相关推荐

  1. python 实现指定时间段录制视频

    python 实现指定时间段录制视频 一.pyaudio: 二.cv2: 指定时间录制: 一.pyaudio: windows下使用 python -m pip install pyaudio 安装 ...

  2. python中的df是什么意思_python df遍历的N种方式

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. for-in 迭代循环首先介绍Python中最常用的for-in循环遍历的方式.for-in循环结 ...

  3. c语言实现爬虫功能,用C/C 扩展Python语言_python 调用c语言 python实现简单爬虫功能_python实现简单爬虫...

    用C/C 扩展Python语言 Python是一门功能强大的脚本语言,它的强大不仅表现在功能上,还表现在其扩展性上.她提供大量的API以方便程序员利用C/C++对Python进行扩展.因为执行速度慢几 ...

  4. python画代码-Python教程_Python画Mandelbrot集 代码

    Python教程_Python画Mandelbrot集 代码 作者:Comet 来源: 课课家 www.kokojia.com点击数:278发布时间:2015-06-19 11:17:19 曼德勃罗集 ...

  5. Python中的迭代遍历 for in

    遍历就是从头到尾依次从列表中获取数据,在循环体内部针对每一个元素,执行相同的操作. 在Python中为了提高列表的遍历效率,专门提供的迭代(iteration)遍历. 使用for...in就能够在 P ...

  6. 程序语言python循环_Python 循环语句

    本章节学习Python的循环语句,程序在一般情况下是按顺序执行的. 编程语言提供了各种控制结构,允许更复杂的执行路径. 循环语句允许我们执行一个语句或语句组多次,下面是在大多数编程语言中的循环语句的一 ...

  7. Python中的数据遍历操作

    1 前言 今天在学习FaceBoxes~ 看到一个语句不是很懂, 就是这里面的zip操作,感觉Python中的数据遍历的语句还是挺多样的,于是想着用笔记记录一下~ 2 Python中的数据遍历操作 2 ...

  8. 介绍python中几种遍历列表的for循环方法

    我们在使用列表的过程中,经常需要遍历列表的所有元素,对每个元素执行相同的操作.今天就给大家介绍python中几种遍历列表的for循环方法. 首先我们先构造一个numbers列表,如下: numbers ...

  9. python多叉树遍历_基于Python的多叉树遍历算法

    [ 综直厘翹 S 赛理 ) 信息记录材料 2019 年 5 月第 20 卷第 5 期 基于 Python 的多叉树遍历算法 钱雨波 , 王金祥 ( 指导老师 ) ( 延边大学 吉林 延边 1 3300 ...

  10. python遍历循环怎么理解_聊聊python中的循环遍历

    python之循环遍历 关于循环遍历大家都知道,不外乎for和while,今天我在这写点不一样的循环和遍历.在实践中有时会遇到删除列表中的元素,那么循环遍历列表删除指定元素该怎么做呢? 还是直接上代码 ...

最新文章

  1. zabbix-agent 启动不起来
  2. WSUS3.0 详细部署之一
  3. PackStack安装OpenStack Pike
  4. github开源大项目_GitHub刚刚发布了一份大规模的开源指南
  5. java ee最新_从此再无 JavaEE,现在叫 JakartaEE
  6. 【Java】使用前准备工作配置环境变量
  7. Heron 数据模型,API和组件介绍
  8. windows下mysql5.6安装
  9. C++(多态实现原理)函数重写,重载,重定义
  10. 两个网口芯片接一个变压器_电路中网络变压器件选型和PCB
  11. FPGA学习笔记_图像处理3_FPGA实现中值滤波算法
  12. 关于蓝天准系统换京东方屏后不显bios的解决方案
  13. 思科服务器dns配置文件,cisco设置dns方法
  14. oracle报1653解决办法,oracle 建立查询账号ORA 1653和ORA 01502错误处理方法
  15. asp 加密 解密 类
  16. Android源码开发之蓝牙通知振动
  17. USB Type-C和USB PD
  18. python中shelf对象_11.4. shelve — Python 对象持久化 — Python 2.7.18 文档
  19. Scratch如何学习?少儿编程网站如何入手?
  20. python基础(四):元组(Tuple)、字典、字符串、序列

热门文章

  1. 什么是数据库的三大范式?
  2. 允许其他网络用户通过此计算机的internet连接来连_「Azure云」什么是Azure虚拟网络?...
  3. Google七项不得不知的搜索技巧
  4. 我才是嗨到最晚的男人
  5. Tomcat配置阿里云免费的SLL证书
  6. 2021-03-06JAVA大数据Week1
  7. 合格PHP工程师的知识结构
  8. 【Computer Organization笔记16】大实验任务详细说明:支持指令流水的计算机系统设计与实现
  9. 怎么实现FineReader选项卡中的保存模式的修改
  10. shell mysql 取值_shell 脚本中获取mysql多个字段的值