0

テキストを解析するコードを書いています。変数の 1 つで、テキストまたは整数を使用できるため、出力するために str を実行します。

Variable=str(input)

問題なく動作しますが、入力に言語固有の文字「ñ」が含まれていると、次のエラーがスローされて動作しません。

UnicodeEncodeError: 'ascii' codec can't encode character u'\xf1' in position 9: ordinal not in range(128)

これを回避する方法は?

4

1 に答える 1

3

最初に Unicode について読み始めることをお勧めします。

続行する前に。

特定のエンコーディングを使用して値をエンコード する必要があります。デフォルトのエンコーディング ASCII を使用しますが、一部の値では失敗します。unicode()str()

unicode.encode()明示的なエンコードは、次のメソッドで実行できます。

Variable = input.encode('utf8')

ただし、問題のドメインで機能するエンコーディングを選択する必要があります。

于 2013-10-26T11:22:41.183 に答える