用 python 中的字符串替换列表中的多个字符串并获取替换字符串出现的次数

Replace multiple strings in a list with a string in python and get the count of replaced string occurence

我需要用字符串 'Limits' 替换 AllLimit 列表中 Current_List.. 中的所有字符串 并将 AllTech 列表中的所有字符串替换为 sring 'Tech' 和 计算 'Limits' 和 'Tech' 的出现次数。 我正在使用下面的代码,它是为上述目的服务的。无论如何,我可以减少代码中的冗余吗?

AllTech = ['Power Lost', 'Failure', 'no Supply']
AllLimit = ['High Temp', 'Low Humid']
current_list = ['High Temp', 'Low Humid', 'Power Lost', 'no Supply' ]

fc =  [sub.replace('High Temp', 'Limits')
           .replace('Low Humid', 'Limits')
           .replace('Power Lost', 'Tech')
           .replace('no Supply', 'Tech') for sub in current_list]

print (fc.count("Tech"))
print (fc.count("Limits"))
all_tech = ['Power Lost', 'Failure', 'no Supply']
all_limit = ['High Temp', 'Low Humid']
current_list = ['High Temp', 'Low Humid', 'Power Lost', 'no Supply']


for item in current_list:
    if item in all_limit:
        current_list.remove('High Temp')
        current_list.remove('Low Humid')
        current_list.insert(0, 'Limit')
        current_list.insert(1, 'Limit')
    if item in all_tech:
        current_list.remove('Power Lost')
        current_list.remove('no Supply')
        current_list.insert(0, 'Tech')
        current_list.insert(2, 'Tech')
print(current_list)
print(current_list.count('Tech'))
print(current_list.count('Limit'))

希望对您有所帮助,如果这正是您要找的,请告诉我。