Python: str、datetime、time、seconds
写一个str <=> seconds互转的函数
import datetime as dt
import time as tdef dt_str_to_second_since_1970(time_str,format ="%Y-%m-%d %H:%M:%S"):dt_time =dt.datetime.strptime(time_str,format)seconds = t.mktime(dt_time.timetuple())return secondsdef second_since_1970_to_str_dt(time_seconds,format="%Y-%m-%d %H:%M:%S"): dt_time = dt.datetime.fromtimestamp(time_seconds)str_time = dt.datetime.strftime(dt_time,format)return str_timedef second_since_1970_to_str_dt_v2(time_seconds,format="%Y-%m-%d %H:%M:%S"): return t.strftime(format, t.localtime(float(time_seconds)))
验算一下:
second_since_1970_to_str_dt(s1)
Out[81]: ‘2006-04-12 16:46:40’
s =‘2006-04-12 16:46:40’
dt_str_to_second_since_1970(s) Out[83]: 1144831600.0
seconds =dt_str_to_second_since_1970(s)
1144831600.0
second_since_1970_to_str_dt(seconds)
‘2006-04-12 16:46:40’second_since_1970_to_str_dt_v2(seconds)
‘2006-04-12 16:46:40’
在秒转化成str时,这两种方法都是可以的。
再看一下性能测试:
%timeit second_since_1970_to_str_dt_v2(time_seconds)
4.58 µs ± 343 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)%timeit second_since_1970_to_str_dt(time_seconds)
5.9 µs ± 423 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)
也就是说,v2版本的性能要更优一些。
但是当str=>seconds,换一种其它的写法:
def dt_str_to_second_since_1970_kill(time_str,format ="%Y-%m-%d %H:%M:%S"): dtime = dt.datetime.strptime(time_str,format)seconds =(dtime-dt.datetime(1970, 1,1,0, 0, 0,0)).total_seconds()return seconds
结果会如何?为什么会有差?相差了8个小时,是时间差的原因?
s2=dt_str_to_second_since_1970_v2(“2006-04-12 16:46:40”)
s2 Out[89]: 1144860400.0
s2-seconds Out[90]: 28800.0
28800.0/3600
8.0
Python: str、datetime、time、seconds相关推荐
- python str怎么用_python的str函数怎么使用
str函数是Python的内置函数,它将参数转换成字符串类型,即人适合阅读的形式. 其语法格式为str(object) 返回值:返回object的字符串形式 Python学习网- 专业的python自 ...
- python 时间格式datetime、str与date的相互转换
在写项目的时候经常会用到时间格式,以及它们之间的相互转化. 常用的日期数据格式datetime.datetime, str ,datetime.date 在使用的时候先导入datetime模块 fro ...
- python笔记-1(import导入、time/datetime/random/os/sys模块)
python笔记-6(import导入.time/datetime/random/os/sys模块) 一.了解模块导入的基本知识 此部分此处不展开细说import导入,仅写几个点目前的认知即可.其它内 ...
- python笔记-6(import导入、time/datetime/random/os/sys模块)
一.了解模块导入的基本知识 此部分此处不展开细说import导入,仅写几个点目前的认知即可.其它内容待日后有深入理解了再来细说 1.import可以导入的两种不同的内容 1.1 *.py文件结尾的文件 ...
- python模块--datetime时间加减、时间转时间戳、GMT时间格式转换
1.时间模块加减乘除 import datetime # 获取datetime时间格式并将其转换成字符串 a = datetime.datetime.now().strftime("%Y-% ...
- python 时间格式 工作日_python使用time、datetime返回工作日列表实例代码
最近在学习python,动手做了一个自动填写日报的小工具:由于请求中包含时间,格式如:2016-08-04:所以就了解了一下python的时间日期相关函数:这里做简单记录. 函数功能非常简单:获取当月 ...
- python模块初始与time、datetime及random
模块初始 模块的概念(本质为一个py文件) python模块可以将代码量较大的程序分割成多个有组织的.彼此独立但又能互相交互的代码片段,这些自我包含的有组织 的代码段就是模块,模块在物理形式上表现为以 ...
- Python之路(第十六篇)xml模块、datetime模块
一.xml模块 xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单, xml比较早,早期许多软件都是用xml,至今很多传统公司如金融行业的很多系统的接口还主要 ...
- python批量导入MySQL的表头、扩展插入(datetime)类型主键
python批量导入MySQL的表头 .扩展插入(datetime)类型主键 目标:1.在EXCEL中编辑table name.数据格式.数据类型和备注等信息,把excel中col_1列的值作为表头, ...
- 【转】python 字符编码与解码——unicode、str和中文:UnicodeDecodeError: 'ascii' codec can't decode...
原文网址:http://blog.csdn.net/trochiluses/article/details/16825269 摘要:在进行python脚本的编写时,如果我们用python来处理网页数据 ...
最新文章
- react与jQuery对比,有空的时候再翻译一下
- C# 调用FLashPaper2(二)
- java 线程分组_Java多线程可以分组,还能这样玩!
- CV Papers|计算机视觉论文推荐周报20200504期
- HTML5中的source标签
- Android 悬浮窗日志工具
- 西门子实数转整数_西门子PLC字整数与双字整数之间的转换、双整数与实数之间的转换...
- 黑石董事长:我今生所有的经验,总结起来,不过这54条!
- 网站访问流程及原理分析
- Shiro的在Springboot中的使用
- 2020美赛赛后感想总结
- Day18 洛谷P1321 单词覆盖还原
- Android常用adb命令总结
- 什么是BSP? 概念解析
- 【优化求解】基于多策略黑猩猩优化算法求解单目标优化问题附matlab代码
- linux防火墙401,解决git clone时报错:The requested URL returned error: 401 Unauthorized while accessing...
- 计算机组成期末试题及答案,本科计算机组成080901期末试题(A卷)答案及评分标准...
- Python之父:python根本没有那么难,边玩边学
- 期货开户分享六大风险
- html如何绘制热图,推荐一个简单高效的图形化热图绘制工具