如何使用pop删除字典中的项目

2024-04-25 20:19:30 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的字典里有尼姆,名字,性别,我想通过输入他的尼姆来删除一项

elif (menu == 3):
    hapus = input("Masukan NIM Yang Ingin Dihapus: ")
    ada = True
    for mhs in data_semua_mhs:
        if (mhs["nim"]== hapus):
            ada = True
            mhs.pop(hapus("nim"))
    if ada is False:
        print("Data Tidak Tersedia")

回溯:

Pilih Menu: 3
Masukan NIM Yang Ingin Dihapus: 3
Traceback (most recent call last):
  File "c:\xampp\htdocs\py lat\latihan_pertemuan_10.py", line 68, in <module>
    mhs.pop(hapus("nim"))
TypeError: 'str' object is not callable

2条回答

直接的问题是hapus是一个字符串(它是用户在控制台中键入的任何内容),您试图像调用函数一样调用它hapus("nim"),但不能像调用函数一样调用字符串

我认为您可能需要mhs.pop(hapus)(或者等效地mhs.pop(mhs["nim"]),因为它们在该分支中是相等的)

如果要从人员列表中删除该人员,请尝试:


elif (menu == 3):
    hapus = input("Masukan NIM Yang Ingin Dihapus: ")
    ada = True
    for mhs in range(len(data_semua_mhs)):
        if (data_semua_mhs[mhs]["nim"]== hapus):
            ada = True
            data_semua_mhs.pop(mhs)
            break
    if ada is False:
        print("Data Tidak Tersedia")

相关问题 更多 >

    热门问题