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 中常见的字符串操作方法,包括字符串生成、连接和格式化、字符串查找、字符串替换、字符串分割和连接、大小写转换以及其他常见操作。掌握这些字符串操作方法可以让你更高效地操作字符串,并提高编程效率。