在Python中,字符串是一种基本的数据类型,用于表示文本。字符串是由零个或多个字符组成的有限序列,可以是字母、数字、标点符号或其他特殊字符。字符串是不可变的,这意味着一旦创建了字符串,就不能修改它的内容。
创建字符串
在Python中,可以使用单引号、双引号或三引号来创建字符串。
# 使用单引号创建字符串
s1 = 'Hello, Pythonit!'
# 使用双引号创建字符串
s2 = "Hello, Pythonit!"
# 使用三引号创建多行字符串
s3 = '''学Python就来
Python教程网'''
# 或者
s4 = """学Python就来
Python教程网"""
字符串操作
Python提供了许多内置的方法和操作符来操作字符串。
字符串拼接
使用 + 操作符可以将两个字符串拼接在一起。
s1 = 'Hello'
s2 = 'Pythonit'
s3 = s1 + ' ' + s2 # 'Hello Pythonit'
字符串重复
使用 * 操作符可以重复字符串。
s = 'Pythonit'
s_repeated = s * 3 # 'PythonitPythonitPythonit'
字符串索引
可以使用索引来访问字符串中的单个字符。索引从0开始。
s = 'Python'
first_char = s[0] # 'P'
last_char = s[-1] # 'n'
字符串切片
可以使用切片来获取字符串的子串。
s = 'Python'
substring = s[1:4] # 'yth'
字符串长度
使用 len() 函数可以获取字符串的长度。
s = 'Python'
length = len(s) # 6
字符串方法
字符串对象有很多内置方法,如 upper(), lower(), strip(), replace(), find(), split() 等。
s = ' Hello, Pythonit! '
# 转换为大写
s_upper = s.upper() # 'HELLO, PYTHONIT!'
# 去除首尾空格
s_stripped = s.strip() # 'Hello, pythonit!'
# 查找子串
index = s.find('Pythonit') # 6
# 分割字符串
parts = s.split(', ') # [' Hello', 'Pythonit! ']
字符串格式化
可以使用旧式的 % 格式化或新式的 str.format() 方法,以及f-string(格式化字符串字面值)来格式化字符串。
# 旧式 % 格式化
name = 'Alice'
age = 30
formatted_string = 'My name is %s and I am %d years old.' % (name, age)
# 新式 str.format() 方法
formatted_string = 'My name is {} and I am {} years old.'.format(name, age)
# f-string(Python 3.6+)
formatted_string = f'My name is {name} and I am {age} years old.'
字符串是不可变的
尝试修改字符串中的字符将会导致TypeError。
s = 'Hello'
s[0] = 'h' # TypeError: 'str' object does not support item assignment
如果需要修改字符串,可以创建一个新的字符串,其中包含原始字符串的内容和所需的更改。