Python学习小技巧之列表项的拼接

yipeiwu_com6年前Python基础

本文介绍的是关于Python实现列表项拼接的一个小技巧,分享出来供大家参考学习,下面来看看详细的介绍:

典型代码:

data_list = ['a', 'b', 'c', 'd', 'e', 'f'] 
separator = '\t' 
data_joined = separator.join(data_list) 
print(data_joined) 

其输出为:

a b c d e f 

应用场景

在实现很多业务需求的时候,需要将列表中的每一项按照某种分隔符拼接成一个串,以完成某种序列化模式,用于网络传输或者日志记录,亦或者是形成某种中间值供后续过程使用。

为什么会当成一个小技巧?

工作过程中,遇到类似的应用场景的时候,通过for循环来完成相关需求几乎就是第一个想到的,但是采用for循环的话,会多处几行代码,会花费多一点儿时间去理解代码的逻辑,特别是还涉及到需要处理最后一个列表项的情况下:我们不希望最终得到的字符串的后缀是一个分隔符。

带来的好处

1. 代码更加紧凑,减少了逻辑循环,使代码更易读

2. 内置方法,比自己拼接字符串执行效率更高

其它说明

1. 其实这个方法也可以应用于元组类型、集合类型,甚至是一个生成器类型等客迭代类型,而不仅仅限于列表类型;

2. 要求可迭代类型中的每个项都为字符串类型;

3. 在Java 8中,String类也提供了类似静态方法join,Java编程中也可以使用更紧凑的代码来拼接字符串了;

总结

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

python tools实现视频的每一帧提取并保存

python tools实现视频的每一帧提取并保存

Preface 最近在做 video caption 相关,要处理大量视频。 今天碰到一个问题,就是要将 YoutubeClips 数据集 中的 avi 格式的视频,将其视频中的每一帧提...

JupyterNotebook设置Python环境的方法步骤

JupyterNotebook设置Python环境的方法步骤

使用Python时,常遇到的一个问题就是Python和库的版本不同。Anaconda的env算是解决这个问题的一个好用的方法。但是,在使用Jupyter Notebook的时候,我却发现...

tensorflow更改变量的值实例

如下所示: from __future__ import print_function,division import tensorflow as tf #create a Var...

Python打印“菱形”星号代码方法

Python打印“菱形”星号代码方法

本人是一名python初学者,刚刚看到一道有趣的python问题,“用python如何在编译器中打印出菱形图案?” 因此决定尝试一下,代码不多,仅供参考。 代码 def print...

torch 中各种图像格式转换的实现方法

PIL:使用python自带图像处理库读取出来的图片格式 numpy:使用python-opencv库读取出来的图片格式 tensor:pytorch中训练时所采取的向量格...