操作字符串

已完成

Tip

有关更多详细信息,请参阅 “文本和图像 ”选项卡!

文本是编程中最常见的数据类型之一。 在Python中,文本表示为字符串,即用单引号或双引号括起来的字符序列。 Python提供了许多用于操作和设置字符串格式的内置方法。

串联(将字符串粘附在一起)

可以使用运算符将两个或多个字符串联接到单个字符串 + 中:

first = "Hello"
last = "world"
message = first + ", " + last + "!"
print(message)

Output:

Hello, world!

虽然串联非常适合简单的组合,但当你尝试将变量、标点符号和空格混合在一起时,它可能会变得复杂。

更好的方法:f-strings

合并字符串和变量的更简洁现代方法是与 f 字符串 (格式化字符串的缩写)。 若要创建此类字符串,请将字母 f 直接放在左引号之外,并将任何变量名称放在大括号 {}内:

name = "Alex"
print(f"Hello, {name}!")

Output:

Hello, Alex!

可以尝试在联机 Python 解释器中 https://aka.ms/python-coder自行运行此代码。

不再出现类型错误

在上一单元中,我们看到了导致结果TypeError的方式input() + 1,因为Python不能混合文本和数字。 F 字符串可解决此问题。 在 f 字符串中,Python自动将大括号内的数字格式设置为文本:

age = input("How old are you? ")
print(f"Next year you will be {age + 1}") # Works perfectly!

注释

如果忘记了f前缀(例如print("Hello, {name}")),Python不会在大括号内查看,它将在屏幕上字面打印{name}。

常见字符串方法

Python字符串具有许多用于常见操作的内置方法:

方法 它的作用是什么 Example Result
.upper() 将文本转换为大写形式 "hello".upper() "HELLO"
.lower() 将文本转换为小写 "HELLO".lower() "hello"
.strip() 从末尾剪裁意外空格 " hi ".strip() "hi"
.replace(old, new) 交换特定字符 "cat".replace("c", "b") "bat"

使用 len() 对字符进行计数

若要在字符串中查找字符总数(包括空格和标点符号),请使用独立 len() 函数。 请注意,文本位于括号内:

username = "Alex!"
print(len(username)) # Output: 5

字符串方法返回新字符串

字符串方法不会修改原始变量。 而是创建更改的文本的 全新副本 。

查看此行为:

greeting = "hello"
greeting.upper()
print(greeting) # Output is STILL lowercase "hello"!

如果要保留更改,则必须覆盖旧变量或将结果保存到新变量:

greeting = "hello"
greeting = greeting.upper() # Saving the new uppercase copy
print(greeting) # Output: "HELLO"