这里我创建一个简单的字典:键是1,2,3,4,5…我想弹出一个键值
dic = {1: 'a', 2: 'b', 3: 'c', 4: 'd', 5: 'e'}
dic.pop(3)
输出为
dic = {1: 'a', 2: 'b', 4: 'd', 5: 'e'}
但是我不想要这样的输出。我想按顺序更改我的字典键。像
dic = {1: 'a', 2: 'b', 3: 'd', 4: 'e'}
我是新来的,所以请帮助我如何动态地做到这一点。
你可以这样做:
dic = {1: 'a', 2: 'b', 3: 'c', 4: 'd', 5: 'e'}
def pop_keys(key):
keys=[val for val in dic]
values=[val for val in dic.values()]
values.remove(dic.get(key))
return {k:v for k,v in zip(keys,values)}
print(pop_keys(3))
由于您有顺序整数键,因此最好使用列表,但如果您更喜欢使用字典:
items = {1: 'a', 2: 'b', 3: 'c', 4: 'd', 5: 'e'}
items.pop(3)
items = {k: v for k, v in enumerate(items.values(), start=1)}
print(items)
# Outputs {1: 'a', 2: 'b', 3: 'd', 4: 'e'}