zoukankan      html  css  js  c++  java
  • python的str()和repr()的区别

    str()一般是将数值转成字符串。
    repr()是将一个对象转成字符串显示,注意只是显示用,有些对象转成字符串没有直接的意思。如list,dict使用str()是无效的,但使用repr可以,这是为了看它们都有哪些值,为了显示之用。
    The str() function is meant to return representations of values which are fairly
    human-readable, while repr() is meant to generate representations which can be read by
    the interpreter (or will force a SyntaxError if there is not equivalent syntax). For
    objects which don't have a particular representation for human consumption, str() will
    return the same value as repr(). Many values, such as numbers or structures like lists
    and dictionaries, have the same representation using either function. Strings and
    floating point numbers, in particular, have two distinct representations.

    Some examples:


    >>> s = 'Hello, world.'

    >>> str(s)

    'Hello, world.'

    >>> repr(s)

    "'Hello, world.'"

    >>> str(0.1)

    '0.1'

    >>> repr(0.1)

    '0.10000000000000001'

    >>> x = 10 * 3.25

    >>> y = 200 * 200

    >>> s = 'The value of x is ' + repr(x) + ', and y is ' + repr(y) + '...'

    >>> print s

    The value of x is 32.5, and y is 40000...

    >>> # The repr() of a string adds string quotes and backslashes:

    ... hello = 'hello, world '

    >>> hellos = repr(hello)

    >>> print hellos

    'hello, world '

    >>> # The argument to repr() may be any Python object:

    ... repr((x, y, ('spam', 'eggs')))

    "(32.5, 40000, ('spam', 'eggs'))"

    >>> # reverse quotes are convenient in interactive sessions:

    ... `x, y, ('spam', 'eggs')`

    "(32.5, 40000, ('spam', 'eggs'))"

    翻译:

    Python 有办法将任意值转为字符串:将它传入repr() 或str() 函数。

    函数str() 用于将值转化为适于人阅读的形式,而repr() 转化为供解释器读取的形式

    (如果没有等价的语法,则会发生SyntaxError 异常) 某对象没有适于人阅读的解释形式的话, str() 会返回与repr()

    等同的值。很多类型,诸如数值或链表、字典这样的结构,针对各函数都有着统一的解读方式。

    字符串和浮点数,有着独特的解读方式。


    >>> s = 'Hello, world.'
    >>> str(s)
    'Hello, world.'
    >>> repr(s)
    "'Hello, world.'"
    >>> str(1.0/7.0)
    '0.142857142857'
    >>> repr(1.0/7.0)
    '0.14285714285714285'
    >>> x = 10 * 3.25
    >>> y = 200 * 200
    >>> s = 'The value of x is ' + repr(x) + ', and y is ' + repr(y) + '...'
    >>> print s
    The value of x is 32.5, and y is 40000...
    >>> # The repr() of a string adds string quotes and backslashes:
    ... hello = 'hello, world '
    >>> hellos = repr(hello)
    >>> print hellos
    'hello, world '
    >>> # The argument to repr() may be any Python object:
    ... repr((x, y, ('spam', 'eggs')))
    "(32.5, 40000, ('spam', 'eggs'))"

  • 相关阅读:
    用css3弹性盒子模型实现九宫格布局
    css布局之左中右结构总结
    内联块inline-block的垂直间隙问题
    Jquery选择器 讲解
    U大师装系统
    陈伟:软件趋势——云物移大智
    asp网站发布步骤总结
    MYfirst
    ASP.net 利用From实现上传文件
    【ASP.NET Core CentOS 发布】(四)在CentOS上安装.NET Core运行时、部署到CentOS
  • 原文地址:https://www.cnblogs.com/cl1024cl/p/6205654.html
Copyright © 2011-2022 走看看