首页 > 编程语言 >python常用库(一)

python常用库(一)

时间:2024-04-03 22:31:17浏览次数:21  
标签:返回 常用 迭代 python datetime math import iterable

文章目录

python常用库

1、math库

import math
1.1、常量
math.pi: π的值,大约为3.14159。
math.e: 自然对数的底数e,大约为2.71828。
math.tau: τ的值,等于2π,大约为6.28318。
math.inf: 表示正无穷大。
math.nan: 表示非数字(Not a Number)。
1.2、数值运算函数
math.ceil(x): 返回大于或等于x的最小整数。
math.floor(x): 返回小于或等于x的最大整数。
math.fabs(x): 返回x的绝对值,作为浮点数。
math.factorial(x): 返回x的阶乘,x必须是整数。
math.fmod(x, y): 返回x除以y的余数,对于浮点数运算更精确。
math.exp(x): 返回e的x次幂。
math.log(x[, base]): 返回x的对数,默认以e为底,可以设置base参数来改变对数的底。
math.pow(x, y): 返回x的y次幂。
math.sqrt(x): 返回x的平方根。
1.3、三角函数
math.sin(x): 返回x(弧度)的正弦值。
math.cos(x): 返回x(弧度)的余弦值。
math.tan(x): 返回x(弧度)的正切值。
math.asin(x): 返回x的反正弦值,结果在-π/2到π/2之间。
math.acos(x): 返回x的反余弦值,结果在0到π之间。
math.atan(x): 返回x的反正切值,结果在-π/2到π/2之间。
math.atan2(y, x): 返回给定的X和Y坐标值的反正切值。
1.4、双曲函数
math.sinh(x): 返回x的双曲正弦值。
math.cosh(x): 返回x的双曲余弦值。
math.tanh(x): 返回x的双曲正切值。
math.asinh(x): 返回x的反双曲正弦值。
math.acosh(x): 返回x的反双曲余弦值。
math.atanh(x): 返回x的反双曲正切值。
1.5、其他函数
math.isfinite(x): 如果x既不是无穷大也不是NaN,则返回True。
math.isinf(x): 如果x是正或负无穷大,则返回True。
math.isnan(x): 如果x是NaN,则返回True。
math.copysign(x, y): 返回一个数,其绝对值等于x的绝对值,符号等于y的符号。
math.gcd(x, y): 返回x和y的最大公约数。
math.lcm(x, y): 返回x和y的最小公倍数。
math.comb(n, k): 用于计算从 n 个不同元素中选取 k 个元素的组合数,即计算组合即计算组合C(n,k)。这个函数返回的是一个整数,表示组合的总数。

2、datetime库

from datetime import datetime, timezone, timedelta
2.1、datetime.date

代表一个理想化的日历日期,提供年、月、日属性。

# 常用构造函数和属性
# date.year, date.month, date.day: 分别返回日期的年、月、日。
datetime.date(year, month, day): 返回一个日期对象。

# 常用方法
date.today(): 返回当前本地日期。

date.isoformat(): 返回格式为'YYYY-MM-DD'的字符串。
2.2、datetime.time

代表一天中的时间,独立于任何特定的日子,拥有小时、分钟、秒、微秒等属性。

# 常用构造函数和属性
# time.hour, time.minute, time.second, time.microsecond: 分别返回时间的小时、分钟、秒、微秒。
datetime.time(hour=0, minute=0, second=0, microsecond=0): 返回一个时间对象。
2.3、datetime.datetime

提供日期和时间的组合。

# 常用构造函数和方法
datetime.datetime(year, month, day, hour=0, minute=0, second=0, microsecond=0): 返回一个日期时间对象。

datetime.now(): 返回当前的日期和时间。

datetime.strftime(format): 根据指定的格式化字符串来格式化日期时间对象,format参数使用特定的格式化代码,如%Y表示四位数的年份,%m表示月份等。

datetime.strptime(date_string, format): 将格式化字符串转换为日期时间对象。

# 例子:
dt = datetime.now()
formatted = dt.strftime("%Y-%m-%d %H:%M:%S")
2.4、datetime.timedelta

表示两个日期或时间之间的差异(即持续时间)。

datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0): 返回一个时间差对象。
# 判断是否闰年
import datetime
year = int(input())

time_delta = datetime.timedelta(days=1)     # 存储一天的时间

dt = datetime.datetime(year, 3, 1)      # 输入年份,3月1日

res = dt - time_delta  # 让dt存储的日期往前一天

if res.day == 29:       # 闰年二月份29天
    print("yes")
else:
    print("no")
2.5 datetime.timezone

用于处理时区相关的信息。

# 示例
# 创建一个表示UTC时区的timezone对象,并使用它创建一个日期时间对象:

from datetime import datetime, timezone, timedelta

utc_zone = timezone(timedelta(hours=0))
dt = datetime(2024, 1, 1, 12, tzinfo=utc_zone)
print(dt)  # 输出类似于: 2024-01-01 12:00:00+00:00

3、itertools库

from itertools import * 
3.1、无限迭代器
count(start=0, step=1): 从 start 开始,无限产生等差数列,步长为 step。

cycle(iterable): 对 iterable 中的元素反复执行循环。

repeat(object[, times]): 重复返回 object,如果给定 times,则重复指定次数;否则无限重复。
# 使用 cycle 无限循环迭代器
import itertools

count = 0
for item in itertools.cycle('AB'):
    if count > 5:
        break
    print(item, end=' ')  # 输出: A B A B A B
    count += 1
3.2、对迭代器的迭代器【终止迭代器】
accumulate(iterable[, func, *, initial=None]): 从左到右计算累积值,func 参数定义了两个元素之间的运算规则,如果不提供,则默认为求和。

chain(*iterables): 顺序地从第一个迭代器到最后一个迭代器生成元素。

groupby(iterable, key=None): 把相邻的重复元素挑出来放在一起,key 函数用于计算分组键。

islice(iterable, start, stop[, step]): 生成 iterable 的切片,类似于列表的切片但用于迭代器,从 start 开始到 stop 结束,步长为 step。
3.3、组合生成器
product(*iterables, repeat=1): 计算笛卡尔积,相当于嵌套的 for 循环。

permutations(iterable, r=None): 产生 iterable 中元素的所有可能的 r 长度排列。

combinations(iterable, r): 产生 iterable 中元素的所有可能的 r 长度组合,忽略元素的顺序。

combinations_with_replacement(iterable, r): 产生 iterable 中元素的所有可能的 r 长度组合,包含重复元素的组合。
# 使用 combinations 生成组合
from itertools import combinations

for c in combinations([1, 2, 3], 2):
    print(c)
# 输出:
# (1, 2)
# (1, 3)
# (2, 3)

# 使用 permutations 生成组合
from itertools import permutations

for p in permutations([1, 2, 3], 2):
    print(p)
# 输出:
# (1, 2)
# (1, 3)
# (2, 1)
# (2, 3)
# (3, 1)
# (3, 2)

标签:返回,常用,迭代,python,datetime,math,import,iterable
From: https://blog.csdn.net/LS_Ai/article/details/137294346

相关文章

  • python常用库(二)
    文章目录python常用库4、sys库4.1、**命令行参数**4.2、**模块导入**4.3、**退出程序**4.4、**标准输入输出**4.5、**系统相关信息**4.6、**内存管理**4.7、**其他功能**5、collections库5.1、**Counter计数器**5.2、**defaultdict默认字典**5.3、**OrderedDict有序......
  • 【阿里淘天笔试题汇总】2024-04-03-阿里淘天春招笔试题(第一套)-三语言题解(CPP/Pytho
    ......
  • 【阿里淘天笔试题汇总】2024-04-03-阿里淘天春招笔试题(第二套)-三语言题解(CPP/Pytho
    ......
  • run Python asyncio code in a Jupyter notebook
     NewJupyterlab/notebookimportasyncioimporttimeasyncdefmy_coroutine():awaitasyncio.sleep(1)print("Coroutineexecuted!")s=time.perf_counter()loop=asyncio.get_event_loop()loop.create_task(my_coroutine())asyncio.r......
  • python如何对二维数组排序
    在Python中对二维数组进行排序是一个常见的需求,可以通过多种方式实现。在本博客中,我们将讨论几种常见的方法来对二维数组进行排序。首先,我们可以使用Python的内置函数sorted()对二维数组进行排序。sorted()函数可以接受一个key参数,通过指定key参数来指定排序的方式。下面是......
  • python 如何操作pdf文件
    在Python中操作PDF文件通常涉及以下几个常见的任务:读取PDF内容、创建PDF文件、编辑PDF文件、合并PDF文件、拆分PDF文件等。下面我将介绍如何使用Python中的几个主要库来执行这些操作。读取PDF内容要读取PDF文件的内容,可以使用PyPDF2库。以下是一个简单的示例代码,演示如何......
  • Python变量类型
    Python 变量类型变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。变量赋值Python中的变量不需要声明,变量......
  • 列表嵌套字典实现简单通讯录功能 python
    contacts_list=[]#使用列表来存储字典,每个字典代表一个联系人whileTrue:print('1.增加2.删除break.退出')num=input('请输入选项:')ifnum=='1':name=input('请输入姓名:')phone=input('请输入电话:')......
  • 【Linux】在生产环境中,Linux系统排查常用命令
    问题排查文章目录问题排查top命令CPU:vmstatprocscpu内存:free硬盘:df硬盘IO:iostat网络IO:ifstat生产环境服务器变慢,诊断思路和性能评估top命令查看整机系统新能使用top命令的话,重点关注的是%CPU、%MEM、loadaverage三个指标在这个命令下,按1的话,可以看到每个C......
  • python 解析json字符串保存到对象中
    在Python中,你可以使用内置的json模块来解析JSON字符串并保存到对象中。以下是一个简单的示例:pythonimportjson#假设你有以下的JSON字符串json_string='{"name":"Alice","age":25,"city":"NewYork"}'#使用json模块的loads方法将JSON字符串解析为Python对象(在这种情况下......