Python: 内置函数分类介绍
一、常用数值运算函数
1. 数值类型的运算关系
(1) 类型间可进行混合运算,生成结果为“最宽“的类型;
(2) 三种类型存在一种“扩展”或“变宽”的关系:整数 > 浮点数 > 复数;
(3) 举例:12 + 3.0 = 15.0(整数+浮点数 = 浮点数)
2. 常用数值运算函数
常用数值运算函数 | 描述 |
abs(x) | 绝对值,x的绝对值 |
divmod(x,y) | 商余,(x//y,x%y),同时输出商和余数 |
pow (x, y[, z]) | 幂余,(x**y)%z,[.]表示参数z可省略 |
round(x[, d]) | 四舍五入,d是保留小数位数,默认值为0 |
max(x1,x2,...,x) | 最大值,返回x1,x2,..x中的最大值,n不限 |
min(x1,x2, ..,x) | 最小值,返回x1,x2,..x中的最小值,n不限 |
int(x) | 将x变成整数,舍弃小数部分 |
float(x) | 将x变成浮点数,增加小数部分 |
complex(x) | 将x变成复数,增加虚数部分 |
二、Python内置函数(全)
Python内置函数不需要导入任何模块即可使用。
1. Python内置函数(分类)
(1)数学函数
数学函数 | 语法 | 描述 |
abs() | abs(x) | 获取数字的绝对值 |
divmod() | divmod(a,b) | 商余,(a//b,a%b),获取商和余数的元组 |
sum() | sum(iterable,start) | 求和计算 |
round() | round(x, n) | 四舍五入,n是保留小数位数,默认值为0 |
pow () | pow (x,y[,z]) | 计算 |
min() | min(a,b,c,···)或min(seq) | 最小值,返回给定参数的最小值 |
max() | max(a,b,c,···)或max(seq) | 最大值,返回给定参数的最大值 |
(2)数据转换函数
数据转换函数 | 语法 | 描述 |
hex() | hex(x) | 十进制转换十六进制的字符串形式 |
oct() | oct(x) | 十进制转换八进制的字符串形式 |
bin() | bin(x) | 十进制转换二进制的字符串形式 |
int() | int(x) | 字符串转换为整型 |
str() | str(object) | 对象转换为字符串 |
bool() | bool(x) | 布尔类型转换 |
ord() | ord(c) | 获取ASCII或Unicode值 |
float() | float(x) | 浮点数值转换 |
tuple() | tuple(seq) | 列表转换为元组 |
chr() | chr(i) | 获取整型对应的字符 |
list() | list(seq) | 元组转换为列表 |
repr() | repr(object) | 对象转换为解释器阅读形式 |
complex() | complex(real,imag) | 复数形式转换,其格式为real + imag * j |
(3)对象创建函数
对象创建函数 | 描述 |
dict() | 创建字典对象 |
open() | 打开并返回文件对象 |
bytearray() | 创建新字节数组 |
frozenset() | 创建已冻结集合 |
range([start,] end [, step]) | 创建一个列表,返回range对象,其中包含左闭右开区间[start,end)内以step为步长的整数 |
set() | 创建无序不重复元素集合 |
(4)迭代器操作函数
迭代器操作函数 | 描述 |
all() | 判断序列元素是否为True |
any() | 判断序列元素是否为False |
iter() | 生成迭代器 |
next() | 获取迭代器的下一个元素 |
sorted() | 对可迭代对象进行排序 |
enumerate() | 将可遍历的数据对象组合成带有数据和数据下标的索引序列 |
filter() | 通过指定条件过滤序列并返回新的列表对象 |
zip() | 将可迭代的对象打包成元组并返回由元组组成的对象,其中每个元素都是包含原来的多个可迭代对象对应位置上元素的元组,如同拉拉链一样 |
map() | 通过自定义函数实现对序列的元素映射操作并返回操作后的结果 |
reversed() | 对列表元素进行反向排序 |
(5)对象属性操作函数
数学函数 | 描述 |
setattr() | 设置对象的属性值 |
property() | 在新式类中来定义获取、设置、删除以及描述操作的属性实现函数 |
vars() | 以字典的方式返回对象的属性和属性值 |
getattr() | 返回对象的属性值 |
hasattr() | 判断对象是否包含指定的属性 |
delattr(obj, name) | 删除对象属性,等价于del obj.name |
(6)对象操作函数
数学函数 | 描述 |
id() | 获取对象的内存地址 |
eval() | 执行一个字符串表达式并返回执行结果 |
exec() | 执行储存在字符串或文件中的Python语句 |
compile() | 将字符串编译为字节代码 |
isinstance() | 判断指定的对象实例是否与指定类型相同 |
staticmethod() | 声明函数为静态方法 |
issubclass() | 判断一个类是否为另一个类的子类 |
super() | 调用父类函数 |
callable() | 检查对象是否能被调用 |
type() | 获取对象类型或产生新类型 |
locals() | 返回对象的所有局部变量和变量值 |
globals() | 返回对象的所有全局变量和变量值 |
__import__() | 动态加载类和函数,用于动态的导入模块 |
hash() | 获取对象的哈希值,如果x不可哈希则抛出异常 |
memoryview() | 获取内存查看对象 |
(7)基本常用函数
数学函数 | 描述 |
format() | 格式化字符串 |
input() | 基本输入函数 ,返回字符串 |
print() | 基本输出函数 |
slice() | 构造切片对象 |
len() | 获取长度或项目个数,适用于列表、元组、集合、字典、字符串以及range对象和其他可迭代对象 |
exit() |
退出当前解释器环境 |
help() | 查看对象帮助信息 |
3. Python内置函数(未分类)
函数 |
功能简要说明 |
---|---|
abs(x) |
返回数字x的绝对值或复数x的模 |
all(iterable) |
如果对于可迭代对象中所有元素x都等价于True,也就是对于所有元素x都有bool(x)等于True,则返回True。对于空的可迭代对象也返回True |
any(iterable) |
只要可迭代对象iterable中存在元素x使得bool(x)为True,则返回True。对于空的可迭代对象,返回False |
ascii(obj) |
把对象转换为ASCII码表示形式,必要的时候使用转义字符来表示特定的字符 |
bin(x) |
把整数x转换为二进制字符串表示形式 |
bool(x) |
返回与x等价的布尔值True或False |
bytearray() |
返回一个新的字节数组 |
bytes(x) |
生成字节串,或把指定对象x转换为字节串表示形式 |
callable(obj) |
测试对象obj是否可调用。类和函数是可调用的,包含__call__()方法的类的对象也是可调用的 |
compile() |
用于把Python代码编译成可被exec()或eval()函数执行的代码对象 |
complex(real, [imag]) |
将输入的数值/元组/字符串转换为复数对象并返回 |
chr(x) |
返回Unicode编码为x的字符 |
delattr(obj, name) |
删除属性,等价于del obj.name |
dir(obj) |
返回指定对象或模块obj的成员列表,如果不带参数则返回当前作用域内所有标识符 |
dict() |
返回一个新的字典对象 |
divmod(intx,inty) |
返回包含整商和余数的结果((x//y, x%y) |
enumerate(iterable[, start]) |
返回包含元素形式为(0, iterable[0]), (1, iterable[1]), (2, iterable[2]), ...的迭代器对象 |
eval(s[, globals[, locals]]) |
计算并返回字符串s中表达式的值 |
exec(x) |
执行代码或代码对象x |
exit() |
退出当前解释器环境 |
filter(func, seq) |
返回filter对象,其中包含序列seq中使得单参数函数func返回值为True的那些元素,如果函数func为None则返回包含seq中等价于True的元素的filter对象 |
float(x) |
把整数或字符串x转换为浮点数并返回 |
frozenset([x])) |
创建不可变的集合对象 |
getattr(obj, name[, default]) |
获取对象中指定属性的值,等价于obj.name,如果不存在指定属性则返回default的值,如果要访问的属性不存在并且没有指定default则抛出异常 |
globals() |
返回包含当前作用域内全局变量及其值的字典 |
hasattr(obj, name) |
测试对象obj是否具有名为name的成员 |
hash(x) |
返回对象x的哈希值,如果x不可哈希则抛出异常 |
help(obj) |
返回对象obj的帮助信息 |
hex(x) |
把整数x转换为十六进制串 |
id(obj) |
返回对象obj的标识(内存地址) |
input([提示]) |
显示提示,接收键盘输入的内容,返回字符串 |
int(x[, d]) |
返回实数(float)、分数(Fraction)或高精度实数(Decimal)x的整数部分,或把d进制的字符串x转换为十进制并返回,d默认为十进制 |
isinstance(obj, class-or-type-or-tuple) |
测试对象obj是否属于指定类型(如果有多个类型的话需要放到元组中)的实例 |
iter(...) |
返回指定对象的可迭代对象 |
len(obj) |
返回对象obj包含的元素个数,适用于列表、元组、集合、字典、字符串以及range对象和其他可迭代对象 |
list([x])、set([x])、tuple([x])、dict([x]) |
把对象x转换为列表、集合、元组或字典并返回,或生成空列表、空集合、空元组、空字典 |
locals() |
返回包含当前作用域内局部变量及其值的字典 |
map(func, *iterables) |
返回包含若干函数值的map对象,函数func的参数分别来自于iterables指定的每个迭代对象, |
max(x)、 min(x) |
返回可迭代对象x中的最大值、最小值,要求x中的所有元素之间可比较大小,允许指定排序规则和x为空时返回的默认值 |
next(iterator[, default]) |
返回可迭代对象x中的下一个元素,允许指定迭代结束之后继续迭代时返回的默认值 |
oct(x) |
把整数x转换为八进制字符串 |
open(name[, mode]) |
以指定模式mode打开文件name并返回文件对象 |
ord(x) |
返回1个字符x的Unicode编码 |
pow(x, y, z=None) |
返回x的y次方,等价于x ** y或(x ** y) % z |
print(value, ..., sep=' ', end='\n', file = sys. stdout, flush=False) |
基本输出函数 |
quit() |
退出当前解释器环境 |
range([start,] end [, step] ) |
返回range对象,其中包含左闭右开区间[start,end)内以step为步长的整数 |
reduce(func, sequence[, initial]) |
将双参数的函数func以迭代的方式从左到右依次应用至序列seq中每个元素,最终返回单个值作为结果。在Python 2.x中该函数为内置函数,在Python 3.x中需要从functools中导入reduce函数再使用 |
repr(obj) |
返回对象obj的规范化字符串表示形式,对于大多数对象有eval(repr(obj))==obj |
reversed(seq) |
返回seq(可以是列表、元组、字符串、range以及其他可迭代对象)中所有元素逆序后的迭代器对象 |
round(x [, 小数位数]) |
对x进行四舍五入,若不指定小数位数,则返回整数 |
sorted(iterable, key=None, reverse=False) |
返回排序后的列表,其中iterable表示要排序的序列或迭代对象,key用来指定排序规则或依据,reverse用来指定升序或降序。该函数不改变iterable内任何元素的顺序 |
str(obj) |
把对象obj直接转换为字符串 |
sum(x, start=0) |
返回序列x中所有元素之和,返回start+sum(x) |
type(obj) |
返回对象obj的类型 |
zip(seq1 [, seq2 [...]]) |
返回zip对象,其中元素为(seq1[i], seq2[i], ...)形式的元组,最终结果中包含的元素个数取决于所有参数序列或可迭代对象中最短的那个 |