Python 为什么我会得到这个错误;TypeError:强制使用Unicode:需要字符串或缓冲区,找到int“吗;?

Python 为什么我会得到这个错误;TypeError:强制使用Unicode:需要字符串或缓冲区,找到int“吗;?,python,unicode,Python,Unicode,运行此小程序后: #!/usr/bin/env python2.7 # -*-coding:utf-8 -* a = 1 b = 2 c = 3 title = u"""a=""" + a + u""", b=""" + str(b) + \ u""", c=""" + str(c) print(title) 我得到以下错误: u""", c=""" + str(c) TypeError: coercing to Unicode: need string or buffer, int

运行此小程序后:

#!/usr/bin/env python2.7
# -*-coding:utf-8 -*
a = 1
b = 2
c = 3
title = u"""a=""" + a + u""", b=""" + str(b) + \
    u""", c=""" + str(c)
print(title)
我得到以下错误:

u""", c=""" + str(c)
TypeError: coercing to Unicode: need string or buffer, int found
但是下面的运行很好

#!/usr/bin/env python2.7
# -*-coding:utf-8 -*
a = 1
b = 2
c = 3
title = u""", b=""" + str(b) + \
    u""", c=""" + str(c)
print(title)

谁能解释一下发生了什么事吗?

你没有在
str
通话中使用
a
。你需要在你有
a
的地方做
str(a)
,就像你对b和c所做的那样