Python_字符串连接

时间:2023-03-09 16:58:03
Python_字符串连接
 #join() 与split()相反,join()方法用来将列表中多个字符串进行连接,并在相邻两个字符串之间插入指定字符
li=['apple','peach','banana','pear']
sep=','
s=sep.join(li)
print(s) #使用逗号作为连接符
s1=':'.join(li) #使用冒号作为连接符
print(s1)
s2=''.join(li)
print(s2)
#使用split()和join()方法可以删除字符串中多余的空白字符,如果有连续多个空白字符,只保留一个
x='aaa bb c d e fff'
print(' '.join(x.split())) def equalilent(s1,s2): #判断两个字符串在python意义上是否等价
if s1 == s2:
return True
elif ' '.join(s1.split()) == ' '.join(s2.split()):
return True
elif ''.join(s1.split()) == ''.join(s2.split()):
return True
else:
return False
print(equalilent('pip list','pip list'))
# True
print(equalilent('[1,2,3]','[1,2,3]')) #判断两个列表写法是否等价
# True
print(equalilent('[1,2,3]','[1,2, 3]'))
# True
print(equalilent('[1,2,3','[1,2 ,3,4]'))
# False
'''使用运算符"+"也可以连接字符串,但该运算符设计大量数据的复制,效率非常低,不适合大量长字符串的连接。''' import timeit #使用列表推导式生成10000个字符串
strlist = ['This is a long string that will not keep in memory.' for n in range(10000)] #使用字符串对象的join()方法连接多个字符串
def use_join():
return ''.join(strlist) #使用运算符"+"连接多个字符串
def use_plus():
result=''
for strtemp in strlist:
result = result+strtemp
return result if __name__=='__main__':
#重复运行次数
times=1000
jointimer = timeit.Timer('use_join()','from __main__ import use_join')
print('time for join:',jointimer.timeit(number=times))
# time for join: 0.1647309590189252
plustimer = timeit.Timer('use_plus()','from __main__ import use_plus')
print('time for plus:',plustimer.timeit(number=times))
# time for plus: 2.045372327003861