Python内置函数(3.11.5)

终于开始碰Python了,应该已经有中文的了吧,不过自己学的话还是自己来一遍吧

来自Built-in Functions — Python 3.11.5 documentation,是3.11.5版的。

顺序暂时是字母,等学多了理解了按照类型分一下吧。

详见全文

A

abs(x) 绝对值

abs(x)

返回x的绝对值,参数可以是整数、浮点数,如果参数是复数,返回其大小(该复数与共轭复数的乘积的正平方根)。

1
2
>>> abs(complex(2,4))
4.47213595499958

aiter()

aiter(async_iterable)

3.10版本中新增的

返回异步可迭代对象(Glossary — Python 3.11.5 documentation)的异步迭代器(Glossary — Python 3.11.5 documentation)。

all()

all(iterable)

如果可迭代对象的所有元素都为true(或者可迭代对象为空),则返回True。

等价于

1
2
3
4
5
def all(iterable):
for element in iterable:
if not element:
return False
return True

anext()

awaitable anext(async_iterator)

awaitable anext(async_iteratordefault)

3.10版本中新增的

等待时,从给定的异步迭代器返回下一项,如果给定且迭代器已用尽,则返回默认值。

这是内置的next()的异步变体,表现类似。

any()

any(iterable)

如果可迭代对象的任何元素为true,则返回True。如果可迭代对象为空,则返回False。

等价于

1
2
3
4
5
def any(iterable):
for element in iterable:
if element:
return True
return False

ascii()

ascii(object)

转义非 ASCII 字符

返回对象的可读字符串,利用\x\u或者\U将非ascii字符替换为转义字符。

1
2
>>> ascii('I love 中国')
"'I love \\u4e2d\\u56fd'"

B

bin()

bin(x)

将整数转换为“0b”开头的二进制字符。其结果是一个有效的Python表示。

体现或不体现开头的“0b”可以用以下方法,详见format():

1
2
3
4
5
6
7
8
>>> format(10,'#b')
'0b1010'
>>> format(10,'b')
'1010'
>>> f'{10:#b}'
'0b1010'
>>> f'{10:b}'
'1010'

bool()

class bool(x=False)

3.7版本中改为:x只能是位置参数。

可以返回布尔值(true或者false)。

若x是flase或者被省略,则返回False,否则返回True

布尔类是int的子类,不能进一步子类化,唯一实例是False和True。

breakpoint() 等待补充

breakpoint(_*args_, _**kws_)

3.7版本中新增。

bytearray()

class bytearray(source=b'')

class bytearray(sourceencoding)

class bytearray(sourceencodingerrors)

返回新的字节数组。字节数组类是0<=x<256范围内的可变整数序列。它具有可变序列类型中所述的大多数可变序列的常用方法,以及字节类型具有的大多数方法。

可选的 source 参数可用于以几种不同的方式初始化数组: - 如果是字符串,则还必须提供编码参数;bytearray()然后使用str.encode()将字符串转换为字节。 - 如果它是一个整数,则数组将具有该大小,并将使用空字节进行初始化。 - 如果是符合缓冲区接口的对象,则将使用该对象的只读缓冲区来初始化字节数组。 - 如果它是可迭代对象,则它必须是0<=x<256范围内的整数的可迭代对象,这些整数用作数组的初始内容。

如果没有参数,则会创建一个大小为0的数组。

bytes()

class bytes(source=b'')

class bytes(sourceencoding)

class bytes(sourceencodingerrors)

返回一个新的“字节”对象,它是0<=x<256范围内的不可变整数序列。字节是字节数组的不可变版本,它具有相同的非可变方法以及相同的索引和切片行为。

因此,构造函数参数被解释为bytearray()。 也可以使用文本创建字节对象。

C

callable

callable(object)

3.2版本中新增:3.0中移去,3.2中新增。

如果对象参数显示为可调用,则返回 True;如果不是,则返回 False。

即使返回 True,调用仍有可能失败,但如果为 False,调用肯定不会成功。

请注意,类是可调用的(调用类会返回一个新实例);如果实例的类具有__call__()方法,则实例是可调用的。

chr()

chr(i)

返回Unicode编码中整数 i 的字符串。

1
2
3
4
>>> chr(20013)
'中'
>>> chr(22269)
'国'

ord()的逆函数。

参数的有效范围是0到1114111(十六进制的0x10FFFF)。如果 i 超出该范围,则会引发 ValueError。

classmethod() 等待补充

@classmethod

compile() 等待补充

compile(sourcefilenamemodeflags=0dont_inherit=Falseoptimize=- 1)

complex() 等待补充

class complex(real=0imag=0)

class complex(string)

D

delattr()

delattr(objectname)

setattr()的相关函数。删除对象(object)的相应属性(name)。

dict()

class dict(_**kwarg_)

class dict(mapping, _**kwarg_)

class dict(iterable, _**kwarg_)

创建新字典。字典对象是字典类。

dir() 等待补充

dir(object)

如果没有参数,则返回当前本地范围内的名称列表。使用参数,尝试返回该对象的有效属性列表。

divmod()

divmod(ab)

两个非复数值作为参数,使用整数除法时,返回其商和余数。

1
2
3
4
5
6
>>> divmod(10,3)
(3, 1)
>>> divmod(9,3)
(3, 0)
>>> divmod(12.1,5)
(2.0, 2.0999999999999996)

对于整数,结果与(a // b, a % b) 相同。

对于浮点数,结果是(q, a % b),其中q通常是math.floor(a / b),但也可能比它少1。总有q * b + a % b非常接近 a ,如果a % b非零,它和 b 同号,且0 <= abs(a % b) < abs(b). # E

enumerate() 等待补充

enumerate(iterablestart=0)

返回枚举对象。 iterable 必须是序列、迭代器或者其他支持迭代的对象。

eval() 等待补充

eval(expressionglobals=Nonelocals=None)

参数是字符串以及可选的全局变量和局部变量。全局变量必须是字典,局部变量可以是任何映射对象。

exec() 等待补充

exec(objectglobals=Nonelocals=None/, _*_, closure=None)

F

filter()

filter(functioniterable)

从函数为真的可迭代元素构造迭代器。 iterable 可以是序列、支持迭代的容器或迭代器。

如果 function 为None,则假定恒等函数,即删除 iterable 的所有false元素。

注意 filter(function, iterable) 当 function 不是None时,等价于生成器表达式(item for item in iterable if function(item)),当 function 是None时,等价于(item for item in iterable if item) 。 ## float() 等待补充 class float(x=0.0)

format()

format(valueformat_spec='')

frozenset()

class frozenset(iterable=set())

G

getattr()

getattr(objectname)

getattr(objectnamedefault)

globals()

globals()

H

hasattr()

hasattr(objectname)

hash()

hash(object)

help()

help()

help(request)

hex()

hex(x)

I

id()

input()

int()

isinstance()

isinstance(objectclassinfo)

3.10更新:

如果 object 是 classinfo 的实例或者子类,则返回 True ,如果 object 不是给定类型的对象,该函数始终返回 False

如果 classinfo 是类型对象的集合(tuple),或者多重类型的“联合类型” ,如果  object 是任一个类型的实例,则返回True。如果 classinfo 不是一个类型或者类型集合(tuple)或者集合(tuple),会引发TypeError异常。

如果之前检查成功了,那可能不会引起无效类型的TypeError。 ## issubclass()

iter()

L

len()

list()

locals()

M

map()

max()

memoryview()

min()

N

next()

O

object()

oct()

open()

ord()

P

pow()

print()

property()

R

range()

repr()

reversed()

round()

S

set()

setattr()

slice()

sorted()

staticmethod()

str()

sum()

super()

T

tuple()

type()

V

vars()

Z

zip()

_

__import__()