错误:
Traceback (most recent call last):
File "C:\Python26\Lib\idlelib\full_rpg.py", line 145, in <module>
Commands[c](p)
File "C:\Python26\Lib\idlelib\full_rpg.py", line 57, in status
print "%s's Level:" % (self.name, self.level)
TypeError: not all arguments converted during string formatting
导致错误的代码行:
print "%s's Level:" % (self.name, self.level)
我该如何解决这个问题?
答案 0 :(得分:6)
您需要提供另一个地方来放置第二个字符串。来自python docs:
如果格式需要一个参数, 值可以是单个非元组 宾语。 [4]否则,必须是值 一个正确数量的元组 格式字符串指定的项目, 或单个映射对象(for 例如,字典)。
所以你想要的例子是:
"%s's Level: %s" % (self.name, self.level)
当然假设self.level是一个字符串。如果它是其他值类型,那么您想要交换适当的字符串格式值。 (%d表示整数等)。