zoukankan      html  css  js  c++  java
  • 20180709

    一.is与 == 的区别

    ⑴ id    内存地址

    例如:

      s = "alex 是 xxx"

      abc = id(s)

      print(abc)              ==> 得到内存地址

    例如:lst = ["周杰伦","AB"]

      lst1=["周杰伦","AB"]                              ==> 字典.列表.元组都没有小数据池

      print(id(lst))                            ==>这两个打印出来的地址不一样

      print(id(lst1))

    例如:s = 'AB'

      s1 = 'AB'                            整数(int).字符串(str).布尔(bool)都有小数据池,   小数据池会对字符串进行缓存,为了节省内存

      print(s)                         ==>内存地址一样

      print(s1)

    ⑵ ==    判断左右两端是否相等和一致        比较的是内容

    ⑶is判断    判断的内存地址    id()的值来判断

    例如:s = "alex"

      s1="alex"

      print(s == s1)                ==>  True

      print(s is s1)                 ==>True     (小数据池)

    二.内存里用的是unicode  硬盘和网络传输用的是UTF-8和GBK

    ⑴encode

    例如:s = "李嘉诚的儿子"                              想要存储,必须进行编码

      bs = s.encode("UTF-8")                       #encode    编码之后的内容是bytes类型的数据

      #把字符串编码成UTF-8形式

      #英文:编码之后的结果是英文本身

      #中文:编码之后   UTF-8    一个中文   3个字节

    例如:s = "饿了吗"

      bs = s.encode("GBK")                     ==>GBK:一个中文,2个字节

    ⑵decode     解码(用什么编码就用什么解码)             把bytes编程我们熟悉的字符串

    例如:bs = b'xb6xf6xc1xc6xc3xb4'

      bs.decode("GBK")                      ==>解码之后是字符串

    例如:GBK ==>UTF-8

      bs = b'xb6xf6xc1xc6xc3xb4'

      #先解码成unicode

      s = bs.decode('GBK')

      #把字符串编码成UTF-8

      bss = s.encode("UTF-8")

      print(bss)

  • 相关阅读:
    【转帖】asp.net mvc与webform区别
    [学习jquery]深入了解jquery(1)jquery对象
    windows ce 4.2/5.0/6.0/windows mobile设备直接连接PC端的SQLserver
    dotNet dispose 和 close的区别
    简易快速理解 ERP
    互联网盈利模式77种创新 [转]
    软件开发的基础知识[1]
    什么是 SHTML
    ASP.NET 2.0:弃用 DataGrid 吧,有新的网格控件了![msdn]
    主页制作五十式[好帖就要转]
  • 原文地址:https://www.cnblogs.com/lhy979/p/9284250.html
Copyright © 2011-2022 走看看