【python3的学习之路三】字符串和编码

字符串编码

由于计算机是美国人发明的,因此,最早只有127个字符被编码到计算机里,也就是大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码,比如大写字母A的编码是65,小写字母z的编码是122。

但是要处理中文显然一个字节是不够的,至少需要两个字节,而且还不能和ASCII编码冲突,所以,中国制定了GB2312编码,用来把中文编进去。

但是全世界有上百种语言,各国有各国的标准就,会不可避免地出现冲突,结果就是,在多语言混合的文本中,显示出来会有乱码。因此,Unicode应运而生。Unicode把所有语言都统一到一套编码里,这样就不会再有乱码问题了。

现在,捋一捋ASCII编码和Unicode编码的区别:ASCII编码是1个字节,而Unicode编码通常是2个字节。

  • 字母A用ASCII编码是十进制的65,二进制的01000001;
  • 字符0用ASCII编码是十进制的48,二进制的00110000,注意字符’0’和整数0是不同的;
  • 汉字中已经超出了ASCII编码的范围,用Unicode编码是十进制的20013,二进制的01001110 00101101。

如果把ASCII编码的A用Unicode编码,只需要在前面补0就可以,因此,A的Unicode编码是00000000 01000001。

Python的字符串

  • 在python3中字符串是以Unicode编码的
  • 对于单个字符串的编码,python提供了++ord()++函数获取字符的整数表示,chr()函数把编码转化成对应的字符
ord(‘A‘)   # 65
ord(‘中‘)  # 20013
chr(66)    #B
chr(25991) #文

格式化

%运算符就是用来格式化字符串的。在字符串内部,%s表示用字符串替换,%d表示用整数替换,有几个%?占位符,后面就跟几个变量或者值,顺序要对应好。如果只有一个%?,括号可以省略。

常见的占位符有:

%d    整数
%f    浮点数,可指定小数点后的精度
%e      用科学计数法格式化浮点数
%s    字符串
%x    十六进制整数

转义字符

\(在行尾时)    续行符
\\            反斜杠符号
\‘            单引号
\"            双引号
\a            响铃
\b            退格(Backspace)
\e            转义
\000            空
\n            换行
\v            纵向制表符
\t            横向制表符
\r            回车
\f            换页
\oyy            八进制数,yy代表的字符,例如:\o12代表换行
\xyy            十六进制数,yy代表的字符,例如:\x0a代表换行
\other            其它的字符以普通格式输出

原文地址:https://www.cnblogs.com/CSgarcia/p/9705795.html

时间: 2024-10-28 16:39:20

【python3的学习之路三】字符串和编码的相关文章

Jquery学习之路(三) 实现弹出层插件

弹出层的应用还是比较多的,登陆,一些同页面的操作,别人的总归是别人的,自己的才是自己的,所以一直以来想写个弹出层插件.不多废话,直接开始吧! 不想看可以在这里直接下载源码xsPop.zip 1:遮罩层 要弹出层,先要用一个遮罩层挡在下面的页面,此遮罩层是全屏的,页面滚动也要有,所以设置 position: fixed;还要有透明效果,下面是我定义的遮罩层css,取名mask .mask { position: fixed; width: 100%; height: 100%; backgroun

Redis——学习之路三(初识redis config配置)

我们先看看config 默认情况下系统是怎么配置的.在命令行中输入 config get *(如图) 默认情况下有61配置信息,每一个命令占两行,第一行为配置名称信息,第二行为配置的具体信息. 我们就从上到下来理解一下这些配置信息中的某些配置: 1.dbfilename是本地持久化存储数据库文件名,默认为dump.rdb.我可以在安装目录文件夹下找到这个文件. 2.requirepass是密码,即连接服务器的密码,默认为空.下面我来设置一个密码然后用带密码的命令连接一遍. 3.msterauth

【python3的学习之路八】高级特性

切片 举出一个list的例子 L = list(range(100)) 如何取前三个元素? L[0:3] # 从索引0开始取,直到索引3为止,但不包括索引3.即索引0,1,2,正好是3个元素. L[:3] #如果第一个索引是0,还可以省略 其他情况 L[-10:] # 后10个元素 L[:10:2] # 前10个数,每俩个取一个 L[::5] # 所有数,每5个取一个 L[:] # 不变 截取一部分的字符串并与其他字符串拼接 var1 = 'Hello World!' print ("拼接字符串

python3语法学习第四天--字符串、序列

字符串:是python中的常用数据类型 Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用 访问字符串的值: 下标和分片截取 字符串的连接:‘+’ 字符串内置函数挺多,选取代表性:(python有许多不仅从左边也可也从右边开始的对字符串的操作) join(sub):将sub以字符串为分隔符分割 center(width):将字符串在width的居中并且其余部分用空格补齐 ljust(width):将字符串在width的居左并且其余部分用空格补齐 lstrip():去

【python3的学习之路二】数据类型和变量

整数 python可以处理任意大小的整数(包括负整数),如100,0,-8080等. 浮点数 浮点数也就是小数,如1.23,-9.01等.但对于很大或很小的浮点数,就必须用科学计数法表示,把10用e代替,1.23*109就是1.23e9,0.000012可以写成1.2e-5. 字符串 字符串是以单引号或双引号括起来的任意文本.如果字符串内部既包含'又包含"怎么办?可以用转义字符\来标识,如果你不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串. print('I\'m \&quo

Python学习之路3 - 字符串操作&字典

本节内容: 常用的字符串处理. 格式化输出字符串. 字符串的替换. 字符串和二进制的相互转化. 字典的操作 字符串操作 常用的字符串处理 name = 'vector' print(name.capitalize()) # 首字母大写 print(name.count('e')) # 判断字符e在字符串中有多少个 print(name.center(50,'-')) # 一共打印50个字符,将vector放在中间,两边用-填充 print(name.endswith('r')) # 判断字符串以

JAVA学习之路三 编程英文汇总学习

JAVA学习中的每个章节中都有许多英文,不断熟悉工作英语也是提高编程能力很重要的一块,对于IT行业,英语才是通用语. 记在<JAVA语言程序设计>学习的第一章英文学习之后 .class file(.class文件)                       javac command(javac命令)          .java file(.java文件)            java Development Toolkit(JDK,java开发工具包)          assembl

linux学习之路三------指令篇

为什么要学习Linux命令? 1.Linux的图形界面虽然使用简单.直观,但是会占用大量系统资源,降低运行效率,增加安全的隐患. 2.学习和工作中,应尽可能使用Linux系统的命令运行界面,通过命令来完成操作. 3.要熟练掌握Linux操作系统,就必须熟练运用Linux下的各种命令,因此介绍Linux命令的基本功能和使用. 命令的使用方式,在Linux系统中打开终端的方式有以下两种: 一种是在桌面上依次单击"主程序→系统工具→终端"可打开如下图的终端窗口: 另一种是在Linux桌面上单

Python学习之路13——字符串2

1只适用与字符串的操作符 1.1格式化操作符(%) Python风格的字符串格式操作符.只适用与字符串类型,非常类似于C语言中的printf()函数的字符串格式化,都是用%,并且支持所有的printf()的格式化操作. 字符串格式化符合如下: %c                     转换成字符(ASCII码值,或者长度为一的字符串)  %r                     优先用repr()函数进行字符串转换  %s                     优先用str()函数进行