擅长:python、mysql、java
<p>好吧,有几件事。在</p>
<ol>
<li><p>您只需要编译正则表达式一次。在上面给出的示例中,您将为文件中的每一行重新编译它。</p></li>
<li><p><code>line[0]</code>只是每行的第一个字符。将<code>line[0]</code>替换为<code>line</code>,您的代码应该可以工作。</p></li>
</ol>
<p>要将整数赋给一个对象,必须将所需的组括在括号中。在你的情况下,让</p>
<pre><code>p = re.compile(r"p wncf (\d+) (\d+) (\d+)")
</code></pre>
<p>而不是返回匹配对象或<code>p.match(line)</code>,而是使用<code>findall</code>。检查以下内容作为您所拥有内容的替代品。在</p>
^{pr2}$
<p>编辑:如果你的头值也可以包含负数,你应该将<code>r"p wncf (\d+) (\d+) (\d+)"</code>替换为<code>r"p wncf (-?\d+) (-?\d+) (-?\d+)"</code>。在</p>