python代码问题

zoz*_*ozo 2 python google-app-engine

我有这个代码:

class Check(webapp.RequestHandler):
  def get(self):
    user = users.get_current_user()

    be = "SELECT * FROM Benutzer ORDER BY date "
    c = db.GqlQuery(be)

    for x in c:
      if x.benutzer == user:
        s=1
        break
      else:
        s=2
    if s is 0:
      self.redirect('/')
Run Code Online (Sandbox Code Playgroud)

检查用户是否已注册.但它给了我一个错误:

Traceback (most recent call last):
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/webapp/__init__.py", line 511, in __call__
    handler.get(*groups)
  File "/Users/zainab_alhaidary/Desktop/????? ???/check.py", line 23, in get
    if s is 0:
UnboundLocalError: local variable 's' referenced before assignment
Run Code Online (Sandbox Code Playgroud)

我该怎么办???

Stu*_*der 6

定义s之前为其赋值(同样,更改测试s):

user = users.get_current_user()

be = "SELECT * FROM Benutzer ORDER BY date "

c = db.GqlQuery(be)

s=0    # <- init s here

for x in c:
  if x.benutzer == user:
    s=1
    break
  else:
    s=2
if s == 0:    # <- change test on s
  self.redirect('/')
Run Code Online (Sandbox Code Playgroud)