1:时间模块:
时间戳 ,浮点型,以秒为单位 1970年1月1日零点,伦敦时间算起
结构化时间 元祖
格式化时间, str数据类型
时间戳转化为本地时间 time.localtime()
字符串时间转化为本地时间 time.strptime()
本地时间转化为时间戳 time.mktime()
格式化输出时间time.strftime('%Y-%m-%d %H:%M:%S')
import time print(time.time())
import time struct_time = time.localtime() print(struct_time)
import time print(time.strftime('%Y-%m-%d %H:%M:%S')) print(time.strftime('%y-%m-%d %H:%M:%S'))
print(time.strftime('%c'))
把字符串时间转化为格式化时间以及时间戳:
# 2018年8月8日 格式化时间 import time str_time = '2018-8-8' struct_time = time.strptime(str_time,'%Y-%m-%d') #格式化时间 print(struct_time) timestamp = time.mktime(struct_time) #转化为时间戳 print(timestamp)
2:随机数模块:
取随机小数
import random print(random.random()) (0,1) print(random.uniform(3,9)) #(n,m)
取随机整数
import random print(random.randint(1,2))#[1,2] print(random.randrange(1,2)) print(random.randrange(1,100,2))
在列表中随机选取
import random # 从列表中随机选取 lst = [1,2,3,4,5,6,'a','b','c','d'] rand_r = random.choice(lst) print(rand_r) # 从(n,m)从n到(m-1)之间随机选取 rand = random.choice(range(10)) print(rand) # 从列表中随机选取n个数 rand_1 = random.sample(lst,3) print(rand_1)
乱序,随机重排
import random lst = [1,2,3,4,5,6,'a','b','c','d'] random.shuffle(lst) print(lst)
应用:随机验证码:
import random def get_code(n=6,alpha_flag = True): code = '' for i in range(n): num = str(random.randrange(10)) if alpha_flag: alpha_upper = chr(random.randint(65,90)) alpha_lower = chr(random.randint(97,122)) num = random.choice([num,alpha_upper,alpha_lower]) code += num return code rand = get_code(8) print(rand)
3.os 模块:
创建文件
import os os.mkdir('t4') os.makedirs('t5/t6')
删除文件
import os os.rmdir('t4') os.removedirs('t5/t6')
listdir 找路径下文件的内容:
import os ret = os.listdir(r'E: 1_pycharmvenvScripts') print(ret)
os.stat 获取文件或目录的结构说明
import os print(os.stat(r'E: 1_pycharmvenvScripts'))
os.path.abspath找到文件的绝对路径,以及转化路径为windows的标准模式
import os ret1 = os.path.abspath('venvScripts') print(ret1)
1.路径,文件名分离 2,取文件名前的路径,3,取文件名
import os path = r'E: 1_pycharmvenvScripts' ret = os.path.split(path) print(ret) ret1 = os.path.dirname(path) print(ret1) ret2 = os.path.basename(path) print(ret2)
判断文件路径是否存在,一致,(如上传文件)
res = os.path.exists(r'E: 1_pycharmvenvScripts') res = os.path.exists(r'E: 1_pycharmvenvScripts1') print(res)
判断是文件夹还是文件
import os r1 = os.path.isfile(r'E: 1_pycharmvenvScripts') r2 = os.path.isdir(r'E: 1_pycharmvenvScripts') print(r1,r2)
文件拼接
import os ret = os.path.join(r'E: 1_pycharmvenv','Scripts1') ret = os.path.abspath(ret) print(ret)
获取文件的大小
import os size = os.path.getsize(r'E: 1_pycharmvenvScripts') print(size) # 大小
获取当前文件目录的父目录
import os base_path = os.getcwd() base_path1 = os.path.dirname(__file__) print(base_path) print(base_path1)
4.sys模块
1.sys.modules 查看当前内存空间中所有的模块,和这个模块的内存空间(一般只在反射的时候用)
2.print(sys.path) :一个模块能否被导入,就看这个模块的所在的目录在不在sys.path路劲中,解决了两个问题:
第三方拓展模块,内置模块都不需要我们处理,sys.path就可以直接使用
自定义的模块导入工作需要自己手动修改sys.path
3.print(sys.argv)当前文件的绝对路径,相当于执行Python 绝对路劲. +输入什么就添加什么进列表.
5:系统操作命令:
os.system('dir') 以字符串的形式来执行操作系统命令
exec 以字符串的形式来执行python代码
import os ret = os.popen('dir') print(ret.read())
print(os.getcwd) : 获得的不是当前文件所在目录,而是文件执行所在的位置
open('file','w').close()