擅长:python、mysql、java
<p>考虑Python字符串<code>'\a'</code>。如<a href="http://docs.python.org/2/reference/lexical_analysis.html#string-literals" rel="noreferrer">documentation</a>中所述,反斜杠字符被解释为转义字符。因此<code>'\a'</code>实际上是ASCII贝尔字符,字符编号7。在</p>
<p>您的文件名是<code>'F:\abc.c'</code>,其中的<code>\a</code>被解释为ASCII-Bell。您可以在解释程序中清楚地看到这一点:</p>
<pre><code>>>> 'F:\abc.c'
'F:\x07bc.c'
>>> print 'F:\abc.c'
F:bc.c
</code></pre>
<p>打印该字符串时请注意,<code>\a</code>不会出现。这是因为它已经变成了一个隐形的铃铛控制字符。在</p>
<p>要包含反斜杠,可以使用正确的转义序列<code>\\</code>。把它们放在一起,你的文件名应该是:<code>'F:\\abc.c'</code>。作为替代方法,您可以在字符串前面加上<code>r</code>,使其成为原始字符串。这在<a href="http://docs.python.org/2/reference/lexical_analysis.html#string-literals" rel="noreferrer">documentation</a>中也有详细说明。在</p>
^{pr2}$