ホームページ > バックエンド開発 > Python チュートリアル > Python 文字エンコード変換の秘密

Python 文字エンコード変換の秘密

高洛峰
リリース: 2016-10-19 11:41:36
オリジナル
1494 人が閲覧しました

Python には str オブジェクトと unicode オブジェクトという 2 つのタイプの文字列があり、どちらも文字のバイトエンコーディングを保存できますが、これらは異なるタイプです。これは非常に重要であり、エンコードとデコードがある理由です。 Python における

encode と decode の意味は、

encode

unicode -------------------------> str

unicode と表現できます。

デコード

のいくつかの一般的なメソッド:

str_string.decode('codec') はdecode str_string unicode_string に変換します。コーデックはソース str_string のエンコード方式です

unicode_string.encode('codec') は、unicode_string を str_string に変換します。コーデックはターゲット str_string のエンコード方式です

str_string.decode('from_codec' ).encode('to_codec ') は、異なるエンコーディングの str_string 間の変換を実現できます

例:

>>> t='Great Wall'

>>> t

'xb3xa4xb3xc7'

>>> t。 decode('gb2312') .encode('utf-8')

'xe9x95xbfxe5x9fx8e'

str_string.encode('codec') は、まずシステムのデフォルト コーデックを呼び出して str_string を unicode_string に変換し、次に encode パラメーター コーデックを使用して最終的な str_string に変換します。str_string.decode('sys_codec').encode('codec') と同等です。

unicode_string.decode('codec') は基本的に意味がありません。Unicode は Python で 1 つの Unicode エンコーディング、UTF16 または UTF32 (Python のコンパイル時にすでに決定されています) のみを使用し、エンコーディング変換の必要はありません。

注: デフォルトのコーデックは、サイトパッケージの下の sitecustomize.py ファイルで指定されます (例:

import sys

sys.setdefaultencoding('utf-8')


)
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート