亲宝软件园·资讯

展开

Python内置函数分类汇总

mazinga 人气:1

Python解释器内置了很多函数,这些内置函数使用方便,无需导入,直接调用。可以在交互模式下输入dir(__builtins__),输出的列表中包含了所有的内置函数;

 

1、可迭代对象、序列操作相关

all(iterable) :如果 iterable 的所有元素为真,返回 True。例如,all(["a", "b"])返回Trueall(["a", ""])返回False

any(iterable) :如果 iterable 的任一元素为真,返回True。例如,any(["a", ""])返回Trueany(["", ""])返回False

enumerate(iterable, start=0) :返回一个枚举对象。例如,list(enumerate(['a', 'b', 'c'], start=1))返回[(1, 'a'), (2, 'b'), (3, 'c')]

len(s) :返回对象的长度(元素的个数)。例如,len("abc")返回3len([1, 2, 3])返回3;

sum(iterable, /, start=0) :从 start 开始自左向右对 iterable 的项求和并返回总计值。 iterable 的项通常为数字,而 start 值则不允许为字符串。例如,sum([1, 2, 3])返回6

sorted(iterable, *, key=None, reverse=False) :根据 iterable 中的项返回一个新的已排序列表。有两个可选的关键字参数,key 指定带有单个参数的函数,reverse 为布尔值,默认False,设为True则反转排序。例如:sorted([1,3,2])返回[1, 2, 3]

next(iterator[, default]) :通过调用 iterator__next__()方法获取下一个元素。如果迭代器耗尽,则返回给定的 default,如果没有默认值,则出发 StopIteration

iter(object[, sentinel]) :返回一个 iterator对象;

filter(function, iterable) :用 iterable 中函数 function 返回真的那些元素,构建一个新的迭代器;

map(function, iterable, ...) :返回一个将 function 应用于 iterable 中每一项并输出结果的迭代器;

zip(*iterables) :创建一个聚合了来自每个迭代对象中的元素的迭代器;

reversed(seq) :返回一个反向的 iterator。seq必须是一个实现 __reversed__()方法的对象,或者支持支持序列协议(实现了从 0开始的整数类型参数的__len__()方法和__getitem__()方法);

range(stop)、range(start, stop[, step])

slice(stop)、slice(start, stop[, step])

max(iterable, *[, key, default])、max(arg1, arg2, *args[, key]) :返回可迭代对象中最大的元素,或者两个及以上实参中最大的;

min(iterable, *[, key, default]、min(arg1, arg2, *args[, key])) :返回可迭代对象中最小的元素,或者两个及以上实参中最小的;

 

2、数据类型相关

str(object='') :返回一个字符串,有序、不可变;

repr(object) :返回包含一个对象的可打印表示形式的字符串;

list([iterable]) :返回一个列表,有序、可变;

tuple([iterable]) :返回一个元组,有序、不可变;

dict(**kwargs)、dict(mapping, **kwargs)、dict(iterable, **kwargs) :返回一个新的字典,可变、无序、不重复;

set([iterable]) :返回一个新的 set 对象,可变、无序、不重复;

frozenset([iterable]) :返回一个 frozenset 对象,不可变、无序、不重复;

bool([x]) :返回一个布尔值,TrueFalse

 

3、编码、字符相关

ascii(object) :就像函数repr(),返回一个对象可打印的字符串,但是repr()返回的字符串中非 ASCII 编码的字符,会使用\x\u\U来转义。

chr(i) :返回 Unicode 码位为整数 i 的字符的字符串形式。例如,chr(97) 返回字符串 "a" 。这是ord(c)的逆函数;

ord(c) :c 为单个 Unicode 字符的字符串,返回代表它 Unicode 码点的整数,例如,ord("a")返回整数97。这是chr(i) 的逆函数;

 

4、数学、进制相关

abs(x) :返回一个绝对值,参数类型:整数、浮点数、复数(返回其模)。如果 x 定义了 __abs__(),则abs(x)返回 x.__abs__()

pow(base, exp[, mod]) :返回 baseexp 次幂;如果 mod 存在,则返回 baseexp 次幂对 mod 取余(比pow(base, exp) %mod 更高效);

complex([real[,imag]]):返回值为 real + image*1j 的复数,或将字符串或数字转换为复数;

divmod(a, b) :将两个(非复数)数字作为参数,执行整数除法是返回一对商和余数;

float(x) :返回从数字或字符串 x 生成的浮点数;对于一个普通 Python 对象 x ,float(x)会调用x.__float__(),如果__float__()未定义,则调用__index_()

round(number[, ndigits]) :返回 number 舍入到小数点后 ndigits 位精度的值。如果 ndigits被省略或为None,则返回最接近输入值的整数;

int([x])、int(x, base=10) :返回一个基于数字或者字符串 x 构造的整数对象,未给参数时返回0 ;如果base不为10,x 必须是字符串。例如,int('12', 16),返回18,即16进制‘12’转换成十进制为18;

bytes([source[, encoding[, errors]]]) :返回一个新的“bytes”对象,是不可变序列,包含范围为 0 <= x <= 256的整数。它有其中不改变序列的方法和相同的索引、切片操作。source 可以为整数、字符串(需指定encoding)、可迭代对象(元素必须为[0, 255]中的整数);

bytearray([source[, encoding[, errors]]]) :返回一个新的 bytes 数组。是一个可变对象,包含范围为 0 <= x <= 256的整数。它有可变序列大部分常见的方法。source 可以为整数、字符串(需指定encoding)、可迭代对象(元素必须为[0, 255]中的整数);

bin(x) :将整数转变为前缀是“0b”的二进制字符串。如果 x 不是 Python 的 int 对象,它需要定义__index__() 方法返回一个整数;

oct(x) :将整数转变为前缀是“0o”的八进制字符串。如果 x 不是 Python 的 int 对象,它需要定义__index__() 方法返回一个整数;

hex(x) :将整数转变为前缀是“0x”的十六进制字符串。如果 x 不是 Python 的 int 对象,它需要定义__index__() 方法返回一个整数;

 

5、类、实例、自省相关

staticmethod() :装饰器,将一个方法封装成静态方法;

classmethod() :装饰器,将一个方法封装成类方法;

property(fget=None, fest=None, fdel=None, doc=None) :返回 property 属性;

hasattr(object, name) :实参是一个对象和一个字符串。如果字符串是对象的属性之一的名称,返回True

getattr(object, name[, default]) :返回对象的 name 属性的值。如果对象没有该属性,则返回提供的 default 值;如果没有提供 default 值,会触发 AttributeError

setattr(object, name, value) :实参是一个对象,一个字符串和一个任意值。字符串指定一个现有属性或者新增属性。如果对象允许,函数会将值赋给该属性;

delattr(object, name) :实参是一个对象和一个字符串。该字符串必须为对象的某个属性名称。如果对象允许,该函数将删除指定的属性;

isinstance(object, classinfo) :如果参数 object 是参数 classinfo 的实例或者是其 (直接、间接或虚拟) 子类则返回 True

issubclass(class, classinfo) :如果 classclassinfo 的 (直接、间接或虚拟) 子类则返回 True

globals() :返回当前全局符号表的字典;

locals() :更新并返回当前本地符号表的字典;

callable(object) :如果参数 object 是可调用对象(实例所属的类实现了__call__()方法),就返回True

object() :返回一个没有特征的新对象。object 是所有类的基类。它具有所有 Python 类实例的通用方法。这个函数不接受任何实参;

super([type[, object-or-type]]) :用于调用父类(超类)的方法。super(Class, self).xxxsuper().xxx

dir([object]) :如果没有实参,则返回当前本地作用域中的名称列表;如果有实参,它会尝试返回该对象的有效属性列表。例如,dir(__builtins__)返回 Python 的内建对象(包含内置函数、内置异常等);

id(object) :返回对象的“标识值”(内存地址)。该值是一个整数,在此对象的生命周期中保证是唯一且恒定的。两个生命期不重叠的对象可能具有相同的id()值;

help([object]) :启动内置的帮助系统(此函数主要在交互式中使用)。如果没有实参,解释器控制台里会启动交互式帮助系统;

type(object)、type(name, bases, dict) :返回对象的类型。返回值为一个 type 对象,通常与object.__class__所返回的对象相同;返回一个新的 type 对象,本质上是class语句的一种动态形式。name 字符串即类名,并且会成为__name__属性;bases 元组列出基类并且会成为 __bases__属性;dict 字典包含类主体定义的命名空间,并且会被复制到一个标准字典成为__dict__属性;

vars([object]) :返回模块、类、实例或任何其它具有__dict__属性的对象的__dict__属性;

 

6、打印、编译、执行及其它

input([prompt]) :如果存在 prompt 实参,则将其写入标准输出,末尾不带换行符。接下来,该函数从输入中读取一行,将其转换为字符串(除了末尾的换行符)并返回;

format(value[, format_spec]) :将 value 转换为 format_spec 控制的“格式化”表示;

print(*object, sep=' ', end='\n', file=sys.stdout, flush=False) :将 object 打印到file指定的文本流,以 sep 分隔并在末尾加上 endsependfileflush 如果存在,它们必须以关键字参数的形式给出;

compile(source, filename, mode, flags=0, don't_inherit=Flase, optimize=-1) :将 source 编译成代码或 AST 对象;

eval(expression[, globals[, locals]]) :实参是一个字符串,以及可选的 globalslocalsexpression 参数会作为一个 Python 表达式(从技术上说是一个条件列表)被解析并求值,并使用 globalslocals 字典作为全局和局部命名空间;

exec(object[, globals[, locals]]) :动态执行 Python 代码。object 必须是字符串或者代码对象;

breakpoint(*args, **kwargs) :调用此函数,进入调试器中;

__import__(name, globals=None, locals=None, formlist=(), level=0) :此函数会由 import语句发起调用。这是一个日常 Python 编程中不需要用到的高级函数;

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None) :打开 file 文件并返回对应的 file object。如果文件不能打开,则触发 OSError

hash(object) :返回对象的哈希值(如果它有的话)。哈希值是整数;

memoryview(obj) :返回由给定实参创建的“内存视图”对象;

加载全部内容

相关教程
猜你喜欢
用户评论