在这里,我基本上是想从 SQL 表中获取一个字符串值,我想将该值与我输入的字符串进行比较。我尝试了这种简单的方法,但不幸的是,它不起作用。我需要帮助。
def cantkt():
#tkt()
#canstate=("DELETE FROM Chart WHERE PNR=%s"%canpnr)
canpnr=input("Enter PNR No. to Cancel Ticket: ")
mycsr.execute("SELECT PNR FROM Chart WHERE PNR=%s"%canpnr)
res=mycsr.fetchone()
print(res)
if res==canpnr:
print("PNR MATCHED")
else:
print("PNR No. DOES NOT MATCH")
正如您在打印中看到的,获取的结果是一个元组,而不是一个字符串。
你可以简单地这样做:
res = mycsr.fetchone()
if res: res = res[0]
解释:
res 是 ('1019654419', ) 所以你必须寻找你想要得到的值,在这种情况下是第一个。
在“if res: res = res[0]”中,我们检查 res 是否有值,因为如果票不存在,获取值将是一个空元组,因此尝试获取第一个结果将引发 IndexError。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句