TextWrangler,Python Shebang和UTF-8(在Python 2.5中)

时间:2015-02-17 15:56:32

标签: python textwrangler

请使用以下代码:

#! /usr/bin/env python2.5
# -*- coding: utf-8 -*-

thing = u'\N{DEGREE SIGN}'
print thing

这将在OS X终端中运行且没有错误,但是当通过Textwrangler Python解释器运行时,它会抛出错误。但是,当我翻转前两行时,它在两个地方都运行没有错误:

# -*- coding: utf-8 -*-
#! /usr/bin/env python2.5

thing = u'\N{DEGREE SIGN}'
print thing

我的印象是shebang需要在文件的前两个字节中,所以我认为它在第二个例子中被忽略了。我进一步认为,惯例规定这是启动剧本的正确方法:

#! /usr/bin/env python2.5
# -*- coding: utf-8 -*-

但在所有情况下似乎都不是这样。

Textwrangler在这里有什么东西让我失踪吗?

[编辑]我的用例(Python 2.5)至少是导致问题的很大一部分。

[更新]以下在Terminal和TextWrangler中运行无错误:

#! /usr/bin/env python2.5
# -*- coding: utf-8 -*-

degreeSign = u'\u00B0'
degreeSign_encoded = degreeSign.encode('utf-8')
print degreeSign_encoded

0 个答案:

没有答案