我试图重载 str 操作,这样当我执行str(字符串)时,它会保留引号。
例如: STR("测试&#34) 返回测试
我希望它返回"测试"
继续我所写的内容,非常感谢任何帮助!
class Action(MalmoAgent):
def __init__(self, command = '', value = 0):
self.__command = command
self.__value = value
def __str__(self):
return ' " ' + self + ' " '
答案 0 :(得分:0)
使用repr()
,这显然不是实际的字符串。
repr('Test')
答案 1 :(得分:0)
只需格式化字符串
即可... def __str__(self):
... return '"%s"' % self.whatever
答案 2 :(得分:0)
class MalmoAgent():
pass
class Action(MalmoAgent):
def __init__(self, command='', value=0):
self.__command = command
self.__value = value
def __str__(self):
return '"' + super(Action, self).__str__() + '"'
thing = Action()
print("I have a", thing, "called thing.")
<强>输出强>
I have a "<__main__.Action object at 0x101ae9a90>" called thing.