小编Win*_*y71的帖子

Pythonic 方法从不等长的列表创建字典,无需填充 None

我有一个“ID”列表,我希望将其与另一个列表中的属性(它们的“行”)关联起来。我找到了一种方法来做到这一点,通过制作较小的字典并将它们连接在一起,这是有效的,但我想知道是否有一种更Pythonic的方法来做到这一点?

代码

row1 = list(range(1, 6, 1))
row2 = list(range(6, 11, 1))
row3 = list(range(11, 16, 1))
row4 = list(range(16, 21, 1))

row1_dict = {}
row2_dict = {}
row3_dict = {}
row4_dict = {}

for n in row1:
    row1_dict[n] = 1
for n in row2:
    row2_dict[n] = 2
for n in row3:
    row3_dict[n] = 3
for n in row4:
    row4_dict[n] = 4

id_to_row_dict = {}
id_to_row_dict = {**row1_dict, **row2_dict, **row3_dict, **row4_dict}
print('\n')
for k, v in id_to_row_dict.items():
    print(k, " : …
Run Code Online (Sandbox Code Playgroud)

python dictionary list

8
推荐指数
1
解决办法
360
查看次数

如何从比值列表长的键列表中制作字典

我有一个我想制作的字典,它会很大,有 600 个键值对。键将是整数,值将来自 3 个字母(A、B 和 C)的列表。如果我生成一个键列表,我如何将适当的值“映射”到键。

代码

my_list = list(range(1,11,1))
my_letters = ["A", "B", "C"]
my_dict = {}

for k in my_list:
    for v in my_letters
# I know it isn't going to be nested for loops
Run Code Online (Sandbox Code Playgroud)

期望输出

#my_dict = {"1" : "A", "2" : "B", "3" : "C", "4" : "A", ... "10" : "A"}
Run Code Online (Sandbox Code Playgroud)

python zip dictionary list

3
推荐指数
1
解决办法
37
查看次数

标签 统计

dictionary ×2

list ×2

python ×2

zip ×1