python 时间模块 time datetime calendar

简介: 学而时习之,不亦悦乎。经常的复习下之前的知识,不仅加深、巩固记忆,还能在复习的同时,查漏补缺。今天针对python库自带的三个时间模块进行复习。。。。

学而时习之,不亦悦乎。经常的复习下之前的知识,不仅加深、巩固记忆,还能在复习的同时,查漏补缺。

今天针对python库自带的三个时间模块进行复习。。。。


time模块


time模块提供各种操作时间的函数


由于time模块是python自带的,所以只需要简单的import time就ok了


获取时间戳

time.time()函数可以用来获取当前时间的时间戳。即自1970-01-01开始的格林威治标准时间

这里需要解释两点

1.why 1970-01-01?

这个时间是以UNIX诞生时间,unix认为1970年1月1日0点是时间纪元,其他编程语言的时间戳也是这么使用的

格林威治时间即为0时区时间,中学地理肯定学过本初子午线吧,哈哈....

好了返回正题

t=time.time()
print(t)
# 1519818341.5785086
# 简单的计算一下
year=t / (24*60*60*365) +1970
# 2018.1931234645647 
# 得到当前年份


获取时间元组

使用localtime函数即可得到一个元组结构化的时间格式

t1=time.localtime()
print(t1)
# time.struct_time(tm_year=2018, tm_mon=2, tm_mday=28, tm_hour=19, tm_min=45, tm_sec= 41, tm_yday=59 tm_isdst=0)

如果你给定一个时间戳,也可以通过localtime将时间戳转化为时间元组随便写一个时间

tt=time.localtime(1513810287.1759758)


格式化时间

1.将时间戳格式化

result=time.ctime(t)
print(result)
# Wed Feb 28 19:49:33 2018


2.将时间元组格式化

result=time.asctime(time.localtime())
print(result)


3.格式化日期字符串

result=time.strftime(“%Y-%m-%d %H:%M:%S”,time.localtime())
print(result)


时间元组格式化为时间戳

t3=time.mktime(time.localtime())


时间字符串转化为

pt=time.strtime(‘18-02-28 19:53:23’,’%y-%m-%d %H:%M:%S’)
print(pt)


耗时计算

start=time.clock()
for i in range(1000):
    print(i)
end=time.colock() 
print(end-start)


时间等待

time.sleep(3)

这个没啥讲的了。。。


日历模块


打印文本日历,算是时间模块的一种,但是坦白说,貌似没什么卵用....

import calendar
print(calendar.month(2018-2))


datetime模块


datetime模块包含三个子类,datetime date time。它主要用来处理时间,使用前先倒入datetime模块

import datetime


显示当前时间

print(datetime.datetime.now())
or
print(datetime.datetime.today())


那么显示当前时间的年、月、日等改怎么操作呢?很简单

print(datetime.datetime.now().year)
print(datetime.datetime.now().day)


当前时间tuple

dateime.datetime.now().timetuple()


显示当前日期

datetime.datetime.now().date()


计算N天后的时间

today=datetime.datetime.today()
future=today+datetime.timedelta(days=7)
print(future)


计算时间差

first=datetime.datetime(2017,9,9,12,1,03)
second=datetime.datetime(2018,2,28,19,20,11)
delta=second-first
print(delta)
# 172 days ,7:19:08
print(delta.tatal_seconds())
14887148.0


时间转化

datetime转str:

datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")

str格式转化为datetime格式:

datetime.datetime.strptime("2018-02-20 11:50:20" , "%Y-%m-%d %H:%M:%S")

时间戳转datetime

datetime.datetime.fromtimestamp(1519826222)
# datetime.datetime(2018,2,28,21,57,2)




相关文章
|
1天前
|
人工智能 安全 Java
Python 多线程编程实战:threading 模块的最佳实践
Python 多线程编程实战:threading 模块的最佳实践
10 5
|
1天前
|
人工智能 数据库 开发者
Python中的atexit模块:优雅地处理程序退出
Python中的atexit模块:优雅地处理程序退出
8 3
|
4天前
|
开发者 Python
Python的os模块详解
Python的os模块详解
15 0
|
7天前
|
数据挖掘 API 数据安全/隐私保护
python请求模块requests如何添加代理ip
python请求模块requests如何添加代理ip
|
9天前
|
测试技术 Python
Python 有趣的模块之pynupt——通过pynput控制鼠标和键盘
Python 有趣的模块之pynupt——通过pynput控制鼠标和键盘
|
9天前
|
Serverless 开发者 Python
《Python 简易速速上手小册》第3章:Python 的函数和模块(2024 最新版)
《Python 简易速速上手小册》第3章:Python 的函数和模块(2024 最新版)
40 1
|
11天前
|
Python
python学习-函数模块,数据结构,字符串和列表(下)
python学习-函数模块,数据结构,字符串和列表
55 0
|
12天前
|
Python
python学习14-模块与包
python学习14-模块与包
|
14天前
|
SQL 关系型数据库 数据库
Python中SQLite数据库操作详解:利用sqlite3模块
【4月更文挑战第13天】在Python编程中,SQLite数据库是一个轻量级的关系型数据库管理系统,它包含在一个单一的文件内,不需要一个单独的服务器进程或操作系统级别的配置。由于其简单易用和高效性,SQLite经常作为应用程序的本地数据库解决方案。Python的内置sqlite3模块提供了与SQLite数据库交互的接口,使得在Python中操作SQLite数据库变得非常容易。
|
19天前
|
索引 Python
「Python系列」Python operator模块、math模块
Python的`operator`模块提供了一系列内置的操作符函数,这些函数对应于Python语言中的内建操作符。使用`operator`模块可以使代码更加清晰和易读,同时也能提高性能,因为它通常比使用Python内建操作符更快。
28 0