码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2020-07-09 23:55:16      阅读:97      评论:0      收藏:0      [点我收藏+]

标签:使用   定义   join()   列表   str   网络   ret   数据报   服务   

需求:
在设计网络程序时,我们自定义了一个基于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)

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

标签:使用   定义   join()   列表   str   网络   ret   数据报   服务   

原文地址:https://www.cnblogs.com/Richardo-M-Q/p/13276890.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!