错误: names = curfetchone()[0]
TypeError: 'NoneType' object is not subscriptable.
Run Code Online (Sandbox Code Playgroud)
我试过检查缩进但仍然有错误.我读到如果数据库中没有文件名记录,那么变量名称可能会返回'None'.
我在其他'def'中使用相同的变量'names',它工作正常.我确定它与返回的'None'值有关.
global filename
global t
try:
con = sqlite3.connect('textdb.db')
cur = con.cursor()
filename = tkinter.simpledialog.askstring("Open file...", "Input filename to open:")
if filename != None:
cur.execute("SELECT file_name FROM file_info WHERE file_name = ?", (filename,))
names = cur.fetchone()[0]
same = str(names)
if filename == same:
cur.execute("SELECT file_content FROM file_info WHERE file_name = ?", (filename,))
content = cur.fetchone()[0]
t = str(content)
text.delete(0.0, END)
text.insert(0.0, t)
else:
result = tkinter.messagebox.askyesno(title="File doesn't exist", message="'"+(filename)+"' …Run Code Online (Sandbox Code Playgroud)