本文源自白璽,创自白璽。转载请标注出处。本文参与掘金日新计划【博客搬家】
PythonPython 标准库
41 math库
41.1 math库的定义
math是Python标准库之一,提供了各种数学函数和常量。
41.2 math库代码和案例:
import math
# 求平方根
x = 9
print(math.sqrt(x))
# 求自然对数
y = 10
print(math.log(y))
# 求指定底数的对数
z = 16
print(math.log(z, 2))
# 求正弦值
angle = 45
angle_in_radians = math.radians(angle)
print(math.sin(angle_in_radians))
# 求余弦值
print(math.cos(angle_in_radians))
# 求正切值
print(math.tan(angle_in_radians))
# 求反正切值
print(math.atan(angle_in_radians))
# 求最大公约数
a = 36
b = 24
print(math.gcd(a, b))
# 求阶乘
n = 5
print(math.factorial(n))
# 求圆周率
print(math.pi)
# 求自然常数e
print(math.e)
输出:
3.0
2.302585092994046
4.0
0.7071067811865476
0.7071067811865476
0.9999999999999999
0.6657737500283538
12
120
3.141592653589793
2.718281828459045
这个示例代码展示了一些math库的常用函数,例如求平方根、对数、三角函数等等。此外,math库还提供了一些常数,例如圆周率π和自然常数e。
42 random库
42.1 random库的定义
random 是 Python 内置的用于生成随机数的库,可以用于模拟、游戏、密码学等场景。下面是 random 库的一些常见用法和代码示例:
42.2 生成随机整数
使用 randint(a, b) 函数生成一个区间 [a, b] 内的随机整数:
import random
# 生成一个 1 到 100 之间的随机整数
random_int = random.randint(1, 100)
print(random_int)
42.3 生成随机浮点数
使用 uniform(a, b) 函数生成一个区间 [a, b] 内的随机浮点数:
import random
# 生成一个 0 到 1 之间的随机浮点数
random_float = random.uniform(0, 1)
print(random_float)
42.4生成随机序列
使用 shuffle(seq) 函数将一个序列随机打乱:
import random
# 生成一个列表
seq = [1, 2, 3, 4, 5]
# 打乱列表的顺序
random.shuffle(seq)
print(seq)
42.5 从序列中随机选择一个元素
使用 choice(seq) 函数从一个序列中随机选择一个元素:
import random
# 从列表中随机选择一个元素
seq = [1, 2, 3, 4, 5]
random_choice = random.choice(seq)
print(random_choice)
42.6 生成随机字符串
使用 choices(population, weights=None, *, cum_weights=None, k=1) 函数生成一个由随机字符组成的字符串:
import random
import string
# 生成一个由随机字符组成的字符串
random_string = ''.join(random.choices(string.ascii_letters + string.digits, k=8))
print(random_string)
这里使用了 string 模块中的 ascii_letters 和 digits 字符串,分别表示大小写字母和数字。join() 函数用于将列表中的元素拼接成一个字符串。
43 random库
43.1 random库的定义
datetime库是Python中用于处理日期和时间的标准库,它提供了datetime、date、time和timedelta等类,可以方便地进行日期和时间的计算和操作。
43.2 获取当前日期和时间
import datetime
now = datetime.datetime.now()
print("当前时间是:", now)
43.3 格式化日期和时间
import datetime
now = datetime.datetime.now()
format_time = now.strftime("%Y-%m-%d %H:%M:%S")
print("当前时间是:", format_time)
43.4 创建日期和时间对象
import datetime
date_obj = datetime.date(2023, 3, 30)
time_obj = datetime.time(12, 30, 45)
print("日期对象:", date_obj)
print("时间对象:", time_obj)
43.5 计算日期和时间差
import datetime
date1 = datetime.date(2023, 3, 30)
date2 = datetime.date(2022, 3, 30)
delta = date1 - date2
print("日期差:", delta.days)
time1 = datetime.time(12, 30, 45)
time2 = datetime.time(10, 30, 45)
delta = datetime.timedelta(hours=time1.hour-time2.hour, minutes=time1.minute-time2.minute, seconds=time1.second-time2.second)
print("时间差:", delta)
43.6 将字符串转换为日期对象
import datetime
date_str = "2023-03-30"
date_obj = datetime.datetime.strptime(date_str, "%Y-%m-%d")
print("日期对象:", date_obj)
本文是结合ChatGPT的答案总结的知识点,有不足之处请大佬们给出反馈。