资讯专栏INFORMATION COLUMN

Python标准库---5、内置函数(P-K-R)

gityuan / 1350人阅读

摘要:上一篇文章标准库内置函数下一篇文章标准库内置函数内置函数返回的次幂如果存在,则对取余比直接计算更高效。是用于删除属性值的函数。上一篇文章标准库内置函数下一篇文章标准库内置函数

上一篇文章:Python标准库---4、内置函数(L-M-N-O)
下一篇文章:Python标准库---6、内置函数(P-K-R-S-T-U)
内置函数:

50. pow(x, y[, z])
返回 x 的 y 次幂;如果 z 存在,则对 z 取余(比直接 pow(x, y) % z 计算更高效)。两个参数形式的 pow(x, y) 等价于幂运算符: x**y。

参数必须为数值类型。 对于混用的操作数类型,则适用二元算术运算符的类型强制转换规则。 对于 int 操作数,结果具有与操作数相同的类型(转换后),除非第二个参数为负值;在这种情况下,所有参数将被转换为浮点数并输出浮点数结果。 例如,102 返回 100,但 10-2 返回 0.01。 如果第二个参数为负值,则第三个参数必须省略。 如果存在 z,则 x 和 y 必须为整数类型,且 y 必须为非负数。

51. print(*objects, sep=" ", end="n", file=sys.stdout, flush=False)
将 objects 打印到 file 指定的文本流,以 sep 分隔并在末尾加上 end。 sep, end, file 和 flush 如果存在,它们必须以关键字参数的形式给出。
所有非关键字参数都会被转换为字符串,就像是执行了 str() 一样,并会被写入到流,以 sep 且在末尾加上 end。 sep 和 end 都必须为字符串;它们也可以为 None,这意味着使用默认值。 如果没有给出 objects,则 print() 将只写入 end。

file 参数必须是一个具有 write(string) 方法的对象;如果参数不存在或为 None,则将使用 sys.stdout。 由于要打印的参数会被转换为文本字符串,因此 print() 不能用于二进制模式的文件对象。 对于这些对象,应改用 file.write(...)。

输出是否被缓存通常决定于 file,但如果 flush 关键字参数为真值,流会被强制刷新。

在 3.3 版更改: 增加了 flush 关键字参数。

52. class property(fget=None, fset=None, fdel=None, doc=None)
返回 property 属性。

fget 是获取属性值的函数。 fset 是用于设置属性值的函数。 fdel 是用于删除属性值的函数。并且 doc 为属性对象创建文档字符串。

一个典型的用法是定义一个托管属性 x:

class C:
    def __init__(self):
        self._x = None

    def getx(self):
        return self._x

    def setx(self, value):
        self._x = value

    def delx(self):
        del self._x

    x = property(getx, setx, delx, "I"m the "x" property.")
如果 c 是 C 的实例,c.x 将调用getter,c.x = value 将调用setter, del c.x 将调用deleter。

如果给出,doc 将成为该 property 属性的文档字符串。 否则该 property 将拷贝 fget 的文档字符串(如果存在)。 这令使用 property() 作为 decorator 来创建只读的特征属性可以很容易地实现:

class Parrot:
    def __init__(self):
        self._voltage = 100000

    @property
    def voltage(self):
        """Get the current voltage."""
        return self._voltage
以上 @property 装饰器会将 voltage() 方法转化为一个具有相同名称的只读属性的 "getter",并将 voltage 的文档字符串设置为 "Get the current voltage."

特征属性对象具有 getter, setter 以及 deleter 方法,它们可用作装饰器来创建该特征属性的副本,并将相应的访问函数设为所装饰的函数。 这最好是用一个例子来解释:

class C:
    def __init__(self):
        self._x = None

    @property
    def x(self):
        """I"m the "x" property."""
        return self._x

    @x.setter
    def x(self, value):
        self._x = value

    @x.deleter
    def x(self):
        del self._x
上述代码与第一个例子完全等价。 注意一定要给附加函数与原始的特征属性相同的名称 (在本例中为 x。)

返回的特征属性对象同样具有与构造器参数相对应的属性 fget, fset 和 fdel。

在 3.5 版更改: 特性属性对象的文档字符串现在是可写的。

53. range(stop)

range(start, stop[, step])

虽然被称为函数,但 range 实际上是一个不可变的序列类型,参见在 range 对象 与 序列类型 --- list, tuple, range 中的文档说明。
54. repr(object)
返回包含一个对象的可打印表示形式的字符串。 对于许多类型来说,该函数会尝试返回的字符串将会与该对象被传递给 eval() 时所生成的对象具有相同的值,在其他情况下表示形式会是一个括在尖括号中的字符串,其中包含对象类型的名称与通常包括对象名称和地址的附加信息。 类可以通过定义 __repr__() 方法来控制此函数为它的实例所返回的内容。
55. reversed(seq)
返回一个反向的 iterator。 seq 必须是一个具有 __reversed__() 方法的对象或者是支持该序列协议(具有从0 开始的整数类型参数的 __len__() 方法和 __getitem__() 方法)。
56. round(number[, ndigits])
返回 number 舍入到小数点后 ndigits 位精度的值。 如果 ndigits 被省略或为 None,则返回最接近输入值的整数。

对于支持 round() 的内置类型,值会被舍入到最接近的 10 的负 ndigits 次幂的倍数;如果与两个倍数的距离相等,则选择偶数 (因此,round(0.5) 和 round(-0.5) 均为 0 而 round(1.5) 为 2)。 任何整数值都可作为有效的 ndigits (正数、零或负数)。 如果 ndigits 被省略或为 None 则返回值将为整数。 否则返回值与 number 的类型相同。

对于一般的 Python 对象 number, round 将委托给 number.__round__。

注解 对浮点数执行 round() 的行为可能会令人惊讶:例如,round(2.675, 2) 将给出 2.67 而不是期望的 2.68。 这不算是程序错误:这一结果是由于大多数十进制小数实际上都不能以浮点数精确地表示。 请参阅 浮点算术:争议和限制 了解更多信息。

上一篇文章:Python标准库---4、内置函数(L-M-N-O)
下一篇文章:Python标准库---6、内置函数(P-K-R-S-T-U)

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

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

相关文章

  • Python标准---6、内置函数P-K-R-S-T-U)

    摘要:上一篇文章标准库内置函数下一篇文章标准库内置函数内置函数返回一个新的对象,可以选择带有从获取的元素。推荐使用内置函数来检测对象的类型,因为它会考虑子类的情况。上一篇文章标准库内置函数下一篇文章标准库内置函数 上一篇文章:Python标准库---5、内置函数(P-K-R)下一篇文章:Python标准库---7、内置函数(V-W-X-Y-Z) 内置函数: showImg(https://...

    lastSeries 评论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标准---8、内置常量

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

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

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

    bingo 评论0 收藏0
  • Python标准---7、内置函数(V-W-X-Y-Z)

    摘要:上一篇文章标准库内置函数下一篇文章标准库内置常量内置函数返回模块类实例或任何其它具有属性的对象的属性。相当于函数会保证可迭代对象按从左至右的顺序被求值。上一篇文章标准库内置函数下一篇文章标准库内置常量 上一篇文章:Python标准库---6、内置函数(P-K-R-S-T-U)下一篇文章:Python标准库---8、内置常量 内置函数: showImg(https://segmentf...

    qiangdada 评论0 收藏0

发表评论

0条评论

gityuan

|高级讲师

TA的文章

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