python - 内置函数

196 阅读3分钟

Python 提供了许多内置函数(Built-in Functions),这些函数可以直接调用,无需导入任何模块。以下是 Python 3.x 中常用的内置函数分类整理:


1. 数学运算

  • abs(x):返回绝对值。
  • divmod(a, b):返回 (a // b, a % b) 的元组。
  • max(iterable, *[, key, default]) / min(...):返回最大/最小值。
  • pow(x, y[, z]):返回 x^y % z(如果提供 z)。
  • round(number[, ndigits]):四舍五入到 ndigits 位小数。
  • sum(iterable[, start]):求和,可指定起始值 start
  • bin(x) / oct(x) / hex(x):将整数转换为二进制/八进制/十六进制字符串。

2. 类型转换

  • bool(x):转换为布尔值。
  • int(x[, base]):转换为整数(可指定进制)。
  • float(x):转换为浮点数。
  • str(obj):转换为字符串。
  • list(iterable) / tuple(iterable) / set(iterable) / dict(...):转换为对应类型。
  • chr(i) / ord(c):字符与 Unicode 码点互转。
  • frozenset(iterable):返回不可变集合。

3. 迭代与可迭代对象

  • iter(iterable[, sentinel]):返回迭代器对象。
  • next(iterator[, default]):获取下一个元素。
  • enumerate(iterable[, start]):返回 (index, value) 元组的迭代器。
  • zip(*iterables):将多个迭代器聚合成元组迭代器。
  • filter(function, iterable):过滤元素。
  • map(function, iterable, ...):对每个元素应用函数。
  • sorted(iterable[, key, reverse]):返回排序后的列表。
  • reversed(sequence):返回反向迭代器。
  • any(iterable) / all(iterable):检查是否有任意/所有元素为真。

4. 对象与反射

  • len(s):返回容器长度。
  • type(obj):返回对象类型。
  • isinstance(obj, classinfo):检查对象是否属于指定类型。
  • issubclass(class, classinfo):检查类是否为另一个类的子类。
  • dir([obj]):返回对象的属性和方法列表。
  • hasattr(obj, name) / getattr(obj, name[, default]) / setattr(obj, name, value) / delattr(obj, name):操作对象属性。
  • callable(obj):检查对象是否可调用。
  • id(obj):返回对象的唯一标识符。
  • hash(obj):返回对象的哈希值。

5. 输入输出

  • print(*objects, sep=' ', end='\n', file=sys.stdout):打印输出。
  • input([prompt]):读取用户输入。
  • open(file, mode='r', ...):打开文件并返回文件对象。

6. 作用域与执行

  • globals() / locals():返回全局/局部符号表。
  • eval(expression[, globals, locals]):执行字符串表达式并返回结果。
  • exec(object[, globals, locals]):动态执行 Python 代码。
  • compile(source, filename, mode):将字符串编译为代码对象。

7. 其他实用函数

  • len(s):返回容器长度。
  • range(stop) / range(start, stop[, step]):生成不可变序列。
  • slice(start, stop[, step]):创建切片对象。
  • super([type[, object-or-type]]):调用父类方法。
  • classmethod / staticmethod:装饰器,定义类/静态方法。
  • property(fget=None, fset=None, fdel=None, doc=None):属性装饰器。
  • format(value[, format_spec]):格式化值。
  • repr(obj):返回对象的官方字符串表示(用于调试)。
  • bytes(x) / bytearray(x):处理二进制数据。
  • memoryview(obj):创建内存视图对象。
  • ascii(obj):返回包含 ASCII 转义字符的字符串。
  • breakpoint(*args, **kws):调试时进入 PDB(Python 3.7)

示例代码

# 数学运算
print(abs(-5))          # 输出: 5
print(divmod(7, 3))     # 输出: (2, 1)
 
# 类型转换
print(int("10", 2))     # 输出: 2(二进制转十进制)
 
# 迭代操作
names = ["Alice", "Bob"]
for i, name in enumerate(names, start=1):
    print(i, name)      # 输出: 1 Alice, 2 Bob
 
# 高阶函数
nums = [1, 2, 3]
squared = map(lambda x: x**2, nums)
print(list(squared))    # 输出: [1, 4, 9]
 
# 反射
class Test:
    def __init__(self, x):
        self.x = x
 
obj = Test(10)
print(hasattr(obj, "x"))  # 输出: True

注意事项

  1. 内置函数是 Python 解释器提供的核心功能,无需导入。
  2. 部分函数(如 open()eval())需谨慎使用,避免安全风险。
  3. 文档参考:Python 官方文档
常用内置函数 标黄

image.png

image.png

image.png

image.png