识记点:

  • ascii 不支持中文

  • gbk 国标 中文2 英文1

  • unicode 万国码 英文2 中文4

  • utf-8 英文1 欧洲2 亚洲3

  • 硬盘中存储的是字节

  • 用什么编码就用什么解码

# 一段文字的转换,传输,再转换
今天晚上去洗脚 gbk 010101010101 传输字节 010101010101 gbk 今天晚上去洗脚

例题:

s = "abc"
print(s.encode("gbk"))
b'\xc6\xe6\xc6\xe6' -- 字节
b'abc'
s = "aaaa"
s1 = b"aaaa"

中文的传输:

  • 将中文转换成gbk
  • 将gbk转换成utf-8 # encode
  • 字节传输
  • 将utf-8转换成gbk # decode
  • 将gbk转换成中文
s = "今天晚上,吃鸡!"
s1 = s.encode("gbk") # 中文转换成字节 -- 编码
s1 = s.encode("utf-8") # 中文转换成字节 -- 编码
b'\xbd\xf1\xcc\xec\xcd\xed\xc9\xcf,\xb3\xd4\xbc\xa6!'
print(s1.decode("utf-8")) #字节转换成字符串 -- 解码
python3内存使用的就是unicode
python2内存使用的就是ascii
s = "你好"
s1 = s.encode("utf-8") # 字节
print(s1) # 6个字节
print(s1.decode("gbk")) # 3个字 '''
会报错
'''

python之编码的进阶的更多相关文章

  1. python基础 (编码进阶,文件操作和深浅copy)

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

  2. python之路day06--python2/3小区别,小数据池的概念,编码的进阶str转为bytes类型,编码和解码

    python2#print() print'abc'#range() xrange()生成器#raw_input() python3# print('abc')# range()# input() = ...

  3. 记录我的 python 学习历程-Day07 基础数据类型进阶 / 数据类型之间的转换 / 基础数据类型总结 / 编码的进阶

    基础数据类型 str(字符串) str:补充方法练习一遍就行 s.capitalize() 首字母大写,其余变小写 s = 'dyLAn' print(s.capitalize()) # Dylan ...

  4. day 0308 编码的进阶 文件操作

    一.编码的进阶: 在python3以后,字符串和bytes类型彻底分开,字符串以字符为单位进行处理的,bytes类型是以字节为单位处理的. bytes数据类型在所有的操作和使用与字符串方法基本一样,也 ...

  5. python基础篇之进阶

    python基础篇之进阶 参考博客:http://www.cnblogs.com/wupeiqi/articles/5115190.html python种类 1. cpython  使用c解释器生产 ...

  6. Python:什么是进阶,如何进阶?

    目录 Python:什么是进阶,如何进阶? 1. 什么是进阶? 2. 如何进阶? 3. 除此之外呢? Python:什么是进阶,如何进阶? 1. 什么是进阶? 一门编程语言的基础部分,往往非常简单.如 ...

  7. Python学习day15-函数进阶(3)

    figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...

  8. python Unicode 编码解码

    1 #将Unicode转换成普通的Python字符串:"编码(encode)" 2 unicodestring = u"Hello world" 3 utf8s ...

  9. python的编码问题

    本文简单介绍了各种常用的字符编码的特点,并介绍了在python2.x中如何与编码问题作战 :) 请注意本文关于Python的内容仅适用于2.x,3.x中str和unicode有翻天覆地的变化,请查阅其 ...

随机推荐

  1. AtCoder Grand Contest 005【A栈模拟,B单调栈】

    挖草,AtCoder实在是太吊了~ %%%,目前只A了两题: A题: 就是利用栈模拟一下就好了:S进栈,T的话有S就出栈,然后len减一下就好了: #include <bits/stdc++.h ...

  2. P3270 [JLOI2016]成绩比较(拉格朗日插值)

    传送门 挺神仙的啊-- 设\(f[i][j]\)为考虑前\(i\)门课程,有\(j\)个人被\(B\)爷碾压的方案数,那么转移为\[f[i][j]=\sum_{k=j}^{n-1}f[i-1][k]\ ...

  3. [Xcode 实际操作]九、实用进阶-(4)计算两个日期间的差值

    目录:[Swift]Xcode实际操作 本文将演示如何计算两个日期之间的差值. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit class ...

  4. Peptidomics analysis of milk protein-derived peptides
released over time in the preterm infant stomach
 (文献分享一组-陈凌云)

    题目:Peptidomics analysis of milk protein-derived peptides
released over time in the preterm infant st ...

  5. typescript学习笔记(一)----基础类型

    1.使用typescript前第一个操作就是全局配置typescript环境 ---------------npm install -g typescript 2.typescript(以下称为ts, ...

  6. 「干货」常用的10个网络DOS命令,菜鸟学了变高手

    1 ping命令 1命令格式 ping 主机名 ping 域名 ping IP地址 如图所示,使用ping命令检查到IP地址210.43.16.17的计算机的连通性,该例为连接正常.共发送了四个测试数 ...

  7. docker+jenkins实现持续集成

    持续集成的概念我就不多说了,网上一大堆,今日主要讲讲怎么通过docker 和jenkins实现项目的持续集成.看着简单,网上完整教程很少,本人摸索很久才搞定!!! 一.首先安装docker.安装过程可 ...

  8. 解决“每次启动Access2010时都要求配置VS2008”的办法

    我每次启动Access2010时都会要求配置VS2008,这大概是VS2008与office(Access2010)有冲突引起的.这里提供一种解决办法. 依次选择Access2010的文件-选项中-加 ...

  9. Linux (一)

    Linux目录结构 / :根目录.位于分层文件系统的最顶层,可以说它包含了所有的目录和文件 /bin :系统可执行目录 /sbin :系统管理员的可执行文件 /boot :存放用于启动linux系统的 ...

  10. BZOJ1218(线段树+扫描线)

    1.扫描线扫描x轴,线段树维护y轴. 2.坐标+1,线段树是从1开始维护.然后让边长--,这样就能包含边上的点了. 3.为了保证点在正方形内:在x轴上利用差分的思想,在x出Add(val),在x+r( ...