拼接字符串
使用“+”运算符可以完成对多个字符串的拼接,“+”运算符可以连接多个字符串产生一个字符串对象。
mot_en = "Remembrance is a form of meeting."
mot_cn = "记忆是一种相遇。"
print(mot_en + '——' + mot_cn)
#输出:Remembrance is a form of meeting.——记忆是一种相遇。
合并字符串
合并字符串与拼接字符串不用,它会将多个字符串采用固定的分隔符连接在一起。合并字符串可以使用字符串对象的join()方法实现,语法结构如下:
strnew = string.join(iterable)
- strnew:表示合并后生成的新字符串
- string:字符串类型,用于指定合并时的分隔符
- iterable:可迭代对象,该迭代对象中的所有元素(字符串表示)将被合并为一个新的字符串。string作为边界点分割出来
list_name = ['绮梦', '冷伊一', '香凝', '黛兰']
print('*'.join(list_name))
输出:绮梦*冷伊一*香凝*黛兰
注意:
如果要合并str1和str2,可以用str1+str2,但是不能用str1.join(str2),这个是错误的。
应该避免在循环中使用“+”和“+=”运算符累加字符串。这是因为字符串是不可变的,这样做会创建不必要的临时对象。推荐将每个子字符串加入列表,然后在循环结束后使用join()方法连接列表。
因为字符串是不可变类型,如果要进行字符串的拼接,只能申请新的内存保存新拼接的字符串。这样每进行一次拼接就需要申请一次内存并存储结果,这会使得程序效率低。
join只会进行一次内存申请,因此运行效率相对于+会快很多。