Python 如何从词典列表中删除词典?

Python 如何从词典列表中删除词典?,python,dictionary,Python,Dictionary,如何从词典列表中删除词典?我试过: if data == []: print("No questions saved") else: while True: myDeletenumber = input("Which question do you want to delete?") try: myDeletenumber = int(myDeletenumber)

如何从词典列表中删除词典?我试过:

if data == []:
        print("No questions saved")
    else:
        while True:
            myDeletenumber = input("Which question do you want to delete?")
            try:
                myDeletenumber = int(myDeletenumber)
                myDeletenumber -= 1
                data.pop(myDeletenumber)
                break
            except ValueError:
                print('Not a number!')
                continue   

在这种情况下,
data
是字典列表

它是
data.pop(myDeletenumber)
,带有括号,而不是方括号。

一种更简单的方法可能是使用
del data[myDeletenumber]
作为替代方法,如果数据结构较大,你可以考虑从中间分配,而不是弹出。

myDeletenumber = input("Which question do you want to delete?")

try:
    myDeletenumber = int(myDeletenumber)
    myDeletenumber -= 1
    data[myDeletenumber] = None
    break        # <-- we'll assume that this snippet is inside a loop here...
except ValueError:
    print('Not a number!')
    continue
myDeletenumber=input(“您想删除哪个问题?”)
尝试:
myDeletenumber=int(myDeletenumber)
myDeletenumber-=1
数据[myDeletenumber]=无

打破#没有办法,采取好办法

myDeletenumber = input("Which question do you want to delete?")
try:
    del data[int(myDeletenumber)-1]
except KeyError:
    print ('No number exist')
您可以尝试以下方法:

try:
    data.pop(int(myDeletenumber)-1)
except KeyError:
    print ('No number exist')

你有错误吗?你有什么问题?我没有运行它,但是这段代码看起来很好。您在
data.pop
行上出现语法错误。请尝试使用此
data.pop(myDeletenumber)
。不仅代码缩进不良,而且在循环外还包含
break
continue