1.基础数据类型汇总补充

(1)小数据池:

      为了节省空间,数字和字符串有,其他的没有【了解】

      数字:-5---256之间的数字共用一个内存地址

#(1)i1 = i2  id(i1) == id(i2)
i1 = 6
i2 = 6
print(id(i1),id(i2)) #id(i1)=1436311936 id(i2)=1436311936
#(2)i1 = i2 id(i1) != id(i2)
i3 = 300
i4 = 300
print(id(i1),id(i2)) #id(i1)=1683866035312,id(i2)=1683866623792

    字符串:

       不能含有特殊字符,aa和aa地址相同,aa+和aa+地址不同

       单个字符*数字(<=20)时同一个地址,多于一个字符/大于等于21则不是同一个地址

(2)列表 list   

(3)str和bytes区别

s = 'alex's1 = b'alex'print(s,type(s))    #alex <class 'str'>print(s1,type(s1))  #b'alex' <class 'bytes'>

s = '中国'
print(s,type(s))
s1 = b'中国'print(s1,type(s1)) #SyntaxError: bytes can only contain ASCII literal characters.

2. 编码

  (1)ascii---python2

          A:00000010 8位 一个字节

  (2)unicode

              A:00000000 00000001 00000010 00000100 32位 四个字节

        中:00000000 00000001 00000010 00000110 32位 四个字节

  (3)utf-8---python3          

          A:00100000 8位 一个字节         

          中:00000001 00000010 00000110 24位 三个字节

  (4)gbk---终端           

          A:00000110 8位 一个字节
          中:00000010 00000110 16位 两个字节
    <1> 各个编码之间的二进制不能互相识别,会产生乱码。
    <2> 文件的储存和传输不能是Unicode(只能是utf-8,utf-16,gbk,gbk2312,ascii等)

  (5)Python3中的编码

          str进行存储和传输之前,需要先将str(Unicode)转换成bytes(utf-8/gbk),再进行传输

          str 在内存中是用Unicode编码的
          bytes 和str很相似,唯一区别是编码方式不同

    对于英文:
        str: 表现形式:s = 'alex'
        编码方式:010101010 Unicode
        bytes:表现形式:s = b'alex'
        编码方式:000101010 utf-8 gbk...
    对于英文:
        str: 表现形式:s = '中国'
        编码方式:010101010 Unicode
        bytes:表现形式:s = b'x\e91\e91\e01\e21\e31\e32'
        编码方式:000101010 utf-8

    encode:编码Unicode--->gbk/utf-8,如何将str--->bytes(可以设置编码方式)

# (1)英文
s1 = 'alex'
s11 = s1.encode('utf-8')
print(s11) #b'alex'
s11 = s1.encode('gbk')
print(s11) #b'alex' # (2)中文
s2 = '中国'
s22 = s2.encode('utf-8') #24位,3个字节,表示一个字符
print(s22) #b'\xe4\xb8\xad\xe5\x9b\xbd'
s22 = s2.encode('gbk') #16位,2个字节,表示一个字符
print(s22) #b'\xd6\xd0\xb9\xfa'

3.  =、==、is、id

  (1)=  : 赋值
  (2)==:比较-----值是否相等
  (3)is :比较-----内存地址
  (4)id : 内存地址

Python——基础数据类型(补充)的更多相关文章

  1. python基础数据类型补充

    python_day_7 一. 今日主要内容: 1. 补充基础数据类型的相关知识点 str. join() 把列表变成字符串 列表不能再循环的时候删除. 因为索引会跟着改变 字典也不能直接循环删除.把 ...

  2. Python基础数据类型补充及深浅拷贝

    本节主要内容:1. 基础数据类型补充2. set集合3. 深浅拷贝主要内容:一. 基础数据类型补充首先关于int和str在之前的学习中已经讲了80%以上了. 所以剩下的自己看一看就可以了.我们补充给一 ...

  3. python基础数据类型补充以及编码的进阶

    一.基本数据类型的补充循环列表改变列表大小的问题#请把列表中索引为基数的元素写出l1=[1,2,3,4,5,6]for i in l1: if i%2!=0: print(i)结果:135二:基本数据 ...

  4. python基础(9):基本数据类型四(set集合)、基础数据类型补充、深浅拷贝

    1. 基础数据类型补充 li = ["李嘉诚", "麻花藤", "⻩海峰", "刘嘉玲"] s = "_&qu ...

  5. python之数据类型补充、集合、深浅copy

    一.内容回顾 代码块: 一个函数,一个模块,一个类,一个文件,交互模式下,每一行就是一个代码块. is == id id()查询对象的内存地址 == 比较的是两边的数值. is 比较的是两边的内存地址 ...

  6. Python基础数据类型-列表(list)和元组(tuple)和集合(set)

    Python基础数据类型-列表(list)和元组(tuple)和集合(set) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的 ...

  7. python基础数据类型考试题

    Python基础数据类型考试题 考试时间:两个半小时                      满分100分(80分以上包含80分及格) 一,基础题. 1,简述变量命名规范(3分) 2,字节和位的关系 ...

  8. Python基础数据类型题

    Python基础数据类型 题考试时间:三个小时 满分100分(80分以上包含80分及格)1,简述变量命名规范(3分) 1.必须是字母,数字,下划线的任意组合. 2.不能是数字开头 3.不能是pytho ...

  9. Python基础数据类型之集合

    Python基础数据类型之集合 集合(set)是Python基本数据类型之一,它具有天生的去重能力,即集合中的元素不能重复.集合也是无序的,且集合中的元素必须是不可变类型. 一.如何创建一个集合 #1 ...

随机推荐

  1. linux下网卡配置vlan

      yum install vconfig -y  modprobe 8021qvconfig add eth0 900 ifconfig eth0.900 172.16.90.57/24 up    ...

  2. linux-shutdown命令说明

    showdown命令: -k  不是真正关闭电脑,只是警告. -h 关闭后暂停 -r 关闭后重新引导 -c 取消已经运行的关闭操作 -n 不通过init直接关闭 -f 快速重新引导 time 关闭的时 ...

  3. linux中的redis缓存服务器

    Linux中的Redis缓存服务器 一.Redis基础部分: 1.redis介绍与安装比mysql快10倍以上 *****************redis适用场合**************** 1 ...

  4. 十、dbms_shared_pool(提供了对共享池的一些过程和函数访问)

    1.概述 作用:提供了对共享池的一些过程和函数访问,它使用户可以显示共享池中的对象尺寸,绑定对象到共享池,清除绑定到共享池的对象.为了使用该包,必须运行dbmspool.sql脚本来建立该包. 2.包 ...

  5. 【WebGL】1.WebGL简介

    OpenGL和WebGL基本概念 OPEN GL:一个跨编程语言.跨平台的编程接口规格的专业的图形程序接口.它用于三维图像(二维的亦可),是一个功能强大,调用方便的底层图形库. WebGL:›一个3D ...

  6. sql密码修改

    首先,以window 认证登陆. 2 然后,在 安全性---->登录名---->sa.右击 选择属性.直接修改 星号密码即可. 3 然后 在右上角 文件--->链接对象资源管理器-- ...

  7. python编程(最简单的rpc代码)

    [ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 采用twisted可以编写最简单的rpc代码. server端代码如下, from twiste ...

  8. eclipse 生成发布的apk (signed zipalign过程)

    在发布apk到appstore过程中,上传的apk需要先signed(先生成keystore和key)并zipalign.可按照以下步骤来完成:1. 创建一个keystore和key(右键eclips ...

  9. Suffix(hash+lcp+二分)

    题目链接: Suffix Consider n given non-empty strings denoted by s1 , s2 , · · · , sn . Now for each of th ...

  10. Java从入门到精通全套教程免费分享

    这是我自己早前听课时整理的Java全套知识,适用于初学者,也可以适用于中级进阶的人,你们可以下载,我认为是比较系统全面的,可以抵得上市场上90%的学习资料.讨厌那些随便乱写的资料还有拿出来卖钱的人!在 ...