0

私はこれを使用します:

    title=title.replace(u'【',u'[').replace(u'】',u'[')

しかしエラー:

UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 0: ordinal not in range(128)
4

3 に答える 3

4

それtitleはそもそもではないからですunicode使用する前にデコードしてください。

于 2012-04-10T00:58:36.560 に答える
1

titlestr オブジェクトではなく、Unicode オブジェクトである必要があります

例えば。

title = title.decode("utf-8")  # or whatever encoding title is using
于 2012-04-10T01:01:17.550 に答える
1

Ignacio によって投稿されたリンクは素晴らしいので、慎重に従ってください。

大きな '[' は CJK 文字セットです。ここの人々は、それを表示するために正しいフォントがインストールされていない可能性があります。そのため、太字の[を使用して表します。

Python でエンコードされた文字列を直接使用してもかまわない場合は、あまりお勧めできませんが、Unicode の代わりに文字列を使用して".replace(' [ ', '[')" を使用してください。

Unicode を使用して Python 内でテキストを操作したい場合、実際にはそうすべきです。使用しているすべてのテキストが.decode(string_encoding). また、 でグローバル デフォルト エンコーディングを 'utf-8' に設定しますsitecustomize.py。これにより、システム.decode('utf-8')が自動的に実行されます。

于 2012-04-10T04:05:57.817 に答える