内建模块(一)
一、时间模块time:import time
二、随机数模块random
三、hashlib摘要算法
四、os模块
五、sys模块
- for循环不能开辟作用域
- 函数、类、模块能开辟作用域
- 模块:解决程序重复调用相同功能模块的问题
- 模块就是py文件
- 正则相关文件封装在re模块:import re
一、时间模块time:import time
- 关于数字的类型:整形、浮点型、bool
- 三种时间表达形式:时间戳、结构化时间、格式化的时间字符串
- 时间戳[seconds]:time.time(),从1970年1月1日1秒开始,到现在的秒数,给计算机看
- 格式化的时间字符串:time.strftime('%Y-%m-%d %X'),'2017-04-26 09:14:50',给人看
- 结构化时间[tuple]:time.localtime(),时间化对象,操作时间
- 时间表达形式转换:
- 时间戳->结构化时间:time.localtime()/time.gmtime()
- 结构化时间->时间戳:time.mktime()
- 结构化时间->字符串时间:time.strftime()
- 字符串时间->结构化时间:time.strptime()
- time.ctime()
- time.asctime()
- time.sleep(),效果等同于I/O操作
二、随机数模块random
- random.random(),大于0小于1的浮点数,不包括0和1
- random.randint(1,4),取1-4的整数
- random.randrange(1,3),取1-2的整数,顾头不顾尾
- random.choice([1,2,3,4]),只取序列中的1个
- random.sample([1,2,3,4],2),取序列中的2个
- random.uniform(1,3),大于1小于3的小数,扩展random()
- random.shuffle([1,2,3]),打乱次序(洗牌)
举例,获取数字字母验证码
import random
def ran():
s = ''
for i in range(5):
rNum = str(random.randint(0,9))
r_up_Letter = chr(random.randint(65,90))
r_down_Letter = chr(random.randint(97,122))
s += random.choice([rNum,r_up_Letter,r_down_Letter])
return s
print(ran())
三、hashlib摘要算法
- 通过函数,把任意长度的数据转换为一个长度固定的数据串
- 常见摘要算法MD5、SHA1
import hashlib
m = hashlib.md5() #或者.sha1()
m.update('hello'.encode('utf8'))
print(m.hexdigest()) #结果:‘5d41402abc4b2a76b9719d911017c592’
3.加盐
m = hashlib.md5(‘123’.encode('utf8)) #加盐
四、os模块
import os
os.getcwd() #获取文件路径
os.chdir(r'dirname') #切换文件目录,r不让字符串转译
os.curdir #返回当前目录,'.'
os.pardir #获取当前目录的父目录,'..'
os.makedirs('aaa/b') #创建多层递归目录
os.removedirs('dirname') #递归删除,目录为空删除,不为空不能删除
os.mkdir('dirname') #创建文件
os.rmdir('dirname') #移动文件
os.listdir('dirname') #查看文件目录下文件,类似linux的ls功能
os.rename() #重命名
os.stat(r'dirname') #获取文件信息,例如:获取文件大小st_size(字节)
os.sep #输出操作系统特定的路径分隔符,win:'\\',linux:'/'
os.linesep #行终止符
os.pathsep #分割文件路径的字符串,win:';',linux:':'
os.name #平台名字,判断操作系统
os.system('dir') #运行linux命令
os.path.abspath('test.txt') #找到文件绝对路径
os.path.basename('test.txt') #获取文件名
os.path.dirname('test.txt') #路径名
os.path.split() #分割文件目录和文件返回一个元组
os.path.exists() #判断文件存在
os.path.isabs() #判断是否为绝对路径
os.path.isfile() #判断是否为文件
os.path.isdir() #判断是否为目录
os.path.join('','') #路径拼接
os.path.getatime('') #返回path所指向的文件或者目录的最后存取时间
os.path.getmtime('') #返回path所指向的文件或者目录的最后修改时间
os.path.getsize('') #返回path的大小
五、sys模块
sys.argv #命令行参数List,第一个元素是程序本身路径
sys.path #返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值#sys.exit(n) #退出程序
#sys.version #解释器版本
#sys.platform #返回操作系统