Python字符串操作:替换、匹配、格式化、索引及返回类型
Python字符串替换方法
- 字符串替换可以使用replace()方法来实现。
- replace()方法接受两个参数,第一个参数是要替换的子字符串,第二个参数是替换后的新字符串。
示例:
my_string = "Hello World"
# 替换字符串中的子字符串
new_string = my_string.replace("World", "Python")
print(new_string) # 输出:Hello Python
Python字符串前缀、后缀匹配方法
- 字符串前缀匹配可以使用startswith()方法来实现。
- 字符串后缀匹配可以使用endswith()方法来实现。
- 这两个方法都接受一个参数,用于指定匹配的前缀或后缀字符串。
示例:
my_string = "Hello World"
# 判断字符串是否以指定的前缀开头
is_prefix = my_string.startswith("Hello")
print(is_prefix) # 输出:True
# 判断字符串是否以指定的后缀结尾
is_suffix = my_string.endswith("World")
print(is_suffix) # 输出:True
Plain Text
Python字符串format方法格式化和对齐:
- 字符串的格式化可以使用format()方法来实现。
- format()方法可以接受多个参数,用于替换字符串中的占位符。
- 占位符可以使用大括号{}来表示。
- 可以使用冒号:来指定格式化的方式和对齐方式。
示例:
name = "Alice"
age = 25
# 格式化字符串
formatted_string = "My name is {} and I am {} years old.".format(name, age)
print(formatted_string)
# 输出:My name is Alice and I am 25 years old.
# 使用冒号指定对齐方式和宽度
aligned_string = "{:<10}{}".format("Left", "Right")
print(aligned_string)
# 输出:Left Right
Plain Text
Python ASCII和常用字符值
- ASCII是一种字符编码标准,用于将字符映射为数字。
- Python中使用ord()函数可以获取字符的ASCII值。
- 常用字符值包括:
- 字母:A-Z对应的ASCII值为65-90,a-z对应的ASCII值为97-122。
- 数字:0-9对应的ASCII值为48-57。
- 特殊字符:空格对应的ASCII值为32,换行符对应的ASCII值为10
示例:
# 获取字符的ASCII值
ascii_value = ord('A')
print(ascii_value) # 输出:65
# 获取数字字符的ASCII值
digit_ascii_value = ord('1')
print(digit_ascii_value) # 输出:49
Python元组方法和列表对比和时间复杂度:
- 元组和列表都是Python中常用的序列类型。
- 元组是不可变的,一旦创建就不能修改。
- 列表是可变的,可以添加、删除和修改元素。
- 元组的访问时间复杂度为O(1),而列表的访问时间复杂度为O(n)。
- 元组和列表的初始化方式类似,都可以使用小括号或方括号。
示例:
# 初始化元组
my_tuple = (1, 2, 3)
print(my_tuple) # 输出:(1, 2, 3)
# 初始化列表
my_list = [1, 2, 3]
print(my_list) # 输出:[1, 2, 3]
# 修改元组中的元素(会报错)
my_tuple[0] = 4 # TypeError: 'tuple' object does not support item assignment
# 修改列表中的元素
my_list[0] = 4
print(my_list) # 输出:[4, 2, 3]
Python random模块
- random模块是Python中用于生成随机数的模块。
- 可以使用random()函数生成一个0到1之间的随机浮点数。
- 可以使用randint()函数生成指定范围内的随机整数。
- 还有其他一些生成随机数的函数,如randrange()、choice()和shuffle()等。
示例:
import random
# 生成0到1之间的随机浮点数
random_float = random.random()
print(random_float)
# 生成1到10之间的随机整数
random_int = random.randint(1, 10)
print(random_int)
Python字符串索引及返回类型
- 字符串可以通过索引来访问单个字符,索引从0开始。
- 字符串的索引可以是负数,表示从末尾开始倒数的位置。
- 字符串的索引操作返回一个新的字符串,包含指定索引位置的字符。
示例:
my_string = "Hello World"
# 获取索引为0的字符
char1 = my_string[0]
print(char1) # 输出:H
# 获取索引为-1的字符
char2 = my_string[-1]
print(char2) # 输出:d
Python字符串find()、index()区别和选择:
- find()方法和index()方法都用于查找子字符串在字符串中的位置。
- find()方法返回子字符串在字符串中第一次出现的索引,如果不存在则返回-1。
- index()方法返回子字符串在字符串中第一次出现的索引,如果不存在则抛出ValueError异常。
- 当不确定子字符串是否存在时,可以使用find()方法,如果需要处理异常情况时,可以使用index()方法。
示例:
my_string = "Hello World"
# 使用find()方法查找子字符串的位置
index1 = my_string.find("World")
print(index1) # 输出:6
# 使用index()方法查找子字符串的位置
index2 = my_string.index("World")
print(index2) # 输出:6
# 查找不存在的子字符串
index3 = my_string.find("Python")
print(index3) # 输出:-1
# 使用index()方法查找不存在的子字符串(会抛出异常)
try:
index4 = my_string.index("Python")
except ValueError:
print("Substring not found")
# 输出:Substring not found
Python字符串分割方法split()、partition()区别
- split()方法用于将字符串分割成多个子字符串,并返回一个列表。
- split()方法可以接受一个参数,用于指定分隔符,默认为以空格分隔。
- partition()方法用于将字符串从第一个出现的指定子字符串分割为三部分,并返回一个元组。
- partition()方法的返回值是一个包含三个元素的元组,分别是分割前的部分、指定子字符串和分割后的部分。
示例:
my_string = "Hello World"
# 使用split()方法分割字符串
split_list = my_string.split()
print(split_list) # 输出:['Hello', 'World']
# 使用partition()方法分割字符串
partition_tuple = my_string.partition(" ")
print(partition_tuple) # 输出:('Hello', ' ', 'World')
Python字符串移除方法
- 移除字符串中的指定字符可以使用replace()方法来实现。
- replace()方法接受两个参数,第一个参数是要移除的字符,第二个参数是替换后的新字符(可以为空字符串)。
示例:
my_string = "Hello World"
# 移除字符串中的空格new_string = my_string.replace(" ", "")print(new_string) # 输出:HelloWorldPython