首页 > 代码库 > 常用模块
常用模块
一 time模块
在Python中,通常有这三种方式来表示时间:时间戳、元组(struct_time)、格式化的时间字符串:
(1)时间戳(timestamp) :通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time())”,返回的是float类型。
(2)格式化的时间字符串(Format String): ‘1988-03-16’
(3)元组(struct_time) :struct_time元组共有9个元素共九个元素:(年,月,日,时,分,秒,一年中第几周,一年中第几天等)
# <1> 时间戳 >>> import time >>> time.time() #--------------返回当前时间的时间戳 1493136727.099066 # <2> 时间字符串 >>> time.strftime("%Y-%m-%d %X") ‘2017-04-26 00:32:18‘ # <3> 时间元组(结构化时间) >>> time.localtime() #我们所在时区的时间
>>> time.gmtime() #标准时间
小结:时间戳是计算机能够识别的时间;时间字符串是人能够看懂的时间;时间元组(结构化时间)则是用来操作时间的
1.
import time # print(time.mktime(time.localtime())) # print(time.mktime(time.gmtime())) #time.gmtime将结构化时间转化成时间戳 # print(time.localtime(365*3600*24)) # print(time.gmtime(365*3600*24)) #将时间戳转化成结构化时间 # print(time.strftime("%Y-%m-%d %X",time.localtime())) #结构化时间转化成字符串时间 # print(time.strptime("2017-04-26","%Y-%m-%d")) #字符串时间转化成结构化时间
2.
# print(time.asctime()) #固定格式显示当前时间 # print(time.asctime(time.localtime())) # print(time.asctime(time.localtime(1233333223)))#显示设定时间戳的字符串时间 # print(time.ctime()) #固定格式显示当前时间 # print(time.ctime(1119234234))
#--------------------------其他方法 # sleep(secs) # 线程推迟指定的时间运行,单位为秒。
二 random模块
>>> import random >>> random.random() # 大于0且小于1之间的小数 0.7664338663654585 >>> random.randint(1,5) # 大于等于1且小于等于5之间的整数 >>> random.randrange(1,3) # 大于等于1且小于3之间的整数 >>> random.choice([1,‘23‘,[4,5]]) # #1或者23或者[4,5] >>> random.sample([1,‘23‘,[4,5]],2) # #列表元素任意2个组合 [[4, 5], ‘23‘] >>> random.uniform(1,3) #大于1小于3的小数 1.6270147180533838 >>> item=[1,3,5,7,9] >>> random.shuffle(item) # 打乱次序 >>> item [5, 1, 3, 7, 9] >>> random.shuffle(item) >>> item [5, 9, 7, 1, 3]
练习:生成验证码
import random def v_code(): code = ‘‘ for i in range(5): num=random.randint(0,9) alf=chr(random.randint(65,90)) add=random.choice([num,alf]) code="".join([code,str(add)]) return code print(v_code())
三 hashlib
Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等。
什么是摘要算法呢?摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示)。
摘要算法就是通过摘要函数f()对任意长度的数据data计算出固定长度的摘要digest,目的是为了发现原始数据是否被人篡改过。
摘要算法之所以能指出数据是否被篡改过,就是因为摘要函数是一个单向函数,计算f(data)很容易,但通过digest反推data却非常困难。而且,对原始数据做一个bit的修改,都会导致计算出的摘要完全不同。
我们以常见的摘要算法MD5为例,计算出一个字符串的MD5值:
常用模块
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。