原理文章:
https://mp.csdn.net/mp_blog/creation/editor/151370212讲解视频链接:
https://www.bilibili.com/video/BV13fYPzNEWs/?spm_id_from=333.1387.homepage.video_card.click# 字符串
# 普通创建
str1='123@string'
print('str1:',str1)# 转化
a=1
str_trans=str(a)
print(type(str_trans))# 添加
str1='hello,world!'
str2=str1+'abc'
print('str2:',str2)
print('添加前字符串id:',id(str1))
print('添加后字符串id:',id(str2))
print(f"两个字符串是同一个对象吗? {str2 is str1}") # 输出: False# join方法
parts = []
for i in range(10):parts.append(str(i))
str_join = ",".join(parts) # str.join(sequence)
print('str_join:',str_join)
#
#
# join方法
# 使用 join() 方法拼接(效率高)
import time
start_time = time.time()
parts = []
for i in range(10000):parts.append(str(i))
str_join = ",".join(parts) # str.join(sequence)
end_time = time.time()
print(f"使用 join() 方法耗时: {end_time - start_time:.4f} 秒")# 使用 + 操作符拼接(效率低)
start_time = time.time()
result = ""
for i in range(10000):result += str(i)
end_time = time.time()
print(f"使用 + 操作符耗时: {end_time - start_time:.4f} 秒")# 删除
str3='hello,world!'
str_replace=str3.replace(',','')
print('str_replace',str_replace)str4= " Hello, World! "
str_strip = str4.strip()
print(f"原始字符串: '{str4}'")
print(f"处理后字符串: '{str_strip}'")
print(f"原始字符串是否改变: {str4 is str_strip}") # 输出: False# 移除特定字符
str5 = "***Hello, World!***"
result = str5.strip('*')
print(result) # 输出: Hello, World!#
# 查 获取单个元素
str6='hello,world!'
str_single=str6[6]
print('str_single:',str_single)# 获取多个元素切片
str7='hello,world!'
str_split=str7[0:5]
print(f'str_split:{str_split}')# 遍历
str8='hello,world!'
for str in str8:print(str)修改
字符串不能直接使用下标更改特定值,只能使用切片拼接的方法。
str9='hello,world!'
# 尝试修改字符串中的字符会引发错误
try:str9[0] = "H" # 这会引发 TypeError
except TypeError as e:print(f"错误: {e}")# 正确的方法是创建新字符串#
# 方法1: 使用切片和连接
new_text = "H" + str9[1:]
print(f"方法1结果: {new_text}")# 方法2: 转换为列表再转回字符串
text_list = list(str9)
text_list[0] = "H"
new_text = "".join(text_list)
print(f"方法2结果: {new_text}")#
# 验证 upper() 函数创建新对象
original = "hello world"
print(f"原始字符串: {original}")
print(f"原始字符串 ID: {id(original)}")
#
uppered = original.upper()
print(f"转换后字符串: {uppered}")
print(f"转换后字符串 ID: {id(uppered)}")
print(f"两个字符串是同一个对象吗? {original is uppered}") # 输出: False
#
# 其他转换函数示例
print("lower():", original.lower(), id(original.lower()))
print("title():", original.title(), id(original.title()))# 求长度
str10='hello,world!'
str_size=len(str10)
print('str_size:',str_size)