2017-09-10 14 views
0

ファイルに書き込もうとしています。私は私の編集者としてPython、MacOSの最新バージョン、およびSublimeText3の最新バージョンを使用していますファイルに書き込むときにPythonでユニコードエラーが発生する

"Traceback (most recent call last): 
    File "/Users/alex/Documents/Python/filewriter.py", line 5, in <module> 
    element.write(string) 
UnicodeEncodeError: 'ascii' codec can't encode character '\xf1' 
in position 2: ordinal not in range(128)" 

filename = "test.txt" 
string = "Niñas and niños" 

with open(filename, 'w') as element: 
      element.write(string) 

これは、次のエラーを返します。

誰もが何が起こっているのか考えていますか?

+0

あなたのコードは私のために正常に動作します。あなたはエンコーディングに関してあなたのシステムに異常な環境変数を設定していますか?私には何も設定されておらず、あなたはそれらを必要とすべきではない。ソフトウェアでエンコード/デコードを正しく処理している場合は、PYTHONIOENCODINGは必要ありません(私はその松葉杖に対して助言します)。 – FMc

答えて

1

を開き、このようなUTF-8エンコーディングでファイル、:(MacOSの上のPython 3.6.1) - であるとして

with open(filename, 'w', encoding='utf-8') as element: 
+0

素晴らしい作品!ありがとう! –

関連する問題