Python 69 个内置函数分 8 类总结
内置函数
Python3 解释器中内置了 69 个常用函数,属于底层的函数,它们到处可用。有些对大家来说比较熟悉,比如 abs(), max(), sum()… 也有一些比较陌生,比如 locals(), all(), compile(), getattr()… 今天按照类别扼要总结。
1 类型相关
69 个内置函数中,与类型相关的指,把入参包装为某种类型,这样的内置函数包括:
bool() #d布尔型
int() #d整形
str() #d字符型
tuple() #d元包型
dict() #d字典型
list() #d列表型
zip() #可迭代对象聚合,(,)
complex() #d复数型
float() #d浮点型
bytes() #d字节型数组
bytearray() #d字数数组
range() #d不可更改的序列
object() #d无属性的根类
set() # 集合类型
frozenset() # 冻结集合类型,不允许修改
slice() # 返回一个slice对象,其中start, stop, step等都是只读的
比如 bool(x),将入参 x 封装为 Boolean 类型,返回值为 True 或 False
bool(10)
>>> True
bool(0)
>>> False
bool(\'false\')
>>> True
bool(0.0)
>>> False
2 数理统计相关
有的内置函数可以完成简单的数理统计工作,这样的内置函数包括:
abs() #d绝对值
min() #d最小
max() #d最大
sum() #d求和
pow() #d求次幂
all() #d所有元素为true则为true
any() #d至少一个元素为true则为true
divmod() #d(商,余数)
round() #四舍五入
len() #参数元素个数
any() 函数代码等价于以下 5 行代码:
def any(iterable):
for element in iterable:
if element:
return True
return False
divmod 函数:
divmod(10,8)
>>> (1,2)
3 进制转换
有些内置函数可以帮助我们轻松实现进制转换,比如:
chr() #unicode编码
ord() #chr()反操作
bin() #转化为ob开头的二进制字符
hex() #转化为ox开头的十六进制字符
ascii() #可打印表示对象,类似于 repr()
oct() # 转化为0o开头的八进制字符
4 面向对象相关
Python 提供与对象属性相关的操作函数,它们为满足 Python 属性的动态调整提供了可能。
setattr(object, name, value) #为对象设置属性
delattr(object, name) # 删除命名的属性
getattr(object,name) #获取属性的取值,如果对象无此属性,会抛异常
getattr(object,name, 123) #即便无此属性,也不会抛异常,会返回123
hasattr(object,name) # 判断name属性是否属于object
isinstance(object, classinfo) #判断object是classinfo的实例吗
issubclass(class, classinfo) # 判断class是否为classinfo的子类
super() #调用父类, 方法
property() #特性相关,@property标记为属性
type() #返回实例的类型
vars() # 返回对象的信息等
classmethod() # 转化方法为类方法
staticmethod() #方法是静态方法
比如,
setattr(x,\'footbar\',12) #等价于 x.footbar=12
issubclass(list,object)
>>> True
issubclass(object,list)
>>> False
5 迭代器相关
next, reversed, iter(), enumerate() 这些都是与迭代相关的函数,比如以下,就是返回一个逆向迭代器:
rev = reversed([1,-2,4,0])
for i in rev:
print(i)
>>> 0
4
-2
1
iter 函数使用例子
>>> <str_iterator at 0x8b9fba8>
for i in iter(\'abc\'):
print(i)
>>> a
b
c
6 map 函数
map 函数的原型为:map(function, iterable, …) ,返回一个迭代器,在每一个可迭代对象的元素上应用 function.
map 应用举例:
def f(x):
reutn x**2
mymap = map(f, [1,2,3]) # 返回一个迭代器
for i in mymap:
print(i)
>>> 1
4
9
7 排序相关
sorted 返回一个排序好的列表,比如:
li = [1,-2,4,0]
sorted(li)
>>> [-2,0,1,4]
8 其他
compile 函数与源码编译相关;memoryview 函数与内存视图相关;help 查看帮助;dir 查看对象的方法和属性;更多见下表:
hash() # 返回对象的哈希码
id() #返回一个对象的标识
input() #与标准输出相关
breakpoint() #调试相关
exec() #动态执行Python代码
callable() #判断对象是否可调用
format() #对象格式化
format 是一个比较常用的,用于格式化输出的函数,详细的格式化参数标准形式,参考文档:https://docs.python.org/3/library/string.html#formatspec