20

After running this small program:

#!/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)

I get the following error:

u""", c=""" + str(c)
TypeError: coercing to Unicode: need string or buffer, int found

But the following runs just fine!

#!/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)

Can somebody please explain me what is going on?

Agmenor
  • 363
  • 1
  • 3
  • 8

1 Answers1

41

You didn't wrap a in a str call. You need to do str(a) where you have a, just like you did for b and c.

BrenBarn
  • 242,874
  • 37
  • 412
  • 384