zoukankan      html  css  js  c++  java
  • Python内置函数str()和repr()

    内建函数str()和repr() (representation。表达,表示)或反引號操作符(``)能够方便地以字符串的方式获取对象的内容、类型、数值属性等信息。

    str()函数得到的字符串可读性好(故被print调用)

    repr()函数得到的字符串通常能够用来又一次获得该对象,通常情况下 obj==eval(repr(obj)) 这个等式是成立的。

    这两个函数接受一个对象作为其參数,返回适当的字符串。

    其实repr()和``做一样的事情,返回一个对象的“官方”字符串表示。其结果绝大多数情况下(不是全部)能够通过求值运算(内建函数eval())又一次得到该对象。

    str()则不同,它生成一个对象的可读性好的字符串表示,结果通常无法用eval()求值。但适合print输出。

    例如以下例:

    >>> class D(object):
    ...     def __str__(self):
    ...         return "a __str__"
    ...     def __repr__(self):
    ...         return "a __repr__"
    ...
    >>> dr = D()
    >>> print dr
    a __str__
    >>> dr
    a __repr__
    >>> "%s" % dr
    'a __str__'
    >>> "%r" % dr
    'a __repr__'
    

    为什么有了repr()还须要``? 

     Python中。有的操作符和函数是做相同的事情,原因是某些场合下函数会比操作符更适合使用,比方函对象的数量可以被用作一个参数。双星号(**)幂和pow()内置函数返回x的y钍.

    版权声明:本文博客原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    插入排序
    选择排序
    P1338 末日的传说 逆序数对
    P1582倒水 位运算
    P2158 [SDOI2008] (欧拉函数
    HDU 6274 二分+预处理(CCPC K题
    P1219 N皇后
    [USACO1.5] 回文质数
    Codeforces #123D: 后缀数组+单调栈
    单调栈 单调队列
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/4627454.html
Copyright © 2011-2022 走看看