首页 > 解决方案 > 使用字典替换字符串列表

问题描述

我有python代码

my_list = ['hsdpa_-_rl_fail', 'avg_reported_cqi.', 'fach-c_load_ratio', 'canc_isho_cpich/ecno_nrt_m1010c209']
my_dict = {'-' : 'dash' , '.':'dot' , '/':'slash'}

我想根据 my_dict 中给出的映射在 my_list 中搜索和替换,即 my_dict 键应替换为 my_list 的所有元素中的相应值。

这如何以pythonic方式完成?

标签: python

解决方案


使用简单的迭代。

前任:

my_list = ['hsdpa_-_rl_fail', 'avg_reported_cqi.', 'fach-c_load_ratio', 'canc_isho_cpich/ecno_nrt_m1010c209']
my_dict = {'-' : 'dash' , '.':'dot' , '/':'slash'}

for i, v in enumerate(my_list):
    for k in my_dict:
        if k in v:
            my_list[i] = v.replace(k, my_dict[k])

print(my_list)

输出:

['hsdpa_dash_rl_fail', 'avg_reported_cqidot', 'fachdashc_load_ratio', 'canc_isho_cpichslashecno_nrt_m1010c209']

推荐阅读