1.内置模块
①time 模块
import time
# 暂停程序的执行,参数为秒
time.sleep(3) # 暂停 3 秒再执行后续代码
sleep() 方法用于暂停程序的执行,参数为秒。它可以用于防止程序执行过快,比如爬取数据时降低爬取速率防止被封等。
若要获取当前时间可以用ctime()方法,如:
import time
print(time.ctime())
#输出:
Sun Jun 30 23:29:39 2024
②datetime 模块
datetime 模块包括很多函数和类,这些函数和类均用于日期和时间的解析、格式化以及计算。
import datetime
#获取当前时间
print(datetime.datetime.now())
#输出:
2024-06-30 23:30:04.880673
datetime.now() 和 time.ctime() 类似,都是获取人类可读的时间格式,只是 datetime.now() 没有星期几的信息。
有些时候我们还要进行日期的计算,比如 8 天前是几月几号
from datetime import datetime, timedelta
print(datetime.now() - timedelta(days=8))
#输出:
2024-06-22 23:30:19.299785
timedelta() 在日期计算中很实用,上面代码中的 timedelta(days=8) 表示 8 天,用现在的时间减去 8 天就能得到 8 天前的日期。同理,如果加上 8 天就能得到 8 天后的日期了。
调用 timedelta() 时传的是关键字参数 days=8,表示 8 天。8除了天之外,timedelta() 还支持传入周、时、分、秒、毫秒和微秒,同时timedelta() 可以支持传入多个参数,比如计算一天半前的时间:
from datetime import datetime, timedelta
print(datetime.now() - timedelta(days=1.5))
#输出:
2024-06-29 11:32:36.674150
③random 模块
random 模块主要用于生成随机数,代码演示如下:
import random
#导入random模块
print(random.random())
#随机生成0-1之间的浮点数,包括0,不包括1
print(random.randint(0,8))
#随机生成0-8之间的整数。包括0和8
print(random.uniform(0,9))
#随机生成0-9之间的浮点数。包括0和9
print(random.choice([2,5,8]))
#从列表中随机返回一个元素
#输出:
0.7636515569201496
6
0.737708232523044
8
这里要注意:random.randint() 和 random.uniform() 生成的随机数是包含后面一个数的,这点和 random.random() 还有分片不同。
而random.choice() 可以从一个非空序列中随机返回一个元素,但是要注意参数一定得是非空序列,否则将会报错。