2011-12-26 5 views
1

MacOS X 10.7.2でXcode 4.2(ビルド4D199)でPython 3.2.2を使用しています。以下:Xcode 4.2(ビルド4D199)+ Python:コンソール出力が期待通りのものではない(例:UTF-8文字なし)

main.pyコンソールで

#coding=utf-8 
print("ľťď", 1+1) 
print("ľťď") 

出力(シフト+はCmd + C):

('\xc4\xbe\xc5\xa5\xc4\x8f', 2) 
ľťď 

期待される出力(例:うまくIDLE作品):

ľťď 2 
ľťď 

は今、それがまたカッコ、アポストロフィやカンマが含まれているという事実を考えると、私はこの動作は、コンソールのデバッグ性質の結果であることを前提とし、したがって、本当の問題は、おそらくどのようにありますコンソールに最終出力を表示させます。しかし、この動作は少し矛盾しているように見えますが、これはXcodeとPythonとの最初の遭遇であるため、私の質問はかなり広範囲です。

TL; DR: Xcodeのコンソールには、例えば、次のように出力することはできますか?アイドル?

答えて

1

Now given the fact that it also includes the brackets, apostrophes and comma, I presume that this behaviour is a result of the console's debugging nature

そうではありません。これはPython 2と3の違いです。

$ python2 
>>> print("ľťď", 1+1) 
('\xc4\xbe\xc5\xa5\xc4\x8f', 2) 

$ python3 
>>> print("ľťď", 1+1) 
ľťď 2 

実際には2つの異なるPythonバージョンが実行されています。 Python 3は下位互換性がないので、プロジェクトに対して2または3のいずれかを選択してそれに固執する必要があります。

+0

D'oh!申し訳ありませんが、私は、システムに含まれているpython2ではなく、新しいpython3を使用するようにプロジェクトを変更するのを忘れてしまいました。私は答えが非常に簡単だと思ったが、これはそうではなかった。私の初心者の過失申し訳ありませんと私を保存していただきありがとうございます。 –

+0

@HarroldCavendish:あなたは大歓迎です、謝罪する必要はありません:) –

+0

私はこれが別の質問のためか、ちょうど2番目の愚かな間違いかどうかはわかりませんが、インタプリタを変更した後、UnicodeEncodeError Xcode-IDLEではうまく動作します。 UnicodeEncodeError: 'ascii'コーデックは文字 '\ u013e'を位置0にエンコードできません:序数は範囲(128) 'にありません。 ASCIIもXcodeで正常に動作します。 –

関連する問題