内置函数表
(参考标准库手册第 2 节)

下面列出所有内部函数,分为两部分。第一部分是课程中可能用到的函数,每个函数后面有一段说明。第二部分是本课程中不会用到的函数,只列出名字和参数情况,具体解释请看标准库手册的第 2 节。两部分函数都按名字的字典顺序排列。

有关函数参数的说明

为了方便描述和解释,一些函数的参数采用了特殊表示方式。下面是对它们的说明:
  • [...] 表示方括号里的部分可以不出现。
  • iterable 表示该参数应该是一个可迭代对象,如 list 等序列或自定义的可迭代类的实例。
  • function 表示参数应该是一个函数对象。
  • object 表示参数应该是对象,可以有属性。

常用函数

abs(x) 返回 x 的绝对值。x 应为 int 或 float,如果是 complex 就返回其模。
all(iterable) 在所有迭代值都为真,或者 iterable 为空的情况下返回 True,否则返回 False。
any(iterable) 在至少有一个迭代值为真的情况下返回 True,否则返回 False。
bool([x]) 从 x 得到 bool 类型的 True 或 False(根据逻辑判断的规定)。bool() 得到 False。
callable(object) 判断 object 是否可调用对象。注意:类对象也是可调用对象。
classmethod(function) 返回对应于 function 的类方法。
complex([real[, imag]]) 基于实部 real 和虚部 imag 构造出一个复数。两个参数都可以缺省,也可以只提供实部。
delattr(object, name) 删除对象 object 的名字为 name 的属性。这里的 name 应是字符串,它应该是 object 的一个属性名。函数执行将删除 object 的这个属性。
dict(…) 创建一个字典对象,它有多种参数形式:dict(**kwarg) 中的 kwarg 是一个 "关键码-值对" 的序列,dict 基于它创建字典对象;dict(mapping, **kwarg) 基于一个已有的映射对象(如字典)创建一个新字典;dict(iterable, **kwarg) 要求其第一个参数是个元素为二元组的可迭代对象,基于它创建字典。如果后两种调用形式有 kwarg 参数,就把其中的元组加入建立的字典。如果出现关键码同名,就覆盖原有的值。
dir([object]) 无参形式返回当前局部作用域的名字表,有参数时返回有关对象的属性表。返回值是一个 list。如果该 object 有 __dir__() 方法,该方法应返回一个属性名的表,对这种对象调用 dir 时 dir 就调用它的 __dir__() 函数。
divmod(a, b) 对于整数返回数对 (a // b, a % b),对浮点数返回 (q, a % b),其中 q 是个整的浮点数,而且使得 q * b + a % b 是 a 的高度近似值。
enumerate(iterable, start=0) 生成一个二元组的list,二元组的第二个元素依次为iterable的各种迭代值,对应的第一个元素是其在iterable中的序号。默认的第一个序号是0,可以通过调用时的第二个参数指定。
eval(expr, globals=None, locals=None) expr应该是一个符合Python的表达式语法形式的字符串,eval将其看作表达式进行求值。可以通过后两个参数提供两个字典,作为expr求值时的全局和局部名字空间。
exec(object[, globals[, locals]]) 用于动态执行Python代码,其中object或为表示Python代码的字符串,或为一个代码对象(参考语言手册)。
filter(function, iterable) 返回一个迭代器,其元素是迭代器iterable中所有使得function为真的对象,按原来的顺序排列。相当于用function对iterable的元素做了一次过滤。
float([x]) 从x构造出一个浮点数对象。x可以是其他数值类型,或者是形式合适的字符串。
format(value[, format_spec]) 根据fomat_spec生成value的格式化表示,具体情况参看生成格式化的字符串一节(标准库手册6.1.3.1. Format Specification Mini-Language)。如果没有后一参数,就相当于str(value)。
frozenset([iterable]) 根据iterable创建一个frozenset对象(非变动的集合对象)。
getattr(object, name[, default]) 返回object的name属性值。若没有default参数,在object无name属性时引发AttributeError异常;如果有default参数,在object无name属性时返回这个default值。
globals() 返回一个字典,其中是当时所有的全局符号(当前模块的全局符号)与约束值。
hasattr(object, name) 如果object有name属性就返回True,否则返回False。
hash(object) 计算并返回object的hash值,这是一个整数。每个object对应一个唯一的hash值,用于字典的快速保存和查找,也可以用于其他目的。
id(object) 返回object的标识,这个值对存在的每个object唯一且在其存在期间不变。
input([prompt]) 要求取得用户输入,如果有prompt就将其输出作为提示符。
int(x=0)
int(x, base=10)
基于x创建一个整数,无参时结果为0。如果x是字符串,默认将其看作整数的十进制表示。如要看作其他进制的串可以用第二个参数说明(如二进制,八进制,十六进制等)。如果字符串内容不合适将报ValueError错。
isinstance(object, classinfo) 判断object是否classinfo的实例。
issubclass(class, classinfo) 判断class是否classinfo的派生类(子类)。
iter(object[, sentinel]) 返回一个迭代器。在没有第二个参数的情况下,object必须或者是一个元素的汇集对象而且支持迭代器,即提供了 __iter__() 方法,这时就调用这个方法得到相应的迭代器;或者它应满足序列对象的要求,即提供了具有一个整型参数的 __getitem__() 方法,从下标0开始。如果不是这两种情况就引发TypeError异常。如果给了第二个参数,就每次以无参形式调用object的 __next__() 方法并返回其值,直至某次调用返回的值等于sentinel时引发StopIteration异常。
len(s) 返回s的长度。s可以是序列或者字典。
list([iterable]) 基于iterable构造一个list,无参时得到空list。
locals() 返回一个字典,其中是所有当前的局部符号和约束值。
map(function, iterable, ...) 返回一个迭代器,其元素是将function按顺序作用于iterable的结果。
max(iterable, *[, key])
max(arg1, arg2, *args[, key])
返回iterable的元素中最大的一个,或两个或更多参数中较大的一个。这里的iterable不能为空。key必须用关键码实参的方式给定,其实参应该是一个单参数的函数,用于从比较各元素中取出用于比较大小的关键码。如果存在多个同样大小的最大元素,返回遇到的第一个。
min(iterable, *[, key])
min(arg1, arg2, *args[, key])
返回iterable的元素中最小的一个,或两个或更多参数中最小的一个。其他方面的情况与max类似。
next(iterator[, default]) 取得iterable的下一个元素(调用其 __next__() 方法)。如果有default参数,在没有下一元素时返回它;否则这时引发异常StopIteration。
object() 返回一个新的无任何属性的对象。
open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None) 打开文件file,其他参数见相关讨论。
pow(x, y[, z]) 返回x的y次幂。如果有参数z,结果取模z。
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False) 顺序输出各个object。其他参数必须用关键字参数表示。sep表示多个输出项的间隔符,end表示整个输出的终结符,file指定输出位置(默认为标准输出),flush说明是否要求强制刷新(即在print完成时立即强制将输出送走,默认是允许缓存)。
range(stop)
range(start, stop[, step])
生成一个range对象。
repr(object) 返回object的一个可以打印输出的字符串表示。
reversed(seq) 返回一个iterable,其元素是seq的反序序列。
round(number[, ndigits]) 返回number的取整近似值,默认小数点之后0位,给出ndigits指明要求的位数。
set([iterable]) 从iterable构造一个set,默认返回空集。
setattr(object, name, value) 给object的name属性赋值。
slice(stop)
slice(start, stop[, step])
求切片,见前面说明。
sorted(iterable[, key][, reverse]) 返回iterable的元素排序后得到的list。key的作用同前面max,如果reverse参数为真则得到反序的list。
staticmethod(function) 返回对应于function的静态方法。
str(object='')
str(object=b'', encoding='utf-8', errors='strict')
返回object的字符串表示。
sum(iterable[, start]) 求iterable元素的和,可以用start指定开始位置。
super([type[, object-or-type]]) 返回一个代理对象,通过它可以把方法调用指派到基类。
tuple([iterable]) 构造一个元组。
type(object)
type(name, bases, dict)
一个参数时返回object的类型。三个参数的情况见标准库手册。
vars([object]) 无参时相当于local(),以模块、类或类实例为参数时返回其属性。
zip(*iterables) 要求若干个iterable参数,得到一个元素为元组的iterable,每个元组由各个参数iterable的相同位置的元素组成。做到最短的iterable结束时结束。

其他函数

ascii(object)
bin(x)
bytearray([source[, encoding[, errors]]]) 根据 [ ] 的情况,本函数有四种调用形式:bytearray(),bytearray(source),bytearray(source, encoding),bytearray(source, encoding, errors)
bytes([source[, encoding[, errors]]])
chr(i)
compile(source, filename, mode, flags=0, dont_inherit=False, optimize=-1)
hex(x)
memoryview(obj)
oct(x)
ord(c)
property(fget=None, fset=None, fdel=None, doc=None)
__import__(name, globals=None, locals=None, fromlist=(), level=0)
本页及相关页面(除另声明者外)由裘宗燕创建维护,可自由用于各种学习活动。其他使用需得到作者许可。