2012-06-09 10 views
16

Po uruchomieniu tego małego programu:Dlaczego pojawia się błąd "TypeError: wymuszanie na Unicode: potrzebny ciąg lub bufor, int found"?

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

pojawia się następujący błąd:

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

Ale następujące działa dobrze!

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

Czy ktoś może mi wyjaśnić, co się dzieje?

Odpowiedz

34

Nie owinąłeś a w rozmowie str. Musisz zrobić str(a), gdzie masz a, tak jak zrobiłeś dla b i c.

Powiązane problemy