Python+radar实现随机日期时间的生成
简介
Python有广泛丰富的第三方库,在没有特殊定制下,避免了重复造轮子。若我们想获取随机时间,可以自己写一个,但也可以通过第三方库,如radar,它支持生成随机的日期、时间。
关联攻略
Python内置库:数据计算相关 - math,random
使用示例代码
# # 常用数学计算相关列举
import math
import random
# 求和 = 10
print(sum([1, 2, 3, 4]))
# 最大值 = 4
print(max([1, 2, 3, 4]))
# 最小值 = 1
print(min([1, 2, 3, 4]))
# 绝对值 = 10
print(abs(-10))
# 向上取整 = 4
print(math.ceil(3.141))
# 向下取整 = 3
print(math.floor(3.941))
# 四舍五入 = 3.9
print(round(3.941, 1))
# m 的 n次方 = 3*3*3*3 = 81.0
print(math.pow(3, 4))
# 开平方 = 二次方根 = 6.0
print(math.sqrt(36))
# 开平方 = 二次方根 = 6.0
print(math.sqrt(36))
# 拆分小数和整数 = (0.72, 1.0)
print(math.modf(1.72))
# 圆周率
print(math.pi)
# 自然对数
print(math.e)
# 随机数模块
# 随机获取0~1小数
print(random.random())
# 重新洗牌 = 打乱原有顺序,无返回值。返回值为None
list1 = [1, "a", 9, "b", "c", 3]
random.shuffle(list1)
print(list1)
# 获取范围内随机的整数, !!!可以取到右边。
print(random.randint(5, 6))
力扣某题中使用向上取整的案例
桌上有n
堆力扣币,每堆的数量保存在数组coins
中。我们每次可以选择任意一堆,拿走其中的一枚或者两枚,求拿完所有力扣币的最少次数。
示例 1:
输入:[4,2,1]
输出:4
解释:第一堆力扣币最少需要拿 2 次,第二堆最少需要拿 1 次,第三堆最少需要拿 1 次,总共 4 次即可拿完。
示例 2:
输入:[2,3,10]
输出:8
import math
class Solution:
def minCount(self, coins: list[int]) -> int:
import math
# 如果第 i 堆 除以 2 不是整数。则向上取整。然后求和。
return sum([int(math.ceil(i / 2)) for i in coins])
if __name__ == '__main__':
s = Solution()
coins = [4, 2, 1]
s.minCount(coins)
安装
pip install radar
radar主要函数:
1、random_date()
2、random_datetime()
3、random_time()
参数说明
start:指定范围的开始时间,默认:1970-01-01
stop:指定范围的结束时间,默认:datetime.date.today()
使用
# -*- coding: utf-8 -*-
# time: 2022/4/30 23:40
# file: test.py
# 公众号: 玩转测试开发
import radar
print(radar.random_date()) # 随机:年月日
print(radar.random_datetime()) # 随机:年月日 时分秒
print(radar.random_time()) # 随机:时分秒
print("*" * 20)
print(radar.random_date("2000-01-01", "2970-01-01")) # 指定范围内随机:年月日
print(radar.random_datetime("1999-07-12T14:12:06", "2099-07-12T14:12:06")) # 指定范围内随机:年月日 时分秒
print(radar.random_time("1999-07-12T14:12:06", "1999-07-12T22:12:06")) # 指定范围内随机:时分秒
运行结果:
到此这篇关于Python+radar实现随机日期时间的生成的文章就介绍到这了,更多相关Python随机日期时间内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341