所以我在 python 3 中制作了我的第一个程序,其中运算符重载,我被加(+)运算符卡住了。
def __add__(self, newMember):
if(isinstance(newMember, Queue)):
tempList=self.myQueue[:] # makes a copy
tempList.extend(newMember.myQueue)
return Queue(tempList)
def __str__(self):
if not self.myQueue:
string="."
else:
string=""
for x in self.myQueue:
string=string+str(x)
if(x<len(self.myQueue)):
string=string+", "
else:
string=string+"."
return string
基本上我正在创建一个 Queue 类(我知道已经存在这样的一个),然后通过键入 c=c1+c2 连接两个 Queue 对象。但是当我打印(c)时,它弄乱了“,”和“。”。无法理解有什么问题。有什么帮助吗?