python字典中的有效占位符

2024-09-28 03:18:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一本字典,里面有整数值和字符串值。这些键的数字增加到N,但包含间隙。是否有一种有效的方法来填补特定数量的所有缺口?(计算从1开始,而不是0)

例如:

{1: "fdkh", 3: "wnww", 4: "fdngfne", 5: "wqiw", 7: "sdfsdf"}
 N = 9

结果应该是:

{1: "fdkh", 3: "wnww", 4: "fdngfne", 5: "wqiw", 7: "sdfsdf", 2: "placeholder", 6: "placeholder", 8: "placeholder", 9: "placeholder"}

当然我可以手动循环,但是有没有更聪明的方法呢


Tags: 方法字符串数量字典数字整数手动placeholder
1条回答
网友
1楼 · 发布于 2024-09-28 03:18:49

一个快速的方法是

mydict = dict.fromkeys(range(1,N+1),"placeholder") | {
    1: "fdkh", 3: "wnww", 4: "fdngfne", 5: "wqiw", 7: "sdfsdf"}

尽管我怀疑您可能正在寻求collections.defaultdict

mydict = defaultdict(lambda: "placeholder",{
    1: "fdkh", 3: "wnww", 4: "fdngfne", 5: "wqiw", 7: "sdfsdf"})

相关问题 更多 >

    热门问题