记录下日期时间的转换和生成:
1.这个是使用datetime 函数生成往后几天的时间,比如当前日期是2019-07-01 那么控制days=1然后再和当前的时间相加,就能得到明天的日期
def time_formate(t):
"""
日期格式化,使用datetime.timedelta(days=1) 来返回几天后的日期
:param t: 传入日期
:return: 返回时间+1的日期
"""
d = datetime.datetime.strptime(t, '%Y-%m-%d')
d1 = datetime.timedelta(days=1)
day = d + d1
return day
2.这个是计算时间差的,传入两个时间t1,t2,先根据长度判断要不要进行截取(因为我的数据是从excel来的,excel读取出来的格式是'2019-07-01),最后返回整数时间,单位H
def time_Comparison(t1,t2):
"""
计算时间差
:param t1:
:param t2:
:return:
"""
diff_time = 0
print(t1, t2)
if len(str(t1)) == 19 and len(str(t2)) == 19 or len(str(t1)) == 18:
d1 = time.mktime(time.strptime(t1, '%Y-%m-%d %H:%M:%S'))
d2 = time.mktime(time.strptime(t2, '%Y-%m-%d %H:%M:%S'))
d = datetime.timedelta(seconds=d2 - d1)
diff_time = str(d).split(':')[0]
else:
t1 = str(t1).split('\'')[1]
t2 = str(t2).split('\'')[1]
time1 = str(t1).split(' ')[1]
time2 = str(t2).split(' ')[1]
print(t1, t2)
print(time1, time2)
if time1 == '0' or time2 == '0':
diff_time = 0
elif t2 > t1:
d1 = time.mktime(time.strptime(t1, '%Y-%m-%d %H:%M:%S'))
d2 = time.mktime(time.strptime(t2, '%Y-%m-%d %H:%M:%S'))
d = datetime.timedelta(seconds=d2 - d1)
diff_time = str(d).split(':')[0]
else:
diff_time = 0
return diff_time
3.这个是根据指定的时间段,生成时间段内的所有日期
def getEveryDay(begin_date='2019-06-01',end_date='2019-12-31'):
"""指定开始时间和结束时间,获取中间的日期"""
date_list = []
begin_date = datetime.datetime.strptime(begin_date, "%Y-%m-%d")
end_date = datetime.datetime.strptime(end_date, "%Y-%m-%d")
while begin_date <= end_date:
date_str = begin_date.strftime("%Y-%m-%d")
date_list.append(date_str)
begin_date += datetime.timedelta(days=1)
print('共生成了%s天' % str(len(date_list)))
return date_list
4.时间戳批量装换
def getEveryDayTime(date_list):
"""日期转换为时间戳"""
time_stamps = []
for i in date_list:
dt = time.strptime(i, '%Y-%m-%d %H:%M:%S')
time_stamp = int(time.mktime(dt))
time_stamps.append(time_stamp)
print('合成后的时间戳:%s' % str(time_stamps))
return time_stamps
5.单个时间戳转换
def getTime(t):
"""单个日期初始化时间戳"""
dt = time.strptime(t, '%Y-%m-%d %H:%M:%S')
time_stamp = int(time.mktime(dt))
return time_stamp
6.使用format格式化我们想要的时间格式
def paiban_data(self, day):
"""使用format初始化时间格式,plan_check_time"""
day_list = []
d = day.split(' ')[0]
dd = "'{} {}".format(d, '09:30:00')
db = "'{} {}".format(d, '18:30:00')
day_list.append(dd)
day_list.append(db)
return day_list

python 日期生成和时间格式化的更多相关文章

  1. Python学习笔记 (2) :字符串输出、操作、格式化和日期、时间格式化

    一.字符串输出及运算 1.常用输出格式及方法 ')#单引号 ")#双引号 """)#三个引号 1234567890 1234567890 1234567890 ...

  2. Python中日期和时间格式化输出的方法

    本文转自:https://www.jb51.net/article/62518.htm 本文实例总结了python中日期和时间格式化输出的方法.分享给大家供大家参考.具体分析如下: python格式化 ...

  3. Python 日期和时间_python 当前日期时间_python日期格式化

    Python 日期和时间_python 当前日期时间_python日期格式化 Python程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能. Python 提供了一个 time 和 cal ...

  4. 1、Python 日期时间格式化输出

    今天帮朋友写自动化脚本,又需要用格式化日期,又忘记怎么写了,还是写到自己博客里面,方便日后需要的时候看一眼吧.So,临时加一篇 Python 的文章. 1.Python的time模块 import t ...

  5. 【转载】Python日期时间模块datetime详解与Python 日期时间的比较,计算实例代码

    本文转载自脚本之家,源网址为:https://www.jb51.net/article/147429.htm 一.Python中日期时间模块datetime介绍 (一).datetime模块中包含如下 ...

  6. Python 日期时间处理模块学习笔记

    来自:标点符的<Python 日期时间处理模块学习笔记> Python的时间处理模块在日常的使用中用的不是非常的多,但是使用的时候基本上都是要查资料,还是有些麻烦的,梳理下,便于以后方便的 ...

  7. Python 日期和时间 —— datetime

    Python 日期和时间 —— datetime Python提供了多个内置模块用于操作日期时间,如calendar,time,datetime.calendar用于处理日历相关 :time提供的接口 ...

  8. 【转】Python 日期和时间

    本文转自:http://www.runoob.com/python/python-date-time.html Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能. Pytho ...

  9. python时间格式化

    import timeprint time.time()输出的结果是:1279578704.6725271 但是这样是一连串的数字不是我们想要的结果,我们可以利用time模块的格式化时间的方法来处理: ...

随机推荐

  1. 2013 AAAI: Uncorrelated Lasso

    Si-Bao Chen, Chris Ding, Bin Luo and Ying Xie. Uncorrelated Lasso. AAAI, 2013. 第一作者是安徽大学陈思宝副教授. 第二作者 ...

  2. Python selenium 三种等待方式详解(必会)

    很多人在群里问,这个下拉框定位不到.那个弹出框定位不到…各种定位不到,其实大多数情况下就是两种问题:1 有frame,2 没有加等待.殊不知,你的代码运行速度是什么量级的,而浏览器加载渲染速度又是什么 ...

  3. Ajax 实现导出文件-支持批量

    个人感觉前端不行,好多东西记不住,所以只能将遇到的坎以及解决方案记录下,方便以后用到时查找. 首先:ajax不支持流,网上找了好多版本,感觉下面的方案不错,实验了下可行. 前端页面: <div ...

  4. Powershell 邮件发送

    目录 目录 前言 Send-MailMessage NETMail 使用OutLook发送邮件 前言 最近领导想在winServer2012上搞个自动发送邮件的计划任务,下面有几种发送邮件的方式. 如 ...

  5. Delphi XE2 之 FireMonkey 入门(18) - TLang(多语言切换的实现)

    一个小小的 TLang 类, 实现多语言切换, 挺好的. 它的工作思路是: 1.首先通过 AddLang('语言代码') 添加语言类别, 如: AddLang('en').AddLang('cn'). ...

  6. nw打包vue项目exe更换图标

    web项目用nw打包好了之后发现没办法更换桌面显示图标问题,找了一下发现大多推荐Resource进行最后更换,试了第一次怎么也不管用,电脑重启了一下就行了...... 首先下载安装好了Resource ...

  7. 42 grant与flush privileges

    42 grant与flush privileges 在mysql里, grant是给用户赋权的,一些文档中经常提到在grant执行后,马上执行一个flush privileges,才能使赋权语句生效, ...

  8. vue组件间通信子与父

    二.组件间通信(子组件传值给父组件) 通过事件的方式来完成数据的传输. ①在父组件中 定义一个方法,用来接收子组件所通过事件传来的值 methods:{ recvMsg:function(msg){ ...

  9. 剑指offer--day04

    1.1题目:变态跳台阶:一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 1.2解题思路: 当n=1时,结果为1: 当n=2时,结果为2: ...

  10. 关于this在不同使用情况表示的含义

    1. addEventListener   函数中的this 指向的是出发事件的事件源 obj.addEventListener('click',function(){ console.log(thi ...