一、字符串的驻留机制
优缺点:
1.当需要值相同的字符串时,可以直接从字符串池里拿出来使用。避免频繁创建和销毁,提高效率和节约内存,因此拼接字符串和修改字符串是会比较影响性能。
2.在需要进行字符串拼接时,建议使用str类型的join方法,而非+,因为join()方法是先计算出所有字符串中的长度,然后再拷贝,只new一次对象,比使用+效率高。
二、字符串拆分操作
1.左拆分split
s1 = "hello world python"
print(s1.split()) # 不带分割符,默认以空字符进行拆分
s2 = "hello|world|python"
print(s2.split(sep="|")) # 使用|分隔符进行拆分,也可不带sep,写为s2.split("|")
print(s2.split(sep='|', maxsplit=1)) # maxsplit=1,最多拆分一次
2.右拆分rsplit
s1 = "hello world python"
print(s1.rsplit()) # 不带拆分字段,默认以空字符进行拆分
s2 = "hello|world|python"
print(s2.rsplit(sep="|")) # 具有sep参数,即使用|字符进行拆分
print(s2.rsplit(sep='|', maxsplit=1)) # maxsplit=1,最多拆分一次
replace,join函数
1.替换replace
s = "hello python"
print(s.replace("python", "java")) # 使用java字符串替换python
s1 = "hello python python python"
print(s1.replace("python", "java", 2)) # 使用java字符串替换python,且只替换两次
2.拼接join
lis = ["hello", "java", "python"]
print("|".join(lis)) # 使用|来进行字符串拼接
print("".join(lis)) # 使用空字符拼接,会生成一个新的字符串
tp = ('hello', 'Java', 'Python')
print("".join(tp)) # 元组也能进行拼接操作
print("*".join("python")) # 将字符串当作了字符数组