2.4 Python 常用内置函数用法精要

 

2.4 Python 常用内置函数用法精要

内置函数(built-in functions, BIF)是 Python 内置对象类型之一,不需要额外导入任何模块即可直接使用。这些内置对象封装在内置模块 __builtins__ 之中,由 C 语言实现并进行了大量优化,具有非常快的运行速度。因此,在编写 Python 程序时,推荐优先使用内置函数。

1. 内置函数的概述

内置函数是 Python 提供的强大工具,它们涵盖了从基础的数学运算、类型转换,到更复杂的数据处理和文件操作等方方面面的功能。通过内置函数,我们能够轻松完成许多常见的编程任务。Python 允许通过 dir(__builtins__) 来查看所有内置函数和内置对象,并且可以使用 help(函数名) 来获取某个函数的详细用法说明。

查看所有内置函数和对象

>>> dir(__builtins__)

查看某个函数的使用帮助

>>> help('math')

2. 常用内置函数及其功能简要说明

下表列出了常见的 Python 内置函数及其功能:

函数功能简要说明
abs(x)返回数字 x 的绝对值或复数 x 的模。
all(iterable)如果可迭代对象 iterable 中所有元素都为 True,返回 True;否则返回 False
any(iterable)只要可迭代对象 iterable 中存在一个元素为 True,返回 True;否则返回 False
ascii(obj)将对象转换为 ASCII 码表示形式,必要时使用转义字符表示特殊字符。
bin(x)将整数 x 转换为二进制字符串表示形式。
bool(x)返回与 x 等价的布尔值 TrueFalse
bytes(x)生成字节串,或将指定对象 x 转换为字节串表示形式。
callable(obj)测试对象是否可调用,返回 TrueFalse
chr(x)返回 Unicode 编码为 x 的字符。
dir(obj)返回指定对象或模块的成员列表,如果不带参数则返回当前作用域内的所有标识符。
divmod(x, y)返回包含整商和余数的元组 (x // y, x % y)
enumerate(iterable[, start])返回一个枚举对象,其中包含序列元素和对应的索引,start 为索引起始值。
eval(s[, globals[, locals]])计算并返回字符串 s 中表达式的值。
exec(x)执行代码或代码对象 x
exit()退出当前解释器环境。
filter(func, seq)返回过滤后的对象,其中包含序列 seq 中使得 func 返回值为 True 的那些元素。
float(x)将整数或字符串 x 转换为浮点数并返回。
frozenset([x])创建不可变的集合对象。
globals()返回包含当前作用域内全局变量及其值的字典。
hash(x)返回对象 x 的哈希值。
help(obj)返回对象 obj 的帮助信息。
hex(x)将整数 x 转换为十六进制字符串。
id(obj)返回对象 obj 的唯一标识(内存地址)。
input([prompt])显示提示信息,接收键盘输入的内容,返回字符串。
int(x[, base])x 转换为整数,或将 base 进制的字符串 x 转换为十进制并返回。
isinstance(obj, class-or-type-or-tuple)判断对象 obj 是否为指定类型的实例。
len(obj)返回对象 obj 中元素的个数。
list([x])将对象 x 转换为列表,或生成空列表。
locals()返回当前作用域内局部变量及其值的字典。
map(func, *iterables)将函数 func 应用于每个迭代对象的元素并返回结果。
max(...), min(...)返回可迭代对象中最大或最小的元素。
next(iterator[, default])返回迭代器中的下一个元素。
oct(x)将整数 x 转换为八进制字符串。
open(fn[, mode])以指定模式 mode 打开文件 fn 并返回文件对象。
ord(x)返回字符 x 的 Unicode 编码。
pow(x, y, z=None)返回 xy 次方,如果指定了 z,返回 (x**y) % z
print(...)将值输出到标准输出设备。
quit()退出当前解释器环境。
range([start,] stop[, step])返回包含整数的 range 对象。
reduce(func, sequence[, initial])累积地将双参数函数 func 应用于序列元素。
reversed(seq)返回 seq 的反向迭代器。
round(x[, ndigits])x 四舍五入到指定小数位数。
sorted(iterable[, key, reverse])返回排序后的新列表。
str(obj)将对象 obj 转换为字符串。
sum(x, start=0)返回 x 中元素的总和。
type(obj)返回对象 obj 的类型。
zip(seq1[, seq2 [...]])将多个可迭代对象打包为元组。

3. 详细示例与应用

3.1 类型转换与类型判断

  • bin(), oct(), hex():将整数分别转换为二进制、八进制和十六进制字符串。
>>> bin(555)
'0b1000101011'
>>> oct(555)
'0o1053'
>>> hex(555)
'0x22b'
  • int():将其他形式的数字转换为整数。
>>> int('0x22b', 16)
555
  • float()complex():将数据转换为浮点数或复数。
>>> float(3)
3.0
>>> complex(3, 5)
(3+5j)
  • ord()chr():功能相反的函数,ord() 返回字符的 Unicode 编码,chr() 返回编码对应的字符。
>>> ord('A')
65
>>> chr(65)
'A'

3.2 基本输入输出

  • input():从用户输入中读取数据并返回字符串。
>>> x = input('请输入内容: ')
请输入内容: 123
>>> print(x)
123
  • print():输出内容到控制台,可以使用 sepend 参数自定义输出格式。
>>> print(1, 2, 3, sep='-', end='!')
1-2-3!

3.3 排序与逆序

  • sorted():返回排序后的新列表。可以指定 keyreverse 参数来调整排序规则。
>>> sorted([4, 2, 9, 1], reverse=True)
[9, 4, 2, 1]
  • reversed():返回一个反向的迭代器对象。
>>> list(reversed([1, 2, 3, 4]))
[4, 3, 2, 1]

3.4 函数式编程工具

  • map():将函数应用于可迭代对象的每个元素。
>>> list(map(str, range(5)))
['0', '1', '2', '3', '4']
  • filter():过滤掉不满足条件的元素。
>>> list(filter(lambda x: x % 2 == 0, [1, 2, 3, 4]))
[2, 4]
  • reduce():对序列进行累积计算,需要从 functools 导入。
>>> from functools import reduce
>>> reduce(lambda x, y: x + y, [1, 2, 3, 4])
10

3.5 枚举与打包

  • enumerate():枚举可迭代对象的元素,返回索引和值。
>>> list(enumerate(['a', 'b', 'c']))
[(0, 'a'), (1, 'b'), (2, 'c')]
  • zip():将多个可迭代对象打包成元组。
>>> list(zip([1, 2, 3], ['a', 'b', 'c']))
[(1, 'a'), (2, 'b'), (3, 'c')]

4. 总结

Python 内置函数数量众多且功能强大,难以在一篇博客中完全解释清楚。本节介绍了一部分常用内置函数,并演示了它们的基本用法。遇到不熟悉的函数时,可以通过 help() 函数查看详细使用帮助。编写程序时应优先考虑使用内置函数,因为它们不仅成熟、稳定,而且速度较快,有助于提高开发效率。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 20
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夏驰和徐策

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值