资讯专栏INFORMATION COLUMN

Python标准库---3、内置函数(G-H-I-J-K)

gself / 2881人阅读

摘要:上一篇文章标准库内置函数下一篇文章标准库内置函数内置函数返回对象命名属性的值。返回表示当前全局符号表的字典。例如,从二进制数据库文件中读取固定宽度的块,直至到达文件的末尾上一篇文章标准库内置函数下一篇文章标准库内置函数

上一篇文章:Python标准库---2、内置函数(D-E-F)
下一篇文章:Python标准库---4、内置函数(L-M-N-O)
内置函数:

26. getattr(object, name[, default])
返回对象命名属性的值。name 必须是字符串。如果该字符串是对象的属性之一,则返回该属性的值。例如, getattr(x, "foobar") 等同于 x.foobar。如果指定的属性不存在,且提供了 default 值,则返回它,否则触发 AttributeError。
27. globals()
返回表示当前全局符号表的字典。这总是当前模块的字典(在函数或方法中,不是调用它的模块,而是定义它的模块)。
28. hasattr(object, name)
该实参是一个对象和一个字符串。如果字符串是对象的属性之一的名称,则返回 True,否则返回 False。(此功能是通过调用 getattr(object, name) 看是否有 AttributeError 异常来实现的。)
29. hash(object)
返回该对象的哈希值(如果它有的话)。哈希值是整数。它们在字典查找元素时用来快速比较字典的键。相同大小的数字变量有相同的哈希值(即使它们类型不同,如 1 和 1.0)。

注解 如果对象实现了自己的 __hash__() 方法,请注意,hash() 根据机器的字长来截断返回值。另请参阅 __hash__()。

30. help([object])
启动内置的帮助系统(此函数主要在交互式中使用)。如果没有实参,解释器控制台里会启动交互式帮助系统。如果实参是一个字符串,则在模块、函数、类、方法、关键字或文档主题中搜索该字符串,并在控制台上打印帮助信息。如果实参是其他任意对象,则会生成该对象的帮助页。

请注意如果在函数的形参列表中出现了斜杠 (/),则它在发起调用 help() 的时候意味着斜杠之前的均为仅限位置形参。 更多相关信息,请参阅 有关仅限位置形参的 FAQ 条目。

该函数通过 site 模块加入到内置命名空间。

在 3.4 版更改: pydoc 和 inspect 的变更使得可调用对象的签名信息更加全面和一致。

31. hex(x)

将整数转换为以“0x”为前缀的小写十六进制字符串。如果 x 不是 Python int 对象,则必须定义返回整数的 __index__() 方法。一些例子:

>>> hex(255)
"0xff"
>>> hex(-42)
"-0x2a"

如果要将整数转换为大写或小写的十六进制字符串,并可选择有无“0x”前缀,则可以使用如下方法:

>>> "%#x" % 255, "%x" % 255, "%X" % 255
("0xff", "ff", "FF")
>>> format(255, "#x"), format(255, "x"), format(255, "X")
("0xff", "ff", "FF")
>>> f"{255:#x}", f"{255:x}", f"{255:X}"
("0xff", "ff", "FF")
另见 format() 获取更多信息。

另请参阅 int() 将十六进制字符串转换为以 16 为基数的整数。

注解 如果要获取浮点数的十六进制字符串形式,请使用 float.hex() 方法。

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

CPython implementation detail: This is the address of the object in memory.

33. input([prompt])

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

>>>
>>> s = input("--> ")  
--> Monty Python"s Flying Circus
>>> s  
"Monty Python"s Flying Circus"

如果加载了 readline 模块,input() 将使用它来提供复杂的行编辑和历史记录功能。

34. class int([x])

class int(x, base=10)

返回一个使用数字或字符串 x 生成的整数对象,或者没有实参的时候返回 0 。如果 x 定义了 __int__(),int(x) 返回 x.__int__() 。如果 x 定义了 __trunc__(),它返回 x.__trunc__() 。对于浮点数,它向零舍入。

如果 x 不是数字,或者有 base 参数,x 必须是字符串、bytes、表示进制为 base 的 整数字面值 的 bytearray 实例。该文字前可以有 + 或 - (中间不能有空格),前后可以有空格。一个进制为 n 的数字包含 0 到 n-1 的数,其中 a 到 z (或 A 到 Z )表示 10 到 35。默认的 base 为 10 ,允许的进制有 0、2-36。2、8、16 进制的数字可以在代码中用 0b/0B 、 0o/0O 、 0x/0X 前缀来表示。进制为 0 将安照代码的字面量来精确解释,最后的结果会是 2、8、10、16 进制中的一个。所以 int("010", 0) 是非法的,但 int("010") 和 int("010", 8) 是合法的。

整数类型定义请参阅 数字类型 --- int, float, complex 。

在 3.4 版更改: 如果 base 不是 int 的实例,但 base 对象有 base.__index__ 方法,则会调用该方法来获取进制数。以前的版本使用 base.__int__ 而不是 base.__index__。

在 3.6 版更改: 您可以使用下划线将代码文字中的数字进行分组。

在 3.7 版更改: x 现在只能作为位置参数。

35. isinstance(object, classinfo)
如果 object 实参是 classinfo 实参的实例,或者是(直接、间接或 虚拟)子类的实例,则返回 true。如果 object 不是给定类型的对象,函数始终返回 false。如果 classinfo 是对象类型(或多个递归元组)的元组,如果 object 是其中的任何一个的实例则返回 true。 如果 classinfo 既不是类型,也不是类型元组或类型的递归元组,那么会触发 TypeError 异常。
36. issubclass(class, classinfo)
如果 class 是 classinfo 的子类(直接、间接或 虚拟 的),则返回 true。classinfo 可以是类对象的元组,此时 classinfo 中的每个元素都会被检查。其他情况,会触发 TypeError 异常。
37. iter(object[, sentinel])
返回一个 iterator 对象。根据是否存在第二个实参,第一个实参的解释是非常不同的。如果没有第二个实参,object 必须是支持迭代协议(有 __iter__() 方法)的集合对象,或必须支持序列协议(有 __getitem__() 方法,且数字参数从 0 开始)。如果它不支持这些协议,会触发 TypeError。如果有第二个实参 sentinel,那么 object 必须是可调用的对象。这种情况下生成的迭代器,每次迭代调用它的 __next__() 方法时都会不带实参地调用 object;如果返回的结果是 sentinel 则触发 StopIteration,否则返回调用结果。

另请参阅 迭代器类型。

适合 iter() 的第二种形式的应用之一是构建块读取器。 例如,从二进制数据库文件中读取固定宽度的块,直至到达文件的末尾:

from functools import partial
with open("mydata.db", "rb") as f:
    for block in iter(partial(f.read, 64), b""):
        process_block(block)
上一篇文章:Python标准库---2、内置函数(D-E-F)
下一篇文章:Python标准库---4、内置函数(L-M-N-O)

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/43983.html

相关文章

  • Python标准---2、内置函数(D-E-F)

    摘要:如果对象允许,该函数将删除指定的属性。返回值为表达式求值的结果。语法错误将作为异常被报告。该函数返回值是。例如数字类型描述了浮点类型。将转换为控制的格式化表示。上一篇文章标准库内置函数下一篇文章标准库内置函数 上一篇文章:Python标准库---1、内置函数(A-B-C)下一篇文章:Python标准库---3、内置函数(G-H-I-J-K) 内置函数: showImg(https:/...

    Fourierr 评论0 收藏0
  • Python标准---4、内置函数(L-M-N-O)

    摘要:上一篇文章标准库内置函数下一篇文章标准库内置函数内置函数返回对象的长度元素个数。对表示单个字符的字符串,返回代表它码点的整数。上一篇文章标准库内置函数下一篇文章标准库内置函数 上一篇文章:Python标准库---3、内置函数(G-H-I-J-K)下一篇文章:Python标准库---5、内置函数(P-K-R) 内置函数: showImg(https://segmentfault.com...

    MartinHan 评论0 收藏0
  • Python标准---1、内置函数(A-B-C)

    摘要:内置函数返回一个数的绝对值。使用标准的真值测试过程来转换。因此,构造函数的实参和相同。实参的合法范围是到进制表示是。数字类型描述了复数类型。上一篇文章标准库简介下一篇文章标准库内置函数 上一篇文章:Python标准库----0、简介下一篇文章:Python标准库---1、内置函数(D-E-F) Python 解释器内置了很多函数和类型,您可以在任何时候使用它们。以下按字母表顺序列出它...

    bingo 评论0 收藏0
  • Python标准---8、内置常量

    摘要:上一篇文章标准库内置函数下一篇文章标准库内置类型逻辑值检测布尔运算比较内置常量有少数的常量存在于内置命名空间中。给赋值是非法的并会引发。如果所有尝试都返回,则解释器将引发适当的异常。如果没有以选项启动,则此常量为真值。 上一篇文章:Python标准库---7、内置函数(V-W-X-Y-Z)下一篇文章:Python标准库---9、内置类型:逻辑值检测、布尔运算、比较 内置常量 有少数的...

    gplane 评论0 收藏0
  • Python标准---16、内置类型:上下文管理器类型、其他、特殊属性

    摘要:退出运行时上下文并返回一个布尔值旗标来表明所发生的任何异常是否应当被屏蔽。除了实现上下文管理协议以外,不同类型不会被特殊处理。其中一些并不会被内置函数所列出。 上一篇文章:Python标准库---15、内置类型:集合类型、映射类型下一篇文章:Python标准库---17、内置异常 上下文管理器类型 Python 的 with 语句支持通过上下文管理器所定义的运行时上下文这一概念。 此...

    zhisheng 评论0 收藏0

发表评论

0条评论

gself

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<