手机上python编程工具3和3h有区别吗_Python3.5内置模块之time与datetime模块用法实例分析...

本文实例讲述了Python3.5内置模块之time与datetime模块用法。分享给大家供大家参考,具体如下:

1、模块的分类

a、标准库(Python自带):sys、os模块

b、开源模块(第三方模块)

c、自定义模块

2、内建模块——time

2019042710232411.png

2019042710232412.png

(1)在Python中通常用以下几种方式来表示时间:

a、时间戳:从1970年1月1日开始到当下的时间的秒数,导入time模块(import time),调用time.time()方法即可。

b、格式化的时间字符串。

c、元组(struct_time),共九个元素,调用time.localtime()。

由于Python的time模块实现主要调用C库,各个平台可能有所不同。

2019042710232413.png

2019042710232414.png

(2)代码

#!/usr/bin/env python

# -*- coding:utf-8 -*-

# Author:ZhengzhengLiu

import time

print(time.time()) #获取时间戳

time.sleep(2) #睡2秒

print(time.time()) #获取时间戳

print(time.gmtime()) #获取当前世界标准时间UTC

print(time.localtime()) #获取当前本地时间

print(time.localtime(1234567890)) #将时间戳转换成元组形式

x = time.localtime()

print(x.tm_year) #获取本地时间的年份

print("this is 2017 day:%d" %x.tm_yday)

print(time.mktime(x)) #将元组形式转换成时间戳

#将struct_time转化成格式化字符串的形式

#print(time.strftime("%Y-%m-%d %H:%M:%S"),x)

print(time.strftime("%Y-%m-%d %H:%M:%S"),time.localtime()) # %Y:x.tm_year %m:x.tm_mon 顺序可以打乱

#将格式化字符串的形式转化成struct_time

print(time.strptime("2017-09-28 19:00:47","%Y-%m-%d %H:%M:%S")) #x.tm_year:2017,x.tm_mon:09 位置顺序必须一一对应

print(time.asctime()) #结构化的元组形式转换成形如:周月日时分秒年的形式

print(time.ctime()) #将时间戳转化成形如:周月日时分秒年的形式

运行结果:

1506598454.9637923

1506598456.9639068

time.struct_time(tm_year=2017, tm_mon=9, tm_mday=28, tm_hour=11, tm_min=34, tm_sec=16, tm_wday=3, tm_yday=271, tm_isdst=0)

time.struct_time(tm_year=2017, tm_mon=9, tm_mday=28, tm_hour=19, tm_min=34, tm_sec=16, tm_wday=3, tm_yday=271, tm_isdst=0)

time.struct_time(tm_year=2009, tm_mon=2, tm_mday=14, tm_hour=7, tm_min=31, tm_sec=30, tm_wday=5, tm_yday=45, tm_isdst=0)

2017

this is 2017 day:271

1506598456.0

2017-09-28 19:34:16 time.struct_time(tm_year=2017, tm_mon=9, tm_mday=28, tm_hour=19, tm_min=34, tm_sec=16, tm_wday=3, tm_yday=271, tm_isdst=0)

time.struct_time(tm_year=2017, tm_mon=9, tm_mday=28, tm_hour=19, tm_min=0, tm_sec=47, tm_wday=3, tm_yday=271, tm_isdst=-1)

Thu Sep 28 19:34:17 2017

Thu Sep 28 19:34:17 2017

(3)几种表示时间的相互转化

2019042710232515.png

2019042710232516.png

#!/usr/bin/env python

# -*- coding:utf-8 -*-

# Author:ZhengzhengLiu

import time #导入时间模块

#1.返回当前时间戳

t = time.time()

print("Current time:",t)

#2.将时间戳转换成当地时间的时间元祖

tup1 = time.localtime(t)

print(tup1)

#年:tm_year,月:tm_mon,日:tm_mday

print("年份:",tup1.tm_year)

print("月份:",tup1.tm_mon)

print("日期:",tup1.tm_mday)

#3.将时间元组转换为时间戳(毫秒会忽略)

print("Timestamp is:",time.mktime(tup1))

#4.0 获取CPU运行时间来获取比较精准的秒数,一般用于时间间隔的获取或比较

#4.1 休眠/停止一段时间,指定需要停止的秒数

print("开始时间:",time.clock())

time.sleep(3)

print("结束时间1:",time.clock())

time.sleep(3)

print("结束时间2:",time.clock())

#5.时间元组转化成格式化时间字符串

tm_str = time.strftime("%Y-%m-%d %H:%M:%S",tup1)

print("格式化时间字符串:",tm_str)

#等价于

print("格式化时间字符串:",time.strftime("%Y-%m-%d %H:%M:%S",tup1))

#6.格式化时间字符串转化成时间元组

tup2 = time.strptime(tm_str,"%Y-%m-%d %H:%M:%S")

print("时间元组:",tup2)

#等价于

print("时间元组:",time.strptime(tm_str,"%Y-%m-%d %H:%M:%S"))

运行结果:

Current time: 1509503024.233398

time.struct_time(tm_year=2017, tm_mon=11, tm_mday=1, tm_hour=10, tm_min=23, tm_sec=44, tm_wday=2, tm_yday=305, tm_isdst=0)

年份: 2017

月份: 11

日期: 1

Timestamp is: 1509503024.0

开始时间: 1.399506347461039e-06

结束时间1: 2.9997266297601293

结束时间2: 5.999885706981624

格式化时间字符串: 2017-11-01 10:23:44

格式化时间字符串: 2017-11-01 10:23:44

时间元组: time.struct_time(tm_year=2017, tm_mon=11, tm_mday=1, tm_hour=10, tm_min=23, tm_sec=44, tm_wday=2, tm_yday=305, tm_isdst=-1)

时间元组: time.struct_time(tm_year=2017, tm_mon=11, tm_mday=1, tm_hour=10, tm_min=23, tm_sec=44, tm_wday=2, tm_yday=305, tm_isdst=-1)

3、内建模块——datatime

(1)datatime.data——日期(年月日)

(2)datatime.time——时间(时分秒)

(3)datatime.datatime——日期+时间(年月日时分秒)

代码举例:

import datetime

print(datetime.datetime.now()) #获取当前时间

print(datetime.datetime.now()+datetime.timedelta(3)) #当前时间的后三天

print(datetime.datetime.now()+datetime.timedelta(-3)) #当前时间的前三天

print(datetime.datetime.now()+datetime.timedelta(hours=3)) #当前时间的后三个小时

print(datetime.datetime.now()+datetime.timedelta(minutes=-3)) #当前时间的前三分钟

c_time = datetime.datetime.now()

print(c_time.replace(minute=2,hour=3)) #对当前时间的替换

运行结果:

2017-09-28 19:54:40.167870

2017-10-01 19:54:40.167870

2017-09-25 19:54:40.167870

2017-09-28 22:54:40.167870

2017-09-28 19:51:40.167870

2017-09-28 03:02:40.167870

PS:这里再为大家推荐几款关于日期与天数计算的在线工具供大家使用:

希望本文所述对大家Python程序设计有所帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/490553.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c++ string后面会添加‘\0‘

string类后面会添加\0&#xff0c;但这个\0不算入length里面 以一个例子就能说明&#xff1a; int main() {string s "hhh";cout << (s[3] \0)<<endl;cout << s.length() << endl;return 0; } 输出&#xff1a; 1 3

在visual studio code中配置python以及解决中文乱码问题

安装好 visual stuido code &#xff08;下面简称 “ VSC ”&#xff09;后&#xff0c;要想使用它运行调试 python 代码还需要做一些工作以解决下列问题&#xff1a; 搭建 python 环境print 打印中文出现乱码一、搭建 python 环境 在 VSC 中点击 F1 键&#xff0c;弹出控制台&…

华为加码布局 VR/AR趁势启航

来源&#xff1a;VR每日必看乘5G东风&#xff0c;VR/AR空间打开。随着5G的到来&#xff0c;5G高速和超低时延的特性将完美应对VR/AR发展的短板&#xff0c;商用牌照的发放将带领5G逐渐进入放量阶段&#xff0c;内外巨头均已开始大力布局。分析人士认为&#xff1a;第一阶段场景…

linux系列之常用运维命令整理笔录

本博客记录工作中需要的linux运维命令&#xff0c;大学时候开始接触linux&#xff0c;会一些基本操作&#xff0c;可是都没有整理起来&#xff0c;加上是做开发&#xff0c;不做运维&#xff0c;有些命令忘记了&#xff0c;所以现在整理成博客&#xff0c;当然vi&#xff0c;文…

C++ 传递字符串数组给函数参数

C 传数组给一个函数&#xff0c;数组类型自动转换为指针类型&#xff0c;因而传的实际是地址。 对于传入字符串数组同理&#xff0c;所以如果在函数中对传入的字符串数组进行改变&#xff0c;函数外的字符串数组也会同时改变 举个简单的例子&#xff1a; void change(char s…

Android高德地图自定义Markers的例子

下文为各位重点介绍关于Android高德地图自定义Markers的例子&#xff0c;希望这篇文章能够让各位理解到Android高德地图自定义Markers的方法。 之前的博客里说了地图的嵌入和定位&#xff0c;今天就说说在地图上显示一些我们想要的。在地图中有自带的Markers&#xff08;标记&a…

javaweb教务管理系统_基于Java web的教务管理系统

源码编号&#xff1a;B-E00033 点击查看(分类规则)项目类型&#xff1a;Java EE项目(非开源)项目名称&#xff1a;基于Java web的教务管理系统(TeachingSystem)当前版本&#xff1a;V1.0.1版本难度等级&#xff1a;✩✩复杂程度&#xff1a;✩✩ 点击查看难度等级用户类型&…

Science揭秘:为什么“好记性不如烂笔头”?

来源&#xff1a;中国生物技术网你还能记起你小学班长的名字吗&#xff1f;但我相信你肯定能记得同桌的名字&#xff0c;和与其共同经历的种种。但要再问你昨天新来同事的名字&#xff0c;你是否可以不假思索的回答出来&#xff1f;是不是有点儿困难&#xff1f;那为什么你能脱…

十个不可不看的Matlab GUI

截止到2012年6月2日&#xff0c;MatlabCentral上一共有1743个与"gui"有关的program。经过浏览前800个&#xff0c;选出以下比较有趣的程序。其中大部分没有经过测试&#xff0c;有可能无法使用或者功能不够理想&#xff0c;但至少可以作为一个starting point 吧。 Al…

C++链表插入节点函数为什么要传递头节点的二维指针

C链表插入一个节点的代码如下&#xff1a; struct ListNode {int m_value;ListNode * m_next; };void addListNode(ListNode** pHead, int value) {ListNode * pNew new ListNode();pNew->m_value value;pNew->m_next NULL;if (*pHead NULL){*pHead pNew;}else{Lis…

JAVA学习(十)__MessageFormat用法

MessageFormat用来格式化一个消息&#xff0c;通常是一个字符串&#xff0c;比如&#xff1a; String str "Im not a {0}, age is {1,number,short}", height is {2,number,#.#}; 而MessageFormat可以格式化这样的消息&#xff0c;然后将格式化后的字符串插入到模式…

中国机器人产业发展报告(2019)正式发布!

来源&#xff1a;世界机器人大会2019年8月25日&#xff0c;《中国机器人产业发展报告&#xff08;2019&#xff09;》于2019世界机器人大会闭幕式上正式发布&#xff0c;该报告为工业和信息化部2019-2021年财政专项《我国机器人产业发展水平评估体系构建与智能机器人产业链增长…

VS2013提示错误应输入表达式

原因是有些语句的空格为中文输入法下输入的空格&#xff0c;在提示错误的地方附近检查一下空格&#xff0c;最好把那附近的空格都用英文输入法再次输入一次

matlab/ansys协同的一个例子

前段时间找了点Matlab与ANSYS协同工作的资料&#xff0c;在我看来所谓协同是ANSYS将结果写到文件然后Matlab读&#xff0c;或者Matlab写数据到文件ANSYS读&#xff0c;协同是通过读写文件实现的。我找了个瞬态分析的例子&#xff0c;写了APDL&#xff0c;将网上找到的ANSYS结果…

security center拒绝访问_Steam被曝出0day提权漏洞,但厂商拒绝修复

近期&#xff0c;全球流行的Steam游戏客户端被曝出0day提权漏洞&#xff0c;影响全球一亿多Steam用户。该漏洞可让机器上的低权限用户以SYSTEM权限运行程序。这意味着恶意软件很可能利用这个漏洞对受害者的机器进行深度破坏。考虑到Steam是一款总用户1.2亿&#xff0c;日常在线…

赵老师_01

1、赵4 老师 课程&#xff0c;第2课 (VS2010) (Console的 空项目) 1.1、项目-->属性-->配置属性-->C/C -->预编译头&#xff1a;  不使用预编译头 1.2、项目-->属性-->配置属性-->C/C -->代码生成-->基本运行时检查&#xff1a;  默认值 1.3、项…

人工智能第一股“旷视科技”赴港递交IPO材料 半年亏损52亿估值280亿

来源&#xff1a; 人工智能和大数据8月25日&#xff0c;人工智能领域“独角兽”旷视科技正式向港交所递交IPO材料。招股书显示&#xff0c;旷视拟采用“同股不同权”方式上市&#xff0c;“同股不同权”股东为创始人兼CEO印奇以及两位联合创始人唐文斌、杨沐&#xff0c;三人占…

C++中set按降序排序

set一般插入元素时&#xff0c;默认使用关键字类型的< 运算符来比较两个关键字&#xff0c;故一般插入后为升序&#xff0c;举个例子&#xff1a; int main(int argc, char* argv[]) {set<int> s;s.insert(2);s.insert(1);s.insert(3);set<int>::iterator it …

matlab调用ansys-------1

1.版本&#xff1a;MATLAB R2014a ANSYS14.5 / MATLAB R2017a ANSYS17.0 2.思路&#xff1a;将MATLAB中的数据输出到shuju.txt中&#xff0c;用ANSYS读取shuju.txt后将计算计算结果输出到jieguo.txt中并将其返回到MATLAB中进行运算分析。 3.程序&#xff1a;在MATLAB中输入 …

python可以代替plc吗_PLC可以代替安全控制器吗?电气工程师告诉你

导读 国内的企业越来越重视设备的安全防护&#xff0c;可事故却频频发生&#xff0c;这是为什么呢&#xff1f;主要还是源自于大家对于安全防护知识上存在的诸多误区&#xff0c;比如很多人认为&#xff0c;稳定性高、性能强的PLC即可替代安全控制器的作用&#xff0c;其实这就…