Python 字符串
Python 的字符串既可以使用单引号,也可以使用双引号包围。字符串是不可变的,任何字符串操作返回的都是新字符串。
Python 字符串既可以使用单引号,也可以使用双引号包围。'hello'
和 "hello"
是相同的。
Python 字符串是不可变的,任何字符串操作返回的都是新字符串。
使用 print()
函数输出字符串内容:
print("Hello")
print('Hello')
创建字符串
创建要给变量并赋值一个字符串内容:
a = "Hello"
print(a)
多行字符串
多行字符串可以使用三个双引号或者三个单引号包围起来。
三个双引号:
a = """Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua."""
print(a)
或三个单引号:
a = '''Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua.'''
print(a)
字符串是数组
像许多其他流行的编程语言一样,Python 中的字符串代表的是 unicode 字符的数组。
Python 没有字符数据类型,单个字符只是一个长度为 1 的字符串。
方括号可用于获取访问字符串的指定索引位置的元素。如下:
a = "Hello, World!"
print(a[1]) # 输出 e
遍历字符串
由于字符串是数组,我们可以使用 for
循环遍历字符串中的字符。
循环遍历单词“banana”中的字母:
for x in "banana":
print(x)
输出:
b
a
n
a
n
a
可转到 Python for 循环一章中了解有关 For 循环的更多信息。
字符串长度
len()
函数返回字符串的长度。
a = "Hello, World!"
print(len(a)) # 输出 13
in 和 not in
要检查字符串中是否存在某个子串或字符,可以使用 in
关键字。
检查以下文本中是否存在 free
:
txt = "The best things in life are free!"
print("free" in txt) # 输出 True
在 if
语句中使用 in
关键字:
txt = "The best things in life are free!"
if "free" in txt:
print("Yes, 'free' is present.")
可转到 Python if…else章节中了解有关 if 语句的更多信息。
要检查字符串中是否不存在某个子串或字符,我们可以使用 not in
关键字。
txt = "The best things in life are free!"
print("expensive" not in txt) # 输出 False
子串
可以使用切片语法返回一个子串,指定开始索引和结束索引,以冒号分隔,返回字符串的一部分。
获取从位置 2 到位置 5(不包括在内)的字符:
b = "Hello, World!"
print(b[2:5]) # 输出 llo
! 注意: 第一个字符的索引为 0。
省略开始索引,范围将从第一个字符开始:
b = "Hello, World!"
print(b[:5]) # 输出 Hello
省略结束索引,范围将到最后:
b = "Hello, World!"
print(b[2:]) # 输出 llo, World!
使用负索引相对于字符串末尾切片:
b = "Hello, World!"
print(b[-5:-2]) # 输出 orl
! 负索引的含义是倒数第几个字符。
大写
upper()
方法以大写形式返回字符串:
a = "Hello, World!"
print(a.upper()) # 输出 HELLO, WORLD!
小写
lower()
方法以小写形式返回字符串:
a = "Hello, World!"
print(a.lower()) # 输出 hello, world!
删除首尾空格
strip()
方法从开头或结尾删除任何空格:
a = " Hello, World! "
print(a.strip()) # 输出 Hello, World!
替换字符串
replace()
方法使用指定的内容进行替换:
a = "Hello, World!"
print(a.replace("H", "J")) # 输出 Jello, World!
拆分字符串
split()
方法使用指定分隔符拆分字符串,返回一个列表。
a = "Hello, World!"
print(a.split(",")) # 输出 ['Hello', ' World!']
可转到 Python 列表一章中了解有关列表的更多信息。
字符串拼接
要拼接或组合两个字符串,您可以使用 +
运算符。
a = "Hello"
b = "World"
c = a + b
print(c) # 输出 HelloWorld
要在它们之间添加空格,请添加 " "
:
a = "Hello"
b = "World"
c = a + " " + b
print(c) # 输出 Hello World
对于一些复杂的情况,字符串拼接可能并不是好的解决方案,而字符串格式化则提供了一个更好的方案。
转义字符
转义字符 \
用来对一些特殊字符进行转义,比如用双引号包围的字符串中也包含了双引号时。
使用 \"
转义字符双引号:
txt = "We are the so-called \"Vikings\" from the north."
Python 中常用的转义字符:
Code | Result |
---|---|
\' |
单引号 |
\\ |
反斜杠 |
\n |
换行符 |
\r |
回车符 |
\t |
制表符 |
\b |
空格 |
\f |
换页符 |
\ooo |
八进制 |
\xhh |
十六进制 |