我有这样一句话:

{'q1': [5, 6, 90, 91, 119, 144, 181, 399],
 'q2': [236, 166],
 'q3': [552, 401, 1297, 1296],
}

我想在每个值列表中的每个元素前面加上一个'd':

{'q1': ['d5', 'd6', 'd90', 'd91', 'd119', 'd144', 'd181', 'd399'],
 'q2': ['d236', 'd166'],
 'q3': ['d552', 'd401', 'd1297', 'd1296'],
}

我try 了out = {k: 'd'+str(v) for k,v in out.items()},但这只将'd'添加到每个值列表的外部:

{'q1': d[5, 6, 90, 91, 119, 144, 181, 399],
 'q2': d[236, 166],
 'q3': d[552, 401, 1297, 1296],
}

我想我必须在词典理解中做一种列表理解,但我不确定如何实现.

推荐答案

try :

dct = {
    "q1": [5, 6, 90, 91, 119, 144, 181, 399],
    "q2": [236, 166],
    "q3": [552, 401, 1297, 1296],
}

for v in dct.values():
    v[:] = (f"d{i}" for i in v)

print(dct)

打印:

{
    "q1": ["d5", "d6", "d90", "d91", "d119", "d144", "d181", "d399"],
    "q2": ["d236", "d166"],
    "q3": ["d552", "d401", "d1297", "d1296"],
}

Python相关问答推荐

Pandas 填充条件是另一列

如何在具有重复数据的pandas中对groupby进行总和,同时保留其他列

对某些列的总数进行民意调查,但不单独列出每列

抓取rotowire MLB球员新闻并使用Python形成表格

Python中的嵌套Ruby哈希

使用miniconda创建环境的问题

将两只Pandas rame乘以指数

在Polars(Python库)中将二进制转换为具有非UTF-8字符的字符串变量

有没有一种ONE—LINER的方法给一个框架的每一行一个由整数和字符串组成的唯一id?

当我try 在django中更新模型时,模型表单数据不可见

joblib:无法从父目录的另一个子文件夹加载转储模型

Django RawSQL注释字段

如何更改groupby作用域以找到满足掩码条件的第一个值?

python—telegraph—bot send_voice发送空文件

python sklearn ValueError:使用序列设置数组元素

Gunicorn无法启动Flask应用,因为无法将应用解析为属性名或函数调用.'"'' "

BeautifulSoup:超过24个字符(从a到z)的迭代失败:降低了首次深入了解数据集的复杂性:

为什么后跟inplace方法的`.rename(Columns={';b';:';b';},Copy=False)`没有更新原始数据帧?

在round函数中使用列值

使用pythonminidom过滤XML文件