Python 这个程序在类中存储文本消息我如何在类中打印它
如何更改此str代码以适当打印?您可能只需要将这些字符串附加到初始化为Python 这个程序在类中存储文本消息我如何在类中打印它,python,class,Python,Class,如何更改此str代码以适当打印?您可能只需要将这些字符串附加到初始化为thelist=[]的列表中,然后返回'\n'。加入(thelist)。但是在代码中还有其他一些异常 import datetime class SMS_Inbox: def ___init___(self): self.__inbox=[] def addNewArrival(self,senderPhone,arrivalTime,msgTxt): msgInfotupl
thelist=[]
的列表中,然后返回'\n'。加入(thelist)
。但是在代码中还有其他一些异常
import datetime
class SMS_Inbox:
def ___init___(self):
self.__inbox=[]
def addNewArrival(self,senderPhone,arrivalTime,msgTxt):
msgInfotuple=(senderPhone,arrivalTime,msgTxt)
singleMsg=[False,msgInfotuple]
self.__main=self.__inbox.append(singleMsg)
return self.__main
someStr=""
def __str__(self):
for msg in self.__inbox:
unread=msg[0]
msgTuple=msg[1]
phoneNum=msgTuple[0]
date=msgTuple[1]
txt=msgTuple[2]
return str(unread)+ someStr+" " +str(phoneNum) + someStr+" " + str(txt)+someStr+" "
这毫无意义<代码>追加始终返回无
。为什么要把None
保存为self
的属性并返回它呢
self.__main=self.__inbox.append(singleMsg)
return self.__main
除了在循环的第一个过程中出现明显的return
ing错误(因此不会有其他过程),这将失败,因为someStr
在方法的范围内是而不是;我想你需要用self.someStr来代替。(在我看来仍然很奇怪,但至少它起作用了:-)
因此,这种方法必须类似于:
someStr=""
def __str__(self):
for msg in self.__inbox:
unread=msg[0]
msgTuple=msg[1]
phoneNum=msgTuple[0]
date=msgTuple[1]
txt=msgTuple[2]
return str(unread)+ someStr+" " +str(phoneNum) + someStr+" " + str(txt)+someStr+" "
“适当”是什么意思?现在它做了什么,你期望它做什么?还要注意,
“\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu__init_u'
。我希望得到与此类似的输出,并回答我的两半。[[False,('111-111-3333',datetime.datetime(2015,1,15,8,15),'bring milk')]@JaleneBurta,你得到了什么?太好了,记住接受答案(点击左边的复选框)。
someStr=""
def __str__(self):
thelist = []
someStr = self.someStr
for msg in self.__inbox:
unread=msg[0]
msgTuple=msg[1]
phoneNum=msgTuple[0]
date=msgTuple[1]
txt=msgTuple[2]
s = str(unread)+ someStr+" " +str(phoneNum) + someStr+" " + str(txt)+someStr+" "
thelist.append(s)
return '\n'.join(thelist)