0

次の文字列があります。

u"examined by other children\u2014particularly the children of George MacDonald."

しかし、それをデコードする方法が見つかりません。Pythonに必要なエンコーダー/デコーダーは何ですか。削除したい\nの先頭にある「\n\nOn」もたくさんあります。string.decode("utf-8") を試しました

TypeError: 'unicode' オブジェクトは呼び出し可能ではありません

編集:

これは、ウィキペディアの不思議の国のアリスの大きな段落内にあります。

u'BackgroundAlice は、チャールズ・ラトウィッジ・ドジソン牧師とロビンソン・ダックワース牧師が 1862 年 7 月 4 日にボートで漕いでから 3 年後の 1865 年に出版された [4] 。オックスフォード大学の学長でキリスト教会の学部長): Lorina Charlotte Liddell (13 歳、1849 年生まれ) (本の序文の「プリマ」); アリス・プレザンス・リデル (10 歳、1852 年生まれ) (序文の「Secunda」)。Edith Mary Liddell (8 歳、1853 年生まれ) (序文の「Tertia」)。[5]\n\n旅はオックスフォード近くのフォリー ブリッジから始まり、5 マイル離れたゴッドストウの村で終わりました。旅行中、ドジソン牧師は女の子たちに、冒険を探しに行くアリスという名前の退屈な少女をフィーチャーした話をしました。女の子たちはそれが大好きで、アリス・リデルはドジソンにそれを書き留めるように頼みました。翌日、彼は物語の原稿を書き始めましたが、その最初のバージョンはもはや存在しません。少女たちとドジソンは、アリスの物語の筋書きを詳しく説明した1か月後、別のボートトリップに参加し、11月に本格的に原稿に取り組み始めました。[6]\n\n最後の仕上げとして、彼は本に登場する動物の自然史を調査し、その後、他の子供たち、特にジョージ マクドナルドの子供たちに本を調べてもらいました。彼は自分のイラストを追加しましたが、ジョン・テニエルにアプローチして出版用の本のイラストを描き、この話が子供たちに好評だったと伝えました。[6]\n\n1864 年 11 月 26 日、彼はアリスに「アリスの地底の冒険」の手書きの原稿を渡しました。ドジソン自身によるイラストで、「夏の日の記憶にある親愛なる子供へのクリスマスプレゼント」として捧げます. [7] マーティン・ガードナーを含む何人かは、ドジソンが手書きでより精巧なコピーを書いたときに、後にドジソンによって破棄された以前のバージョンがあったと推測している. . '

これを解析可能なプレーンテキストにしたい。エラーが発生します:

UnicodeEncodeError: 'ascii' コーデックは位置 1295 の文字 u'\u2014' をエンコードできません: 序数が範囲内にありません(128)

私がparagraph.decode("unicode_escape")またはparagraph."string_escape")を試したとき。

4

1 に答える 1

0

これはすでに Unicode であるためu、文字列の先頭に があります。decodeバイト文字列のみです。\u2014は の Unicode 文字であり、文字列EM DASHの を表示してrepr()います。 コンソールがサポートしている場合printは、文字列が表示される可能性があります。EM DASH印刷では、Unicode 文字列がコンソール エンコーディングで自動的にエンコードされます。ここでは、Windows コンソールを em ダッシュをサポートするコード ページに切り替えました (デフォルトの cp437 はサポートしていません)。

C:>chcp 1252
Active code page: 1252

C:\>python
Python 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> x=u"examined by other children\u2014particularly the children of George MacDonald."
>>> print x
examined by other children—particularly the children of George MacDonald.
于 2013-06-14T00:59:30.150 に答える