赞
踩
这篇博客是学习python内置函数(built in function BIF)的汇总,老规矩,上官网python3内置函数官网
不需要额外导入任何模块即可直接使用
在jupyter notebook里敲dir(__builtins__)
拜读了另一位前辈的分类学习法,将这68个内置函数分成了10类:7个数学运算型,24个类型转换型,8个序列操作型,7个对象操作,8个反射操作,2个变量操作,2个交互操作,1个文件操作,4个编译执行,3个装饰器。
返回x的绝对值
商余函数,返回两个数值的商和余数。比较有意思的是如果传入的数值的整数则返回也是整数,如果传入有浮点数,则返回均为浮点数
返回可迭代对象(字符串之类)或所有参数中的最大值。用key参数可以比较传入参数绝对值对象,再返回传入参数
返回可迭代对象(字符串之类)或所有参数中的最小值。用key参数可以比较传入参数绝对值对象,再返回传入参数(同上max())
返回两个数值的幂运算(输入两个数值时)或指定整数的取模(三个数值)
对浮点数x进行四舍五入。若y>0,则保留y为小数;若y<0,则往小数点左边第y位四舍五入(第y位的进第y+1位)
迭代求和
根据传入的参数的逻辑值创建一个新的布尔值,当未传入参数、传入0、空序列等值时返回False,其余返回True
根据传入的参数创建一个新的整数,无论正负数都相当于不看小数部分,返回整数部分。
根据传入的参数创建一个新的浮点数,传入空值时返回0.0,传入字符数字时返回数字的浮点类型。
根据传入参数创建一个新的复数 ,用j表示复数。传入空值时返回0j。
返回一个对象的字符串表现形式
返回Unicode字符对应的整数,有点像C语言里的ASCII编码,注意输入字符类型不要忘记引号
返回整数所对应的Unicode字符,与上一个函数相反,输入数字返回它ASCII对应的字符
根据传入的参数创建一个新的字节数组:
根据传入的参数创建一个新的不可变字节数组:
根据传入的参数创建一个新的内存查看对象
将整数转换成2进制字符串
将整数转化成8进制数字符串
将整数转换成16进制字符串
根据传入的参数创建一个新的元组。不传入参数时创建空元组;传入可迭代对象时,使用其元素创建新的元组。元组用圆括号表示 ( ) 。
根据传入的参数创建一个新的列表。同上,不传入参数时创建空列表;传入可迭代对象时,使用其元素创建新的列表。列表用中括号表示 [ ] 。
根据传入的参数创建一个新的字典。不传入参数时创建空字典;还可以传入可迭代对象、键值对、映射函数,创建字典 ,字典用花括号表示 { } 。
根据传入的参数创建一个新的集合。不传入参数时创建空集合,传入可迭代对象还可以用让range()函数,集合也是用花括号表示
>>>a = set(range(5)
>>>a
{0, 1, 2, 3, 4}
根据传入的参数创建一个新的不可变集合,同上,只是创建的集合不可更改
根据可迭代对象创建枚举对象。
根据传入的参数创建一个新的range对象。前面用过很多遍了,这里不举栗子了。
根据传入的参数创建一个新的可迭代对象
iter(o[, sentinel]),返回一个iterator对象。该函数对于第一个参数的解析依赖于第二个参数。 如果没有提供第二个参数,参数o必须是一个集合对象,支持遍历功能(__iter__()方法)
或支持序列功能(__getitem__()方法)
,参数为整数,从零开始。如果不支持这两种功能,将处罚TypeError异常。 如果提供了第二个参数,参数o必须是一个可调用对象。在这种情况下创建一个iterator对象,每次调用iterator的next()方法来遍历下一个。参数的调用o,如果返回值等于参数sentinel,触发StopIteration异常,否则将返回该值。
根据传入的参数创建一个新的切片对象
根据传入的参数创建一个新的子类和父类关系的代理对象
(以下案例复制参考博客)
创建一个新的object对象, 获取一个新的,无特性(geatureless)对象。Object是所有类的基类。它提供的方法将在所有的类型实例中共享。没有任何参数
判断可迭代对象的每个元素是否都为True值,0的逻辑值是False,其余都是True,包括空元组、空字典等
判断可迭代对象的元素是否有为True值的元素,有一个非0值就是True,空列表空字典为False
使用指定方法过滤可迭代对象的元素,在函数中设定过滤条件,逐一循环迭代器中的元素,将返回值为True时的元素留下,形成一个filter类型数据
1 filter(function, iterable)
2 参数function:返回值为True或False的函数,可以为None。
3 参数iterable:序列或可迭代对象。
4 >>> def bigerthan5(x):
5 ... return x > 5
6 >>> filter(bigerthan5, [3, 4, 5, 6, 7, 8])
7 [6, 7, 8]
使用指定方法去作用传入的每个可迭代对象的元素,生成新的可迭代对象
返回可迭代对象中的下一个元素值
反转序列生成新的可迭代对象
>>> a = reversed(range(10)) # 传入range对象
>>> a # 类型变成迭代器
<range_iterator object at 0x035634E8>
>>> list(a)
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
对可迭代对象进行排序,返回一个新的列表。
聚合传入的每个迭代器中相同位置的元素,返回一个新的元组类型迭代器,取最小长度。
返回对象的帮助信息
返回对象或者当前作用域内的属性列表
返回对象的唯一标识符,就是内存地址
获取对象的哈希值
返回对象的类型,或者根据传入的参数创建一个新的类型
返回对象的长度,字符串,字节数组,元组,列表,对象,字典,集合,不可变集合等
返回对象的可打印表字符串表现方式
格式化显示值
1 >>> "I am {0}, I like {1}!".format("xiaobai", "moon")
2 'I am xiaobai, I like moon!'
返回当前作用域内的局部变量和其值组成的字典,或者返回对象的属性列表
动态导入模块,用过好多遍了的,不唠叨了。
判断对象是否是类或者类型元组中任意类元素的实例
>>> isinstance(1,int)
True
>>> isinstance(1,str)
False
>>> isinstance(1,(int,str))
Tru
判断类是否是另外一个类或者类型元组中任意类元素的子类
>>> issubclass(bool,int)
True
>>> issubclass(bool,str)
False
>>> issubclass(bool,(str,int))
True
检查对象是否含有属性
获取对象的属性值
设置对象的属性值
删除对象的属性
检测对象是否可被调用
返回当前作用域内的全局变量和其值组成的字典
>>> globals()
{'__spec__': None, '__package__': None, '__builtins__': <module 'builtins' (built-in)>, '__name__': '__main__', '__doc__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>}
>>> a = 1
>>> globals() #多了一个a
{'__spec__': None, '__package__': None, '__builtins__': <module 'builtins' (built-in)>, 'a': 1, '__name__': '__main__', '__doc__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>}
返回当前作用域内的局部变量和其值组成的字典
向标准输出对象打印输出
读取用户输入值
使用指定的模式和编码打开文件,返回文件读写对象
# t为文本读写,b为二进制读写
>>> a = open('test.txt','rt')
>>> a.read()
'some text'
>>> a.close()
将字符串编译为代码或者AST对象,使之能够通过exec语句来执行或者eval进行求值
执行动态表达式求值,就是把引号去掉,如果可以执行就执行操作
执行动态语句块
返回一个对象的字符串表现形式(给解释器)
标示属性的装饰器
标示方法为类方法的装饰器
标示方法为静态方法的装饰器
参考文献
python采用的是基于值的内存管理方式,如果为不同的变量赋值为相同值**(仅适用于-5到256的整数和短字符串)**,这个值在内存中只有一份,多个变量指向同一个内存地址。
python的数据类型包括内置的数据类型、模块中定义的数据类型和用户自定义的类型。
算术运算优(先乘除后加减)先级最高,其次是位运算、成员测试运算、关系运算符、逻辑运算符等。
悄咪咪补一下运算由高到低顺口溜:
倒数第一或与非
测试比较上一级
按位或异与移位
乘除求余伴加减
全体单目排第二
大幂大佬笑嘻嘻
这里看博客的时候发现一位博主整理的非常好,就copy下来了,po上博主的链接博主原文
优先级 | 运算符 | 描述 |
---|---|---|
1 | lambda | lambda表达式 |
2 | or | 布尔"或" |
3 | and | 布尔"与" |
4 | not | 布尔"非" |
5 | in, not in | 成员测试 |
6 | is, is not | 同一性测试 |
7 | <, <=, >, >=, !=, == | 比较 |
8 | | | 按位或 |
9 | ^ | 按位异或 |
10 | & | 按位与 |
11 | <<, >> | 移位 |
12 | +, - | 加减法 |
13 | *, /, % | 乘、除和取余 |
14 | +x, -x | 正负号 |
15 | ~x | 按位翻转 |
16 | ** | 指数 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。