TypeError:__str__返回非字符串(类型元组)

时间:2014-03-25 10:32:01

标签: python

def __str__(self):
    summa = 0
    for a in self.__pisteet:
        summa += a
        mjono += str(a)
    return "{:s} {:s} yhteensa", summa, "pistetta".format(self.__nimi, mjono)  

所以有多个玩家,我应该能够打印他们所有的名字,所有分数和分数总和。

TypeError: __str__ returned non-string (type tuple)

2 个答案:

答案 0 :(得分:6)

以逗号分隔的项目会创建一个元组,因此您需要删除它们:

return "{:s} {:s} yhteensa {} pistetta".format(self.__nimi, mjono, summa) 

答案 1 :(得分:1)

问题是你没有返回一个字符串,看看你的return语句。 ','逗号运算符定义了一个不连接字符串的元组,你必须返回:

return "{:s} {:s} yhteensa {} pistetta".format(self.__nimi, mjono,  summa)