Python 如何拆分具有多个“属性”的列表=&引用;?
假设我有一个列表,其中一些元素只有一个“=”,其他元素有很多:Python 如何拆分具有多个“属性”的列表=&引用;?,python,Python,假设我有一个列表,其中一些元素只有一个“=”,其他元素有很多: l1 = [ 'Gene.ensGene=ENSG00000111058', 'Gene.refGene=IL2,IL21', 'Gene.refGene=LIN7A,ACSS3', 'GeneDetail.ensGene=dist=38306,dist=117597', 'GeneDetail.refGene=dist=112857,dist=27258' ] 如何按第一个“=”拆分此列表
l1 = [
'Gene.ensGene=ENSG00000111058',
'Gene.refGene=IL2,IL21',
'Gene.refGene=LIN7A,ACSS3',
'GeneDetail.ensGene=dist=38306,dist=117597',
'GeneDetail.refGene=dist=112857,dist=27258'
]
如何按第一个“=”拆分此列表?例如:
→ <代码>'Gene.ensGene','ENSG0000111058''Gene.ensGene=ENSG0000111058'
→ <代码>'GeneDetail.refGene','dist=112857,dist=27258''genetail.refGene=dist=112857,dist=27258'
split()
方法,将maxslit
参数设置为1
:
l1=['Gene.ensGene=ensg0000111058','Gene.refGene=IL2,IL21','Gene.refGene=LIN7A,ACSS3','genetail.ensGene=dist=38306,dist=117597','genetail.refGene=dist=112857,dist=27258']
l2=[e.split(“=”,1)表示l1中的e]
打印(l2)
您可以使用Python的split()
方法,将maxslit
参数设置为1
:
l1=['Gene.ensGene=ensg0000111058','Gene.refGene=IL2,IL21','Gene.refGene=LIN7A,ACSS3','genetail.ensGene=dist=38306,dist=117597','genetail.refGene=dist=112857,dist=27258']
l2=[e.split(“=”,1)表示l1中的e]
打印(l2)
split()
有一个maxslit
参数,因此如果只想按遇到的第一个=
进行拆分,只需将maxslit
设置为1即可
'GeneDetail.ensGene=dist=38306,dist=117597'.split('=', maxsplit=1)
# ['GeneDetail.ensGene', 'dist=38306,dist=117597']
for line in l1:
split_line = line.split('=', maxsplit=1)
# do something
split()
'GeneDetail.ensGene=dist=38306,dist=117597'.split('=', maxsplit=1)
# ['GeneDetail.ensGene', 'dist=38306,dist=117597']
for line in l1:
split_line = line.split('=', maxsplit=1)
# do something
是否需要一个新列表,其中每个元素都是如您所解释的元组?是否有一个文档化的规范用于您正在解析的数据?如果要保留所有文本,您可以使用=
拆分每个元素,然后加入除第一个元素之外的元素。是否需要一个新列表,其中每个元素都是如您所解释的元组?是否有要分析的数据的文档化规范?如果要保留所有文本,可以使用=
拆分每个元素,然后加入除第一个元素之外的元素。