Python常用内置函数总览 最全的Python内置函数用法

Python内置函数总览

在Python基础的学习中,我们是不是就会发现代码中有很多不知道的方法,或者变量,其实大部分都是Python内置的函数方法,在这篇文章对Python内置的函数进行整理,它可能有以下内容:

内置函数介绍
abs()返回数字的绝对值。参数可以是整数,浮点数,复数。
all()判断给定的可迭代参数 iterable 中的所有元素是否都为 True,如果是返回 True,否则返回 False。
any()判断给定的可迭代参数 iterable 是否全部为 False,则返回 False,如果有一个为 True,则返回 True。
ascii()返回一个表示对象的字符串
bin()返回一个整数 int 或者长整数 long int 的二进制形式
bool()将给定参数转换为布尔类型,如果没有参数,返回 False。是int的子类。
bytearray()返回一个新字节数组。这个数组里的元素是可变的,并且每个元素的值范围: 0 <= x < 256。
bytes()返回一个新的 bytes 对象,该对象是一个 0 <= x < 256 区间内的整数不可变序列。它是 bytearray 的不可变版本。
callable()检查一个对象是否是可调用的,对于函数、方法、lambda 函式、 类以及实现了 __call__ 方法的类实例, 它都返回 True。
chr()返回当前整数对应的 ASCII 字符。
ord()是chr() 函数(对于 8 位的 ASCII 字符串)的配对函数,它以一个字符串(Unicode 字符)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值。
oct()将一个整数转换成8进制字符串。

hex(x)

将一个整数转换为一个16进制字符串

compile()将一个字符串编译为字节代码
classmethod()修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls参数,可以来调用类的属性,类的方法,实例化对象等。
complex()创建一个值为 real + imag * j 的复数或者转化一个字符串或数为复数。如果第一个参数为字符串,则不需要指定第二个参数。
divmod()接收两个数字类型(非复数)参数,返回一个包含商和余数的元组(a // b, a % b)。
dir()不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表。如果参数包含方法__dir__(),该方法将被调用。如果参数不包含__dir__(),该方法将最大限度地收集参数信息。
eval()执行一个字符串表达式,并返回表达式的值。
exec()执行储存在字符串或文件中的 Python 语句,相比于 eval,exec可以执行更复杂的 Python 代码。
filter()用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换。该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。
format()格式化字符串的函数,不限个参数,位置可以不按顺序。
frozenset()冻结集合,冻结后集合不能再添加或删除任何元素。
globals()以字典类型返回当前位置的全部全局变量。
locals()以字典类型返回当前位置的全部局部变量。对于函数, 方法, lambda 函式, 类, 以及实现了 __call__ 方法的类实例, 它都返回 True。
hash()获取取一个对象(字符串或者数值等)的哈希值。
help()查看函数或模块用途的详细说明
id()返回对象的唯一标识符,标识符是一个整数。CPython 中 id() 函数用于获取对象的内存地址。
min()返回给定参数的最小值,参数可以为序列。
max()返回给定参数的最大值,参数可以为序列。
hex()将一个指定数字转换为 16 进制数。
iter()生成迭代器。返回值为迭代器对象。
next()返回迭代器的下一个项目。next() 函数要和生成迭代器的iter() 函数一起使用。
slice()实现切片对象,主要用在切片操作函数里的参数传递。
sorted()对所有可迭代的对象进行排序操作。返回的是一个新的 list,而不是在原来的基础上进行的操作。
open()打开一个文件,并返回文件对象,但一定要保证关闭文件对象,即调用 close() 函数。
pow()返回 xy(x的y次方) 的值。
print()打印输出
input()接受一个标准输入数据,返回为 string 类型。
type()只有第一个参数则返回对象的类型,三个参数返回新的类型对象。不会认为子类是一种父类类型,不考虑继承关系。
isinstance()判断一个对象是否是一个已知的类型,类似 type()。isinstance() 会认为子类是一种父类类型,考虑继承关系,type反之。
len()返回对象(字符、列表、元组等)长度或项目个数
int()将一个字符串或数字转换为整型。
float()将整数和字符串转换成浮点数。
sum()对序列进行求和计算。
str()将对象转化为适于人阅读的形式。
list()将元组或字符串转换为列表。对象迭代器,可以把range()返回的可迭代对象转为一个列表,返回的变量类型为列表。
range()返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表。
dict()创建一个字典
tuple()将可迭代系列(如列表)转换为元组。
set()创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。
enumerate()将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。返回 enumerate(枚举) 对象。
setattr()对应函数 getattr(),用于设置属性值,该属性不一定是存在的。
getattr()返回一个对象属性值。
hasattr()判断对象是否包含对应的属性。
delattr()删除属性。delattr(x, ‘foobar’) 相等于 del x.foobar。
staticmethod()返回函数的静态方法。
property()在新式类中返回属性值。
issubclass(class, classinfo)判断参数 class 是否是类型参数 classinfo 的子类。
super()调用父类(超类)的一个方法。用来解决多重继承问题的,直接用类名调用父类方法在使用单继承的时候没问题,但是如果使用多继承,会涉及到查找顺序(MRO)、重复调用(钻石继承)等种种问题。
vars()返回对象object的属性和属性值的字典对象。
repr()将对象转化为供解释器读取的形式,返回字符串
zip()将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象。
map(function, iterable, …)根据提供的函数对指定序列做映射。第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。
reversed()返回一个反转的迭代器。
__import__()动态加载类和函数 。如果一个模块经常变化就可以使用 __import__() 来动态载入。
round()返回浮点数 x 的四舍五入值,准确的说保留值将保留到离上一位更近的一端(四舍六入)。
memoryview()返回给定参数的内存查看对象(Momory view)。所谓内存查看对象,是指对支持缓冲区协议的数据进行包装,在不需要复制对象基础上允许Python代码访问。

其中很多没有具体的参数说明,也是比较粗略的了。不过我们可以先关注红色标注的呢些,在写代码的时候会用的比较多。每个函数在用到的时候会具体说明的。

Python中的数学函数

函数返回值 ( 描述 )
abs(x)返回数字的绝对值,如abs(-10) 返回 10
ceil(x)返回数字的上入整数,如math.ceil(4.1) 返回 5

cmp(x, y)

如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1。 Python 3 已废弃,使用 (x>y)-(x<y) 替换
exp(x)math模块用法,返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045
fabs(x)math模块用法,返回浮点数的绝对值,如math.fabs(-10) 返回10.0
floor(x)math模块用法,返回数字的下舍整数,如math.floor(4.9)返回 4
log(x)math模块用法,如math.log(math.e)返回1.0,math.log(100,10)返回2.0
log10(x) math模块用法,返回以10为基数的x的对数,如math.log10(100)返回 2.0
modf(x) 返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。
pow(x, y) x**y 运算后的值。
round(x [,n])返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。
sqrt(x)返回数字x的平方根。

Python中的随机函数

函数描述
choice(seq)从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。
randrange ([start,] stop [,step]) 从指定范围内,按指定基数递增的集合中获取一个随机数,基数默认值为 1
random() 随机生成下一个实数,它在[0,1)范围内。
seed([x]) 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。
shuffle(lst) 将序列的所有元素随机排序
uniform(x, y)随机生成下一个实数,它在[x,y]范围内。

Python中的算术运算符

运算符描述
+加 – 两个对象相加
减 – 得到负数或是一个数减去另一个数
*乘 – 两个数相乘或是返回一个被重复若干次的字符串
/除 – x 除以 y
%取模 – 返回除法的余数
**幂 – 返回x的y次幂
//取整除 – 向下取接近除数的整数

Python中的三角函数

函数描述
acos(x)返回x的反余弦弧度值。
asin(x)返回x的反正弦弧度值。
atan(x)返回x的反正切弧度值。
atan2(y, x)返回给定的 X 及 Y 坐标值的反正切值。
cos(x)返回x的弧度的余弦值。
hypot(x, y)返回欧几里德范数 sqrt(x*x + y*y)。
sin(x)返回的x弧度的正弦值。
tan(x)返回x弧度的正切值。
degrees(x)将弧度转换为角度,如degrees(math.pi/2) , 返回90.0
radians(x)将角度转换为弧度

Python中的比较运算符

运算符描述
== 等于 – 比较对象是否相等
!= 不等于 – 比较两个对象是否不相等
> 大于 – 返回x是否大于y
< 小于 – 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。
>= 大于等于 – 返回x是否大于等于y。
<= 小于等于 – 返回x是否小于等于y。

Python中的赋值运算符

运算符描述
   =简单的赋值运算符
  +=加法赋值运算符
  -=减法赋值运算符
  *=乘法赋值运算符
  /=除法赋值运算符
  %=取模赋值运算符
  **=幂赋值运算符
  //= 取整除赋值运算符
  :=海象运算符,可在表达式内部为变量赋值。Python3.8 版本新增运算符

Python中的逻辑运算符

运算符逻辑表达式描述
andx and y 布尔”与” – 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。
orx or y布尔”或” – 如果 x 是 True,它返回 x 的值,否则它返回 y 的计算值。
notnot x布尔”非” – 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。

Python中的成员运算符

运算符描述
in如果在指定的序列中找到值返回 True,否则返回 False。
not in如果在指定的序列中没有找到值返回 True,否则返回 False。
isis 是判断两个标识符是不是引用自一个对象
is notis not 是判断两个标识符是不是引用自不同对象

Python中的字符串运算符

操作符描述
+字符串连接
*重复输出字符串
[]通过索引获取字符串中字符
[ : ]截取字符串中的一部分,遵循左闭右开原则,str[0,2] 是不包含第 3 个字符的。
in成员运算符 – 如果字符串中包含给定的字符返回 True
not in 成员运算符 – 如果字符串中不包含给定的字符返回 True
r/R原始字符串 – 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前加上字母

Python中的位运算符

运算符描述实例
按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0 (a & b) 输出结果 ,二进制解释: 0000 1100
  | 按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。 (a | b) 输出结果 ,二进制解释: 0011 1101
  ^按位异或运算符:当两对应的二进位相异时,结果为1 (a ^ b) 输出结果 ,二进制解释: 0011 0001
~ 按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1。~x 类似于 -x-1 (~a ) 输出结果 ,二进制解释: 1100 0011, 在一个有符号二进制数的补码形式
<<左移动运算符:运算数的各二进位全部左移若干位,由”<<“右边的数指定移动的位数,高位丢弃,低位补0。 a << 2 输出结果 ,二进制解释: 1111 0000
>>右移动运算符:把”>>”左边的运算数的各二进位全部右移若干位,”>>”右边的数指定移动的位数 a >> 2 输出结果 ,二进制解释: 0000 1111

更多详细的函数介绍可参考:官方文档

发表评论