将字典中的每个值除以 Python 中的总值

目录

Divide each value in a dictionary by total value in Python

  1. 将字典中的每个值除以 Python 中的总值
  2. 将字典中的每个值除以 Python 中的数字
  3. 使用 floor division 将字典中的每个值除以一个数字
  4. 使用 for 循环将字典中的每个值除以一个数字
  5. 使用 dict.update() 将字典中的每个值除以一个数字

将字典中的每个值除以 Python 中的总值

将字典中的每个值除以总值:

  1. 使用字典理解来迭代字典的项目。
  2. 在每次迭代中,将当前值除以总数。
  3. 新词典将包含除法结果。
主程序
my_dict = {'a': 1, 'b': 5, 'c': 4} # ✅ divide each dictionary value by sum of dictionary values total = sum(my_dict.values()) result = {key: value / total for key, value in my_dict.items()} # 👇️ {'a': 0.1, 'b': 0.5, 'c': 0.4} print(result)

dict.items
方法返回字典项((键,值)对)的新视图

主程序
my_dict = {'a': 1, 'b': 5, 'c': 4} # 👇️ dict_items([('a', 1), ('b', 5), ('c', 4)]) print(my_dict.items())

我们使用字典理解来迭代字典的项目。

Dict comprehensions 与list comprehensions非常相似

他们对字典中的每个键值对执行一些操作,或者选择满足条件的键值对的子集。

dict.values方法返回字典值的新视图

主程序
my_dict = {'a': 1, 'b': 5, 'c': 4} # 👇️ dict_values([1, 5, 4]) print(my_dict.values())

sum函数接受一个可迭代对象,从左到右对其项目求和并返回总数

在每次迭代中,我们将当前密钥除以总数并返回结果。

将字典中的每个值除以 Python 中的数字

将字典中的每个值除以一个数字:

  1. 使用字典理解来迭代字典的项目。
  2. 在每次迭代中,将当前值除以数字并返回结果。
主程序
my_dict = {'a': 1, 'b': 5, 'c': 4} result = {key: value / 2 for key, value in my_dict.items()} print(result) # 👉️ {'a': 0.5, 'b': 2.5, 'c': 2.0}

我们不是除以总值,而是除以一个数字(2在示例中)。

新字典包含相同的键,但其值是将原始字典的每个值除以 的结果2

使用 floor division 将字典中的每个值除以一个数字

如果需要将除法结果作为整数,请使用 floor//除法运算符。

主程序
my_dict = {'a': 10, 'b': 15, 'c': 26} result = {key: value // 2 for key, value in my_dict.items()} print(result) # 👉️ {'a': 5, 'b': 7, 'c': 13}

整数除法/产生一个浮点数,而
整数
除法 //产生一个整数。

The result of using the floor division operator is that of a mathematical division with the floor() function applied to the result.
main.py
my_num = 50 print(my_num / 5) # 👉️ 10.0 (float) print(my_num // 5) # 👉️ 10 (int)

# Divide each value in a dictionary by a number using a for loop

You can also use a for loop to divide each
value in a dictionary.

main.py
my_dict = {'a': 10, 'b': 15, 'c': 26} new_dict = {} for key, value in my_dict.items(): new_dict[key] = value / 2 # 👇️ {'a': 5.0, 'b': 7.5, 'c': 13.0} print(new_dict)

We declared a new variable that stores an empty dictionary and used a for loop
to iterate over the original dictionary.

On each iteration, we divide the current value by 2 and assign the result to a
new dictionary.

# Divide each value in a dictionary by a number using dict.update()

You can also use the dict.update() method to divide each value in a dictionary
by a number in place.

main.py
my_dict = {'a': 10, 'b': 15, 'c': 26} for key, value in my_dict.items(): my_dict.update({key: value / 2}) # 👇️ {'a': 5.0, 'b': 7.5, 'c': 13.0} print(my_dict)

dict.update方法使用提供的值中键值对更新字典。

主程序
my_dict = {'name': 'Alice'} my_dict.update({'name': 'bobbyhadz', 'age': 30}) print(my_dict) # 👉️ {'name': 'bobbyhadz', 'age': 30}

该方法覆盖字典的现有键并
返回 None

额外资源

您可以通过查看以下教程来了解有关相关主题的更多信息: