Python基础—10-常用模块:time,calendar,datetime
#常用模块
time
sleep:休眠指定的秒数(可以是小数)
time:获取时间戳(从1970-01-01 00:00:00到此刻的秒数)
localtime:将一个时间戳转换为一个对象,对象中包含了所有日期时间信息
# 将时间戳转换为一个对象(包含年月日等信息)
# 当不传参数,默认转换当前时间戳
local_time = time.localtime()
print(local_time)
# 通过下表获取
print(local_time[0])
# 通过属性名获取
print(local_time.tm_year)mktime:将日期时间信息转换为时间戳
# 将日期时间信息转换为时间戳
# new_time = time.mktime(local_time)
new_time = time.mktime((2018, 6, 20, 10, 32, 10, 2, 171, 0))
print(new_time)strftime:将原则对象格式化显示
# 格式化显示,可以传递一个类似于元组的对象
print(time.strftime('%Y-%m-%d %H:%M:%S %w %W', local_time))
# 不传时间对象,默认转换当前时间
print(time.strftime('%D'))
'''
%Y:年(4位)
%y:年(2位)
%m:月
%d:日
%D:月/日/年
%H:时(24)
%I:时(12)
%M:分
%S:秒
%w:星期(1~7)
%W:本周是今年的第几周
'''gmtime:将时间戳转换为localtime对象
# 将时间戳转换为localtime对象
print(time.gmtime(time.time()))
# 不传参数默认转换当前时间戳
print(time.gmtime())asctime:将localtime以特定的格式显示
# 将localtime格式化显示
print(time.asctime(local_time))
# 不传参数默认转换当前时间
print(time.asctime())timezone:时区
# 返回0时区与当前时区相差的秒数
print(time.timezone)
calendar
使用
import calendar # 返回某一年的日历
c = calendar.calendar(2018, w=3, l=2, c=10, m=2)
# print(c) # 返回某一年某一月的日历
m = calendar.month(2018, 6, w=3, l=2)
# print(m) # 判断一个年份是否是闰年
print(calendar.isleap(2008)) # 返回两个年份之间的闰年数 [起始年,结束年)
print(calendar.leapdays(2000, 2008)) # 返回2
print(calendar.leapdays(2000, 2009)) # 返回3
datetime
date
from datetime import date
import time # 创建对象
d1 = date(2018, 6, 20)
print(d1) d2 = date.today()
print(d2) d3 = date.fromtimestamp(time.time())
print(d3) # 转换为标准格式字符串
s = d1.isoformat()
print(s)
# print(type(s)) # 日历显示:(年,第几周,星期)
print(d1.isocalendar()) # 获取星期(1~7)
print(d1.isoweekday())
# 获取星期(0~6)
print(d1.weekday()) # 格式化
print(d1.strftime('%Y/%m/%d')) # 转换为类似于元组的形式(localtime)
print(d1.timetuple())time
from datetime import time # 创建对象
t = time(1, 2, 3)
print(t) # 单独获取
print('时', t.hour)
print('分', t.minute)
print('秒', t.second) # 格式化显示
print(t.strftime('%H::%M::%S'))datetime
from datetime import datetime
import time # 创建对象
dt = datetime(2018, 6, 20, 14, 29, 30)
print(dt)
# 当前时间,当地带时区的时间
dt2 = datetime.now()
print(dt2)
# 不带时区的时间
dt3 = datetime.utcnow()
print(dt3)
# 将时间戳转换为日期时间
dt4 = datetime.fromtimestamp(time.time())
print(dt4) # 提取日期
d = dt.date()
print(d)
# print(type(d))
# 提取时间
print(dt.time())
# 转换为时间戳
print(dt.timestamp()) # 格式化显示
print(dt.strftime('%Y/%m/%d %H:%M:%S'))timedelta
from datetime import datetime, timedelta d1 = datetime(2018, 6, 19, 10, 11, 12)
d2 = datetime(2018, 6, 20, 12, 14, 18) # 得到时间差对象timedelta
delta = d2 - d1
print(delta)
print(type(delta)) delta2 = timedelta(days=2, hours=3, minutes=4, seconds=6)
print(delta2) d3 = d1 + delta2
print(d3) # 天数
print(delta2.days)
# 除天以外的秒数
print(delta2.seconds)
# 总共的秒数
print(delta2.total_seconds())
模块使用
定义:模块就像工具包一样,里面有很多工具(函数、类等),使用时导入即可
分类:
- 标准库:random、sys、os、time
- 第三方:就是别人写好的一些模块,你自己拿来使用(使用pip即可进行安装)
- 自定义:自己写的
导入:
import random # 导入
import random as rdm # 导入后起别名
from random import randint # 指定导入
from random import randint as rint # 指定导入后起别名as说明:
使用as起别名后,代码中只能使用别名。
可以避免冲突,可写简化书写
模糊导入:
from random import *
说明:导入random模块中 __ all __ 列表指定的内容,不建议使用(不易跟踪代码)
自定义模块
- 新建一个文件(不要与其他模块同名)
- 新建的文件名(除了后缀)就是模块名
- 导入的方式与官方的相同
- 文件名(模块名)就是命名空间,不同命名空间下的标识符可以相同
- 当使用多个模块下的相同标识符时,可以通过且别名或者通过命名空间进行区分
测试模块
- 每个模块中都有一个变量
__name__,它表示当前的模块名 - 但是当该模块作为主文件启动时其值为
'__main__' - 通过会通过下面的方式书写测试代码:
if __name__ == '__main__':
print('for test')- 每个模块中都有一个变量
包的使用
- 定义:多个模块放在一个目录下,这个目录下必须有一个
__init__.py文件,那么这个目录就是一个包 - 说明:
__init__.py文件是一个目录称为包的标志,即使内容为空- 可以简化使用者对包内容的导入复杂度
- 定义:多个模块放在一个目录下,这个目录下必须有一个
第三方模块的使用
- 安装工具:pip
- pip使用:
pip -h/--help # 查看帮助文档
pip install 包名 # 安装指定软件包
pip uninstall 包名 # 卸载指定软件包
pip list # 列表显示所有的安装包
pip show 包名 # 显示指定包的详情- 说明:安装失败通常是安装目录没有权限或断网
Python基础—10-常用模块:time,calendar,datetime的更多相关文章
- python基础31[常用模块介绍]
python基础31[常用模块介绍] python除了关键字(keywords)和内置的类型和函数(builtins),更多的功能是通过libraries(即modules)来提供的. 常用的li ...
- 十八. Python基础(18)常用模块
十八. Python基础(18)常用模块 1 ● 常用模块及其用途 collections模块: 一些扩展的数据类型→Counter, deque, defaultdict, namedtuple, ...
- Python全栈开发之路 【第六篇】:Python基础之常用模块
本节内容 模块分类: 好处: 标准库: help("modules") 查看所有python自带模块列表 第三方开源模块: 自定义模块: 模块调用: import module f ...
- Python基础之--常用模块
Python 模块 为了实现对程序特定功能的调用和存储,人们将代码封装起来,可以供其他程序调用,可以称之为模块. 如:os 是系统相关的模块:file是文件操作相关的模块:sys是访问python解释 ...
- python基础之常用模块以及格式化输出
模块简介 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要 ...
- Day5 - Python基础5 常用模块学习
Python 之路 Day5 - 常用模块学习 本节大纲: 模块介绍 time &datetime模块 random os sys shutil json & picle shel ...
- Python基础5 常用模块学习
本节大纲: 模块介绍 time &datetime模块 random os sys shutil json & picle shelve xml处理 yaml处理 configpars ...
- Python基础之常用模块
一.time模块 1.时间表达形式: 在Python中,通常有这三种方式来表示时间:时间戳.元组(struct_time).格式化的时间字符串: 1.1.时间戳(timestamp) :通常来说,时间 ...
- python基础(11)-常用模块
re(正则)模块 常用方法 findall() 以列表返回所有满足条件的结果 import re print(re.findall('\d','a1b2c2abc123'))#['1', '2', ' ...
- Python基础之常用模块(一)
模块本质就是一个.py文件,在安装目录下的lib文件夹下可以看到 模块分为三个部分:内置模块(存在于解释器中),第三方模块(lib文件夹下),自定义模块(自己定义的) 1.time模块 import ...
随机推荐
- React.js学习小结
最近一段时间都在学习React.js,感觉还不错,现在把自己的一些学习笔记记录一下,留着以后学习查看. 0.React全家桶(技术栈) 1.React主体 2.WebPack:grunt.gulp自动 ...
- Spring Chapter4 WebSocket 胡乱翻译 (一)
4. WebSocket 包含了Servlet stack,原生WebSocket交互,通过SockJS模拟,并且通过STOMP在WebSocket之上订阅.发布消息. 4.1 简介 不扯了,看到这个 ...
- 破解jar包5步搞定,jira7.9.2操作成功,附github代码库
1,从要破解的程序中拷贝.jar包文件,运行1_jar.sh将其解压.以jira7.9.2为例: $install_dir\JIRA\atlassian-jira\WEB-INF\lib\atlass ...
- C#学习笔记11
1.List.BinarySearch():BinarySearch()采用的是二分搜索算法,要求元素已经排好序,其特点是假如元素没有找到,会返回一个负整数,该值的按位取反(~)结果是“大于被查找元素 ...
- 跨源资源共享(CORS)
一.跨源的定义一个“源”有三部分组成:协议.域名.端口.任一部分不一致即为跨源.比如:(http,example.com,80)和(https,example.com,443)就是不同的源. 二. ...
- C# ObjectArx cad二次开发
1 环境搭建:安装CAD 和objectArx库,这里安装的是cad2012和objectArx2010 ,vs是2010 2 新建一个类库项目,引用objectArx安装目录下inc文件夹下的AcD ...
- js中各个排序算法和sort函数的比较
js中要实现数据排序,其实只需要用sort函数就能很好的满足了,但是我今天想知道他和其他排序算法的区别,比如耗时呀等.测了一组数据如下: // ---------- 一些排序算法 Sort = {} ...
- 一个C#面试问题,要求是将字符串中重复字符从第二个开始都去掉,空格除外。然后显示的时候,从后往前显示。
因为C#的code,感觉实现这个还是比较容易,只是SB.所以,在面试时候,以为不会这么容易,所以,我先试着用了Dictionary去实现,发现有困难.然后改回来用StringBuilder实现,这个因 ...
- React学习笔记 - JSX简介
React Learn Note 2 React学习笔记(二) 标签(空格分隔): React JavaScript 一.JSX简介 像const element = <h1>Hello ...
- 查看oracle固定目录下日志和trace文件大小脚本
python刚入门,在Oracle官网看到个小脚本,感觉挺有意思,经过测试切实可行. [oracle@ycr python]$ more 5.py import datetimeimport osim ...