通过添加元组值来扩展字典



(我只是用一些东西来表示我的字典的格式,这不是它的实际外观)我目前拥有的词典格式为:

dict={"a":(1,2,3),"b":(2,3,4),"c":(3,4,5)}
dict2={1:(1,1,2),2:(2,2,3),3:(3,3,4)}

我正在尝试添加它。我有一个计算平均值的函数,现在我想创建第二个函数,从第一个函数中提取平均值,并将其添加到字典值中的元组中。所以,如果"a"的平均值是4,那么我想把它加上去,让它看起来像这个{"a":(1,2,3,4)}

def func1(dict, dict2, number):
   if number in dict:
      for num in dict.values():
       #return sum after iteration of sum through num[0] to num[2]
def func 2 (dict1, dict2)
    if number in dict:
       new_val_to_add= func1(dict, dict2, number)

从这里开始,我不确定将返回的值添加到元组中,并能够用添加的值打印回dict。我想把第一个字典中的元组转换成一个列表,然后在遍历字典中的每个键时将其附加到列表中,最后将其转换回元组。这样做对吗?

如果您希望值是可变的,为什么不使用列表而不是元组呢?

您可以使用+组合两个元组,不过:

>>> (1, 2, 3) + (4,)
(1, 2, 3, 4)

我很难理解你的示例代码,但有了一本符合你描述的词典,你可以这样做:

>>> d1 = {'a': (1, 2, 3)}
>>> d1['a'] += (4,)
>>> d1
{'a': (1, 2, 3, 4)}

或者,使用列表代替:

>>> d1 = {'a': [1, 2, 3]}
>>> d1['a'].append(4)
>>> d1
{'a': [1, 2, 3, 4]}

最新更新