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'
  • 'genetail.refGene=dist=112857,dist=27258'
    → <代码>'GeneDetail.refGene','dist=112857,dist=27258'

您可以使用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)

您可以使用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

是否需要一个新列表,其中每个元素都是如您所解释的元组?是否有一个文档化的规范用于您正在解析的数据?如果要保留所有文本,您可以使用
=
拆分每个元素,然后加入除第一个元素之外的元素。是否需要一个新列表,其中每个元素都是如您所解释的元组?是否有要分析的数据的文档化规范?如果要保留所有文本,可以使用
=
拆分每个元素,然后加入除第一个元素之外的元素。