Python 如何使用enumerate和split从列表中提取一组项?

Python 如何使用enumerate和split从列表中提取一组项?,python,file,record,enumerate,Python,File,Record,Enumerate,在这个程序中,我想输入: f=open('insert.dat','w+') while True: name=raw_input("ENter name:") age=input("Enter age") gen=raw_input("gender") f.write(name+','+str(age)+','+gen+'') ch=raw_input("continue") if(ch=='n'): break f=open('insert.

在这个程序中,我想输入:

f=open('insert.dat','w+')
while True:
   name=raw_input("ENter name:")
   age=input("Enter age")
   gen=raw_input("gender")
   f.write(name+','+str(age)+','+gen+'')

   ch=raw_input("continue")
   if(ch=='n'):
      break
f=open('insert.dat','r+')
x=f.readline()
x=x.split(',')
for index,line in enumerate(x):
        print line,index
f.seek(0,0)
f.close()
所以x.split应该是

name:lol
age:3
gender:F
name:koi
age:4
gender:F
现在,我想单独列出第一个详细信息,如:

['lol',3,'F','koi',4,'F']

但是当我使用上面的格式时,当与split一起使用时,每个单词都作为一个列表出现。如何使用enumerate和split(仅枚举和拆分)获得这样的结果。??谢谢

使用与您相同的逻辑。 您所做的错误是将下一个细节添加到上一个数据的末尾

您可以执行以下操作来避免它:

 ['lol',3,'F'].

我在输入的开头添加了逗号“,”。您需要做的就是在拆分字符串之前替换第一个逗号。

但我仍然无法从['lol',3,'F',koi',4,'F']中提取['lol',3,'F']。我希望是列表形式的谢谢,
f=open('insert.dat','w+')
individual = []
while True:
   name=raw_input("ENter name:")
   age=input("Enter age")
   gen=raw_input("gender")
   f.write(','+name+','+str(age)+','+gen+'')
   individual.append([name,age,gen])
   ch=raw_input("continue")
   if(ch=='n'):
      break
f=open('insert.dat','r+')
x=f.readline()
x=x.replace(',', '', 1)
x=x.split(',')
for index,line in enumerate(x):
    print line,index
f.seek(0,0)
f.close()
for ind in individual:
    print ind