内置函数:
一句话:Python 自带的、不需要A import 导入就可以直接使用的函数。比如你经常用的print()、len()、input()、type()都是内置函数。
输出类:
函数 | 作用 |
|---|
print()
| 打印输出 |
input()
| 从键盘读取输入 |
format()
| 格式化字符串 |
类型转换类:
函数 | 作用 |
|---|
int()
| 转整数 |
float()
| 转浮点数 |
str()
| 转字符串 |
bool()
| 转布尔值 |
list()
| 转列表 |
tuple()
| 转元组 |
dict()
| 转字典 |
set()
| 转集合 |
chr()
| 数字转字符(ASCII/Unicode) |
ord()
| 字符转数字 |
bin()
| 转二进制字符串 |
hex()
| 转十六进制字符串 |
oct()
| 转八进制字符串 |
数学运算类:
函数 | 作用 |
|---|
abs()
| 绝对值 |
round()
| 四舍五入 |
pow()
| 幂运算(也可用**) |
sum()
| 求和 |
max()
| 最大值 |
min()
| 最小值 |
divmod()
| 返回(商,余数)元组 |
序列/集合操作类:
函数 | 作用 |
|---|
len()
| 长度 |
sorted()
| 排序(返回新列表) |
reversed()
| 反转(返回迭代器) |
enumerate()
| 返回(索引,值)对 |
zip()
| 将多个序列打包成元组对 |
filter()
| 过滤 |
map()
| 映射 |
all()
| 所有元素为真才返回 True |
any()
| 任一元素为真就返回 True |
对象/类型相关类:
函数 | 作用 |
|---|
type()
| 查看类型 |
id()
| 查看内存地址 |
isinstance()
| 判断是否为某类型 |
issubclass()
| 判断是否为子类 |
hasattr()
| 判断有无属性 |
getattr()
| 获取属性 |
setattr()
| 设置属性 |
dir()
| 列出对象的所有属性和方法 |
help()
| 查看帮助文档 |
callable()
| 判断是否可调用 |
其他实用类:
函数 | 作用 |
|---|
open()
| 打开文件 |
range()
| 生成整数序列 |
len()
| 长度(虽然上面写了,再提一次) |
hash()
| 获取哈希值 |
eval()
| 执行字符串中的 Python 代码(有安全风险) |
exec()
| 执行字符串中的代码(更危险,少用) |
compile()
| 编译代码为可执行对象 |
最常用的 30 个内置函数:
序号 | 函数 | 用途 | 示例 |
|---|
1 | print()
| 打印 | print("hello")
|
2 | input()
| 输入 | name = input("输入名字:")
|
3 | len()
| 取长度 | len([1,2,3])→ 3
|
4 | type()
| 取类型 | type(123)→int
|
5 | int()
| 转整数 | int("123")→ 123
|
6 | str()
| 转字符串 | str(123)→ "123"
|
7 | float()
| 转浮点数 | float("3.14")→ 3.14
|
8 | bool()
| 转布尔 | bool(0)→ False
|
9 | list()
| 转列表 | list("abc")→ ['a','b','c']
|
10 | tuple()
| 转元组 | tuple([1,2])→ (1,2)
|
11 | dict()
| 转字典 | dict(a=1, b=2)→ {'a':1,'b':2}
|
12 | set()
| 转集合 | set([1,2,2])→ {1,2}
|
13 | abs()
| 绝对值 | abs(-5)→ 5
|
14 | round()
| 四舍五入 | round(3.1415, 2)→ 3.14
|
15 | sum()
| 求和 | sum([1,2,3])→ 6
|
16 | max()
| 最大值 | max([3,1,4])→ 4
|
17 | min()
| 最小值 | min([3,1,4])→ 1
|
18 | sorted()
| 排序 | sorted([3,1,4])→ [1,3,4]
|
19 | enumerate()
| 带索引遍历 | for i, v in enumerate(['a','b'])
|
20 | zip()
| 打包 | zip([1,2], ['a','b'])
|
21 | map()
| 映射 | map(str, [1,2,3])
|
22 | filter()
| 过滤 | filter(lambda x: x>0, [-1,2,-3])
|
23 | all()
| 全真则真 | all([True, True])→ True
|
24 | any()
| 有真则真 | any([False, True])→ True
|
25 | isinstance()
| 判断类型 | isinstance(5, int)→ True
|
26 | range()
| 生成序列 | range(5)→ 0,1,2,3,4
|
27 | open()
| 打开文件 | open("file.txt", "r")
|
28 | chr()
| 数字转字符 | chr(65)→ 'A'
|
29 | ord()
| 字符转数字 | ord('A')→ 65
|
30 | help()
| 查看帮助 | help(print)
|
有几个容易混淆的点:
混淆点 | 说明 |
|---|
sorted()vslist.sort()
| sorted()返回新列表,不改变原数据;list.sort()原地修改原列表
|
reversed()vs[::-1]
| reversed()返回迭代器;[::-1]返回新列表
|
map()和filter()
| 返回的是迭代器,不是列表,需要用list()包起来才能看到结果 |
range()不是列表
| range(1000)不占内存,边循环边生成
|
eval()的危险性
| 不要对用户输入用eval(),可能会执行恶意代码 |
内置函数就是 Python 自带的 71 个工具,你不需要安装任何东西就能直接用。不需要全记住只要把那常用的30个记住就可以了,其他的用到时查文档或help()就行。