4-4 如何将多个小字符串拼接成一个大字符串?

2019-02-10  本文已影响0人  Diolog

实际案例:

在程序中我们将各个参数按次序收集到列表中:
["<0112>","<32>","<1024x768>","<60>","<1>","<100.0>","<500.0>"]
最终我们要把各个参数拼接成一个数据报进行发送.
"<0112><32><1024x768><60><1><100.0><500.0>"

解决方案:

  1. 迭代列表,连续使用'+'操作依次拼接每一个字符串
  2. 使用str.join()方法,更加快速的拼接列表中所有字符串

解决方案1:

from functools import reduce
l = ["<0112>","<32>","<1024x768>","<60>","<1>","<100.0>","<500.0>"]
s = reduce(lambda x,y:x+y,l)
print(s)

输出结果:
'<0112><32><1024x768><60><1><100.0><500.0>'

join测试

';'.join(['abc','123','xyz'])  =>  'abc;123;xyz'
''.join(['abc','123','xyz'])  => 'abc123xyz'

''.join(['abc',123,'xyz'])
=>Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: sequence item 1: expected str instance, int found

解决方案2:

s = ''.join(l)
print(s)

输出结果:
'<0112><32><1024x768><60><1><100.0><500.0>'
上一篇下一篇

猜你喜欢

热点阅读