使用Python2.7,以下代码可以正常工作:
def AddHex(old_class):
old_class.__hex__ = lambda self: 'I am a hex!'
return old_class
@AddHex
class AClass(object):
"""'Empty' class"""
pass
a = AClass()
print hex(a)
输出:
I am a hex!
使用Python3.6,我得到以下错误:
TypeError: 'AClass' object cannot be interpreted as an integer
如何使这段代码与python3.6兼容
你不能
在python3中,^{} 查找返回整数的
__index__
函数。不能使用hex
打印任意字符串相关问题 更多 >
编程相关推荐