Python:字符串与正则表达式
admin
2023-07-31 01:52:50
0

6.1 常见的字符串操作

6.1.1 字符串的格式化

\"%s\" % str1
\"%s %s\" % (str1, str2)

使用%f可以格式化浮点数的精度,根据指定的精度做“四舍五入”。

注意:

如果要在字符串中输出“%”,需要使用“%%”。

Python可以实现字符串的对齐操作,类似C语言中的“%[[+/-]n]s”。此外,还提供了字符串对齐的函数。

# 字符串对齐

word = \"version3.0\"
print(word.center(20))
print(word.ljust(0))
print(word.rjust(0))
print(\"%30s\" % word)

6.1.2 字符串的转义符

Python中转义字符的用法和Java相同,都是使用“\\”作为转义字符。

Python还提供了函数strip()、lstrip()、rstrip()去掉字符串中的转义符。

6.1.3 字符串的合并

与Java语言一样,Python使用“+”连接不同的字符串。Python会根据“+”两侧变量的类型,决定执行连接操作或加法运算。如果“+”两侧都是字符串类型,则进行连接操作;如果“+”两侧都是数字类型,则进行加法运算;如果“+”两侧是不同的类型,将抛出异常。

Python提供了函数join()和reduce()连接字符串。

6.1.4 字符串的截取

Python由于内置了序列,可以通过前面介绍的索引、切片获取子串,也可以使用函数split()来获取。

通过切片可以实现对字符串有规律的截取。切片的语法格式如下所示。

string[start : end : step]

通过切片可以实现对字符串有规律的截取。切片的语法格式如下所示。

string[start : end : step]

代码说明:

其中string表示需要取子串的源字符串变量。[start:end:step]表示从string的第start个索引位置开始到第end个索引之间截取子串,截取的步长是step。即每次截取字符string[start+step],直到第end个索引。索引从0开始计数。

如果要同时截取多个子串,可以使用函数split()实现。函数split()的声明如下所示。

split([char] [,num])

代码说明:

• 参数char表示用于分割的字符,默认的分割字符是空格。
• 参数num表示分割的次数。如果num等于2,将把源字符串分割为3个子串。默认情况下,将根据字符char在字符串中出现的个数来分割子串。
• 函数的返回值是由子串组成的列表。

字符串连接后,Python将分配新的空间给连接后的字符串,源字符串保持不变。

6.1.5 字符串的比较

字符串的比较Java使用equals()比较两个字符串的内容,Python直接使用“==”“!=”操作符比较两个字符串的内容。如果比较的两个变量的类型不相同,比较的内容也不相同。

如果要比较字符串中的一部分内容,可以先截取子串,再使用“==”操作符进行比较。如果要比较字符串的开头或结尾部分,更方便的方法是使用startswith()endswith()函数。startswith()的声明如下所示。

startswith(substring, [,start [,end]])

代码说明:

• 参数substring是与源字符串开头部分比较的子串。
• 参数start表示开始比较的位置。
• 参数end表示比较结束的位置,即在start:end范围内搜索子串substring。
• 如果字符串以substring开头,则返回True;否则,返回False。

endswith()的参数和返回值类似startswith(),不同的是endswith()从源字符串的尾部开始搜索。

注意: 

startswith()endswith()相当于分片[0:n],n是源字符串中最后一个索引。startswith()endswith()不能用于比较源字符串中任意一部分的子串。

上一篇:delorean使用教程

下一篇:python中的is

相关内容

热门资讯

Mobi、epub格式电子书如... 在wps里全局设置里有一个文件关联,打开,勾选电子书文件选项就可以了。
定时清理删除C:\Progra... C:\Program Files (x86)下面很多scoped_dir开头的文件夹 写个批处理 定...
scoped_dir32_70... 一台虚拟机C盘总是莫名奇妙的空间用完,导致很多软件没法再运行。经过仔细检查发现是C:\Program...
500 行 Python 代码... 语法分析器描述了一个句子的语法结构,用来帮助其他的应用进行推理。自然语言引入了很多意外的歧义,以我们...
小程序支付时提示:appid和... [Q]小程序支付时提示:appid和mch_id不匹配 [A]小程序和微信支付没有进行关联,访问“小...
pycparser 是一个用... `pycparser` 是一个用 Python 编写的 C 语言解析器。它可以用来解析 C 代码并构...
微信小程序使用slider实现... 众所周知哈,微信小程序里面的音频播放是没有进度条的,但最近有个项目呢,客户要求音频要有进度条控制,所...
65536是2的几次方 计算2... 65536是2的16次方:65536=2⁶ 65536是256的2次方:65536=256 6553...
Apache Doris 2.... 亲爱的社区小伙伴们,我们很高兴地向大家宣布,Apache Doris 2.0.0 版本已于...
项目管理和工程管理的区别 项目管理 项目管理,顾名思义就是专注于开发和完成项目的管理,以实现目标并满足成功标准和项目要求。 工...