Python基础 ( 九 ) —— 模块之 time、random
#time模块
#time模块是用C语言写的,跟python解释器一个级别,本身就在python中,没有单独的time.py文件
#时间戳(timestamp)
time.time() #值为浮点型秒数,从1970年(unix诞生的时间)1月1日00:00开始到现在的秒数
#结构化时间(以下代码()内默认是time.time 也就是时间戳)
time.localtime() #包含了各种的时间信息,以下为调用方法 (当地时区的时间)
time.gmtime() #跟上面只有一个区别,为国际标准时间即格林威治时间 UTC

import time t0=time.localtime() t1=time.localtime(14511231654) #将括号内的秒数当做时间戳转换为年份 print(t0) print(t1) print(time.gmtime())
time.mktime() #结构化时间转换为时间戳
import time t0=time.localtime() print(time.mktime(t0))
#字符串时间
time.strftime() #格式化时间转字符串时间
time.strptime() #字符串时间转格式化时间,时间格式要对上
import time
t0=time.localtime()
data=time.strftime('%Y-%m-%d %X',t0) #这里的 %X代表 %H:%M:%S 时:分:秒
print(data)
print(time.strptime('2019-3-1 00:00:00','%Y-%m-%d %X'))
#或者
print(time.strptime(data,'%Y-%m-%d %X'))
time.asctime() #将结构化时间直接以规定格式输出
time.ctime() #将时间戳直接以规定格式输出
import time t0=time.localtime() print(time.asctime(t0))
#等于以下 print(time.strftime('%a %b %d %H:%M:%S %Y'))
总结为以下两张图


#datetime 模块的一个小应用
import datetime print(datetime.datetime.now()) #这种格式的字符串时间看着更顺眼
#random模块
import random
print(random.random()) # 随机[0,1]之间的浮点数
print(random.uniform(1,3)) # 随机[1,3]之间的浮点数
print(random.randint(1,5)) # 随机[1,5]之间的整数
print(random.randrange(1,3)) # 随机[1,3)之间的整数
print(random.choice(['a','b','c'])) # 随机一个可迭代对象里的值
print(random.sample(['a','b','c'],2)) # 随机两个个可迭代对象里的值
a = [1,2,3,4,5]
random.shuffle(a) # 打乱次序(shuffle为洗牌的意思)
print(a)
#做一个简单的验证码函数
import random def _random(_range): ret = '' for i in range(1,_range): num = random.randint(0,9) alf1 = chr(random.randint(65,90)) #ASCII码表中的大小写英文字母 alf2 = chr(random.randint(97,122)) alf = random.choice([alf1,alf2]) string = str(random.choice([num,alf])) #数字和字母二选一 ret += string return ret print(_random(5))
#小补充
#临时修改环境变量
import sys sys.path.append('路径')
#永久修改需要在操作系统里添加上环境变量\
#__file__的值为执行文件的文件名,但pycharm会自动给你加上绝对路径
#将当前执行文件的目录的上一级添加进环境变量
import os,sys base_path=os.path.dirname(os.path.dirname(__file__)) #返回当前执行文件目录的上一级 sys.path.insert(0,base_path) print(sys.path)
#获取当前执行文件的绝对路径
os.path.abspath(__file__)

浙公网安备 33010602011771号