local variable 'llnum' referenced before assignment,该错误怎么解决?

供稿:hz-xin.com     日期:2024-04-27
Python 错误警告 local variable 'a' referenced before assignment

def f1(): a=12 def f2(a=a): a+=1 print a return f2print f1()()>>> def f1():
... a=12
... def f2(a=a):
... a+=1
... print a
... return f2
...
>>> f1()()
13

sql_query

这个没有定义
你的代码导致的原因是
if result:
_keys = ", ".join(escape(k) for k in result)
_values = ", ".join(escapestr(result[k]) for k in result)
sql_query = "REPLACE INTO %s (%s) VALUES (%s)" % (tablename, _keys, _values)
else:
print "无记录"
这里执行到else 里面去了,而else 里面没有定义 sql_query 这个
所以报错了

你的程序中逻辑运算符用错了,&是位运算符中的与运算符,and才是逻辑与运算符

改完的程序如下

class Maze(object):
 def test(self,c,d):
  if c==1 and d==2:
   llnum='1'
  elif c==1 and d==3:
   llnum='2'
  elif c==2 and d==4:
   llnum='3'
  elif c==3 and d==5:
   llnum='4'
  elif c==4 and d==6:
   llnum='5'
  elif c==5 and d==6:
   llnum='6'
  elif c==2 and d==3:
   llnum='7'
  elif c==4 and d==5:
   llnum='8'
  return llnum
if __name__=='__main__':
 env=Maze()
 a=env.test(2,3)
 print(a)