Python学习第五周之内置模块之time与datetime

1.模块分为三类: 标准库:sys、os等内置模块; 开源模块:第三方模块 自定义模块

2.标准库中时间模块有time跟datetime

(1)格式化的时间字符串表示:2019-08-24 08:23:05

(2)时间戳:本质是秒数,使用time.time()来打印,是从1970年01月01日00:00开始按秒计算的偏移量

>>> time.time()
1566616449.2671971
>>> x=time.time()
>>> x/3600/24/365
49.677082186906304
>>> 1970+49
2019

(3)struct-time,元组,共9个元素, 这里要明确 世界标准时间是UTC,中国使用的UTC+8,DST是夏令时。

使用time.localtime(),可以输出本地时间

>>> time.localtime()
time.struct_time(tm_year=2019, tm_mon=8, tm_mday=24, tm_hour=11, tm_min=17, tm_sec=27, tm_wday=5, tm_yday=236, tm_isdst=0

使用gm.localtime()输出的为世界标准时间

>>> time.gmtime()
time.struct_time(tm_year=2019, tm_mon=8, tm_mday=24, tm_hour=3, tm_min=17, tm_sec=39, tm_wday=5, tm_yday=236, tm_isdst=0)

3.这三种表示时间的方法可以互相转换,如下图所示,

这里以元组跟时间戳的转换试例一下:

>>> y=time.gmtime(564123654)>>> print(y)
 time.struct_time(tm_year=1987, tm_mon=11, tm_mday=17, tm_hour=5, tm_min=0, tm_sec=54, tm_wday=1, tm_yday=321, tm_isdst=0) >>> time.mktime(y

strftime("格式",struct_time),转换为格式化的字符串,struct_time与格式没有位置上的联系,格式中的位置可以随意写

strptime("格式化的字符串","格式"),格式与格式化的字符串是一一对应的,有位置上的联系。

4.time.aectime()与time.ctime()可以将格式化的字符串与时间戳转换为特定的格式,转换形式如图:

这里简单示例一下:

>>> time.asctime(y)
‘Tue Nov 17 05:00:54 1987‘
>>>
>>> time.ctime(x)
‘Sat Aug 24 11:14:23 2019‘

5.datetime模块

datetime可以打印当前时间,也可以进行时间加减

>>> import datetime
>>> datetime.datetime.now()
datetime.datetime(2019, 8, 24, 12, 13, 46, 698797)
>>> print(datetime.datetime.now())
2019-08-24 12:14:01.287766

>>> print(datetime.datetime.now()+datetime.timedelta(3))   #当前时间加3天
2019-08-27 12:15:22.381283

>>> print(datetime.datetime.now()+datetime.timedelta(-3))   #当前时间加减天
2019-08-21 12:15:30.340797

>>> print(datetime.datetime.now()+datetime.timedelta(hours=3))  #当前时间加3个小时
2019-08-24 15:15:46.809156

>>> print(datetime.datetime.now()+datetime.timedelta(minutes=30))  当前时间减3个小时
2019-08-24 12:46:05.085896

datetime模块还可以进行时间替换,如下所示:

>>> c_time=datetime.datetime.now()
>>> print(c_time.replace(minute=3,hour=2))
2019-08-24 02:03:27.189295

原文地址:https://www.cnblogs.com/wuxiaoru/p/11404210.html

时间: 2024-10-31 09:40:20

Python学习第五周之内置模块之time与datetime的相关文章

python学习--第五周

本节大纲: 模块介绍 time &datetime模块 random os sys shutil json & picle shelve xml处理 yaml处理 configparser hashlib subprocess logging模块 re正则表达式 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才能完成(函数又可以在不同的.p

Python入门学习第五周:字符串·作业

python学习第五周字符串相关学习内容总结与作业 第五周主要是对字符串相关操作的学习包括 字符串的定义字符的序列 基本字符运算 求长度len(str)函数 拼接+str = str1 + 'pinjie' 重复*name * 3 就是把name的字符串内容输出三次 成员运算in判断一个字符串是否是另一个字符串的子串 for语句 枚举字符串中的每个字符 字符串索引每个字符串都有一个索引值索引从0前向或-1后向开始索引运算符[] 切片操作选择字符串的子序列语法 [start : finish] s

201671010140. 2016-2017-2 《Java程序设计》java学习第五周

java学习第五周心得体会        本周,是Java学习第五周,随着时间推移,随着课本内容的推进,我们接触到的程序也开始变得越来越复杂,不再是二三章那些用来练手的小程序了,这一点,在我们的例题运行注解上就可以感受到,程序的长度,涉及到的知识越来越多.        本周学习主要关注超类与子类的关系--继承,继承是面向对象最显著的一个特性,从已有的类(超类)中派生出新的类(子类),新的类能继承已有类的数据属性和行为,并能扩展新的能力. Java继承是使用已存在的类的定义作为基础建立新类的技术

python学习第五天 - for...in...循环

for..in语句是另一个循环语句,它迭代一个对象的序列,例如经历序列中的第一项.在后面的章节,我们将会看到更多关于序列的细节.现在,你需要知道的是一个序列只是一个有序的项目的集合. 例如 (保存为 for.py): for i in range(1,5): print(i) else: print('for循环结束') >>> ================================ RESTART ================================ >&g

Python学习(第一周)

大学毕业之后学习的Java开发最终却没有走上程序员之路.从事企业IT管理工作(运维.ERP.财务.).13年大数据很火的时候接触到SAP的BW.BO那时候觉得BI那就是大数据,现在想想那时多么肤浅啊.后来读了<货币战争><经济学原理>等经济学方面的书,明白了逻辑和哲学提供方向让我知道要做什么,统计学.数学让我知道用什么方法去做.然后在知乎等网站上了解相关的信息,最终选择了使用Python去做实现. 我选择的入门书籍是<Python基础教程  第2版> 同时也入手了<

python学习笔记(五):装饰器、生成器、内置函数、json

这周学习了装饰器和生成器,写下博客,记录一下装饰器和生成器相关的内容. 一.装饰器 装饰器,这个器就是函数的意思,连起来,就是装饰函数,装饰器本身也是一个函数,它的作用是用来给其他函数添加新功能,比如说,我以前写了很多代码,系统已经上线了,但是性能比较不好,现在想把程序里面每个函数都加一个功能,用来统计每个函数的运行时间是多少,找出来运行比较慢的函数,来优化代码,就需要添加一个新的功能,来统计程序的运行时间,那这样的话,就得修改每个函数了,需要改代码,但是代码特别多,改完了公司倒闭了,这时候装饰

Python学习笔记五(模块与包)

一.模块 1.模块介绍 一个模块就是包含了一组功能的python文件,可以通过import导入模块使用. python中模块分为四个类别: a) 使用python编写的.py文件 b) 已被编译为共享库或DLL的C或C++扩展 c) 把一系列模块组织到一起的文件夹,文件夹内有__init__.py文件,称该文件夹为包 d) 使用C编写并链接到python解释器的内置模块 定义my_module.py模块,模块名为my_module print("from my_module.py")

Python学习心得第一周-02

十二 流程控制之if...else 既然我们编程的目的是为了控制计算机能够像人脑一样工作,那么人脑能做什么,就需要程序中有相应的机制去模拟.人脑无非是数学运算和逻辑运算,对于数学运算在上一节我们已经说过了.对于逻辑运算,即人根据外部条件的变化而做出不同的反映,比如 1 如果:女人的年龄>30岁,那么:叫阿姨 age_of_girl=31 if age_of_girl > 30: print('阿姨好') 2 如果:女人的年龄>30岁,那么:叫阿姨,否则:叫小姐 age_of_girl=1

Python学习十五:sorted()

sorted()是Python内置的一个高阶函数,可以实现对list的排序,它还可以接收一个比较函数来实现自定义的排序. 现在有一个list : [36, 5, 12, 9, 21] 我们分别对这个list进行如下操作: 1.对list进行排序,使用sorted直接排序即可: print sorted([36, 5, 12, 9, 21]) 2.对list进行倒序排序,可以自定一个方法: def reversed_cmp(x, y): if x > y: return -1 if x < y: