はこの1つを解決する方法を発見します!
最初に私は正しい軌道を暗示するために@JJJに感謝したいと思いますが、私の唯一の批判は、提示された解決策はそれほど単純ではなく、バイトの意義を知らない人これはかなり難しい問題です。
は基本的に問題はCP1252であること、私のコンピュータが使用する(OSが標準で10を獲得している)エンコーディングのデフォルトの方法で行うことでした。
のpythonに入ると、プログラムはこれをテストするためのコードの単純なビットを実行した、それはより明確な問題を示しているので、我々はより現実的な解決策を見つけることができます。
UnicodeEncodeError: 'charmap' codec can't encode character '\u2665' in position 2: character maps to <undefined>
ああ:
text = "I ♥ IceCream"
text = text.encode("cp1252")
open('People Jobs.txt','a').write(text)
IDLEでこれを実行するには、我々はこれを取得します!今私たちの問題を見ることができます!コーデックは文字をエンコードできません!私たちはそうのようなファイルに書き込む前に、UTF-8を使用して文字列をエンコードすることができ、これを知っている:
text = "I ♥ IceCream"
text = text.encode("utf-8")
open('People Jobs.txt','a').write(text)
がこれを実行すると、我々は最終的に取得する:
ファイルへの心配を書き込むことはできません
b'I \xe2\x99\xa5 IceCream'
。私たちは、decodeメソッドを使用して、元のメッセージに、この背を向けることができ、しかし私の目的のために、我々はそれをする必要はありません。
また、私は自分のポストにコメントした人に感謝の意を表したいと思います。パイソン言語の広範な知識はかなりの資産であり、私は大いに感謝しています。
うまくいけば、私の過失は、彼らがこの投稿を
で笑って来るしかし、私は名前を持っている理由ちょっとそれはだときに、これらの簡単なプログラミングの原則は、他の人の利益になるご覧いただけます!
だから、次回まで、
P.S @Pratik Kこれをよりコンパクトに書く方法を思い出してくれてありがとう、私はそれを感謝します:)(C++をやってきたので、私はPythonについて忘れてしまった)
[write ) - Python 3.xでエンコードされた文字列を作成する](https://stackoverflow.com/questions/7372974/write-ing-an-encoded-string-in-python-3-x) – JJJ
あなたは ' 'with open(...) 'ブロックを使用しているのにコロンと分かりやすいインデントが必要な場合は、file.close() – khelwood
あなたのコードの構文修正版は、Python 3.5でも問題なく動作します。 http://imgur.com/a/GxQ0s – ayhan