擅长:python、mysql、java
<pre><code># -*- coding: utf-8 -*-
</code></pre>
<p>不会使字符串文本成为Unicode。举个例子,我有一个带有阿拉伯注释和字符串的文件,文件是utf-8:</p>
<pre><code># هذا تعليق عربي
print type('نص عربي')
</code></pre>
<p>如果我运行它,它将引发一个<code>SyntaxError</code>异常:</p>
<pre><code>SyntaxError: Non-ASCII character '\xd9' in file file.py
on line 2, but no encoding declared;
see http://www.python.org/peps/pep-0263.html for details
</code></pre>
<p>因此,为了实现这一点,我必须添加这一行来告诉解释器文件是UTF-8编码的:</p>
<pre><code># -*-coding: utf-8 -*-
# هذا تعليق عربي
print type('نص عربي')
</code></pre>
<p>现在它运行良好,但仍会打印<code><type 'str'></code>,除非我将字符串设置为Unicode:</p>
<pre><code># -*-coding: utf-8 -*-
# هذا تعليق عربي
print type(u'نص عربي')
</code></pre>