第七章 字符串

本文详细介绍了Python中的字符串,包括字符串概述、编码格式、转义字符与原始字符串、字符串格式化方法,如%符号和format(),以及字符串的常用操作,如查找、替换、排版等。此外,还涉及字符串常量、中英文分词和汉字到拼音的转换。
摘要由CSDN通过智能技术生成

第七章 字符串

1. 字符串概述

字符串是指包含若干字符的容器结构。字符串属于不可变有序序列,使用单引号、双引号、三单引号、或三双引号作为定界符,而且不同的定界符之间可以相互嵌套。

支持序列通用方法(包括双向索引、比较大小、计算长度、元素访问、切片、成员测试等操作),还支持一些字符串特有的操作方法(字符串格式化、查找、替换、排版等)。不能直接对字符串对象进行原色增加、修改与删除等操作,切片操作也只能访问其中的元素而无法使用切片来修改字符串中的字符。另外,字符串对象提供的replace()translate()方法以及大量排版方法也不是队员字符串直接进行修改替换,而是返回一个新字符串作为结果。

2. 字符串编码格式

Python默认使用UTF-8编码格式,完全支持中文。在统计字符串长度时,无论是一个数字、英文字母,还是一个汉字,都按一个字符对待和处理。

除了支持Unicode编码的str类型外,Python还支持字节串类型bytes,str类型可以通过encode()方法使用指定的字符串编码格式编码成为bytes对象,而bytes对象则可以通过decode()方法使用指定的编码格式解码成为str字符串。

>>> type('python是个好语言')
<class 'str'>
>>> type('python是个好语言'.encode('gbk'))		#编码为字节串,采用gbk编码格式
<class 'bytes'>

3. 转义字符与原始字符串

转义字符是指,在字符串中某些特定的符号前加一个斜线之后,该字符将被解释为另外一种含义,不再表示本来的字符。

转义字符 含义
\b 退格,把光标移动到前一列的位置
\f 换页符
\n 换行符
\r 回车
\t 水平制表符
\v 垂直制表符
\\ 一个斜线\
\' 单引号’
\" 双引号"
\ooo 3位八进制数对应的字符
\xhh 2位十六进制对应的字符
\uhhhh 4位十六进制数表示的Unicode字符
>>> from time import sleep
>>> for i in range(10):
	print(i, end = '\r')
	sleep(0.1)

	
0
1
2
3
4
5
6
7
8
9

为了避免对字符串中的转义字符进行转义,可以使用原始字符串(是指在字符串前面加上rR表示原字符串,其中所有字符都是原始的含义而不转义)。

>>> path = r'C:\Windows\Hello\notme'

4. 字符串格式化

1. 使用%符号进行格式化

% [-] [+] [0] [m] [.n] 格式字符 % x
1  2   3   4   5    6      7   8  9
1. 格式标志,表示格式开始
2. 指定左对齐输出
3. 对正数加正号
4. 指定空位填0
5. 指定最小宽度
6. 指定精度
7. 指定类型
8. 格式运算符
9. 待转换的表达式
格式字符 说明
%s 格式化为字符串
%c 单个字符
%d, %i 十进制整数
%o 八进制整数
%x 十六进制整数
%e 指数(基底写为e)
%E 指数(基底写为e)
%f, %F 浮点数
%g 指数(e)或浮点数(根据显示长度)
%G 指数(E)或浮点数(根据显示长度)
%% 格式化为一个%符号

使用此方式格式化字符串时,要求被格式化的内容和格式字符之间的数量和顺序都一一对应。

>>> x = 1234
>>> "%o" % x
'2322'
>>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值