📜  在Python 3 中使用字符串(1)

📅  最后修改于: 2023-12-03 15:07:54.869000             🧑  作者: Mango

在Python 3中使用字符串

介绍

在Python中,字符串是一种常见的数据类型,它用于表示一系列字符。Python 3引入了一些新的特性来升级字符串的功能,使其更加强大和灵活。

本篇文章将介绍如何在Python 3中使用字符串,包括创建字符串、字符串连接、字符串格式化、字符串方法等内容。

字符串创建

在Python中创建字符串非常简单,只需要使用引号将字符括起来即可。Python支持单引号、双引号和三引号创建字符串。

str1 = 'hello'
str2 = "world"
str3 = '''python'''
字符串连接

在Python中,可以使用加号(+)将两个字符串连接起来,也可以使用乘号(*)将一个字符串重复多次。

str1 = 'hello'
str2 = 'world'
str3 = str1 + ' ' + str2  # 字符串连接
print(str3)  # 输出 'hello world'

str4 = str1 * 3  # 字符串重复
print(str4)  # 输出 'hellohellohello'
字符串格式化

字符串格式化是将一个字符串转换为另一个字符串的过程,并将一些值插入到新字符串中的占位符处。Python 3中字符串格式化有3种方式:占位符格式化、格式化字符串字面值和新式字符串格式化。

占位符格式化

占位符格式化使用百分号(%)作为占位符,它可以将字符串和其他数据类型的值格式化成一个字符串。在占位符格式化中,用到的占位符有%s、%d、%f、%e等。

name = 'John'
age = 20
score = 99.5
print("My name is %s, I'm %d years old, my score is %.1f." % (name, age, score))
# 输出 "My name is John, I'm 20 years old, my score is 99.5."
格式化字符串字面值

格式化字符串字面值是在字符串前面加上f或F,然后在字符串中使用占位符{},并在其中添加变量或表达式。使用格式化字符串字面值可以让代码更简洁易懂。

name = 'John'
age = 20
score = 99.5
print(f"My name is {name}, I'm {age} years old, my score is {score:.1f}.")
# 输出 "My name is John, I'm 20 years old, my score is 99.5."
新式字符串格式化

新式字符串格式化是使用format()方法将一个字符串格式化成另一个字符串,在方法中使用占位符{}来代表需要替换的值。

name = 'John'
age = 20
score = 99.5
print("My name is {}, I'm {} years old, my score is {:.1f}.".format(name, age, score))
# 输出 "My name is John, I'm 20 years old, my score is 99.5."
字符串方法

Python 3中的字符串方法很多,下面介绍几个常用的方法。

字符串查找

字符串查找的方法包括find()、index()和count()。这些方法在字符串中查找指定的子字符串,并返回它们的索引位置或出现次数。

string = 'hello world, welcome to python world'
print(string.find('world'))  # 输出 6,表示第一次出现'world'的位置
print(string.index('world'))  # 输出 6,与find()方法相同
print(string.count('world'))  # 输出 2,表示'world'出现的次数
字符串分割

字符串分割的方法包括split()、rsplit()、splitlines()。这些方法可以将一个字符串分割成多个子字符串,并返回一个列表。

string = 'hello,world,welcome,to,python'
print(string.split(','))  # 输出 ['hello', 'world', 'welcome', 'to', 'python']
print(string.rsplit(',', 2))  # 输出 ['hello', 'world', 'welcome,to', 'python']
string2 = 'hello\nworld\nwelcome\nto\npython'
print(string2.splitlines())  # 输出 ['hello', 'world', 'welcome', 'to', 'python']
字符串替换

字符串替换的方法包括replace()和translate()。这些方法可以将一个字符串中的子字符串替换为另一个字符串。

string = 'hello world, welcome to python'
print(string.replace('world', 'python'))  # 输出 'hello python, welcome to python'
table = str.maketrans('aeiou', '12345')
print(string.translate(table))  # 输出 'h2ll4 w4rld, w2lc4m2 t4 pyth4n'
结论

在Python 3中,字符串是一个重要的数据类型,除了基本的创建、连接操作外,它还支持字符串格式化、字符串方法等多种功能。可以灵活运用这些功能,使得字符串更加易于操作和维护。