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('\n'))
os.listdir / os.path.join
file_lst = os.listdir('D:\sylar\s15')
for path in file_lst:
print(os.path.join('D:\sylar\s15',path))
print('-->',os.getcwd()) # current work dir 当前工作目录
并不是指当前文件所在的目录
当前文件是在哪个目录下执行的
ret = os.popen('dir') # 是和做查看类的操作
s =ret.read()
print(s)
os.chdir('D:\sylar\s15\day18') # 切换当前的工作目录
ret = os.popen('dir') # 是和做查看类的操作
s =ret.read()
print(s)
random模块、time模块、sys模块、os模块的更多相关文章
- python note 17 random、time、sys、os模块
1.random模块(取随机数模块) # 取随机小数 : 数学计算 import random print(random.random())# 取0-1之间的小数 print(random.unifo ...
- python中sys和os模块的使用
在python中,sys,os模块是非常强大的,提供了许多对文件夹.文件和路径的操作方法 sys模块 sys.argv #命令行执行脚本,其实它就是一个列表 ,sys.argv[0] 是程序自身路 ...
- Python学习日记(八)—— 模块一(sys、os、hashlib、random、time、RE)
模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才 ...
- 【Python】 sys和os模块
sys sys模块能使程序访问于python解释器联系紧密的变量和函数 ● sys中的一些函数和变量 argv 命令行参数构成的列表 path 查找所有可用模块所在的目录名的列表 platform 查 ...
- sys、os 模块
sys 模块常见函数 sys.argv #命令行参数List,第一个元素是程序本身路径 sys.exit(n) #退出程序,正常退出时exit(0) sys.vers ...
- python的sys和os模块
一.sys sys.argv:实现从程序外部向程序传递参数. 其中sys.argv[0]为脚本的名称,所以要判断是否有参数传入可以:if len(sys.argv) > 1. sys.exi ...
- python笔记6 模块与包 程序开发规范 包 re sys time os模块
模块与包 python 模块首引用加载到内存,如果再次引用此模块,直接从内存中读取. python文件分为:执行文件(解释器运行的文件),被引用文件(import) 模块引用一共发生了3件事: 1.他 ...
- python学习笔记:sys、os模块
os模块:负责程序与操作系统的交互,提供了访问操作系统底层的接口; sys模块:负责程序与python解释器的交互,提供了一系列的函数和变量,用于操控python的运行时环境. --os 常用方法-- ...
- Python中sys和os模块的区别
sys: This module provides access to some variables used or maintained by the interpreter and to func ...
- 【Python】【有趣的模块】【sys&time&os】
[模块] sys.path.append('C:/Users/wangxue1/PycharmProjects/selenium2TestOne') 然后就可以直接import 这个路径下的模块了 [ ...
随机推荐
- Python练手例子(1)
1.有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. #本人的运行 ...
- MVC 向页面传值方式总结(1)
ViewData传值. HomeController.cs Co de: public ActionResult Index() { ViewData["Title" ...
- 泡泡一分钟:Cooperative Object Transportation by Multiple Ground and Aerial Vehicles: Modeling and Planning
张宁 Cooperative Object Transportation by Multiple Ground and Aerial Vehicles: Modeling and Planning 多 ...
- sort 用法
Sort函数有三个参数: (1)第一个是要排序的数组的起始地址. (2)第二个是结束的地址(最后一位要排序的地址) (3)第三个参数是排序的方法,可以是从大到小也可是从小到大,还可以不写第三个参数 ...
- Gym 101606B - Breaking Biscuits - [凸包+旋转卡壳][凸包的宽度]
题目链接:https://codeforces.com/gym/101606/problem/B 题解: 对于给出的 $n$ 个点,先求这些点的凸包,然后用旋转卡壳求出凸包的宽度(Width (min ...
- IDEA/Eclipse简易化使用的几个技巧
IDEA 易用性计较 代码自动提示,取消大小写限制 Ctrl+/生成的"//" 注释,不能跟代码块自动对齐 Eclipse 优化技巧目录 1.更改编码,统一全局的字体编码格式 2. ...
- memcached加固
Memcached服务安全加固 更新时间:2017-06-30 10:07:49 漏洞描述 Memcached是一套常用的key-value缓存系统,由于它本身没有权限控制模块,所以对公网开放的 ...
- 安装_oracle11G_客户端_服务端_链接_oracle
在开始之前呢,有一些注细节需要注意,oracle11G_客户端_和_服务端, 分为两种 一种是 开发者使用 一种是 BDA 自己使用(同时也需要根据自己 PC 的系统来做_win7_与 ...
- Android平台targetSdkVersion设置及动态权限
--关于Android动态权限和targetSdkVersion Android系统自6.0开始,提供动态权限机制,对于敏感权限(存储,定位,录音,拍照,录像等),需要在APP运行过程中动态向用户申请 ...
- Ionic3多个自定义过滤器--管道(pipe)
往往我们创建自定义管道一般都不止只会创建一个自定义管道,和自定义组件类似,创建多个方式如下. 一.命令行生成管道 ionic g pipe formateDate ionic g pipemoneyD ...