Python 基础函数 01(A ~ C)

Python解释器内置了许多始终可用的功能和类型。它们按字母顺序在此处列出。

Built-in Functions Built-in Functions
abs() all()
any() ascii()
bin() bool()
breakpoint() bytearray()
bytes() callable()
chr() classmethod()
oct() compile()
complex()

abs(x )

返回数字的绝对值。参数可以是整数或浮点数。如果参数为复数,则返回其大小。如果x定义__abs__(),则 abs(x)返回x.abs()。

all(iterable)

返回True如果的所有元素迭代是真实的(或者如果可迭代为空)。相当于:

def all(iterable):
    for element in iterable:
        if not element:
            return False
    return True

any(iterable)

如果iterable的任何元素为true,返回True。如果iterable为空,返回False。相当于:

def any(iterable):
    for element in iterable:
        if element:
            return True
    return False

ascii(object)

如repr(),由返回的字符串中返回一个包含对象的可打印表示一个字符串,但逃避非ASCII字符 repr()使用\x,\u或\U逃逸。这将生成类似于Python 2 中repr()返回的字符串。

bin(x )

将整数转换为以“ 0b”为前缀的二进制字符串。结果是有效的Python表达式。如果x不是Python int对象,则必须定义一个__index__()返回整数的方法。一些例子:

bin(3)
'0b11'
bin(-10)
'-0b1010'

如果不需要前缀“ 0b”,则可以使用以下两种方式之一。

format(14, '#b'), format(14, 'b')
('0b1110', '1110')
f'{14:#b}', f'{14:b}'
('0b1110', '1110')

另请参阅format()以获取更多信息。

class bool([ x ] )

返回一个布尔值,即True或之一False。 x是使用标准真值测试程序转换的。如果x为false或省略,则返回False;否则返回True。的 bool类是的子类int(参见数值类型-整数,浮点,复合)。它不能进一步细分。它唯一的实例是False和 True(请参阅布尔值)。

在版本3.7中更改:x现在是仅位置参数。

breakpoint(* args,** kws )

此功能使您进入呼叫站点的调试器。具体来说,它调用sys.breakpointhook(),传递args和kws直接传递。默认情况下,不包含任何参数的sys.breakpointhook()调用 pdb.set_trace()。在这种情况下,它纯粹是一种便利功能,因此您不必显式导入 pdb或键入尽可能多的代码即可进入调试器。但是, sys.breakpointhook()可以将其设置为其他功能, breakpoint()并将自动调用该功能,从而使您可以进入所选的调试器。

使用参数引发审核事件 。builtins.breakpointbreakpointhook

扫描二维码关注公众号,回复: 11016367 查看本文章

3.7版中的新功能。

class bytearray([source[, encoding[, errors]]])

返回一个新的字节数组。的bytearray类是整数的范围为0一个可变的序列<= X <256它已大部分的可变序列的常规方法,在所描述的可变序列类型,以及大多数方法,该bytes类型有,见字节和ByteArray操作。

可选的source参数可以通过几种不同的方式用于初始化数组:

如果它是字符串,则还必须提供encoding(和可选的 errors)参数;bytearray()然后使用将字符串转换为字节str.encode()。

如果它是整数,则数组将具有该大小,并将使用空字节初始化。

如果它是符合缓冲区接口的对象,则该对象的只读缓冲区将用于初始化bytes数组。

如果它是可迭代的,则它必须是范围内的整数的可迭代对象,这些整数 用作数组的初始内容。0 <= x < 256

没有参数,将创建大小为0的数组。

另请参见二进制序列类型-字节,字节数组,内存视图和字节数组对象。

class bytes([source[, encoding[, errors]]])

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

因此,将构造函数参数解释为bytearray()。

字节对象也可以使用文字创建,请参见String和Bytes文字。

另请参见二进制序列类型—字节,字节数组,内存视图,字节对象以及字节和字节数组操作。

callable(object)

True如果object参数看起来可调用, False则返回,否则返回。如果返回True,则调用仍然有可能失败,但是如果返回,则False调用对象将永远不会成功。注意,类是可调用的(调用一个类将返回一个新实例)。如果实例的类具有__call__()方法,则它们是可调用的。

3.2版中的新功能:此功能首先在Python 3.0中删除,然后在Python 3.2中重新使用。

chr(i)

返回表示一个字符的字符串,该字符的Unicode代码点为整数i。例如,chr(97)返回字符串’a’,而 chr(8364)返回字符串’€’。这是的反函数ord()。

参数的有效范围是从0到1,114,111(以16为底的0x10FFFF)。 ValueError如果我不在该范围内,将被提升。

@classmethod

将方法转换为类方法。
类方法将类作为隐式第一个参数接收,就像实例方法接收实例一样。要声明类方法,请使用以下惯用法:

class C:
    @classmethod
    def f(cls, arg1, arg2, ...): ...

该@classmethod表单是一个函数装饰器 – 有关详细信息,请参见 函数定义。

可以在类(例如C.f())或实例(例如C().f())上调用类方法。该实例除其类外均被忽略。如果为派生类调用类方法,则派生类对象作为隐式第一个参数传递。

类方法不同于C ++或Java静态方法。如果需要这些,请参见staticmethod()。

有关类方法的更多信息,请参见标准类型层次结构。

compile(source,filename,mode,flags = 0,dont_inherit = False,optimize = -1 )

将源编译为代码或AST对象。代码对象可以通过exec()或来执行eval()。 source可以是普通字符串,字节字符串或AST对象。ast有关如何使用AST对象的信息,请参阅模块文档。

该文件名参数应该给从代码读取的文件; 如果未从文件中读取(’'通常使用),则传递一些可识别的值。

该模式参数指定必须编译什么样的代码; 它可以是 ‘exec’,如果源包含的语句序列的,'eval’如果它由一个单一的表达的,或者’single’如果它由单个交互式声明的(在后一种情况下,计算结果为比其他东西表达式语句None将被打印)。

可选参数标志和dont_inherit控制哪些将来的语句会影响source的编译。如果两者都不存在(或两者都不为零),则使用正在调用的代码中有效的将来的语句来编译代码compile()。如果 给定flags参数且dont_inherit不(或为零),则除了将始终使用的那些语句外,还将使用flags参数指定的将来语句。如果dont_inherit是非零整数,则使用flags参数–忽略编译调用周围有效的将来语句。

将来的语句由位指定,这些位可以按位进行“或”运算以指定多个语句。可以在模块中compiler_flag的_Feature实例上找到指定给定功能所需的位域作为属性__future__。

可选参数标志也控制编译源是否允许含有顶层await,和。设置该位后,返回代码对象已设置为,并且可以通过交互执行。async forasync withast.PyCF_ALLOW_TOP_LEVEL_AWAITCO_COROUTINEco_codeawait eval(code_object)

参数optimize指定编译器的优化级别;default值-1选择由-Ooptions 给出的解释器的优化级别。显式级别为0(无优化; __debug__为true),1(断言__debug__为false ,为false)或2(也删除了文档字符串)。

SyntaxError如果编译的源无效,并且ValueError源包含空字节,则此函数引发。

如果要将Python代码解析为AST表示形式,请参见 ast.parse()。

使用参数 和引发审核事件 。隐式编译也可能引发此事件。compilesourcefilename

注意 在’single’或 'eval’模式下用多行代码编译字符串时,输入必须以至少一个换行符终止。这是为了便于检测code模块中不完整和完整的语句。

警告 由于Python AST编译器中的堆栈深度限制,在编译为AST对象时,使用足够大/复杂的字符串可能会使Python解释器崩溃。
在版本3.2中更改:允许使用Windows和Mac换行符。同样,在’exec’模式下输入不必再以换行符结尾。添加了optimize参数。

在版本3.5中进行了更改:以前TypeError是在source中遇到空字节时引发的。

在新版本3.8:ast.PyCF_ALLOW_TOP_LEVEL_AWAIT现在可以在标志传递给启用顶级的支持await,和。async forasync with

class complex([real[, imag]])

返回值为real + imag * 1j的复数,或将字符串或数字转换为复数。如果第一个参数是字符串,它将被解释为复数,并且必须在没有第二个参数的情况下调用该函数。第二个参数不能是字符串。每个参数可以是任何数字类型(包括复数)。如果IMAG被省略,默认为零,并且构造用作数字转换等 int和float。如果两个参数都省略,则返回 0j。

对于一般的Python对象x,请complex(x)委托 x.complex()。如果__complex__()未定义,则返回到__float__()。如果__float__()未定义,则返回到__index__()。

注意 从字符串转换时,字符串不得在中心 + 或 - 运算符周围包含空格。例如, complex(‘1+2j’)很好,但是提高了 。complex(‘1 + 2j’)ValueError

复杂类型在数字类型中进行了描述-int,float,complex。

在版本3.6中进行了更改:允许按代码文字中的下划线对数字进行分组。

在3.8版中进行了更改:退回到__index__()if complex()和 float()undefined。

发布了36 篇原创文章 · 获赞 0 · 访问量 618

猜你喜欢

转载自blog.csdn.net/Corollary/article/details/105424860
今日推荐