python内置函数的介绍
内置函数(BIF,built-in function)是python内置对象类型之一,不需要额外导入任何模块即可直接使用,这些内置对象都封装在内置模块_builtins_之中,用C语言实现并且进行了大量优化,具有非常快的运行速度,推荐优先使用。使用内置函数dir()可以查看所有内置函数和内置对象。使用help(函数名)便可以查看某个函数的用法。
python3的内置函数的函数一共有68个,本文我会对其中几个需要大家熟练掌握的内置函数做一个详细的介绍。其余的函数用法可以参考以下链接的介绍哦~
```dir(_builtins_)
```help(sum)
内置函数分类
- 数学运算(7个)
- 类型转换(24个)
- 序列操作(8个)
- 对象操作(7个)
- 反射操作(8个)
- 变量操作(2个)
- 交互操作(2个)
- 文件操作(1个)
- 编译执行(4个)
- 装饰器(3个)
以下是部分的详细介绍哦~
- abs(): 返回数值的绝对值
>>>abs(-4)
4
- all():用于判断所给定的可迭代参数中是否所有元素都为true,是的话返回True,否则返回False
>>> all([1,2]) #列表中每个元素逻辑值均为True,返回True
True
>>> all([0,1,2]) #列表中0的逻辑值为False,返回False
False
>>> all(()) #空元组
True
>>> all({}) #空字典
True
- any():用于判断所给定的可迭代参数中是否所有元素都为False,是的话返回False,否则返回True
>>> any([0,1,2]) #列表元素有一个为True,则返回True
True
>>> any([0,0]) #列表元素全部为False,则返回False
False
>>> any([]) #空列表
False
>>> any({}) #空字典
False
- bin():返回整数所对应的2进制字符串
>>> bin(3)
'0b11'
- bool():根据传入的参数的逻辑值创建一个布尔值
>>> bool() #未传入参数
False
>>> bool(0) #数值0、空序列等值为False
False
>>> bool(1)
True
- chr():返回整数所对应的Unicode字符
>>> chr(97) #参数类型为整数
'a'
- complex():根据传入参数创建一个新的复数
>>> complex() #当两个参数都不提供时,返回复数 0j。
0j
>>> complex('1+2j') #传入字符串创建复数
(1+2j)
>>> complex(1,2) #传入数值创建复数
(1+2j)
- dict():根据传入的参数创建的一个新的字典
>>> dict() # 不传入任何参数时,返回空字典。
{}
>>> dict(a = 1,b = 2) # 可以传入键值对创建字典。
{'b': 2, 'a': 1}
>>> dict(zip(['a','b'],[1,2])) # 可以传入映射函数创建字典。
{'b': 2, 'a': 1}
>>> dict((('a',1),('b',2))) # 可以传入可迭代对象创建字典。
{'b': 2, 'a': 1}
- dir():返回一个列表,包含对象的所有属性
>>> import math
>>> math
<module 'math' (built-in)>
>>> dir(math)
['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'gcd', 'hypot', 'inf', 'isclose', 'isfinite', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'nan', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc']
- divmod():返回两个数值的商和余数
>>> divmod(5,2)
(2, 1)
>> divmod(5.5,2)
(2.0, 1.5)
- eval():执行所给定的字符串表达式,并且返回表达式的值
>>> exec('a=1+2') #执行语句
>>> a
3
- float():根据传入的参数创建一个浮点数
>>> float() #不提供参数的时候,返回0.0
0.0
>>> float(3)
3.0
>>> float('3')
3.0
- help():返回对象的帮助信息
>>> help(str)
Help on class str in module builtins:
- hex():返回整数所对应的16进制字符串
>>> hex(15)
'0xf'
- id():返回对象的内存地址
>>> a = 'some text'
>>> id(a)
69228568
- input():读取用户的输入值
>>> s = input('please input your name:')
please input your name:Ain
>>> s
'Ain'
- int():根据传入的参数创建一个整数
>>>int(2.6)
2
>>>int( )
0
- len():返回传入对象的长度
>>> len('abcd') # 字符串
>>> len(bytes('abcd','utf-8')) # 字节数组
>>> len((1,2,3,4)) # 元组
>>> len([1,2,3,4]) # 列表
>>> len(range(1,5)) # range对象
>>> len({'a':1,'b':2,'c':3,'d':4}) # 字典
>>> len({'a','b','c','d'}) # 集合
>>> len(frozenset('abcd')) #不可变集合
- list():根据传入的参数创建一个新的列表
>>>list() # 不传入参数,创建空列表
[]
>>> list('abcd') # 传入可迭代对象,使用其元素创建新的列表
['a', 'b', 'c', 'd']
- max():返回可迭代对象中的元素中的最大值或者所有参数的最大值
>>> max(1,2,3) # 传入3个参数 取3个中较大者
3
>>> max('1234') # 传入1个可迭代对象,取其最大元素值
'4'
>>> max(-1,0) # 数值默认去数值较大者
0
>>> max(-1,0,key = abs) # 传入了求绝对值函数,则参数都会进行求绝对值后再取较大者
-1
- min():返回可迭代对象中的元素中的最小值或者所有参数的最小值
>>> min(1,2,3) # 传入3个参数 取3个中较小者
1
>>> min('1234') # 传入1个可迭代对象,取其最小元素值
'1'
>>> min(-1,-2) # 数值默认去数值较小者
-2
>>> min(-1,-2,key = abs) # 传入了求绝对值函数,则参数都会进行求绝对值后再取较小者
-1
- oct():返回整数所对应的8进制字符串
>>> oct(10)
'0o12'
- ord():返回Unicode字符所对应的整数
>>> ord('a')
97
- pow():返回两个数值的幂运算值
>>> pow(2,3)
>>> 2**3
>>> pow(2,3,5)
>>> pow(2,3)%5
- print():打印输出
>>> print(1,2,3)
1 2 3
>>> print(1,2,3,sep = '+')
1+2+3
>>> print(1,2,3,sep = '+',end = '=?')
1+2+3=?
- round():对传入对象的参数进行四舍五入运算,可以指定保留小数的位数
>>> round(1.1314926,1)
1.1
>>> round(1.1314926,5)
1.13149
- set():根据传入的参数创建一个新的集合
>>>set() # 不传入参数,创建空集合
set()
>>> a = set(range(10)) # 传入可迭代对象,创建集合
>>> a
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
- str():根据传入的参数创建一个字符串
>>> str()
''
>>> str(None)
'None'
>>> str('abc')
'abc'
>>> str(123)
'123'
- sum():对传入的参数进行求和运算
# 传入可迭代对象
>>> sum((1,2,3,4))
10
# 元素类型必须是数值型
>>> sum((1.5,2.5,3.5,4.5))
12.0
>>> sum((1,2,3,4),-10)
0
- tuple():根据传入的参数创建一个新的元组
>>>num = tuple(range(10, 20, 2))
>>>print(num)
(10, 12, 14, 16, 18)
- type():返回传入对象的类型
>>> type(1) # 返回对象的类型
<class 'int'>
#使用type函数创建类型D,含有属性InfoD
>>> D = type('D',(A,B),dict(InfoD='some thing defined in D'))
>>> d = D()
>>> d.InfoD
'some thing defined in D'