操作字符串
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"