python str object と unicode オブジェクト string の 2 つのタイプがあり、どちらも文字のバイトエンコーディングを保存できますが、これらは異なるタイプです。これは非常に重要であり、エンコードとデコードがある理由です。 Python における
encode と decode の意味は、
encode
unicode -------------------------> と表現できます。
unicode <--------------------------------str
decode
いくつかの一般的なメソッド:
str_string.decode('codec')はstr_stringをunicode_stringに変換するもの、codecはソースstr_stringのエンコード方法です
unicode_string.encode('codec')はunicode_stringをstr_stringに変換するもの、codecはソースのエンコード方法ですtarget str_string
str_string.decode( 'from_codec').encode('to_codec') は、異なるエンコーディングの str_string 間の変換を実現できます
例:
>>> t='万里の長城'
> >> t
' xb3xa4xb3xc7'
>>> t.decode('gb2312').encode('utf-8')
'xe9x95xbfxe5x9fx8e'
str_string.encode('codec ')これは、最初にシステムのデフォルト コーデックを呼び出して str_string を unicode_string に変換し、次にエンコード パラメーター コーデックを使用して最終的な 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')
以上がPythonの文字コード変換方法を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。