初学者python笔记(time模块、random模块)

本篇主要是关于Python中的time模块和random模块的内容,这两个模块的常见用法也都有所举例

time模块

时间戳:

从1970年1月1日(Unix诞生时间)开始算起的所有秒数

print(time.time())	#表示输出当前的秒数
两种结构化时间:

返回值分别是年,月,日,时,分,秒,星期,一年的第几天

  1. time.localtime() (表示输出当前的时间)
import time

t = time.localtime()  #获取当前时间

传入参数:

#传入对应的参数可以取出对应的时间值,格式为变量名.参数名
#如取下取出当前时间的全部信息:
print('当前时间为:{}年{}月{}日{}时{}分{}秒,本年的第{}天'.format(
    t.tm_year, t.tm_mon, t.tm_mday, t.tm_hour, t.tm_min, t.tm_sec, t.tm_yday))
  1. time.gmtime()(根据时区来分的结构化时间)

  2. 将时间戳转换成结构化时间:time.time()
    如,

import time
print(time.localtime(time.time()))  #参数为自定义的秒数

结果:
time.struct_time(tm_year=2020, tm_mon=3, tm_mday=8, tm_hour=23, tm_min=54, tm_sec=54, tm_wday=6, tm_yday=68, tm_isdst=0)

  1. 将结构化时间转换成时间戳:time.mktime()
    如,
import time
print(time.mktime(time.localtime()))  #参数为对应的结构化时间

结果:
1583682873.0

  1. 输出标准格式的时间
import time
print(time.strftime("%Y-%M-%D %X",time.localtime()))

结果:
2020-54-03/08/20 23:54:10

  1. 将字符串时间转换成结构化时间
import time
print(time.strptime("2020:3:8:21:57:36", "%Y:%m:%d:%X"))

结果:
time.struct_time(tm_year=2020, tm_mon=3, tm_mday=8, tm_hour=21, tm_min=57, tm_sec=36, tm_wday=6, tm_yday=68, tm_isdst=-1)

  1. 方便又直观的时间(两个方法基本相同)
import time
print(time.asctime())
print(time.ctime())

结果:
Sun Mar 8 23:53:24 2020
Sun Mar 8 23:53:24 2020

  1. 最直观的时间
import datetime
print(datetime.datetime.now())

结果:
2020-03-08 23:52:49.954184

random模块

说白了就是随机模块,得到随机数,或者随机的其他元素
import random
print(random.random())  #一个0到1的随机浮点数

print(random.randint(1,5))  #输出一个1到5的随机数

print(random.randrange(1,5))  #1到4的随机数(randrange少用)

print(random.choice([520,13,14]))  #从几个元素中选择1个(传入的参数是一个列表,勿忘中括号)

a,b = random.sample([520,13,14],2)  #从几个元素中选择2个,第二个参数为需要选的个数
print(a,b)

print(random.uniform(1,5))  #从1到5范围的浮点数

ret = [1,2,3,4,5]
random.shuffle(ret)  #将顺序打乱
print(ret)

运行结果:
0.12082253858819325
1
3
13
13 520
1.295247508908592
[1, 4, 2, 5, 3]

写一个生成随机验证码的函数
import random

def code():
    ret=''
    for i in range(4):  #遍历4次,得到4位的验证码
        num = random.randint(0,9)  #0到9的随机数
        alf = chr(random.randint(65,122))  #传入ASCII码,转成对应字符,这里是大小写字母的ASCII码
        s = str(random.choice([num,alf]))  #从字母和数字中选择一个,再转成字符串类型
        ret+=s  #字符串拼接
    return ret  #返回拼接好的字符串
print(code())  #调用函数,输出返回值

输出当前执行文件的绝对路径:
print(__file__)

运行结果:
572Y

好了,time、random这两个非常常用的模块的基本功能和用法就总结完了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章