我使用的是python 2.7,我已经查看了:
Print in terminal with colors using Python?
Python Terminal Menu? Terminal Coloring? Terminal progress display?
我仍然得到同样的错误。正在运行的代码是:
print '\033[1;31m' + '@%s:' + '[1;m' + '\033[1;32m' + '%s - id = %s\n' + '\033[1;m' % (status.text1.encode('utf-8'), status.text2.encode('utf-8'), status.text3.encode('utf-8'))
所出现的错误是:
Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
mostrar()
File "C:\Documents and Settings\Administrador.DESKTOP\Mis documentos\test.py", line 16, in mostrar
print '\033[1;31m' + '@%s:' + '[1;m' + '\033[1;32m' + '%s - id = %s\n' + '\033[1;m' % (status.text1.encode('utf-8'), status.text2.encode('utf-8'), status.text3.encode('utf-8'))
TypeError: not all arguments converted during string formatting
就像你可以看到的那样,我在windows中使用python。
问题是如何避免错误?我已经使用了colorama,错误是一样的。
答案 0 :(得分:1)
尝试在要连接的格式字符串周围加上括号。 %绑定的优先级高于+,因此错误来自:
'\033[1;m' % (... 3 arguments ...)