我目前正在分析基于Linux的输出的自动化任务。我们目前不确定哪些字段值将变为空以及何时变为空。
目标:每次获取所有字段,无论我的Linux输出中哪个字段为空。如果任何字段为null
,则将其视为空白字段
我用来拆分字段的Python代码:由于output
中没有空字段,因此以下代码可以正常工作
fields = "Index Id Type Ip Flags AhmSt CLT AhmDB Nodename"
fields = fields.split()
output = "6215 5097 GOLD1 10.123.43.2 n/a [1,0,0,en] dflt u testing-fake-sme-6-50.gold.isold.com"
values = output.split(' ')
values = [value for value in values if value]
values:
['6215', '5097', 'GOLD1', '10.123.43.2', 'n/a', '[1,0,0,en]', 'dflt', 'u', 'testing-fake-sme-6-50.gold.isold.com']
required_output = dict(zip(fields,values))
required_output:
{'Index': '6215', 'Nodename': 'testing-fake-sme-6-50.gold.isold.com', 'AhmDB': 'u', 'Ip': '10.123.43.2', 'Flags': 'n/a', 'CLT': 'dflt', 'AhmSt': '[1,0,0,en]', 'Type': 'GOLD1', 'Id': '5097'}
现在,对于以下output
,我的AhmSt
字段变为null
,上面的代码不起作用。
output = "270 4142 HOLD 10.123.12.32 0x00000001 h hello-ca-4142-20.gold.isold.com
如何在第二个输出中检测到我的AhmSt
字段为空,并且必须使用blank
或None
值对其进行更新?