如何将多个小字符串拼接成一个大字符串?
Posted Richardo-M-Lu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将多个小字符串拼接成一个大字符串?相关的知识,希望对你有一定的参考价值。
需求:
在设计网络程序时,我们自定义了一个基于UDP的网络协议,按照固定次序向服务器传递一系列参数:
hwDetect: "<0112>"
gxDepthBits: "<32>"
gxResolution: "<1024x768>"
gxRefresh: "<60>"
fullAlpha: "<1>"
lodDist: "<100.0>"
DistCull: "<500.0>"
在程序中我们将各个参数按次序收集到列表中:
["<0112>","<32>","<1024x768>","<60>","<1>","<100.0>","<500.0>"]
最终我们要把各个参数拼接成一个数据报进行发送.
"<0112><32><1024x768><60><1><100.0><500.0>"
思路:
1、迭代列表,连续使用‘+‘操作依次拼接每一个字符串
2、使用str.join()方法,更加快速的拼接列表中所有字符串
代码:
s = ["<0112>","<32>","<1024x768>","<60>","<1>","<100.0>","<500.0>"]
#方法1:
a = ‘‘
for x in s:
a += x
print(a)
#方法2:str.join(self, iterable, /),xample: ‘.‘.join([‘ab‘, ‘pq‘, ‘rs‘]) -> ‘ab.pq.rs‘
result = ‘‘.join(s)
print(result)
#附:若列表中有字符串又有整数,该如何快速拼接
l = [‘abc‘,1,34,‘cde‘]
#方法一:利用列表推导式,若列表非常长开销大
ret = ‘‘.join([str(x) for x in l])
print(ret)
#方法二:利用生成器推导式,开销小
ret2 = ‘‘.join(str(x) for x in l) # 生成器推导式作为参数时,()可以省略。等价于:‘‘.join((str(x) for x in l))。<generator object <genexpr> at 0x0000024375AF49A8>
print(ret2)
以上是关于如何将多个小字符串拼接成一个大字符串?的主要内容,如果未能解决你的问题,请参考以下文章
13如何拆分含有多种分隔符的字符串 14如何判断字符串a是否以字符串b开头或结尾 15如何调整字符串中文本的格式 16如何将多个小字符串拼接成一个大的字符串