我的 ee 没有定义??我定义它。在这个 if 循环中
My ee in not define?? I define it. In this if's in for loop
我的 Python 程序有点问题。他们没有定义我的 "ee"!
我的代码我的问题
cursor = cnx.cursor()
read_ee = ("SELECT e_or_e FROM ITN "
"WHERE name = 'names' ")
cursor.execute(read_ee)
for(e_or_e) in cursor:
if(e_or_e == "exit"):
ee = "enter"
elif(e_or_e == "enter"):
ee = "exit"
print("EE is ", ee)
错误
Traceback (most recent call last):
File "SQL3.py", line 43, in <module>
print("EE is ", ee)
NameError: name 'ee' is not defined
程序用于读取和写入我的 MySQL 数据库(MySQL 服务器在其他计算机上,但如果我删除该片段就没问题了!)
有人知道如何解决这个问题吗?我什么都试过了!
if 或 elif 的 None 曾经评估为 True 所以它永远不会被定义:
for e_or_e in cursor:
if e_or_e == "exit": # always False
ee = "enter"
elif e_or_e == "enter": # always False
ee = "exit"
print("EE is ", ee) # undefined
你可以在循环之前给它一个默认值:
ee = None
for e_or_e in cursor:
if e_or_e == "exit":
ee = "enter"
elif e_or_e == "enter":
ee = "exit"
# if ee is not None we assigned some value in the loop
if ee is not None:
print("EE is ", ee)
但是,如果您希望 if/elif 之一为真,那么您可能需要调查为什么没有发生这种情况。
当您将字符串与元组进行比较时,您的代码实际上失败了,您可以做的是使用:
for e_or_e in cursor:
if "exit" in e_or_e:
ee = "enter"
break
elif "enter" in e_or_e:
ee = "exit"
break
else:
# neither exit nor enter are returned
如果 e_or_e
既不等于 "exit"
,也不等于 "enter"
,则 ee
永远不会有值。
我的 Python 程序有点问题。他们没有定义我的 "ee"!
我的代码我的问题
cursor = cnx.cursor()
read_ee = ("SELECT e_or_e FROM ITN "
"WHERE name = 'names' ")
cursor.execute(read_ee)
for(e_or_e) in cursor:
if(e_or_e == "exit"):
ee = "enter"
elif(e_or_e == "enter"):
ee = "exit"
print("EE is ", ee)
错误
Traceback (most recent call last):
File "SQL3.py", line 43, in <module>
print("EE is ", ee)
NameError: name 'ee' is not defined
程序用于读取和写入我的 MySQL 数据库(MySQL 服务器在其他计算机上,但如果我删除该片段就没问题了!)
有人知道如何解决这个问题吗?我什么都试过了!
None 曾经评估为 True 所以它永远不会被定义:
for e_or_e in cursor:
if e_or_e == "exit": # always False
ee = "enter"
elif e_or_e == "enter": # always False
ee = "exit"
print("EE is ", ee) # undefined
你可以在循环之前给它一个默认值:
ee = None
for e_or_e in cursor:
if e_or_e == "exit":
ee = "enter"
elif e_or_e == "enter":
ee = "exit"
# if ee is not None we assigned some value in the loop
if ee is not None:
print("EE is ", ee)
但是,如果您希望 if/elif 之一为真,那么您可能需要调查为什么没有发生这种情况。
当您将字符串与元组进行比较时,您的代码实际上失败了,您可以做的是使用:
for e_or_e in cursor:
if "exit" in e_or_e:
ee = "enter"
break
elif "enter" in e_or_e:
ee = "exit"
break
else:
# neither exit nor enter are returned
如果 e_or_e
既不等于 "exit"
,也不等于 "enter"
,则 ee
永远不会有值。