时间模块和random模块

time模块

from time import *  # 导入模块

sleep(seconds)

睡眠 。

time()

获取当前时间,以时间戳的方式的返回。

时间戳 - 通过时间差来表示具体时间(格林威治时间),指定时间到1970年1月1日0时0分0秒之间的时间差(秒)。

t1 = time()
print(t1)  # 1661476309.9087284 时间戳

localtime()

获取本地当前时间,以结构体时间返回。

t2 = localtime()
print(t2)  # time.struct_time(tm_year=2022, tm_mon=8, tm_mday=26, tm_hour=9, tm_min=27, tm_sec=47, tm_wday=4, tm_yday=238, tm_isdst=0)

mktime()

结构体时间转换成时间戳。

t3 = mktime(t2)
print(t3)  # 1661477762.0

strftime(时间格式,结构体时间)

结构体时间转换成字符串

result1 = strftime('%Y年%m月%d日%H时%M分%S秒',t2)
print(result1)  # 2022年08月27日09时20分06秒

strptime(字符串时间,时间格式)

字符串时间转换成结构体时间。

result2 = strptime(result1,'%Y年%m月%d日%H时%M分%S秒')
print(result2)

datetime模块

from datetime import datetime,timedelta

datetime类

datetime.today()和datetime.now()

获取当前时间。

datetime(y,m,d)

根据时间值创建时间对象。

t3 =datetime(2022,5,6)
print(t3)  # 2022-05-06 00:00:00
datetime.strptime()

根据时间字符串创建时间对象。

t4 = datetime.strptime('2022/8/26','%Y/%m/%d')
print(t4)  # 2022-08-26 00:00:00
时间对象.时间名

单独获取具体的时间信息。

print(t4.year)  # 2022
datetime.strftime()

将时间对象转换成字符串时间

t5 = datetime.strftime(t4,'%Y/%m/%d')
print(t5)
时间差:时间对象 1-时间对象2
t1 = datetime(2022,8,26,9,10)
t2 = datetime(2015,5,6,8,6)
result = t1 - t2
print(result)  # 2669 days, 1:04:00
print(result.days,result.seconds)  # 2669 3840
timetuple()

时间对象转换成结构体。

result = t1.timetuple()
print(result)  # time.struct_time(tm_year=2022, tm_mon=8, tm_mday=26, tm_hour=9, tm_min=10, tm_sec=0, tm_wday=4, tm_yday=238, tm_isdst=-1)
timestamp()

时间对象转换成时间戳。

print(t1.timestamp())  # 1661476200.0

timedelta类

时间间隔类

t1 = datetime(2022,1,5,6,5,1)
print(t1)  # 2022-01-05 06:05:01

# 10天以后对应的时间
result = t1 + timedelta(days=10)
print(result)  # 2022-01-15 06:05:01

# 5天6小时之前
result = t1 - timedelta(days=5,hours=6)
print(result)  # 2021-12-31 00:05:01

random模块

from random import randint,random,randrange,sample,choice,choices,shuffle

random()

产生0-1的随机小数

round(参数,控制位数)

控制小数位数(四舍五入)。

xiaoshu = random()  # 产生0-1的随即小数
print(round(xiaoshu, 2))  # 0.98

# 产生0-20的随机小数
xnum = 20 * random()

# 产生5-30的随机小数
cnum = 5 + 25*random()

randrange()

在指定等差数列中随机获取元素

print(range(1, 10, 2))  # range(1, 10, 2)
print(randrange(1, 10, 2))  # 5

sample(序列,随机获取元素个数)

在序列中随机获取指定个数的元素,产生一个新列表(无放回抽样)。

a = '大数据拉开门了klak'
print(sample(a, 2))   # 在序列a中随机获取两个元素

choice()

在序列中随机获取一个元素。

choices(序列,权重,求和权重,数量)

在序列中随机获取指定数量个元素;有放回抽样。

权重:序列中元素的数量占比。

print(choices([10, 20, 30, 40, 22], [1, 1, 1, 1,1], k=3))  # 权重相当于列表中的元素的数量;[1, 1, 1, 1,1]:每个元素的数量都为一。

shuffle(只能给列表)

洗牌

nums = [50, 10, 32, 8]
print(shuffle(nums))
  在序列中随机获取指定数量个元素;有放回抽样。

权重:序列中元素的数量占比。

```python
print(choices([10, 20, 30, 40, 22], [1, 1, 1, 1,1], k=3))  # 权重相当于列表中的元素的数量;[1, 1, 1, 1,1]:每个元素的数量都为一。

shuffle(只能给列表)

洗牌

nums = [50, 10, 32, 8]
print(shuffle(nums))
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值