1,==

两个等号比较的是数值,is比较的是内存地址。print(id())查看的内存地址。

小数据池只存在于数字与字符串中,数字   是 -5^^256,是为了节省空间。

字符串1,如果含有特殊字符,不存在小数据池,单个字符串('a')*int   int>20不存在于小数据池

其他都不存在小数据池。

is 比较的是id 地址print(a is  b)

2,数据类型byte与str字符串的操作方法一样。

1,编码之间的二进制互不识别

2,存储和传输是010101。但不能是Unicode的二进制。

3,python3x中的str在内存中的编码是unicode,python3x中的字符串不能直接存储和传输。

4,

python3x 中的编码:
    python3x 中 str 在内存中的编码方式是unicode。python3x 中的str不能直接存储,和发送。
    bytes 他的编码方式是非unicode(utf-8,gbk,gb2012.....)。

对于英文:
        str: 表现形式:s = 'laonanhai'
              内部编码:unicode
        bytes:
              表现形式:s = b'laonanhai'
              内部编码:非unicode.
    对于中文:
        str: 表现形式: s = '中国'
              内部编码:unicode
        bytes:                  00000001
              表现形式:s1 = b'\xe4\xb8\xad\xe5\x9b\xbd'
              内部编码:非unicode.

5,是由 unicode编码成utf-8的byte类型。

s = '中国'
s1 = s.encode('utf-8')
print(s1)
#b'\xe4\xb8\xad\xe5\x9b\xbd'
由 unicode 编码成 gbk 的byte类型
s = 'alex'
s2 = s.encode('gbk')
print(s2)#b'alex'

由 utf-8 解码成unicode

s = 'alex'
s1 = s.encode('utf-8')
s2 = s.encode('gbk')
s3 = s1.decode('utf-8')#decode解码
print(s3)

由gbk 先转化成unicode 再变成utf-8

s = 'alex'
s1 = s.encode('gbk')
s2 = s1.decode('gbk').encode('utf-8')#由gbk 先转化成unicode 再变成utf-8
print(s2)#b'alex'

python 的基础 学习 第七天 is id 编码的补充的更多相关文章

  1. Python入门基础学习 三

    Python入门基础学习 三 数据类型 Python区分整型和浮点型依靠的是小数点,有小数点就是浮点型. e记法:e就是10的意思,是一种科学的计数法,15000=1.5e4 布尔类型是一种特殊的整形 ...

  2. Python入门基础学习 二

    Python入门基础学习 二 猜数字小游戏进阶版 修改建议: 猜错的时候程序可以给出提示,告诉用户猜测的数字偏大还是偏小: 没运行一次程序只能猜测一次,应该提供多次机会给用户猜测: 每次运行程序,答案 ...

  3. Python入门基础学习 一

    Python入门基础学习 一 Python下载及安装 下载地址:https://www.python.org/,选择最新的版本下载 稍等一会,安装完成. 简单语句 从idle启动Python:IDLE ...

  4. Python入门基础学习(文件与异常处理)

    Python基础学习笔记(七) 捕获异常的语法格式: 文件的基本操作: 打开文件 读.写文件 关闭文件 read方法 --读取文件: open函数的第一个参数是要打开的文件名(文件名区分大小写) 如果 ...

  5. Python入门基础学习(函数)

    Python基础学习笔记(三) 函数的概念: 所谓函数,就是把具有独立功能的代码块组织为一个小模块,在需要的时候调用 函数的使用包含两个步骤: 1.定义函数 --封装独立的功能 2.调用函数 --享受 ...

  6. python函数基础学习

    函数的定义与调用: def 函数名(参数1,参数2): ‘’’函数注释’’’ print(‘函数体’) return 返回值 定  义:def关键字开关,空格之后接函数名和圆括号,最后冒号结尾 def ...

  7. Python入门基础学习(时间模块,随机模块)

    Python基础学习笔记(六) time模块: 时间的三种表示方法: 1.格式化字符串 2.时间戳 用来表示和1970年的时间间隔,单位为s 3.元组 struct_time 9个元素 time的st ...

  8. Python入门基础学习(模块,包)

    Python基础学习笔记(五) 模块的概念:模块是python程序架构的一个核心概念 每个以拓展名py结尾的python源代码文件都是一个模块 模块名同样也是一个标识符,需要符合标识符的命名规则 在模 ...

  9. Python入门基础学习(面向对象)

    Python基础学习笔记(四) 面向对象的三个基本特征: 封装:把客观事物抽象并封装成对象,即将属性,方法和事件等集合在一个整体内 继承:允许使用现有类的功能并在无须重新改写原来的类情况下,对这些功能 ...

随机推荐

  1. [luogu1503][鬼子进村]

    题目链接 思路 将哪些村庄已经被摧毁了放到treap里.查询的时候如果当前村庄已经被毁了,那么就可以直接输出0.不然就输出这个村庄的后继-前驱-1.原因显然 代码 #include<cstdio ...

  2. Mysql 远程连接服务器

    #授权外部访问 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION; #清空mysql缓存 ...

  3. R语言:提取路径中的文件名字符串(basename函数)

    假设存在路径C:/coverage/Homo_sapiens.sort.add_exon1_coverage.txt,欲提取Homo_sapiens.sort.add_exon1_coverage.t ...

  4. c#中数组的总结

    Array数组: 基本定义:string[] Scences={"sky","star","sun"}  或者 int[] Scences= ...

  5. Luogu P3239 [HNOI2015]亚瑟王

    题目链接 \(Click\) \(Here\) 期望神题.最开始一直尝试推朴素一点的,逻辑上的\(DP\)式子,后来发现一直出锅,可能是我的式子没容斥对... 题解中给出的想法是这样的: 首先,如果直 ...

  6. Tomcat7 1000并发量配置以及配置优化

    首先,修改tomcat/conf/server.xml配置文件.     其次,修改tomcat/bin/catalina.bat配置文件为以下.     主要修改了maxThreads.accept ...

  7. 2.Diango学习

    ##创建应用 python manage.py startapp blog !!创建应用后要添加应用,名称不允许与模块名称相同 ##应用目录结构 ##文件介绍 1. 2. 3. 4. 5. 6. ## ...

  8. day13-(事务&mvc&反射补充)

    回顾: jsp: java服务器页面 jsp的脚本 jsp的注释 html注释 java注释 jsp注释 <%-- --%> jsp的指令 page:声明页面一些属性 重要的属性: imp ...

  9. springmvc上传图片《2》

    创建springboot项目 编写配置 server: port: 8082 spring: application: name: upload-service servlet: multipart: ...

  10. JMETER压力测试报错:JAVA.NET.BINDEXCEPTION: ADDRESS ALREADY IN USE: CONNECT

    最近在实现接口压力测试的时候遇到这样的一个问题 当线程数持续上升到一个点的时候,运行脚本的时候有很多报错,如图: java.net.BindException: Address already in ...