擅长:python、mysql、java
<p>这是因为Unix和Linux是如何处理shebang的。<a href="http://en.wikipedia.org/wiki/Shebang_%28Unix%29" rel="nofollow">^{<cd1>}</a>必须是文件中的前两个字节<em>。如果你有一个BOM,那么这不再是真的,因此出现了错误。</p>
<p>注意,从python解释器的角度来看,放置BOM是完全无用的,因为<code># -*- coding: utf-8 -*-</code>已经告诉python编码。</p>
<p>AFAIK BOM通常与utf-8一起使用。它用于UTF-16和similia,以指定字节顺序。如果编辑器假定使用了错误的编码,则应该能够使用正确的编码显式打开文件。</p>