python3 time、random、hashlib模块

一、时间模块时间的几种形式:时间戳,结构化时间,字符串时间
import time
print(time.time())      # 仅仅是当前时间的时间戳  float
print(time.localtime())     # 时间对象
s = time.localtime()    # 结构化时间对象
s2 = time.gmtime()      # 结构化时间对象  UTC时间
print(s)
print(s2)

res0 = time.mktime(time.localtime())    # 将结构化时间  转化成  时间戳

res1 = time.localtime(1412414234)       # 将时间戳  转化成  结构化时间

res2 = time.strftime("%Y-%m-%d", time.localtime())  # 将结构化时间  转化成  字符串时间

res3 = time.strptime("1900:03:12", "%Y-%m-%d")      # 将字符串时间  转化成  结构化时间

res4 = time.asctime()       # 将结构化时间  转化成  固定合适字符串时间 ‘Sun Nov 25 10:03:43 1979‘

res5 = time.ctime()     # 将时间戳  转化成  固定格式字符串时间 ‘Sun Nov 25 10:03:43 1979‘

res6 = time.sleep()     # 睡几秒,暂停几秒

  

二、随机数模块

import random

print(random.random())      # (0, 1) float类型

print(random.uniform(1, 3))     # float类型

print(random.randint(1, 3)) # [1, 3]  int

print(random.randrange(1, 3))   #[1, 3) int

print(random.choice([1, 2, ‘hello‘]))  # 随机

print(random.sample((1, 5), 2))    # 列表元素任意两个组合

l = [111, 222, 333, 444]
# random.shuffle(l)
print(random.shuffle(l))
# 练习:五位数字大小写字母验证码
def valdate_code():
    ret = ""
    for i in range(5):
        num = random.randint(0, 9)
        alfa = chr(random.randint(97, 122))
        alfa2 = chr(random.randint(65, 90))
        s = random.choice([str(num), alfa, alfa2])
        ret = ret + s
    return ret
print(valdate_code())
三、摘要算法hashlib摘要算法应用1:文件一致性校验
# md5计算import hashlib

md5_obj=hashlib.md5()
md5_obj.update(b"helloworld")

print(md5_obj.hexdigest())  #  fc5e038d38a57032085441e7fe7010b0
# 如果数据量大,可以分块调用update,下面的计算值跟直接计算‘yuanhelloworld’值一样import hashlib

md5_obj=hashlib.md5()

md5_obj.update(b"yuan")
md5_obj.update(b"helloworld")

print(md5_obj.hexdigest())  #423bf62926c0e5bfba81a94977fdb224
摘要算法应用2:登录
username                pwd

admin                 admin
4523453452345         4732467812364342423
4523453452345         31423149238147982

admin             -----------  4732467812364

adminjindongdf    -----------  4732467812364342423

root              -----------  892345789432

12345678          -----------  6732456784325

 加盐处理

salt
md5_obj=hashlib.md5("salt")
md5_obj.update("admin")      # saltadmin

  

时间: 2024-12-29 11:24:33

python3 time、random、hashlib模块的相关文章

python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib subprocess logging re正则

python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib  subprocess logging re正则 转自老男孩老师Yuan:http://www.cnblogs.com/yuanchenqi/articles/5732581.html 模块&包(* * * * *) 模块(modue)的概念: 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,

常用模块(time,os,random,hashlib)

time模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行"type(time.time())",返回的是float类型. 格式化的时间字符串(Format String) 结构化的时间(struct_time):struct_time元组共有9个元素共九个元素:(年,月,日,时,分,秒,一年中第几周,一年中第几天,夏令时) 1 import time 2 #--

python---基础知识回顾(四)(模块sys,os,random,hashlib,re,json,xml,shutil,configparser,logging,datetime,time,集合,堆,双端队列,其他)

前提:dir,__all__,help,__doc__,__file__ dir:可以用来查看模块中的所有特性(函数,类,变量等) >>> import copy >>> dir(copy) ['Error', 'PyStringMap', '_EmptyClass', '__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package_

python3.7 random模块

#!/usr/bin/env python __author__ = "lrtao2010" #python3.7 random模块 import random #随机模块 # res0 = random.random() #从0~1中间随机产生一个小数点后16位的浮点数 # res1 = random.uniform(1,3) #从1~3中间随机产生一个小数点后16位的浮点数 # res2 = random.randint(1,3) #[1,3] # res3 = random.ra

模块讲解---time模块,datetime模块,random模块,hashlib模块和hmac模块,typing模块,requests模块,re模块

目录 1. 包 2. time模块 ??1. 优先掌握 2. 了解 3. datetime模块 ??1. 优先掌握 4. random模块 ??1. 优先掌握 ??2. 了解 5. hashlib模块和hmac模块 6. typing模块 7. requests模块 8. re模块 ??1. re模块的正则表达式的元字符和语法 ??2. 贪婪模式和非贪婪模式 ??3. 匹配邮箱实例 ??4. re模块中的常用功能函数 ??5. 修饰符 re.S ??6. 补充 目录 \1. 包 1. 优先掌握

python 正则,os,sys,hashlib模块

简单的小算法 random随机获取数据 import random def getrandata(num): a=[] i=0 while i<num: a.append(random.randint(0,100)) i+=1 return a print(getrandata(10)) 例: [5, 3, 38, 4, 69, 40, 94, 36, 14, 26] 冒泡排序 import getdata def bubbleSort(a): l=len(a)-2 i=0 while i<l

Python操作数据库及hashlib模块

一.hashlib模块 hashlib模块,主要用于加密相关的操作,在python3的版本里,代替了md5和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法 import hashlib #导入模块 ######## md5 ########### m = hashlib.md5() #创建一个对象 m.update(b"hhf") #加密字符串 b代表byte,是把字符串转换成byte类型,也可以用bytes()强制转换

python - 常用模块 - hashlib模块

python3中的hashlib库主要是为大家提供了python中常用的加密方式 其中SHA1官方不再支持,不建议用.md5()的安全性不如SHA2,所以推荐使用SHA2做加密算法 hashlib里面的加密方式都是单向加密,没有反加密方式,所以在使用时,比如密码验证,在数据库里面存储的是加密后的值,再把用户输入的密码进行相同加密方式,再对比 hashlib里面主要提供 md5, sha1, sha224, sha256, sha384, sha512 算法各种加密算法在使用上,只是声明加密方式的

shelve和hashlib模块

一.shelve模块 shelve模块是一个简单的k,v将内存数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据格式. 注意: shelve模块封装了pickle模块,,允许多次dump和load,但只能在python中使用,比pickle要强大许多. #!/usr/bin/env python3 #-*- coding:utf-8 -*- import shelve f = shelve.open('shelve_test') # 打开文件 names = ['yr'

python的内置模块random随机模块方法详解以及使用案例(五位数随机验证码的实现)

1.random(self): Get the next random number in the range [0.0, 1.0) 取0到1直接的随机浮点数 import random print(random.random()) C:\python35\python3.exe D:/pyproject/day21模块/random随机模块.py 0.3105503800442595 2.randint(self, a, b) Return random integer in range [a