python's sixth day for me

---恢复内容开始---

#  ==  比较的是数值

a = 1000
b = 1000
print(a == b)  #True 

#  is 比较的是内存地址

>>> a = 1000
>>> b = 1000
>>> print(a ==b)
True
>>> print(a is b)
False

#  查看内存地址

>>> a = 1000
>>> b = 1000
>>> print(id(a))
2388819008784
>>> print(id(b))
2388818153424
>>>

#  小数据池 :

#  数字 :-5~256 节省空间

#  字符串 :

       1. 如果含有特殊字符(不包括下划线 ‘ _’),不存在小数据池。

       2. str(单个)* int  int > 20 不存在小数据池。

#  其他都不存在小数据池。

#  编码

    python3x 中的编码:

        python3x 中的 str 在内存中的编码方式是Unicode 。python3x 中的 str 不能直接存储和发送。

      bytes  的编码方式是非Unicode (utf-8, gbk,...)

 

     对于英文:

        str :       表现形式: s = 'hello,world'

           内部编码:unicode

      bytes :  表现形式:s = b'hello,world'

           内部编码: 非unicode

     对于中文:

        str:   表现形式: s = '中国'

           内部编码:Unicode

      bytes:   表现形式:s1 = b'\xe4\xb8\xad\xe5\x9b\xbd'

            内部编码:非Unicode

 

s = '中国'
s1 = s.encode('utf-8')
print(s1)       #输出为  b'\xe4\xb8\xad\xe5\x9b\xbd'

 

posted @ 2018-03-23 20:39  Qingqiu_Gu  阅读(128)  评论(0编辑  收藏  举报