python中从str中提取元素到list以及将list转换为s
2020-11-13 本文已影响0人
Nikon937
在python中时常需要从字符串类型str中提取元素到一个数组list中,例如str是一个逗号隔开的姓名名单,需要将每个名字提取到一个元素为str型的list中。
如姓名列表str = 'Alice, Bob, John',需要将其提取为name_list = ['Alice', 'Bob', 'John']。
而反过来有时需要将一个list中的字符元素按照指定的分隔符拼接成一个完整的字符串。好在python中str类型本身自带了两种方法(method)提供了相应的功能。
str转为list
使用split方法
基本使用
<list> = <str>.split(<separator>)
<str>: 需要进行分隔提取的字符串
<separator>:从<str2>提取元素时依据的分隔符,一般也是一个str类型,如','
<list>: 返回值,list中每个元素是<str>中分隔后的一个片段
Eg:
str = 'abc,def,ghi'
a = str.split(',')
print(a)
得到结果:
['abc','def','ghi']
list转换为str
使用join方法
基本使用
<str> = <separator>.join(<list>)
<separator>: 分隔符,为str类型,如','
<list>: 需要进行合并的list对象,其中每个元素必须为str类型
<str>: 返回一个str对象,是将<list>中每个元素按顺序用分隔符<separator>拼接而成
Eg:
a = ','.join(['abc','def','ghi'])
print(a)
得到结果:
'abc,def,ghi'
注意:使用join方法时,括号内的参数list必须只包含str类型的成员 这两种方法均是str的方法,即.之前必须为str类型
与os.path.join()和os.path.split()的区别
在os模块中其系统路径分隔符对象os.path也有两个同名的方法join()和split(),使用和str中基本类似,其主要区别是str中同名方法的所有的list类型参数在这里均变成变成了tuple类型。