python3最も重要な新機能は、おそらくテキストとバイナリデータは明確な区別がなされます。バイトで表現STR型のバイナリデータ型で表現テキスト常にUnicode、。STRのpython3は、二つの間の区別で特に明らかである、任意のバイトと暗黙方法を混在させません。あなたはバイトがバッグ検索文字列(あるいはその逆)にすることはできません、文字列とバイトのパケットを連結することはできません、また文字列は、関数のパラメータのバイトのパケット(およびその逆)に渡すことができます。これは良いことです。
、文字列のバイトタイプは、処理されたバイトの単位として扱われます。
データのバイトの偶数内蔵型配列は、方法と同一の基本的な文字列データ型オブジェクト不変とすべての操作で使用されています。
唯一のオブジェクトがオブジェクトを表現するように決定エンコードされたフォーマットをデコードすることにより(例えば、終了文字であるかのように)最終的に、バイトの所望のバイナリシーケンスの記録対象を記録する責任があるバイト。中のpython3は、通常、その上のファイルとバイナリイメージとを保存、ネットワークデータ伝送のために使用されるバイト。例バイト)(バイトを呼び出すことによって生成することができ、xxxxxは「単xの形で複数のストリングに進エスケープ(あるb'xxxxx「」の形での値である:\x12
\ xは小文字であります同一のバイトを16進数(0〜255)の8進数を表し、それぞれが16進数エスケープ文字、2桁の16進数12)配列文字列の異なる符号化バイトは、オブジェクトを生成した場合、それは別の値を形成します。
いずれの場合も、文字列とバイトのパケット間の境界は避けられない、次の図は、非常に重要であり、心に留めておくようにしてください:
B = B「」#空のバイトの作成
B =バイト()#を、空のバイトの作成
= b'hello B「を直接タイプを指定#ハローあるバイト
B =バイト(」string「は、エンコーディング=」 コーディングタイプを' )内蔵のバイト#方法を使用して、指定された符号化されたバイトに文字列を変換する
バイトエンコード方式にエンコード#文字列、デフォルトのUTF-8タイプ用いB = str.encode(「符号化タイプ」)
bytes.decode(「コーディングをタイプ「):文字列、UTF-8デフォルト復号にバイトを復号するオブジェクト。
バイトのために、限り、我々はのpython3、およびそれと文字列型との相互変換、その他の基本的なコピーの文字列を使用する必要がいくつかのケースでは知っています。
シンプルイージーモード:
string = b'xxxxxx'.decode()
直接バイトにデフォルトのコーデックのUTF-8文字列に
b = string.encode()
直接バイトのデフォルトのUTF-8エンコードされた文字列へ
なぜコンピュータのメモリアドレスと16進?
なぜ進
図1は、コンピュータのハードウェアは0101バイナリ、2の16進数の正確複数、簡単コマンド又はデータを表明することにあります。変換時間は16進数トップ4進数、即ちバイト(8バイナリは2進数を使用することができる)とすることができるので、短い六角
図2に示すように、使用するASCII文字セットの最初の規定は、他のより便利であることにかかわらず、読み取りまたはバイナリを格納する、2進と8ビットを直接発現させることができ、8ビット(後膨張が、ベースユニットまたは8ビット)であり、
3台のコンピュータ進データ交換にも優れて表示されたときにCPUのコンピューティングはそのため、開発中のよう16,32,64で、ASCII文字セットに準拠している
、我々はすべて見た標準化され、CPU、メモリ、ハードディスクドライブのため、4進数を用いて計算
ヘクスを用いる場合
、データバイトの交換の必要性は、バイトプロセスを解析バイトが0xFF、2バイトの16進数のことが可能である場合、図1に示すように、ネットワークプログラミングを発現すること。進データの伝送を介して見ることができるネットワークを取り込みます。
図2に示すように、データが格納されている、0101ハードウェアに格納され、発現系のストレージはバイト方法であります
図3に示すように、例えば、いくつかの一般的な値は、定義します。私たちは、多くの場合、色の表現を使用してHTMLを、4ビットの色情報を16進数百万の中で発現させることができる、進数で使用されています。