在python中的_str__方法中使用布尔表达式
我对python中的str方法中的程序有一个问题 因此,在我的tostring方法中,我打印出了用户的信息。我遇到的问题是当我打印数据时,如果用户希望在邮件列表中 我想把它作为一个布尔答案,所以说“是”或“否” 我正试图找出如何使用一个临时变量,以便我的第一个客户显示“是”,第二个客户显示“否” 问题如下:在python中的_str__方法中使用布尔表达式,python,boolean,tostring,Python,Boolean,Tostring,我对python中的str方法中的程序有一个问题 因此,在我的tostring方法中,我打印出了用户的信息。我遇到的问题是当我打印数据时,如果用户希望在邮件列表中 我想把它作为一个布尔答案,所以说“是”或“否” 我正试图找出如何使用一个临时变量,以便我的第一个客户显示“是”,第二个客户显示“否” 问题如下: def __str__(self): return super().__str__() + " Customer Num: " + str(self._cusNum)
def __str__(self):
return super().__str__() + " Customer Num: " + str(self._cusNum) + " Mailing List? "
if self._mailList == temp:
_mailList = "Yes"
else:
_mailList = "No"
return _mailList
这就是问题所在,我想使用“\u mailList”变量将其转换为布尔表达式
from Person import*
def main():
person1 = Customer("John Smith", "5 myStreet","973-111-1111",1,True)
person2 = Customer("Henry Haus", "1 myHouse","973-222-2222",2,False)
print(person1)
print(person2)
main()
上面的类调用对象,最后一个变量为true和false
这就是下面告诉我的
“布尔数据属性,表示
客户是否希望在邮件列表中。“您需要做的就是将布尔值
self.\u mailList
转换为字符串,然后将其添加到其余字符串中
def __str__(self):
return "{} Customer Num: {} Mailing List? {}".format(
super().__str__(),
self._cusNum,
"Yes" if self._mailList else "No"
)
您的
\uuu str\uuuu
中有一个return
作为第一条语句,因此如果,它将在该点退出而不执行。您的意思是temp=super()。\uu str\uuuuuu()+…
?什么是self.\u邮件列表
?当你只定义了person1
和person2
时,你为什么要写print(person)
?@chepner它已经更新了,我正在做调整it@Prune我添加了这个类,如果我要添加所有的类,当错误只出现在toString方法中时,它将是无用的
def __str__(self):
return "{} Customer Num: {} Mailing List? {}".format(
super().__str__(),
self._cusNum,
"Yes" if self._mailList else "No"
)