【发布时间】:2016-10-23 05:16:54
【问题描述】:
我是 python 的新手,在编程上有一些困难。我必须在 data.txt 文件中搜索索引号,然后根据用户的输入删除整个项目。我的代码如下:
if option == 'd':
if 'name' in open('data.txt').read():
ind = int (input ("Menu item number to delete: "))
with open ('data.txt') as data_file:
data = json.load(data_file)
if ind in data[ind]:
del data[ind]
json.dump(data, open('data.txt', 'w'))
data_file.close()
print ('Menu item deleted.\n')
else:
print ('No such items exist')
main()
main()
else:
print ('There are no menu items saved')
main()
例如如果用户输入 3,则第 3 项将被删除。代码工作正常,但我还必须找到用户输入的索引是否存在于文件中,并且我通过命令 if ind in data[ind] 遇到错误:错误如下所示:
文件“D:/R/043/N.py”,第 41 行,在 inputSomething 中 如果 ind 在数据 [ind] 中: IndexError: 列表索引超出范围
我们将不胜感激。
【问题讨论】:
标签: python list dictionary indexing