python 日期生成和时间格式化
记录下日期时间的转换和生成:
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 日期生成和时间格式化的更多相关文章
- Python学习笔记 (2) :字符串输出、操作、格式化和日期、时间格式化
一.字符串输出及运算 1.常用输出格式及方法 ')#单引号 ")#双引号 """)#三个引号 1234567890 1234567890 1234567890 ...
- Python中日期和时间格式化输出的方法
本文转自:https://www.jb51.net/article/62518.htm 本文实例总结了python中日期和时间格式化输出的方法.分享给大家供大家参考.具体分析如下: python格式化 ...
- Python 日期和时间_python 当前日期时间_python日期格式化
Python 日期和时间_python 当前日期时间_python日期格式化 Python程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能. Python 提供了一个 time 和 cal ...
- 1、Python 日期时间格式化输出
今天帮朋友写自动化脚本,又需要用格式化日期,又忘记怎么写了,还是写到自己博客里面,方便日后需要的时候看一眼吧.So,临时加一篇 Python 的文章. 1.Python的time模块 import t ...
- 【转载】Python日期时间模块datetime详解与Python 日期时间的比较,计算实例代码
本文转载自脚本之家,源网址为:https://www.jb51.net/article/147429.htm 一.Python中日期时间模块datetime介绍 (一).datetime模块中包含如下 ...
- Python 日期时间处理模块学习笔记
来自:标点符的<Python 日期时间处理模块学习笔记> Python的时间处理模块在日常的使用中用的不是非常的多,但是使用的时候基本上都是要查资料,还是有些麻烦的,梳理下,便于以后方便的 ...
- Python 日期和时间 —— datetime
Python 日期和时间 —— datetime Python提供了多个内置模块用于操作日期时间,如calendar,time,datetime.calendar用于处理日历相关 :time提供的接口 ...
- 【转】Python 日期和时间
本文转自:http://www.runoob.com/python/python-date-time.html Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能. Pytho ...
- python时间格式化
import timeprint time.time()输出的结果是:1279578704.6725271 但是这样是一连串的数字不是我们想要的结果,我们可以利用time模块的格式化时间的方法来处理: ...
随机推荐
- P1439 【模板】最长公共子序列(LCS)
先来看一看普通的最长公共子序列 给定字符串A和B,求他们的最长公共子序列 DP做法: 设f[i][j]表示A[1~i]和B[1~j]的最长公共子序列的长度 那么f[i][j]=max(f[i-1][j ...
- C# winform 键盘全局事件
本文转载自:http://www.cnblogs.com/yukaizhao/archive/2010/12/14/winform_keyup.html 在winform程序中给form添加了keyu ...
- 十六、简单配置jenkins执行本地的robotframework项目
A.前期准备: 1.登录jenkins 2.系统管理-插件管理-高级-上传插件(http://mirrors.jenkins-ci.org/plugins/robot/,中选择一个版本的插件下载至本地 ...
- Android在WindowManagerService和ActivityManagerService中的Token
https://upload-images.jianshu.io/upload_images/5688445-6cf0575bb52ccb45.png 1. ActivityRecord中的token ...
- hadoop 与 hbase 添加开机启动,按顺序,先hadoop,后hbase,开机启动脚本,hbase学习
hadoop安装,hbase单机安装,参考链接,https://blog.csdn.net/LiuHuan_study/article/details/84347262 开机启动脚本,参考, http ...
- selenium元素定位之css选择器
在selenium元素定位时会用到css选择器选取元素,虽说xpath在定位元素时能解决大部分问题,但使用css选择器选取元素也是一种不错的选择. css相较与xpath选择元素优点如下: 表达式更加 ...
- vue 路由嵌套 及 router-view vue-router --》children
vue 路由嵌套 vue-router -->children 在项目的很多子页面中,我们往往需要在同一个页面做一个组件的切换,同时保存这个页面的部分数据(比如树形菜单),进而显示不同的数据 ...
- gitlab上传代码及报错总结
将目录变成git可管理的仓库 git init 将文件添加到暂存区中 git add README.md 将文件提交到仓库 git commit -m "fisrt commit" ...
- 前端 CSS 一些标签默认有padding
一个html body标签 默认有 margin外边距属性 比如ul标签,有默认的padding-left值. 那么我们一般在做站的时候,是要清除页面标签中默认的padding和margin.以便于我 ...
- SpringBoot 使用maven创建springboot项目
有两种方式可以创建 1是使用spring-boot-starter-parent ,2是使用spring-boot-dependencies (即父项目dependencyManagement) ( ...