[英]Conditional replace in a Python list
實際值在字典中,如下所示,
{'logsource1': {'product': 'ABC', 'service': 'Proxy'},
'logsource2': {'product': 'DEF', 'service': 'Proxy'},
'condition': 'Join logsource1.selection1 and logsource2.selection3 AND ((logsource1.selection2 <= contraint1) AND (logsource2.selection4 <= constraint1))',
'constraint1': {'Value': '5 minutes', 'Type': 'Datetime'}}}
l1 = ['Join', 'logsource1.selection1', 'and', 'logsource2.selection3', 'AND', '((logsource1.selection2', '<=', 'contraint1)', 'AND', '(logsource2.selection4', '<=', 'constraint1))']
我提取了條件並將其添加到列表 l1 中,以便查找和替換更容易。 同樣,要替換的實際值也是同一個字典的一部分。
output 應該是,
l1 = ['Join', 'ABC.selection1', 'and', 'DEF.selection3', 'AND', '((ABC.selection2', '<=', 'contraint1)', 'AND', ' (DEF.selection4', '<=', 'constraint1))']
假設您將值存儲在字典中:
values = {
'logsource1.selection1': 'foo',
'logsource2.selection3': 'bar',
# etc
}
然后您可以遍歷列表位置並替換:
for i in range(len(l1)):
if l1[i] in values:
l1[i] = values[l1[i]]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.