day10-文字エンコーディング

、より理論的なこのセクションでは、よく理解して取ることを理解していない場合、我々は結論をメモを取る必要があります

(だから、基本的に私は何かを書いていません)

ASCIIテーブル:
1は、英語のみの文字列サポート
2、英語の文字列に対応する8ビットのバイナリ数

GBK表:
1、英語の文字をサポートし、漢字
2、
英語の文字列に対応する8ビット(8ビット= 1Bytes)進数
16ビット(16ビット= 2バイト)に対応する二進数列中国語


ユニコード(ユニファイドメモリ使用ユニコード):
1、
互換性のある文字の国
と国の文字が対応関係有する
2、
中国語文字列に16ビット(16ビット= 2バイト)進数の対応する
個々の希少の4バイトが使用され、8バイト


ユニコード表:
メモリ
人間文字Unicode形式のデジタル--------- ----------
| |
| |
|
ハード|
|
| |
| |
GBK形式のバイナリシフトJIS形式バイナリ

古い文字エンコーディングをUnicodeに変換することができますが、HuzhuanをUNICODEすることはできません

 

UTF-8:
英語- > 1Bytes
文字- > 3バイト

 

結論:
1、ユニコードを使用して記憶保持、我々は形式でディスクにそれを変更することができ
、英語+中国語の文字- 「unicode-」GBK
英語+日本語- 「unicode-」シフトJIS
パレ文字「-unicode-」UTF-8

2、文字化けテキストファイルへのアクセスの問題が
混乱に存在します。解決策は、符号化形式は、紙のフォーマット文字列をサポートするように設定する必要があります
混乱を取るために:ソリューションファイルは、ハードディスク、メモリなどのエンコード形式は何か、である、それはする必要がありますどのような形式をコードするメモリに読み込まれます

 

3、Pythonインタプリタは、ファイルのエンコーディングデフォルトの読み込み
のpython3のデフォルト:UTFを8
python2デフォルト:ASCII

デフォルトのエンコードを変更するために、ファイルのヘッダーを指定します。
最初の行PYのファイル書き込み:
#coding:GBK

図4に示すように、二相がPythonプログラムを実行する前に、コアルールを文字化けされていないことを確認する:
指定ファイルヘッダ
元々ハードディスクに格納されている形式のファイルをエンコードするには、使用される:#コーディング


。5、
直接預金ののpython3のデフォルト・タイプにSTR Unicode形式に、どのような場合に文字化けすることがない
歪みのpython2 STR型がないことを確認
X = U「に」


6
python2列インタープリタは、2つのタイプがあります:STR、ユニコード
#STR型を
X =可変メモリ空間に格納されたヘッダ符号化フォーマット値によって指定された#文字列値「オン」
のUnicodeタイプ#
X = U ' 「#は、強制的にUnicodeとして保存します

おすすめ

転載: www.cnblogs.com/xiao-zang/p/12481967.html