常用模块
常用模块
1.time模块
打印时间,打印三种时间,需要时间的地方要调用,暂停程序的功能
import time
#1.时间戳形式
time.time() #计算自1970年1月1日00:00的时间偏移量
#2格式化时间
time.strft('%Y-%m-%d %X') # %X=%H:%M:%S
#结构化时间
time.localtime() #打印时间以北京时间为准
time.gmtime() #打印以格林威治时间为准,时间差为8h
time.gmtime(0) #打印1970年的时间
#结构化时间转格式化时间
time_stuct = time.localtime()
print(time.strftime(%Y-%m-%d,time_struct))
#结构化时间转时间戳
print(time.mktime(time_struct))
#格式化时间转结构化时间
time_format=time.strftime('%Y-%m-%d %X')
print(time.strptime(time_format,'%Y-%m-%d %X'))
#时间戳转换为结构化时间
stamp_time = time.time()
print(time.localtime(stamp_time))
#睡眠
time.sleep(2) #时间单位为秒
2.datetime模块
主要用来记录时间
import datetime
#1.获取当前时间
now_time = datetime.datetime.now()
#2.修改时间
print(now_time + datetime.timedelta(5)) #默认时间单位为天,亦可为时,分,秒,不可为年,月
3.random模块
产生随机数
import random
#1.打印(0,1)区间内的小数,不包含0和1
print(random.random())
#2.打印[x,y]区间内的整数,包含x和y
print(random.randint(1,5))
#3.打印(x,y)区间内的小数,不含x,y
print(random.uniform(1,5))
#4.打印[x,y)区间内的整数,含x,不含y
print(random.randrange(1,5))
#5.从容器中随机选择一个
random.choice([1,23,,34,4,3])
#6.从容器中随机选择多个
random.sample([2,1,,3,1,3,13,131],2)
#7.打乱容器原有排序
random.shuffle(lis)
4. os 模块
os和操作系统交互,文件操作
import os
#1.创建文件夹
os.mkdir('shopping') #在相对路径下建立一个名为shopping的空文件夹
#2.删除空文件夹,递归往上删除所有空文件夹
os.removedirs()
#3.删除单个空文件夹
os.rmdir()
#4.列出该文件夹下所有文件名和隐藏文件名
os.listdir()
#5.删除文件
os.remove()
#6.重命名文件名
os.rename(旧文件,新文件)
#7.打印环境变量
os.environ
#8.用于执行文件添加环境变量
os.path.dirname(__file__)
#9.判断文件是否存在
os.path.exists()
#10.拼接文件路径
os.path.join()
#11.计算文件大小
os.path.getsize()
#12.打印文件夹下所有文件夹和文件
os.walk()
5.sys模块
与Python解释器进行交互
import sys
#1.当使用python file.py参数,接受参数
sys.argv
#2.获取解释器版本
sys.hexversion
#3.关于c语言的print和input
sys.stdout.write() #print
sys.stdin.read() #input
6.json模块
序列化:保存文件(从内存到硬盘这个过程为序列化,按规定格式保存)
#所有的语言都有json,跨平台/语言传输数据
#1.保存文件,以字符串形式存入
dic = {'username':'wq'}
with open('user_info.json','w',encoding='utf8') as fw:
json.dump(dic,fw)
#2.打开文件,以字典形式取出
with open('user_info.json','r',encoding='utf8') as fr:
data = json.load(fr)
print(data)
7.pickle模块
pickle支持python中任意数据类型,所以不能跨平台(不同平台的函数一定是不同的),pickle模块序列化过程是以二进制形式转换
def func():
print('f1
import pickle
#由于pickle传输的时二进制,所以应该用b模式
#1.保存文件
with open('fun.pkl','wb') as fw:
pickle.dump(func,fw)
#2.读取文件
with open('fun.pkl','rb') as fr:
data = pickle.load(fr)
print(data)