在
Pythons内置数值类型(int,bool,float和complex)上,repr和str是相同的,还是存在(深奥?)两种情况可能产生不同结果的情况?
关于SO的相关问题(例如this one)关注的是如何以不同的方式实现__repr__和__str__,并为字符串返回不同的值,但我找不到关于数字的实际实现的任何内容.
解决方法
您的主要信息来源是
http://hg.python.org/cpython/file/tip/Objects
例如,在boolobject.c中:
例如,在boolobject.c中:
PyTypeObject PyBool_Type = { ...stuff... bool_repr,/* tp_repr */ ...stuff... bool_repr,/* tp_str */
所以是的,他们保证是一样的.
对于浮点数,float_repr与float_str不同,取决于sys.float_repr_style.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。