有没有办法在带有循环的字典中自行生成相似的键名和值?
Is there a way to self generate similar key names and values in a dictionary with a loop?
我想使用循环或类似技术创建字典。类似下面的变量赋值是可能的。
my_dict = {v:int(v*random()) for v in range(10)}
尽管我遇到的问题是——如何为项目键生成相似的名称?下面举个例子:
{'Item-1': 1, 'Item-2':3, 'Item-3':3 ....}
提前致谢!
创建键和值并循环添加到 my_dict
my_dict = {}
for v in range(10): my_dict[f'Item-{v}'] = v
print(my_dict)
{'Item-0': 0, 'Item-1': 1, 'Item-2': 2, 'Item-3': 3, 'Item-4': 4, 'Item-5': 5, 'Item-6': 6, 'Item-7': 7, 'Item-8': 8, 'Item-9': 9}
您也可以在字典中使用列表理解。
from random import randint
dic = {f"item-{i}": randint(0, 10) for i in range(1, 11)}
print(dic)
from random import random
my_dict = {f'item-{v+1}': int(v*random()) for v in range(10)}
print(my_dict)
输出:
{'item-1': 0, 'item-2': 0, 'item-3': 1, 'item-4': 1, 'item-5': 0, 'item-6': 3, 'item-7': 2, 'item-8': 4, 'item-9': 6, 'item-10': 2}
这使用 f-string 创建密钥,相应的值是随机生成的,就像您的问题一样。
我想使用循环或类似技术创建字典。类似下面的变量赋值是可能的。
my_dict = {v:int(v*random()) for v in range(10)}
尽管我遇到的问题是——如何为项目键生成相似的名称?下面举个例子:
{'Item-1': 1, 'Item-2':3, 'Item-3':3 ....}
提前致谢!
创建键和值并循环添加到 my_dict
my_dict = {}
for v in range(10): my_dict[f'Item-{v}'] = v
print(my_dict)
{'Item-0': 0, 'Item-1': 1, 'Item-2': 2, 'Item-3': 3, 'Item-4': 4, 'Item-5': 5, 'Item-6': 6, 'Item-7': 7, 'Item-8': 8, 'Item-9': 9}
您也可以在字典中使用列表理解。
from random import randint
dic = {f"item-{i}": randint(0, 10) for i in range(1, 11)}
print(dic)
from random import random
my_dict = {f'item-{v+1}': int(v*random()) for v in range(10)}
print(my_dict)
输出:
{'item-1': 0, 'item-2': 0, 'item-3': 1, 'item-4': 1, 'item-5': 0, 'item-6': 3, 'item-7': 2, 'item-8': 4, 'item-9': 6, 'item-10': 2}
这使用 f-string 创建密钥,相应的值是随机生成的,就像您的问题一样。