2024-03-28 11:40:30 发布
网友
我需要将元组的第一个元素(字典中的键)设置为current。你知道吗
current
{('a', '0'): 'c', ('b', '0'): 'd',}
在循环代码之前,我需要将'a'设置为current变量。 我该怎么做?你知道吗
'a'
你想从字典里查“a”吗? 如果是,则可以执行以下操作:
list(d.keys())[0][0] >>> a
但是,如果以上不是您所要求的,但以下是。你知道吗
{('a', '0'): 'a', ('b', '0'): 'd'}
您可以使用lambda或list comprehension实现这一点:
# Lambda d[('a', '0')] = list(map(lambda k: k[0], d))[0] print(d) >>> {('a', '0'): 'a', ('b', '0'): 'd'} # list comprehension d[('a', '0')] = [k[0] for k in d][0] >>> {('a', '0'): 'a', ('b', '0'): 'd'}
或者你想取得这样的成就:
{('b', '0'): 'd', ('c', '0'): 'a'}
同样,使用lambda或列表理解:
# Lambda d[('a', '0')] = list(map(lambda k: k[0], d))[0] d[('c', '0')] = d.pop(('a', '0')) print(d) >>> {('b', '0'): 'd', ('c', '0'): 'a'} # list comprehension d[('a', '0')] = [k[0] for k in d][0] d[('c', '0')] = d.pop(('a', '0')) print(d) >>> {('b', '0'): 'd', ('c', '0'): 'a'}
不能修改密钥本身,因为它是不可变对象。相反,请将字典键替换为新的,例如:
key1, key2 = ('a', '0'), (current, 0) d[key2] = d[key1] del d[key1]
或者一步到位:
d[key2] = d.pop(key1)
如果您想在所有字典中循环,只通过元组键中的第一个项来更新它们。你知道吗
d = {('a', '0'): 'c', ('b', '0'): 'd',} for key in d: new_key = key[0] d[new_key] = d.pop(key) d >>{'a': 'c', 'b': 'd'}
实际上,这里删除了旧的键,并用一个新的键替换它,在这个新键中,将元组的索引0作为新键。你知道吗
0
你想从字典里查“a”吗? 如果是,则可以执行以下操作:
但是,如果以上不是您所要求的,但以下是。你知道吗
您可以使用lambda或list comprehension实现这一点:
或者你想取得这样的成就:
同样,使用lambda或列表理解:
不能修改密钥本身,因为它是不可变对象。相反,请将字典键替换为新的,例如:
或者一步到位:
如果您想在所有字典中循环,只通过元组键中的第一个项来更新它们。你知道吗
实际上,这里删除了旧的键,并用一个新的键替换它,在这个新键中,将元组的索引
0
作为新键。你知道吗相关问题 更多 >
编程相关推荐