每次输入s
来自表单; list
再次初始化。如何更改代码以将每个新s
附加到列表中?
谢谢。
class Test(webapp.RequestHandler):
def get(self):
s = self.request.get('sentence')
list = []
list.append(s)
htmlcode1 = HTML.table(list)
答案 0 :(得分:5)
我不确定您的代码的上下文是什么,但这应该有效:
class Test(webapp.RequestHandler):
def get(self):
s = self.request.get('sentence')
try:
self.myList.append(s)
except NameError:
self.myList= [s]
htmlcode1 = HTML.table(self.myList)
这使得list
成为一个实例变量,所以它会坚持下去。问题是我们第一次尝试使用它时list
可能不存在,所以在这种情况下我们需要初始化它。
实际上,看this post,这可能是更清晰的代码:
class Test(webapp.RequestHandler):
def get(self):
s = self.request.get('sentence')
if not hasattr(self, 'myList'):
self.myList = []
self.myList.append(s)
htmlcode1 = HTML.table(self.myList)
[编辑:] 上述因某些原因无效,请试试这个:
class Test(webapp.RequestHandler):
myList = []
def get(self):
s = self.request.get('sentence')
self.myList.append(s)
htmlcode1 = HTML.table(self.myList)
答案 1 :(得分:5)
您可以将列表作为对象的成员变量,然后仅在调用get()
时更新它:
class Test(webapp.RequestHandler):
def __init__(self, *p, **kw): # or whatever parameters this takes
webapp.RequestHandler.__init__(self, *p, **kw)
self.list = []
def get(self):
s = self.request.get('sentence')
self.list.append(s)
htmlcode1 = HTML.table(self.list)