是否可以从字典而不是键中删除值?例如, 我有以下代码,其中用户选择与他想要删除它的元素对应的键,但我想只删除值而不是键(值是列表):
if (selection == 2):
elem = int(input("Please select the KEY that you want to be deleted: "))
if dictionar.has_key(elem):
#dictionar.pop(elem)
del dictionar[elem]
else:
print("the KEY is not present ")
答案 0 :(得分:4)
不,这是不可能的。字典由键/值对组成。你没有没有价值的钥匙。您可以做的最好的事情是将密钥的值设置为None
或其他一些标记值,或使用更符合您需求的其他数据结构。
答案 1 :(得分:0)
字典是{key:value}
对的数据结构。
要使用值,您可以将值替换为其他值或None
,如下所示:
dic = {}
e = int(input("KEY to be deleted/replaced: "))
if dic.has_key(e):
r = int(input("New value to put in or just press ENTER for no new value"))
if not r:
r=None
dic[e]=r
else:
print("Key Absent")
答案 2 :(得分:-1)
dictionar = {}
elem = int(input("Please select the KEY that you want to be deleted: "))
if dictionar.has_key(elem)
dictionar[elem] = ""
else:
print("The KEY is not present")
此代码检查elem是否在dictionar中,然后将值转换为空白字符串。