random模块time模块sys模块os模块
Posted sypx
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了random模块time模块sys模块os模块相关的知识,希望对你有一定的参考价值。
一、random模块
1.随机取小数 (数学计算)
print(random.random()) #取0-1之间的小数
print(random.uniform(3,6)) #uniform(n,m)取一个范围之间的小数
2.取随机整数 (抽奖)
print(random.randint(1,2)) #顾头顾尾 或 [1,2]
print(random.randrange(1,2)) #顾头不顾尾 [1,2)
print(random.randrange(1,100,2)) #取1-99之间的奇数
3.从一个列表中随机抽取值 (抽奖)
lis = [‘a‘,‘b‘,(1,2,3),123,456] print(random.choice(lis)) #从列表中随机抽取一项元素
lis = [‘a‘,‘b‘,(1,2,3),123,456] print(random.sample(lis,2)) #从列表中随机抽取两项元素
choice直接用两次与sample一次取两个元素的区别:
lis = [‘a‘,‘b‘,(1,2,3),123,456] print(random.choice(lis)) print(random.choice(lis)) print(random.sample(lis,2))
choice两次取到的值可能是相同的,而sample一次取到的两个元素是不相同的,也就是说:sample取到的值是不重复的
4.打乱一个列表的顺序,在原来列表的基础上进行修改,节省空间 (洗牌)
random.shuffle(lis) print(lis)
二、time模块
1.时间戳时间
print(time.time())
2.结构化时间
print(time.strftime("%Y-%m-%d")) print(time.strftime("%y-%m-%d")) print(time.strftime(‘%c‘))
3.时间戳时间转换成字符串时间(格式化时间)
cishi = time.time() #此刻的时间戳 struct_time = time.localtime(cishi) #将时间戳时间转成结构化时间 timestamp = time.strftime("%Y-%m-%d %H:%M:%S",struct_time) #将结构化时间转成格式化时间 print(timestamp)
4.将字符串时间转换成时间戳时间
struct_time = time.strptime("2018-8-20","%Y-%m-%d") #将格式化时间转换成结构化时间 print(time.mktime(struct_time)) #再转换成时间戳时间
5.练习题
(1) 查看一下2000000000时间戳时间表示的年月日
struct_time = time.localtime(2000000000) result = time.strftime("%Y-%m-%d",struct_time) print(result)
(2) 将2018-8-20换成时间戳时间
struct_time = time.strptime("2018-8-20","%Y-%m-%d") print(time.mktime(struct_time))
(3) 请将当前时间的当前月1号的时间戳时间取出来 - 函数
def get_time(): struct_time = time.localtime() ret = time.strptime("%s-%s-1"%(struct_time.tm_year,struct_time.tm_mon),"%Y-%m-%d") return time.mktime(ret) print(get_time())
(4) 计算时间差 - 函数 2018-8-19 22:10:8 2018-8-20 11:07:3 经过了多少时分秒
t1 = ‘2018-8-19 22:10:8‘ t2 = ‘2018-8-20 11:07:3‘ struct_time1 = time.strptime(t1,‘%Y-%m-%d %H:%M:%S‘) struct_time2 = time.strptime(t2,‘%Y-%m-%d %H:%M:%S‘) timestamp1 = time.mktime(struct_time1) timestamp2 = time.mktime(struct_time2) result = timestamp2-timestamp1 gm_time = time.gmtime(result) #伦敦时间 print(‘过去了%d年%d月%d天%d小时%d分钟%d秒‘%(gm_time.tm_year-1970,gm_time.tm_mon-1, gm_time.tm_mday-1,gm_time.tm_hour,gm_time.tm_min,gm_time.tm_sec))
三、sys模块 (是和python解释器打交道的)
1.sys.argv
print(sys.argv) #argv是python这个命令后面的值 usr = sys.argv[1] pwd = sys.argv[2] if usr == ‘alex‘ and pwd==‘alex3741‘: print("登陆成功") else: exit()
2.sys.path
3.sys.modules
print(sys.modules) print(sys.modules[‘re‘].findall("d+","abc123")) #我们导入内存中所有模块的名字,这个模块的内存地址
四、os模块 (是和操作系统交互的模块)
1.
os.makedirs(‘dir1/dir2‘) os.mkdir(‘dir3‘) os.mkdir(‘dir3/dir4‘)
2.只能删空文件夹
os.rmdir(‘dir3/dir4‘) os.removedirs(‘dir3/dir4‘) os.removedirs(‘dir1/dir2‘)
3.程序要处理这些路径
ret = os.popen(‘dir) # 是和做查看类的操作 s =ret.read() print(s) print(s.split(‘ ‘))
os.listdir / os.path.join file_lst = os.listdir(‘D:sylars15‘) for path in file_lst: print(os.path.join(‘D:sylars15‘,path))
print(‘-->‘,os.getcwd()) # current work dir 当前工作目录
并不是指当前文件所在的目录
当前文件是在哪个目录下执行的
ret = os.popen(‘dir‘) # 是和做查看类的操作
s =ret.read()
print(s)
os.chdir(‘D:sylars15day18‘) # 切换当前的工作目录 ret = os.popen(‘dir‘) # 是和做查看类的操作 s =ret.read() print(s)
以上是关于random模块time模块sys模块os模块的主要内容,如果未能解决你的问题,请参考以下文章
模块( collections , time , random , os , sys)
python笔记-----模块(time,os,sys,random,shutil)
day6 模块time datetime random os sys json pikle
python内几种常用内置模块的介绍,包括time模块,datetime模块,random模块,os模块,sys模块,hashlib模块