给定输入为文本数据:
file = open(“ ZZZ.txt”)。read()。splitlines()
抽样结果:
['Running from: ',
'Apr 02, 2019 5:38:29 PM YYYYYYYYY',
'WARNING: XXXXXXXXXXXXX',
'Apr 02, 2019 5:38:29 PM YYYYYYYYY',
'WARNING: XXXXXXXXXXXXX',
'Apr 02, 2019 5:38:29 PM YYYYYYYYY',
'INFO: XXXXXXXXXXXXX',
'Apr 02, 2019 5:38:29 PM YYYYYYYYY',
'INFO: XXXXXXXXXXXXX',
'Apr 02, 2019 5:38:33 PM YYYYYYYYY',
'WARNING: XXXXXXXXXXXXX',
'Apr 02, 2019 5:38:33 PM YYYYYYYYY',
'INFO: XXXXXXXXXXXXX]
我需要提取(输入数据)YYYYYYYYY,还必须提取(信息或警告)XXXXXXXXXXXXX。
我尝试使用(“ Apr”或“ May”或“ Jun”)提取输入数据。 和line.startswith(“ INFO”或“ WARNING”)
但是我得到了不同的长度键和值列表,
key = []
value = []
for line in jenkins:
if line.startswith("Apr" or May or "Jun"):
line = line.rstrip()
key.append(line)
else:
if line.startswith("INFO" or "WARNING"):
line = line.rstrip()
value.append(line)
答案 0 :(得分:1)
如果删除or关键字仍然有效的语法,则or关键字不能在startswith函数的有效语法内运行。
for idx, line in enumerate(lines):
if line.startswith('INFO') or line.startswith('WARNING'):
keys.append(line.strip())
values.append(lines[idx-1].strip())