random模块 时间模块 sys模块 os模块 json模块 pickle模块
Posted nianshaoyouwei
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了random模块 时间模块 sys模块 os模块 json模块 pickle模块相关的知识,希望对你有一定的参考价值。
一.random模块
random.random() 取0-1之间的小数
random.uniform() 取某个范围之间的小数
random.randint() 取某个范围的其中一个数[ ]
random.randrange() 取某个范围之间的其中一个数[ )
random.choice() 从一个列表中随机抽取一个值
random.sample() 从一个列表中随机抽取多个值
random.shuffle() 打乱一个列表的顺序,在原列表的基础上直接进行修改,节省空间
#数字+字母验证
def code(n = 6,alpha = True): s = ‘‘ for i in range(n): # 生成随机的大写字母,小写字母,数字各一个 if alpha: num = str(random.randint(0,9)) alpha_upper = chr(random.randint(65,90)) alpha_lower = chr(random.randint(97,122)) res = random.choice([num,alpha_upper,alpha_lower]) s += res else: num = random.randint(0, 9) s += str(num) return s print(code(4)) print(code())
#发红包
import random def hongbao(money,num): money = money*100 ret = random.sample(range(1,money),num-1) ret.sort() ret.insert(0,0) ret.append(money) for i in range(len(ret)-1): yield (ret[i+1]-ret[i])/100 re_g = hongbao(200,10) for i in re_g: print(i)
二.时间模块
时间戳换成字符串时间 print(time.time()) struct_time = time.localtime(1500000000) # print(time.gmtime(1500000000)) ret = time.strftime(‘%y-%m-%d %H:%M:%S‘,struct_time) print(ret)
字符串时间 转 时间戳 struct_time = time.strptime(‘2018-8-8‘,‘%Y-%m-%d‘) print(struct_time) res = time.mktime(struct_time) print(res)
三.sys模块
sys.argv 命令行参数List,第一个元素是程序本身路径
sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
改变环境变量 os.path.dirname(os.path.dirname(__file__))
四.os模块
os.makedirs(‘dirname1/dirname2‘) 可生成多层递归目录
os.removedirs(‘dirname1‘) 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除
os.mkdir(‘dirname‘) 生成单级目录
os.rmdir(‘dirname‘) 删除单级空目录
os.listdir(‘dirname‘) 列出指定目录下的所有文件和子目录,包括隐藏文件
os.remove() 删除一个文件
os.rename("oldname","newname") 重命名文件/目录
os.stat(‘path/filename‘).st_size 获取文件或目录大小
os.system(‘bash command‘) 运行shell命令,直接显示
os.popen(‘bash command‘).read() 运行shell命令,获取执行结果
os.getcwd() 获取当前工作目录.即当前python脚本工作的目录路径
os.chdir(‘dirname‘) 改变当前本工作目录:相当于shell下CD
os.path.abspath(path) 返回path规范化的绝对路径
os.path.split(path) 将path分割成目录和文件名二元组返回
os.path.dirname(path) 返回path的目录
os.path.basename(path) 返回path最后的文件名,如果path以/或结尾,那么就会返回空值.
os.path.exists(path) 判断path是否存在
os.path.isabs(path) 判断path是否是绝对路径
os.path.isfile(path) 判断path是否是文件
os.path.isdir(path) 判断path是否是目录
os.path.join(path1,path2) 将多个路径组合后返回
os.path.getsize(path) 返回path的大小
五.json模块
dumps loads
在内存中做数据转换:
dumps 做数据类型转成字符串(序列化)
loads 字符串转成数据类型(反序列化)
dump load
直接将数据类型写入文件,直接从文件中读出数据类型
dump 数据类型,写入文件(序列化)
load 文件读出数据类型(反序列化)
json是所有语言都通用的一种序列化格式
只支持列表,字典,字符串,数字
字典的key必须是字符串
不支持多次dump和多次load
六.pickle模块
支持python中几乎所有的数据类型
序列化的结果只能是字节
只能在python中使用
可以多次dump和多次load
以上是关于random模块 时间模块 sys模块 os模块 json模块 pickle模块的主要内容,如果未能解决你的问题,请参考以下文章
Python 常用模块 -- collections模块,time模块,random模块,os模块,sys模块
python内几种常用内置模块的介绍,包括time模块,datetime模块,random模块,os模块,sys模块,hashlib模块