1. is 和 == 区别      id()函数      == 判断两边的值      is 判断内存地址例
 s = "alex 是 大 xx"# abc = id(s)   # 得到内存地址# print(abc)

# lst = ["大阳哥", "佳琪哥", "小花生", "燃哥"]# print(id(lst))  # 就是一个内存地址. 毫无意义

# lst = ["周杰伦", "燃哥"]# lst1 = ["周杰伦", "燃哥"]# print(id(lst))# print(id(lst1))

# s = "燃哥"# s1 = "燃哥"# # 小数据池. 会对字符串进行缓存, 为了节省内存# print(id(s))# print(id(s1))

# tu = ("燃哥", "周杰伦")# tu1 = ("燃哥", "周杰伦")# print(id(tu), id(tu1))

# dic = {"a": "b", "c":"d"}# dic1 = {"a": "b", "c":"d"}# print(id(dic), id(dic1))

# a = 10# b = 10# print(id(a), id(b))

# 布尔也有,# a = True# b = True# print(id(a), id(b))

# -5# a = 257# b = 257# print(id(a), id(b))

# a = "小威"# b = "小威"# print(id(a), id(b))

# 1. id() 查看内存地址# 2. str 有小数据池的

# == is id# == 判断. 左右两端是否相等和一致, 比较的是内容# is 判断. 判断的是内存地址  id()的值来判断    内存地址

# lst = ["马化腾", "小威"]# lst2 = ["马化腾", "小威"]# print(lst == lst2)  # True# print(lst is lst2)  # False

# s = "alex"# print("1111111111")# print("1111111111")# print("1111111111")# print("1111111111")# print("1111111111")# print("1111111111")# print("1111111111")# print("1111111111")# print("1111111111")## s2 = "alex"# print(s == s2) # True# print(s is s2)  # True. 小数据池

# s1 = "@akljflkasdjklfjkasdlfjklsdajfklsdajfklasdjkflasdjklfjsdaklfjsdakljfklasdjfklsdajfklsdajfklsdajklfsjadklfjsadklfjasdkljfklsdjfklsdjfklsdjfklsdjfklasdjfklasdjklfjasdklakljflkasdjklfjkasdlfjklsdajfklsdajfklasdjkflasdjklfjsdaklfjsdakljfklasdjfklsdajfklsdajfklsdajklfsjadklfjsadklfjasdkljfklsdjfklsdjfklsdjfklsdjfklasdjfklasdjklfjasdkl"# s2 = "@akljflkasdjklfjkasdlfjklsdajfklsdajfklasdjkflasdjklfjsdaklfjsdakljfklasdjfklsdajfklsdajfklsdajklfsjadklfjsadklfjasdkljfklsdjfklsdjfklsdjfklsdjfklasdjfklasdjklfjasdklakljflkasdjklfjkasdlfjklsdajfklsdajfklasdjkflasdjklfjsdaklfjsdakljfklasdjfklsdajfklsdajfklsdajklfsjadklfjsadklfjasdkljfklsdjfklsdjfklsdjfklsdjfklasdjfklasdjklfjasdkl"# print(id(s1), id(s2))## s = "abc中def"# print(s.title())

回顾编码:    1. ASCII: 英文, 特殊字符, 数字, 8bit, 1byte    2. GBK: 中文 16bit, 2byte. 兼容ASCII    3. unicode: 万国码, 32bit 4byte. 兼容ASCII    4. UTF-8: 长度可变的unicode. 英文:8bit, 欧洲:16bit, 中文:24bit 3byte

    python2 只能用ASCII    python3 有unicode, 默认的编码就是unicode    内存里用的是unicode. 硬盘和网络传输用的是utf-8或者GBK

2. encode()  编码. 获取到的是编码之后的结果. bytes3. decode()  解码. 把bytes编程我们熟悉的字符串例
# s = "alex马"# 想要存储.必须进行编码

# encode() 编码之后的内容是bytes类型的数据

# 30个字节 10个字. 每个字3个字节# b'\xe6\x9d\x8e\xe5\x98\x89\xe8\xaf\x9a\xe7\x9a\x84\xe5\x84\xbf\xe5\xad\x90\xe8\xa2\xab\xe7\xbb\x91\xe6\x9e\xb6\xe4\xba\x86'# bs = s.encode("UTF-8")   # 把字符串编码成UTF-8的形式# print(bs)

# 英文:编码之后的结果是英文本身# 中文:编码之后UTF-8 下. 一个中文3个字节

# s = "饿了么"# bs = s.encode("GBK")    # b'\xb6\xf6\xc1\xcb\xc3\xb4' GBK 一个中文:2个字节# print(bs)

# s = "中"# print(s.encode("utf-8"))# print(s.encode("GBK"))

# decode()解码

# bs = b'\xb6\xf6\xc1\xcb\xc3\xb4'    # 从别人那里读到的   GBK## # 编程人认识的东西# s = bs.decode("GBK")    # 解码之后是字符串, 用什么编码就用什么解码# print(s)

# GBK => utf-8bs = b'\xb6\xf6\xc1\xcb\xc3\xb4'# 先解码成unicode字符串s = bs.decode("GBK")# 在把字符串编码成UTF-8bss = s.encode("UTF-8")print(bss)
												

is 和 == 区别,id() ,回顾编码,encode(),decode()的更多相关文章

  1. python编码encode decode(解惑)

    关于python 字符串编码一直没有搞清楚,今天总结了一下. Python 字符串类型 Python有两种字符串类型:str 与 unicode. 字符串实例 # -*- coding: utf-8 ...

  2. 太白老师 day06 编码 encode decode

    ASCII : 字母, 数字, 特殊字符 字符:1个字节 数字: 1个字节 Unicode: 万国码, 包含所有文字 创建之初 字符: 2个字节 中文: 2个字节 升级: 字符: 4个字节 中文 : ...

  3. 【学习笔记】--- 老男孩学Python,day7 python中is 和 == 的区别 encode decode

    is比较的是id(内存地址)是不是一样,==比较的是值是不是一样 Python中,万物皆对象!万物皆对象!万物皆对象!(很重要,重复3遍) 每个对象包含3个属性,id,type,value id就是对 ...

  4. python编码encode和decode

    计算机里面,编码方法有很多种,英文的一般用ascii,而中文有unicode,utf-8,gbk,utf-16等等. unicode是 utf-8,gbk,utf-16这些的父编码,这些子编码都能转换 ...

  5. pyhton字符编码问题--decode和encode方法

    1  decode和encode方法 字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成uni ...

  6. python编码问题之\"encode\"&\"decode\"

    python encode decode 编码 decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode('gb2312'),表示将gb2312编码的字符串str1转换 ...

  7. python3编码(encode,decode)

    python3默认编码为unicode,由str类型进行表示.二进制数据使用byte类型表示. 字符串通过编码转换成字节码,字节码通过解码成为字符串 encode:str --> bytes d ...

  8. Java如何进行Base64的编码(Encode)与解码(Decode)?

    https://blog.csdn.net/zhou_kapenter/article/details/62890262 *************************************** ...

  9. python编码问题 decode与encode

    参考: http://www.jb51.net/article/17560.htm 如果要在python2的py文件里面写中文,则必须要添加一行声明文件编码的注释,否则python2会默认使用ASCI ...

随机推荐

  1. pyspark数据准备

    鸢尾花数据集 5.1,3.5,1.4,0.2,Iris-setosa 4.9,3.0,1.4,0.2,Iris-setosa 4.7,3.2,1.3,0.2,Iris-setosa 4.6,3.1,1 ...

  2. java-webService(调用wsdl接口)

    使用Axis或XFire实现WebService: Axis2是Apache下的一个重量级WebService框架,准确说它是一个Web Services / SOAP / WSDL 的引擎,是Web ...

  3. OpenCV相机标定坐标系详解

    在OpenCV中,可以使用calibrateCamera函数,通过多个视角的2D/3D对应,求解出该相机的内参数和每一个视角的外参数. 使用C++接口时的输入参数如下: objectPoints - ...

  4. subversion与TortoiseSVN的使用

    Subversion是一个自由开源的版本控制系统.在Subversion管理下,文件和目录可以超越时空.Subversion将文件存放在中心版本库里,这个版本库很像一个普通的文件服务器,不同的是,它可 ...

  5. RedHat6.5如何被windows系统远程桌面连接

    一.redhat 6.5远程桌面配置 服务器端: 1.设置允许其它人查看您的远程桌面 在“系统”-“首选项”-“远程桌面”-在“允许其它人查看您的远程桌面”前打勾:在“允许其它用户控制您的桌面”打勾 ...

  6. 小米笔记本装MAC(黑苹果),外接USB蓝牙,禁止笔记本自带的蓝牙方法

    https://blog.daliansky.net/ 解决插入耳机没有声音问题,每次开机需要重新插拔一次:https://github.com/daliansky/XiaoMi-Pro/blob/m ...

  7. mac 蓝牙开启调试模式

    mac 蓝牙开启调试模式 按住shift+option+鼠标右键点右上角的蓝牙图标

  8. MySQL 单条记录长度最大65535

    今天设计表结构,加了几个字段,结果报错了 Ligne trop grande. Le taille maximale d'une ligne, sauf les BLOBs, est 65535... ...

  9. Fiddler的学习之路

    Fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一 . 它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据.设置断点.调试 ...

  10. pytest.2.运行多个文件

    From: http://www.testclass.net/pytest/multiple_tests/ 背景 在现实的测试活动中,我们经常会定义多个用例文件,用来实现业务逻辑或其他逻辑上用例的物理 ...