0
kvs = {k:v.strip("'") for k,v in re.findall(r"\('(\S+)', ('.*?')\)", line)}

Traceback (most recent call last):
  File "./scanl2logs.py", line 24, in <module>
    from l2historybuffer import L2HistoryBuffer
  File "/opt/jiaping_python_syslog/ScanSwitchesLogFiles-master/l2historybuffer.py", line 69
    kvs = {k:v.strip("'") for k,v in re.findall(r"\('(\S+)', ('.*?')\)", line)}
                            ^
SyntaxError: invalid syntax
4

1 回答 1

2

您可能正在使用 Python 2.7 之前的 Python 版本。直到 2.7 才添加字典理解。

您将不得不执行以下操作:

dict((k,v.strip(' ')) for k,v in re.findall(r'\('(\S+)', ('.*?')\)' , line))

或者升级你的python版本:)。

于 2013-08-19T08:13:10.457 回答