文字エンコーディングの開発
ASCII 255は英語の文字と数字、特殊文字のみをサポートします1バイト
Unicode中国語と英語の統一2バイト
utf-8中国語>3バイト英語>1バイト
バイト型
テキストデータは常にUnicodeで表されますstr型、バイナリデータはbytes型で表されます
バイナリデータは動画や音声ファイル、ソケットネットワークの送信データなどに使用されます
文字列をバイナリに変換します str.encode("encoding=utf-8")
バイナリを文字列 b'xe2x82'.decode("encoding=utf-8") に変換します
ファイル ハンドルはファイル オブジェクトのメモリ アドレスです
文字エンコーディングとトランスコーディング
中国語は ASCII コード テーブルに格納できません、これは Windows のデフォルトです。システムの文字エンコーディングは GBK です。
Unicode 文字エンコーディングは世界中のすべての文字を保存できますが、すべての文字は 2 バイトを占有します。2M
英語のファイルは 4M のストレージを占有する必要があることがわかりました。 Unicode 使用後のスペース
utf -8 文字列を gbk 文字に変換します
2 つのコード化された文字列の変換は、最初に Unicode エンコードに変換して行う必要があります
Unicode (Unicode、Universal Code、Unicode) は、コンピューターで使用されるコードです 文字エンコーディング。 Unicode は、従来の文字エンコーディング スキームの制限を解決するために作成され、各言語の各文字に統一された独自のバイナリ エンコーディングを設定します。文字化けが発生する状況は基本的に 2 つあります:
1、文字エンコーディングがない
2。文字エンコーディングに矛盾があります。このプログラムを作成するときに他の人が指定した文字セットが、Python の 2.x バージョンで間違った位置にあります。現時点では、デフォルトのエンコーディングは ASCII コードです
Python3 のデフォルトは Unicode エンコーディングです
Python2 のデフォルトのエンコーディングは GBK に転送する場合、転送サイトを作成するために Unicode が必要です。
str = "Hello" //この文字列は utf-8 でエンコードされますnew_str=str.decode('utf-8') //str の元のエンコード形式を decode 関数に渡してトランスコードしますinto Unicode エンコード
ret = new_str.encode('GBK') //Unicode エンコードを GBK エンコード文字列に変換します
str= u"Hello" 文字列が次のように設定されていることを示すために、文字列の前に u 文字を追加します。 Unicode エンコード
Encoding
Python インタープリターが .py ファイルにコードを読み込むときに、内容をエンコードします (デフォルトは ascill)。そのため、エンコード タイプが指定されていない場合、
中国語がある場合はエラーになります。報告。
Pythonの動作プロセス
Pythonはコードをメモリに読み込みます 2. 字句解析と構文解析 3. コンパイラに入れます ---》バイトコード生成 4. バイトコード実行 ---》マシンコード生成 CPU実行
の値変数
文字列は変更できません。変更したい場合は後で予約する必要があるため、変更はサポートされていません。
文字列の特性を変更したら、再作成します以上がPythonの文字エンコーディングファイル作成方法の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。