Python3 字符串方法

1. Python3 字符串方法介绍

Python 是一门强大的编程语言,它提供了很多的字符串方法用于字符串的生成、修改等。这篇文章将会介绍 Python3 中常见的字符串处理方法。

1.1 字符串生成

Python3 中的字符串可以用单引号、双引号或三引号来生成。其中单引号和双引号的生成方式相同,而三引号可以引入多行字符串。例如:

hello = 'Hello, world!'

name = "Tom"

multi_line = '''

Hello, world!

How are you?

'''

上面的代码中,我们通过单引号和双引号来生成了两个字符串,而通过三引号来生成了一个多行字符串。字符串的换行是保留的,因此变量 multi_line 的值为:

'''

Hello, world!

How are you?

'''

可以使用下标操作符 ([]) 来获取字符串中的字符。例如:

welcome = "Hello, world!"

print(welcome[0]) # 打印 'H'

字符串是不可变的,也就是说你不能修改字符串中的某个字符。例如该代码段运行时会抛出一个 TypeError 异常:

greeting = "Hello, world!"

greeting[0] = 'J'

# TypeError: 'str' object does not support item assignment

1.2 字符串连接和格式化

在 Python3 中,字符串可以用加号 (+) 来连接,也可以用 join() 方法来连接字符串。例如:

# 字符串连接

s1 = "Hello"

s2 = "World"

welcome = s1 + ", " + s2 + "!"

print(welcome)

# join() 方法连接字符串

words = ["Hello", "World", "!"]

welcome = " ".join(words)

print(welcome)

字符串格式化是指将一个字符串模板与一组数据进行结合,产生一个新的字符串的操作。Python3 中常见的字符串格式化方式有两种:一种是基于位置的字符串格式化,另一种是基于名称的字符串格式化。例如:

# 基于位置的字符串格式化

welcome = "Hello, {}!".format("Tom")

print(welcome)

# 基于名称的字符串格式化

welcome = "Hello, {name}!".format(name="Tom")

print(welcome)

字符串格式化还可以通过简单的字符串模板来实现:

name = "Tom"

welcome = f"Hello, {name}!"

print(welcome)

1.3 字符串方法

Python3 提供了许多字符串方法,用于操作字符串。下面将会介绍 Python3 中常见的字符串操作方法。

2. Python3 常用字符串方法

2.1 字符串查找

Python3 中提供了五种方法用于查找字符串中的子字符串:

find():查找子字符串,返回子字符串的起始位置,如果没有找到则返回 -1

rfind():和 find() 方法一样,但是是从右边开始查找。

index():和 find() 方法一样,但是是如果没有找到则抛出 ValueError 异常。

rindex():和 index() 方法一样,但是是从右边开始查找。

count():返回指定子字符串在字符串中出现的次数。

例如:

string = "Hello, how are you?"

print(string.find("how")) # 输出 7

print(string.rfind("o")) # 输出 9

print(string.index("hw")) # 抛出 ValueError 异常

print(string.count("o")) # 输出 3

2.2 字符串替换

Python3 中提供了两种方法用于字符串替换:replace()translate()。其中 replace() 方法用于替换字符串中的指定子字符串,而 translate() 则可以对字符串进行更加复杂的替换操作。

replace() 方法接受两个参数:被替换的目标字符串和替换字符串。例如:

string = "hello, world"

new_string = string.replace("world", "Python")

print(new_string)

输出结果为:

hello, Python

translate() 方法接受一张表格作为参数,该表格定义了一组字符映射关系。例如:

string = "hello, world"

table = string.maketrans("abc", "123")

new_string = string.translate(table)

print(new_string)

输出结果为:

hello, world

2.3 字符串分裂和连接

Python3 中提供了两种方法用于字符串分割和连接:split()join()。其中 split() 方法可以将字符串根据指定的分隔符进行分割,而 join() 方法可以将多个字符串连接成一个字符串。

split() 方法可以接受一个参数,该参数用于指定分割符。例如:

string = "hello, world"

words = string.split(", ")

print(words)

输出结果为:

['hello', 'world']

join() 方法可以接受一个序列作为参数,序列中的所有元素都将被连接成一个字符串。例如:

words = ['hello', 'world']

string = ", ".join(words)

print(string)

输出结果为:

hello, world

2.4 大小写转换

Python3 中提供了四种方法用于大小写转换:upper()lower()capitalize()title()

upper():将字符串中所有字符转换为大写字母。

lower():将字符串中所有字符转换为小写字母。

capitalize():将字符串中第一个字符转换为大写字母。

title():将字符串中所有单词的第一个字符转换为大写字母。

例如:

string = "hello, world"

print(string.upper()) # 输出 "HELLO, WORLD"

print(string.lower()) # 输出 "hello, world"

print(string.capitalize()) # 输出 "Hello, world"

print(string.title()) # 输出 "Hello, World"

2.5 字符串其他常见操作

除了上述操作外,Python3 中还提供了一些其他常见的字符串操作:

strip():移除字符串两侧的空格。

lstrip():移除字符串左侧的空格。

rstrip():移除字符串右侧的空格。

center():将字符串居中,并在两侧填充指定字符。

ljust():将字符串左对齐,并在右侧填充指定字符。

rjust():将字符串右对齐,并在左侧填充指定字符。

例如:

string = "   hello, world   "

print(string.strip()) # 输出 "hello, world"

print(string.center(20)) # 输出 " hello, world "

print(string.ljust(20)) # 输出 " hello, world "

print(string.rjust(20)) # 输出 " hello, world "

3. 总结

本文介绍了 Python3 中常见的字符串操作方法,包括字符串生成、连接和格式化、字符串查找、字符串替换、字符串分割和连接、大小写转换以及其他常见操作。掌握这些字符串操作方法可以让你更高效地操作字符串,并提高编程效率。

后端开发标签