ディレクトリ
python2.xバージョン/バイト/ユニコード差1. STR
python3.xバージョン/バイト/ユニコード差の2 STR
1.stringは、符号化されたバイトを符号化するために変換しました
2.bytesは、デコードされた文字列をデコードするように変換しました
I.はじめに
説明 STR / バイト の前に/ Unicodeの違いは、我々が最初に参照してください、バイトと文字の違いを理解する必要があります:ByteArrayの/バイト/文字列の違い バイトと文字の明確な説明では、最も重要なことは理解することです。
筋力文字のポスターには、例えば、以下のとおりです。テキストは、操作のために保存しました。
バイトは、例えば、参照するコンピュータのバイトである:バイナリデータをコンピュータに送信または保存されました。
二つの.str /バイト/ Unicodeの違い
python2.xバージョン/バイト/ユニコード差1. STR
バイトとSTRのpython2.xバージョンで同等であり、価値が注目:ユニコードと等価とバイト、チャート下記参照
s1 = u"Hello, World!"
s2 = "Hello, World!"
print(type(s1))
print(type(s2))
出力:
<type 'unicode'>
<type 'str'>
python3.xバージョン/バイト/ユニコード差の2 STR
ユニコードSTRとpython3.xバージョンに等価であり、注目に値する:Unicodeを使用したバイトは等価ではない以下の図に詳述されるように、
s1 = u"Hello, World!"
s2 = "Hello, World!"
print(type(s1))
print(type(s2))
出力:
<class 'str'>
<class 'str'>
スリー.stringと変換バイト
1.stringは、符号化されたバイトを符号化するために変換しました
# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:何以解忧
@Blog(个人博客地址): shuopython.com
@WeChat Official Account(微信公众号):猿说python
@Github:www.github.com
@File:python_bytes_string_4.py
@Time:2020/3/4 10:25
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
"""
s = "shuopython.com"
#将字符串转换为字节对象
b2 = bytes(s,encoding='utf8') #必须制定编码格式
# print(b2)
#方法一:字符串encode将获得一个bytes对象
b3 = str.encode(s)
#方法二:字符串encode将获得一个bytes对象
b4 = s.encode()
print(b3)
print(type(b3))
print(b4)
print(type(b4))
出力:
b'shuopython.com'
<class 'bytes'>
b'shuopython.com'
<class 'bytes'>
2.bytesは、デコードされた文字列をデコードするように変換しました
# 字节对象b2
# 如果含有中文,必须制定编码格式,否则报错TypeError: string argument without an encoding
b2 = bytes("猿说python", encoding='utf8')
# 方法二:bytes对象decode将获得一个字符串
s2 = bytes.decode(b2)
# 方法二:bytes对象decode将获得一个字符串
s3 = b2.decode()
print(s2)
print(s3)
出力:
猿说python
猿说python
あなたも好きなことがあります。
再現指定してください:猿の発言のPython » PythonのPythonのSTR /バイト/ Unicodeは、違いを説明
技術交流、ビジネス協力ください接触ブロガー
スキャンコードまたは検索:猿と言うパイソン
猿と言うのpython
特許マイクロチャネル社会的関心をスイープ