1. 前言
总是对python3的内置函数不太了解,阅读官方文档之后,做个记录。
序号 | 内建函数名 | 类型 | 描述 |
---|---|---|---|
类型 | |||
1 | bool([x]) | 类 | 返回一个Boolean值,True 或 False。 |
2 | bytes([source[, encoding[, errors]]]) | 类 | 返回一个新的bytes对象,该对象是不可变的整数序列,范围为0 <= x <256。 |
3 | bytearray([source[, encoding[, errors]]]) | 类 | 返回一个新的bytearray对象。 bytearray类是一个可变的整数序列,范围为0 <= x <256。 |
4 | float([x]) | 类 | 返回由数字或字符串数字对应的浮点数对象,float(1),float(‘1’)。 |
5 | frozenset([iterable]) | 类 | 根据给定的可迭代对象返回一个frozenset对象。 |
6 | dict(**kwarg) dict(mapping, **kwarg) dict(iterable, **kwarg | 类 | 返回一个dict对象 |
7 | int(x, base=10) | 类 | 返回由数字或字符串数字对应的int对象,如果未提供任何参数,则返回0 |
8 | list([iterable]) | 类 | 根据给定的可迭代对象返回一个list对象。 |
9 | set([iterable]) | 类 | 根据给定的可迭代对象返回一个set对象。 |
10 | str(object=’’) str(object=b’’, encoding=‘utf-8’, errors=‘strict’) | 类 | 返回参数的字符串版本。 |
11 | tuple([iterable]) | 类 | 根据给定的可迭代对象返回一个tuple对象。 |
12 | object() | 类 | 返回一个新的无特征对象。所有其它类的基类。 |
判断 | |||
1 | all(iterable) | 函数 | 若可迭代对象参数中的所有元素都是True或可迭代对象为空,返回True,否则返回False |
2 | any(iterable) | 函数 | 只要可迭代对象参数中的元素有一个为True,则返回True,否则返回False(可迭代对象为空也返回False) |
3 | callable(object) | 函数 | 如果对象参数可调用,则返回True;否则,返回False。 如果返回true,则调用仍然有可能失败,但是如果为false,则调用对象将永远不会成功 |
4 | isinstance(object, classinfo) | 函数 | 如果object对象是classinfo或其子类的实例,则返回True,否则返回False。 |
5 | issubclass(class, classinfo) | 函数 | 如果class是classinfo的子类,则返回True,否则返回False。 |
编码 | |||
1 | ascii(object) | 函数 | 返回表示该对象的可打印的字符串。但是对于字符串中的非 ASCII 字符则返回通过 repr() 函数使用 \x, \u 或 \U 编码的字符 |
2 | breakpoint(*args, **kws) | 函数 | 设置断点,实际调用的是sys.breakpoint(*args, **kwargs) |
3 | chr(i) | 函数 | 返回表示该字符的字符串,i为该字符的Unicode代码点。 例如,chr(97)返回字符串“ a”,而chr(8364)返回字符串“€”。 这是ord() 的逆函数 |
4 | ord( c ) | 函数 | 是 chr() 函数(对于 8 位的 ASCII 字符串)的配对函数,它以一个字符串(Unicode 字符)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值。 |
5 | compile(source, filename, mode, flags=0, dont_inherit=False, optimize=-1) | 函数 | 将source编译为code或AST对象。 可以通过exec()或eval()执行code对象 |
属性操作 | |||
1 | delattr(object, name) | 函数 | 跟setattr()相关。参数name必须是object的属性。 |
2 | getattr(object, name[, default]) | 函数 | 返回object对象的name属性值(当属性存在时如getattr(tom, ‘name’)等价于tom.name),若此属性不存在,则赋予其默认值default 。 |
3 | hasattr(object, name) | 函数 | 若object对象有name属性,则返回True,否则返回False。实际是调用的getattr(object, name)看是否报错。 |
4 | setattr(object, name, value) | 函数 | 与getattr()相对应,修改或新增object对象的name属性值为value。例如setattr(x, ‘foobar’, 123) 等价于alent to x.foobar = 123 |
5 | dir([object]) | 函数 | 不带参数时,返回当前范围内的变量、方法和定义的类型列表。 使用参数时,返回该对象的有效属性列表 |
6 | vars([object]) | 函数 | 返回模块,类,实例或具有__dict__属性的任何其他对象的__dict__属性。 |
作用域 | |||
1 | globals() | 函数 | 字典类型返回当前位置的全部全局变量 |
2 | locals() | 函数 | 字典类型返回当前位置的全部局部变量 |
进制 | |||
1 | bin(x) | 函数 | 将整数转换为以“ 0b”为前缀的二进制字符串。 |
2 | hex(x) | 函数 | 将整数转换为以“ 0x”为前缀的小写16进制字符串。 |
3 | oct(x) | 函数 | 将整数转换为以“ 0o”为前缀的八进制字符串 |
数学 | |||
1 | abs(x) | 函数 | 返回参数的绝对值,参数必须是int或float |
2 | complex([real[, imag]]) | 类 | 返回值为real + imag * 1j的复数,或将字符串或数字转换为复数。 |
3 | divmod((a, b) | 函数 | 接收两个数字类型(非复数)参数,返回一个包含商和余数的元组(a // b, a % b) |
4 | pow(base, exp[, mod]) | 函数 | 两个参数时,返回base的exp次方的值。三个参数时,返回(base的exp次方) % mod 的值。 |
5 | round(number[, ndigits]) | 函数 | 返回number在”四舍五入“小数点后gdigits位的值。 |
迭代器 | |||
1 | iter(object[, sentinel]) | 函数 | 返回迭代器。若第二个参数不存在,则object参数必须支持__iter__()方法或__getitem__()方法。若提供了第二个参数,则第一个参数必须是可调用对象,且调用__next__()的返回值等于sentinel参数的值会报错。 |
2 | next(iterator[, default]) | 函数 | 通过调用__next __()方法从迭代器中获取下一个元素,若指定了default,则当迭代器耗尽时,返回该默认值,而不是报错。 |
可迭代对象 | |||
1 | enumerate(iterable, start=0) | 函数 | 将一个可迭代对象(如列表、元组或字符串)组合为一个(索引,原元素)元组构成的迭代对象,同时列出数据和数据下标,一般用在 for 循环当中 |
2 | filter(function, iterable) | 函数 | 通过function函数过滤iterable中不为True的元素,返回为True的元素构成的迭代器 |
3 | map(function, iterable, …) | 函数 | 返返回一个将function函数应用于每个可迭对象中每一项的迭代器,迭代器中的元素是原可迭代对象元素应用function函数之后的值。 |
4 | max(iterable, *[, key, default]) max(arg1, arg2, *args[, key]) | 函数 | 返回可迭代对象或者多个参数中的最大值。 |
5 | min(iterable, *[, key, default]) min(arg1, arg2, *args[, key]) | 函数 | 返回可迭代对象或者多个参数中的最小值。 |
6 | sum(iterable, /, start=0) | 函数 | 返回可迭代对象的和加上start参数的值的结果。 |
7 | zip(*iterables) | 函数 | 将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的迭代器,这样做的好处是节约了不少的内存。 |
8 | range(stop) range(start, stop[, step]) | 函数 | 返回的是一个可迭代对象。 |
9 | reversed(seq) | 函数 | 返回一个反转迭代器。 |
10 | slice(stop) slice(start, stop[, step]) | 类 | 返回slice对象。 |
11 | sorted(iterable, *, key=None, reverse=False) | 函数 | 返回对iterable中元素排序后的list对象。key和reverse是可选的额关键字参数。key参数通常是一个函数,对iterable中的元素应用此函数后的值排序。reverse位True/False,表示是否逆序。 |
类相关操作 | |||
1 | property(fget=None, fset=None, fdel=None, doc=None) | 类 | 返回属性值。fget获取属性值的函数,fset设置属性值的函数,fdel删除属性值的函数,doc是文档字符串。 可用作装饰器使用时创建只读属性。 |
2 | staticmethod() | 类 | 将一个方法转换成静态方法 |
3 | classmethod() | 类 | 将一个方法转换成类方法 |
4 | super([type[, object-or-type]]) | 函数 | 用于调用父类(超类)的一个方法。super 是用来解决多重继承问题的,直接用类名调用父类方法在使用单继承的时候没问题,但是如果使用多继承,会涉及到查找顺序(MRO)、重复调用(钻石继承)等种种问题。MRO 就是类的方法解析顺序表, 其实也就是继承父类方法时的顺序表。 |
5 | type(object) class type(name, bases, dict) | 类 | 若位1个参数,则返回该对象的类型;若为3个参数,则返回一个新的类。isinstance() 与 type() 区别: type() 不会认为子类是一种父类类型,不考虑继承关系。 isinstance() 会认为子类是一种父类类型,考虑继承关系 |
其它 | |||
1 | hash(object) | 函数 | 获取取对象(字符串或者数值等)的哈希值,哈希值是整数。 比较相等的数值具有相同的哈希值(即使它们的类型不同,例如1和1.0)。hash() 函数可以应用于数字、字符串和对象,不能直接应用于 list、set、dictionary。在 hash() 对对象使用时,所得的结果不仅和对象的内容有关,还和对象的 id(),也就是内存地址有关。 |
2 | help([object]) | 函数 | 用于查看函数、方法、类、模块等的详细说明。例如:显示函数中的文档字符串。 |
3 | id(object) | 函数 | 返回对象的内存地址。 |
4 | input([prompt]) | 函数 | 若prompt参数存在,则将其写入标准输出(换行),然后接收标准输入数据,返回为 string 类型。python3的input()相当于python2的raw_input()。 |
5 | len(s) | 函数 | 返回对象的长度。 |
6 | memoryview(obj) | 函数 | 返回根据给定参数创建的“memory view”对象。 |
7 | open(file, mode=‘r’, buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None) | 函数 | 文件操作,读写文件。 |
8 | format(value[, format_spec]) | 函数 | 将value格式化。实际调用的是type(value).__format__(value, format_spec)。 |
9 | print(*objects, sep=’ ‘, end=’\n’, file=sys.stdout, flush=False) | 函数 | 打印输出,以sep分隔,以end结尾。 |
10 | repr(object) | 函数 | 返回一个字符串,将对象转化为供解释器读取的形式。 |
11 | __import__(name, globals=None, locals=None, fromlist=(), level=0) | 函数 | 这个方法在import 语句的时候会调用。 |
12 | eval(expression[, globals[, locals]]) | 函数 | 参数expression必须是字符串它被解析为python表达式,参数globals和locals是可选的。若提供可选参数,globals必须是字典对象,locals必须是mapping对象,使用golbals和locals作为命名空间。eval 方法能使字符串本身的引号去掉,保留字符的原本属性eval这个函数就是在返回,它觉得正确的那个值 |
13 | exec(object[, globals[, locals]]) | 函数 | 此函数支持python代码的动态执行。object必须是字符串或code对象,在执行时如果是字符串会被解析为合适的python语句 。code对象直接执行。global和locals与eval参数是一样的。 |
2. 参考文献
[1] python官方文档