Python 内置函数
-
abs()函数
说明:
abs()函数返回数字的绝对值
语法:
abs(x)
x-数值表达式,可以是整数,浮点数,复数。
类似:
fabs()函数只适用于float和integer类型,而abs()也适用于复数。
-
all()函数
说明:
all()函数用于判断给定的可迭代参数iterable中的所有元素是否都为TRUE,如果是返回True,否则返回False。
元素除了是0、空、None、False外都算True。
函数等价于:
def all(iterable):
for element in iterable:
if not element:
return False
return True
语法:
all(iterable)
iterable-元组或列表
a = [1,2,3,4,0]
print(all(a))
# False
a = [1,2,3,4]
print(all(a))
# True
-
any()函数
说明:any()函数用于判断给定的可迭代参数iterable是否全部为False,则返回False,如果有一个为True,则返回True。
元素除了是0、空、FALSE外都算TRUE。
函数等价于:
def any(iterable):
for element in iterable:
if element:
return True
return False
语法:
any(iterable)
iterable-元组或列表
a = [0,0,0]
print(any(a))
# False
a = [0,0,0,1]
print(any(a))
# True
-
ascii()函数
说明:
ascii()函数类似repr()函数,返回一个表示对象的字符串,但是对于字符串中的非ASCII字符则返回通过repr()函数使用\x,\u或\U编码的字符。生成字符串类似Pyhton2版本中repr()函数的返回值。
语法:
ascii(object)
object-对象
返回值:字符串
-
bin()函数
说明:
bin()返回一个函数 int 或者 长整型 long int 的二进制表示。
语法:
bin(x)
x-int或者long int 数字
返回值:字符串(二进制表示)
-
bool()函数
说明:
bool()函数用于将给定参数转换为布尔类型,如果没有参数,返回False。
bool是int的子类。
语法:
class bool([x])
x-要进行转换的参数
-
bytearray()函数
说明:
bytearray()方法返回一个新字节数组。这个数组里的元素是可变的,并且每个元素的值的范围:0<= x <256。
语法:
class bytearray([source[, encoding[, errors]]])
如果 source 为整数,则返回一个长度为source的初始化数组;
如果 source 为字符串,则按照指定的 encoding 将字符串转换为字节序列;
如果 source 为可迭代类型,则元素必须为[0,255]中的整数;
如果 source 为与buffer 接口一致的对象,则此对象也可以被用于初始化 bytearray。
如果 没有输入任何参数,默认就是初始化数组为0个元素。
返回值:返回新字节数组。
-
bytes 函数
说明:
bytes函数返回一个新的bytes对象,该对象是一个 0 <= x <256 区间内的整数不可变序列。它是bytearray的不可变版本。
语法:
class bytes([source[, encoding[, errors]]])
如果 source 为整数,则返回一个长度为 source 的初始化数组;
如果 source 为字符串,则按照指定的 encoding 将字符串转换为字节序列;
如果 source 为可迭代类型,则元素必须为[0,255]中的整数;
如果 source 为与 buffer 接口一致的对象,则此对象也可以被用于初始化 bytearray。
如果没有输入任何参数,默认就是初始化数组为0个元素。
返回值:一个新的 bytes 对象。
-
callable()函数
说明:
callable()函数用于检查一个对象是否是可调用的。如果返回 True,object仍然可能调用失败;但如果返回False,调用对象 object 绝对不会成功。
对于函数、方法、lambda表达式、类以及实现了 __call__ 方法的类实例,它都返回True。
语法:
callable(object)
object-对象
可调用返回True,否则返回False
>>>callable(0)
False
>>> callable("runoob")
False
>>> def add(a, b):
... return a + b
...
>>> callable(add) # 函数返回 True
True
>>> class A: # 类
... def method(self):
... return 0
...
>>> callable(A) # 类返回 True
True
>>> a = A()
>>> callable(a) # 没有实现 __call__, 返回 False
False
>>> class B:
... def __call__(self):
... return 0
...
>>> callable(B)
True
>>> b = B()
>>> callable(b) # 实现 __call__, 返回 True
True
-
chr()函数
说明:
chr()用一个整数作参数,返回一个对应的字符。
语法:
chr(i)
i-可以是十进制也可以是十六进制形式的数字,数字范围为 0 到 1,114,111(十六进制为0x10FFFF)。
返回值:当前整数对应的ASCII字符。
-
classmethod 修饰符
说明:
classmethod修饰符对应的函数不需要实例化,不需要self参数,但第一个参数需要时表示自身类的cls参数,可以来调用类的属性,类的方法,实例化对象等
语法:
classmethod
返回值:函数的类方法
#!/usr/bin/python
# -*- coding: utf-8 -*-
class A(object):
bar = 1
def func1(self):
print('foo')
@classmethod
def func2(cls):
print('func2')
print(cls.bar)
cls().func1()
A.func2()
# 输出结果
# func2
# 1
# foo
-
compile()函数
说明:
compile()函数将一个字符串编译为字节代码。
语法:
compile(source, filename, mode[,flags[, dont_inherit]])
source-字符串或者AST(Abstract Syntax Trees)对象。
filename-代码文件名称,如果不是从文件读取代码则传递一些可辨认的值。
mode-指定编译代码的种类。可以指定为 exec、eval、single。
flags-变量作用域,局部命名空间,如果被提供,可以是任何映射对象。
flags和dont_inherit是用来控制编译源码时的标志
返回值:表达式执行结果
-
complex()函数
说明:
complex() 函数用于创建一个值为 real + imag * j 的复数或者转化一个字符串或数为复数。如果第一个参数为字符串,则不需要指定第二个参数。
语法:
class complex([real[, imag]])
real-int、long、float或字符串
imag-int、long、float
返回值:返回一个复数
-
delattr()函数
说明:
delattr函数用于删除属性。
dealttr(x, 'foobar') 相等于 del x.foobar。
语法:
delattr(object, name)
object-对象
name-必须是对象的属性
#!/usr/bin/python
# -*- coding: utf-8 -*-
class Coordinate:
x = 10
y = -5
z = 0
point1 = Coordinate()
print('x = ', point1.x)
print('y = ', point1.y)
print('z = ', point1.z)
delattr(Coordinate, 'z')
print('--删除 z 属性后--')
print('x = ', point1.x)
print('y = ', point1.y)
# 触发错误
print('z = ', point1.z)
# 输出结果
# Traceback (most recent call last):
# x = 10
# y = -5
# File "C:/Users/Administrator/Desktop/untitled5/wv.py", line 21, in <module>
# z = 0
# --删除 z 属性后--
# x = 10
# y = -5
# print('z = ', point1.z)
# AttributeError: 'Coordinate' object has no attribute 'z'
-
dict() 函数
说明:dict()函数用于创建一个字典。
-
dir()函数
说明:
dir() 函数不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表。如果参数包含方法__dir__(),该方法将被调用。如果参数不包含__dir__(),该方法将最大限度地收集参数信息。
语法:
dir([object])
object -- 对象、变量、类型。
返回值:返回模块的属性列表
-
divmod()函数
说明:
divmod() 函数把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b)。
在 python 2.3 版本之前不允许处理复数。
语法:
divmod(a, b)
a-数字
b-数字
-
enumerate()函数
说明:
enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
语法:
enumerate(sequence, [start=0])
sequence-一个序列、迭代器或其他支持迭代对象。
start-下标起始位置
返回值:enumerate(枚举)对象。
#!/usr/bin/python
# -*- coding: utf-8 -*-
seasons = ['Spring', 'Summer', 'Fall', 'Winter']
print(list(enumerate(seasons)))
print(list(enumerate(seasons, start=1)))
# 输出结果
# [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
# [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]
-
eval()函数
说明:
eval()函数用来执行一个字符串表达式,并返回表达式的值。
语法:
eval(expression[, globals[, locals]])
expression-表达式
globals-变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。
locals-变量作用域,局部命名空间,如果被提供,可以是任何映射对象。
返回值:表达式计算结果。
-
exec 函数
说明:
exec 执行储存在字符串或文件中的 Python 语句,相比于 eval,exec可以执行更复杂的 Python 代码。
语法:
exec(object[, globals[, locals]])
object:必选参数,表示需要被指定的Python代码。它必须是字符串或code对象。如果object是一个字符串,该字符串会先被解析为一组Python语句,然后在执行(除非发生语法错误)。如果object是一个code对象,那么它只是被简单的执行。
globals:可选参数,表示全局命名空间(存放全局变量),如果被提供,则必须是一个字典对象。
locals:可选参数,表示当前局部命名空间(存放局部变量),如果被提供,可以是任何映射对象。如果该参数被忽略,那么它将会取与globals相同的值。
返回值:永远为None。
-
filter()函数
说明:
filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换。
该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。
语法:
filter(function, iterable)
function-判断函数
iterable-可迭代对象
返回值:一个迭代器对象
#!/usr/bin/python
# -*- coding: utf-8 -*-
def is_odd(n):
return n % 2 == 1
temlist = filter(is_odd,[1,2,3,4,5,6,7,8,9,10])
newlist = list(temlist)
print(newlist)
# 输出结果
# [1, 3, 5, 7, 9]
-
float() 函数
说明:
float() 函数用于将整数和字符串转换成浮点数。