python常用模块(math itertools functools sys shutil)使用讲解
作者:移动安全星球
这篇文章主要介绍了python常用模块之math itertools functools sys shutil的使用示例讲解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
python常用模块
1.math
math
模块提供了一些数学函数和常数,如圆周率、三角函数、对数函数等。
- 计算平方根:
import math sqrt_result = math.sqrt(9) print(sqrt_result) # 输出:3.0
- 计算正弦和余弦:
import math angle = math.radians(30) # 将角度转换为弧度 sin_result = math.sin(angle) cos_result = math.cos(angle) print(sin_result) # 输出:0.5 print(cos_result) # 输出:0.8660254037844387
- 计算指数和对数:
import math exp_result = math.exp(1) # 计算 e 的 1 次方 log_result = math.log(exp_result) # 计算 e 为底数的对数 print(exp_result) # 输出:2.718281828459045 print(log_result) # 输出:1.0
2. itertools
itertools
模块提供了一些用于操作迭代对象的函数,如无限迭代器、组合和排列等。
- 生成一个无限迭代器:
import itertools count = itertools.count(start=1, step=2) for i in range(5): print(next(count)) # 输出:1, 3, 5, 7, 9
- 生成一个循环迭代器:
import itertools cycle = itertools.cycle("ABCD") for i in range(8): print(next(cycle)) # 输出:A, B, C, D, A, B, C, D
- 生成排列和组合:
import itertools # 排列 for p in itertools.permutations("ABCD", 2): print("".join(p)) # 输出:所有 2 个元素的排列 # 组合 for c in itertools.combinations("ABCD", 2): print("".join(c)) # 输出:所有 2 个元素的组合
3. functools
functools
模块提供了一些用于操作函数和可调用对象的工具。
- 使用
lru_cache
缓存函数结果:
import functools @functools.lru_cache(maxsize=None) # 使用 LRU 缓存策略缓存函数结果 def fib(n): if n < 2: return n return fib(n-1) + fib(n-2) print(fib(100)) # 输出:354224848179261915075
- 使用
partial
固定部分参数:
import functools def power(base, exponent): return base ** exponent square = functools.partial(power, exponent=2) cube = functools.partial(power, exponent=3) print(square(5)) # 输出:25 print(cube(5)) # 输出:125
4. sys
sys
模块提供了一些与 Python 解释器和运行环境交互的函数和变量。
- 获取命令行参数:
import sys print("Script name:", sys.argv[0]) # 输出:脚本名(通常是文件名) print("Arguments:", sys.argv[1:]) # 输出:命令行参数列表
- 获取 Python 版本信息:
import sys print("Python version:", sys.version) # 输出:Python 版本信息
- 获取系统平台信息:
import sys print("Platform:", sys.platform) # 输出:系统平台信息(如 'linux', 'win32' 等)
5. shutil
shutil
模块提供了一些高级文件操作函数,如文件复制、移动、删除等。
- 复制文件:
import shutil shutil.copy("src.txt", "dst.txt") # 将 src.txt 复制到 dst.txt
- 移动文件:
import shutil shutil.move("src.txt", "dst.txt") # 将 src.txt 移动到 dst.txt(如果 dst.txt 存在,将被覆盖)
- 删除非空目录:
import shutil shutil.rmtree("directory") # 删除名为 "directory" 的非空目录及其所有内容
- 压缩文件:
import shutil shutil.make_archive("archive", "zip", "directory") # 将 "directory" 压缩为名为 "archive.zip" 的 ZIP 文件
- 解压缩文件:
import shutil shutil.unpack_archive("archive.zip", "directory") # 将 "archive.zip" 解压缩到 "directory" 目录
以上是五个常用的 Python 标准库模块的简要介绍和示例代码。希望这些内容可以帮助您更好地理解这些模块的用法。请注意,这些模块的功能远不止这些,您可以查阅 Python 官方文档以了解更多详细信息。
以上就是python常用模块(math itertools functools sys shutil)使用讲解的详细内容,更多关于python常用模块的资料请关注脚本之家其它相关文章!