一 . 小数据池

# 小数据池针对的是: int, str, bool
在py文件中几乎所有的字符串都会缓存. # id() 查看变量的内存地址
s = 'attila'
print(id(s))

二 .is 和 ==

# is和==的区别
is 比较的是内存地址
== 比较的是内容
当两个变量指向同一个对象的时候. is是True, ==也是True

三 .再谈编码

1. ascii. 有: 数字, 字母, 特殊字符. 8bit 1byte 128 最前面是0
2. gbk. 包含: ascii, 中文(主要), 日文, 韩文, 繁体文字. 16bit, 2byte.
3. unicode. 包含gbk,ascii,big5... 32bit, 4byte
4. utf-8. 可变长度的unicode.
1. 英文: 8bit,1byte
2. 欧洲文字: 16bit 2byte
3. 中文: 24bit 3byte
不同的编码之间不能随意转换. 中国人gbk和德国人utf-8骂 想要沟通必须通过英文(unicode)(媒介) 在python3中. 默认的编码是unicode,我们的字符串就是unicode
在python2中. 默认的编码是ASCII. Cpython.c语言的默认编码是ASCII unicode弊端:在存储和传输的时候. 是很浪费的
在存储和传输的时候不能直接使用unicode. 必须要对字符串进行编码. 编码成bytes类型
bytes: 字节形式的字符串

  1. encode(编码格式) 编码
  2. decode(编码格式) 解码

s = '床前明月光'
bs = s.encode('utf-8')
print(bs) # b'\xe5\xba\x8a\xe5\x89\x8d\xe6\x98\x8e\xe6\x9c\x88\xe5\x85\x89' s1 = b'\xe5\xba\x8a\xe5\x89\x8d\xe6\x98\x8e\xe6\x9c\x88\xe5\x85\x89'
bs1 = s1.decode('utf-8')
print(bs1) # 床前明月光

最新文章

  1. [dpdk] 熟悉SDK与初步使用 (三)(IP Fragmentation源码分析)
  2. JS产生随机数
  3. 大素数测试 求因子 poj 1811
  4. September 2nd 2016 Week 36th Friday
  5. C#函数式程序设计之代码即数据
  6. self进行weak化
  7. 【和我一起学python吧】Python安装、配置图文详解
  8. Head First 设计模式系列之二----备忘录模式(java版)
  9. Android LayoutInflater.inflate使用上的问题解惑
  10. PSAM读卡芯片TDA8007BHL开发
  11. [转载]Winform中Control的Invoke与BeginInvoke方法
  12. XML 入门 - XML 系统教程(1)
  13. iOS app 逆向过程(持续更新完善)
  14. combobox数据获取及使用总结
  15. DLL导出全局变量在多个DLL中调用
  16. Linux内核异常处理体系结构详解(一)【转】
  17. Java 项目中一种简单的动态修改配置即时生效的方式 WatchService
  18. 干掉safedog命令
  19. ActiveMQ:使用Python访问ActiveMQ
  20. HTML5 template元素

热门文章

  1. 前端开发 - Emmet使用手册
  2. android studio ffmpeg简单使用 (cmake)
  3. [软件工程基础]2017.11.01 第五次 Scrum 会议
  4. python regex
  5. awk一些简单命令
  6. springmvc当要返回中文字符串时出现乱码
  7. Nginx 开启目录浏览功能配置
  8. python经典一百道习题(转自奶酪博客)
  9. while嵌套应用二:九九乘法表
  10. spring boot & mybatis集合的坑