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不像JS或者PHP这种弱类型语言里在字符串连接时会自动转换类型,如果直接将字符串和数字拼接会直接报错. 如以下的代码: # coding=utf8 str = '你的分数是:' num = 82 text = str+num+'分 | 琼台博客' print text 执行结果 直接报错:TypeError: cannot concatenate 'str' and 'int' objects 解决这个方法只有提前把num转换为字符串类型,可以使用bytes函数把int
-
python分割和拼接字符串
关于string的split 和 join 方法对导入os模块进行os.path.splie()/os.path.join() 貌似是处理机制不一样,但是功能上一样. 1.string.split(str=' ',num=string.count(str)): 以str为分隔,符切片string,如果num有指定值,则仅分隔num个子字符串.S.split([sep [,maxsplit]]) -> 由字符串分割成的列表 返回一组使用分隔符(sep)分割字符串形成的列表.如果指定最大分割数,则在
-
Python字符串拼接、截取及替换方法总结分析
本文实例讲述了Python字符串拼接.截取及替换方法.分享给大家供大家参考,具体如下: python字符串连接 python字符串连接有几种方法,我开始用的第一个方法效率是最低的,后来看了书以后就用了后面的2种效率高的方法,跟大家分享一下. 先介绍下效率比较低的方法: a = ['a','b','c','d'] content = '' for i in a: content = content + i print content content的结果是:'abcd' 后来我看了书以后,发现书上
-
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 应用场景 在实现很多业务需求的时候,需要将列表中的每一项按照某种分隔符拼接成一个串,以完成某种序列化模式,用于
-
Python学习小技巧之列表项的排序
本文介绍的是关于Python列表项排序的相关内容,分享出来供大家参考学习,下面来看看详细的介绍: 典型代码1: data_list = [6, 9, 1, 3, 0, 10, 100, -100] data_list.sort() print(data_list) 输出1: [-100, 0, 1, 3, 6, 9, 10, 100] 典型代码2: data_list = [6, 9, 1, 3, 0, 10, 100, -100] data_list_copy = sorted(data_li
-
Python学习小技巧之列表项的推导式与过滤操作
本文介绍的是关于Python中列表项的推导式与过滤操作的相关内容,分享出来供大家参考学习,下面来一起看看吧: 典型代码1: data_list = [1, 2, 3, 4, 0, -1, -2, 6, 8, -9] data_list_copy = [item for item in data_list] print(data_list) print(data_list_copy) 输出1: [1, 2, 3, 4, 0, -1, -2, 6, 8, -9] [1, 2, 3, 4, 0, -1
-
Python学习小技巧总结
三元条件判断的3种实现方法 C语言中有三元条件表达式,如 a>b?a:b,Python中没有三目运算符(?:),但Python有它自己的方式来实现类似的功能.这里介绍3种方法: true_part if condition else false_part a,b=2,3 c=a if a>b else b a,b=2,1 c=a if a>b else b >>> print c 2 利用and-or条件判断的特性来实现三元条件判断 首先介绍一下,and和or的用法:
-
Python学习小技巧之利用字典的默认行为
本文介绍的是关于Python利用字典的默认行为的相关内容,分享出来供大家参考学习,下面来看看详细的介绍: 典型代码1: from collections import defaultdict if __name__ == '__main__': data = defaultdict(int) data[0] += 1 print(data) 输出1: defaultdict(<type 'int'>, {0: 1}) 典型代码2: if __name__ == '__main__': data
-
Python使用zip合并相邻列表项的方法示例
本文实例讲述了Python使用zip合并相邻列表项的方法.分享给大家供大家参考,具体如下: 1>使用zip()函数和iter()函数,来合并相邻的列表项 >>> x [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> zip(*[iter(x)]*2) [(1, 2), (3, 4), (5, 6), (7, 8)] >>> zip(*[iter(x)]*3) [(1, 2, 3), (4, 5, 6), (7, 8, 9)] >
-
常用的10个Python实用小技巧
大家好,都说追女孩方法大于态度,学Python也是,今天就给大家分享的是我在用Python编写程序时常用的一些小技巧. 1.多次打印同一个字符 在Python中,不用特地写一个函数来重复打印同一个字符,直接使用Print就可以 tem = 'I Love Python ' print(tem * 3) I Love Python I Love Python I Love Python 2.在函数内部使用生成器 在写Python程序时,我们可以在函数内部直接使用生成器,这样可以使代码更简洁. su
-
3 个超有用的 Python 编程小技巧
目录 1.如何按照字典的值的大小进行排序 2.优雅的一次性判断多个条件 3.如何优雅的合并两个字典 1.如何按照字典的值的大小进行排序 我们知道,字典的本质是哈希表,本身是无法排序的,但 Python 3.6 之后,字典是可以按照插入的顺序进行遍历的,这就是有序字典,其中的原理,可以阅读 Python3.6 之后字典是有序的? . 知道了这一点,就好办了,先把字典的键值对列表排序,然后重新插入新的字典,这样新字典就可以按照值的大小进行遍历输出. 代码如下: >>> xs = {'a':
-
微信小程序实现列表项左滑删除效果
本文实例为大家分享了微信小程序实现列表项左滑删除效果的具体代码,供大家参考,具体内容如下 效果 图片 WXML <view class="container"> <!-- 收货地址 --> <view class="address"> <view class="left"> <view class="icon"> <image src="../../i
-
微信小程序实现列表项上移下移效果
本文实例为大家分享了微信小程序实现列表项上移下移的具体代码,供大家参考,具体内容如下 需要实现的效果:点击向下按钮时所选项内容和下一项内容交换,向上按钮则相反,删除按钮则点击时删除所选项那一列内容 index.wxml <view class="subject" wx:for="{{sublist}}" wx:key="index"> <view>{{index+1}}.{{item}}</view>
随机推荐
- 在Ajax中使用Flash实现跨域数据读取的实现方法
- 浅谈jsp文件和HTML互相引入的乱码问题
- JavaScript中的Primitive对象封装介绍
- XP系统优化和安全限制修改集合附注册表文件下载
- javascript 删除数组中重复项(uniq)
- JavaScript设计模式之外观模式实例
- Jquery 获得服务器控件值的方法小结
- PHP中防止直接访问或查看或下载config.php文件的方法
- SWFUpload与CI不能正确上传识别文件MIME类型解决方法分享
- Codeigniter实现发送带附件的邮件
- 挑战最棒的留言本的源码(五)
- C++之WSAAsyncSelect模型实例
- nodejs入门详解(多篇文章结合)
- Linux下C开发环境的构成和安装
- JavaScript 定义function的三种方式小结
- java使用泛型实现栈结构示例分享
- 微信小程序 video组件详解
- Linux VPN pptpd构架方法
- 使用C#调用系统API实现内存注入的代码
- c#用for语句输出一个三角形的方法