import random
print(random.random()) #(0,1)大于0且小于1之间的小数
print(random.randint(1,3)) #大于等于1且小于等于3之间的整数
print(random.randrange(1,3)) #大于等于1且小于3之间的整数
print(random.choice(1,'',[4,5])) #1或者23或者[4,5]
print(random.sample([1,'',[4,5]],2)) #列表中元素任意两个组合
print(random.uniform(1,3)) #大于1小于3的小数 item = [1,3,5,7,9]
random.shuffle(item) #打乱item的顺序,相当于"洗牌"
print(item) #改变的是原列表,不返回新列表

生成随机6位数字的验证码

 import random
def code(n=6):
s = ''
for i in range(n):
num = random.randint(0,9)
s += str(num)
return s
print(code())

生成随机6位数字+字母的验证码

 import random
def code(n=6):
s = ''
for i in range(n):
num = str(random.randint(0,9))
alpha_upper = chr(random.randint(65,90))#字母A-Z
alpha_lower = chr(random.randint(97,122))#字母a-z
res = random.choice([num,alpha_upper,alpha_lower])
s += res
return s
print(code())

2.time模块

在python中,有三种方式表示时间:

  时间戳(timestamp):时间戳表示从1970年1月1日00:00:00开始按秒计算的偏移量,返回的是float类型

  格式化的时间字符串(format string):如2018-08-20

  结构化的时间(struct_time):struct_time元组中共有9个元素(年,月,日,时,分,秒,一年的第几周,一年的第几天,夏令时)

 import time
print(time.time()) #1534765430.133902
print(time.strftime("%Y-%m-%d %H:%M:%S"))
#格式化的时间字符串:2018-08-20 19:45:47
print(time.localtime())
#本地时区的struct_time
(tm_year=2018, tm_mon=8, tm_mday=20, tm_hour=19, tm_min=46, tm_sec=54, tm_wday=0, tm_yday=232, tm_isdst=0)
print(time.gmtime())
#UTC时区的struct_time
(tm_year=2018, tm_mon=8, tm_mday=20, tm_hour=11, tm_min=48, tm_sec=25, tm_wday=0, tm_yday=232, tm_isdst=0)

# 1.查看一下2000000000时间戳时间表示的年月日
 import time
struct_time = time.localtime(2000000000)
format_time = time.strftime("%Y-%m-%d",struct_time)4 print(format_time)
# 2.将2008-8-8转换成时间戳时间
 import time
struct_time = time.strptime("2008-8-8","%Y-%m-%d")
timestamp = time.mtime(struct_time)
print(timestamp)
# 3.请将当前时间的当前月1号的时间戳时间取出来 - 函数
 import time
struct_time = time.localtime()
struct_time1 = time.strptime("%s-%s-1"%(struct_time.time_year,struct_time.time_mon),"%Y-%m-%d")
print(time.mktime(struct_time1))

 

# 4.计算时间差2018-8-19 22:10:8到2018-8-20 22:10:8经过了多少时分秒
 format_time1 = "2018-8-19 22:10:8"
format_time2 = "2018-8-20 11:07:3"
struct_time1 = time.strptime(format_time1,"%Y-%m-%d %H:%M:%S")
struct_time2 = time.strptime(format_time2,"%Y-%m-%d %H:%M:%S")
timestamp1 = time.mktime(struct_time1)
timestamp2 = time.mktime(struct_time2)
stime = timestamp2 - timestamp1
gm_time = time.gmtime(stime)
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))

3.sys模块

 import sys
sys.argv 命令行参数list,第一个元素是程序本身路径
sys.exit() 退出程序,正常退出时exit()
sys.version 获取python解释程序的版本信息
sys.path 返回模块的而搜索路径,初始化时使用PYTHONPATH环境变量的值

4.os模块

 import os
os.getcwd() 获取当前工作目录,即获取当前python脚本工作的目录路径
os.chdir("dirname") 改变当前脚本工作目录
os.makedirs("dirname1/dirname2") 可生成多层递归目录
os.removedirs("dirname") 若目录没空,则删除,并递归到上一级目录,如果也为空,则删除,以此类推
os.mkdir("dirname") 生成单级目录
os.rmdir("dirname") 删除单级空目录,若目录不为空则无法删除,报错
os.listdir("dirname") 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove() 删除一个文件
os.rename("oldname","newname") 重命名文件/目录
os.path.dirname(path) 返回path的目录
os.path.join(path1[path2[...]]) 将多个路径组合后返回,第一个绝对路径之前的参数被忽略
os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间
os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间

random,time,sys,os的更多相关文章

  1. python 常用模块(一): random , time , sys , os模块部分知识.

    1.常用模块:(1)collectiaons模块 (2)与时间相关  time模块 (3)random模块 (4)os模块 (5)sys模块 (6) 序列化模块: json  ,   pickle 2 ...

  2. day18 python模块 random time sys os模块

    day18 python   一.random模块     取随机整数 import random print(random.randint(1,2))                 #顾头顾尾 p ...

  3. random,time,sys,os,序列化模块

    random模块(随机数模块) 取随机小数: random.random() 取0-1之间的小数 random.uniform(x, y) 取x-y之间的小数 取随机整数: random.randin ...

  4. 第二十天 模块 sys os os下path settings random shuit

    一.sys模块 1.sys.argv 命令行参数List,第一个元素是程序本身路径 2.sys.exit(n) 退出程序,正常退出时exit(0) 3.sys.version 获取Pythonn解释程 ...

  5. PYTHON-模块 sys os random shutil-练习

    # 作业:# 添加工程根目录至环境变量 要求可以跨平台# import sys,os# BATH_DIR=os.path.dirname(os.path.dirname(__file__))# sys ...

  6. (转)python常用模块(模块和包的解释,time模块,sys模块,random模块,os模块,json和pickle序列化模块)

    阅读目录 1.1.1导入模块 1.1.2__name__ 1.1模块 什么是模块: 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代 ...

  7. Python常用模块sys,os,time,random功能与用法,新手备学。

    这篇文章主要介绍了Python常用模块sys,os,time,random功能与用法,结合实例形式分析了Python模块sys,os,time,random功能.原理.相关模块函数.使用技巧与操作注意 ...

  8. Python-hashlib、OS、Random、sys、zipfile模块

    # print(sys.version) #python 版本 # print(sys.path) # print(sys.platform) #当前什么系统 # print(sys.argv) #当 ...

  9. oldboy edu python full stack s22 day16 模块 random time datetime os sys hashlib collections

    今日内容笔记和代码: https://github.com/libo-sober/LearnPython/tree/master/day13 昨日内容回顾 自定义模块 模块的两种执行方式 __name ...

随机推荐

  1. c++实现游戏开发中常用的对象池(含源码)

    c++实现游戏开发中常用的对象池(含源码) little_stupid_child2017-01-06上传   对象池的五要素: 1.对象集合 2.未使用对象索引集合 3.已使用对象索引集合 4.当前 ...

  2. 插件化二(Android)

    插件化二(Android) 上一篇文章<插件化一(android)>里大概构思了下插件加载与校验的流程和一些大体设计,这次就具体展开,在<动态加载与插件化>里提到以apk形式开 ...

  3. C#抓取远程Web网页信息的代码

    来自:http://www.jb51.net/article/9499.htm 通过程序自动的读取其它网站网页显示的信息,类似于爬虫程序.比方说我们有一个系统,要提取BaiDu网站上歌曲搜索排名.分析 ...

  4. java多线程之wait和notify

    多线程中的通信是非常重要的概念,线程直接实现通信就可以并发完成很多复杂工作. java在Object类中就设计了wait()和notify()两个方法,以解决这个问题. 1.释义: wait()方法将 ...

  5. 使用wireshark抓包分析-抓包实用技巧

    目录 使用wireshark抓包分析-抓包实用技巧 前言 自定义捕获条件 输入配置 输出配置 命令行抓包 抓取多个接口 抓包分析 批量分析 合并包 结论 参考文献 使用wireshark抓包分析-抓包 ...

  6. C++模板的理解与使用

    最近发现原来学的东西根本都不理解,所以本人正在恶补C++,把自己对C++中概念的最简单粗暴的理解写下来. 有问题的地方还请指出~随时更正 模板:顾名思义,就是为了方便以后使用而出现的东西,生活中的模板 ...

  7. Django框架之前端渲染-模板层

      Django 模板层   Django 模板层 前后端数据传递 (1) 后端朝前端页面传递数据的方式: # 将当前所在的名称空间中的名字全部传递给前端页面 # 第一种 return render( ...

  8. 阿里云ECS发送企业邮件

    <?phpuse PHPMailer\PHPMailer\PHPMailer;require '../vendor/autoload.php'; $mail = new PHPMailer(tr ...

  9. vuex中使用对象展开运算符

    使用场景 当需要进行vuex进行数据状态管理的时候,会使用到mapGetters,mapState,还有自身的计算属性的时候,这个时候就会用到这个了! 1.首先需要安装 npm install bab ...

  10. [apue] popen/pclose 疑点解惑

    问题请看这里: [apue] 使用 popen/pclose 的一点疑问 当时怀疑是pclose关闭了使用完成的管道,因此在pclose之前加一个足够长的sleep,再次观察进程文件列表: 哈哈,这下 ...