如何使用枚举和拆分从列表中提取一组项目?
How to extract a group of items from a list using enumerate and split?
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()
在这个程序中,我要输入:
name:lol
age:3
gender:F
name:koi
age:4
gender:F
所以 x.split 应该是
['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
我在输入的开头添加了逗号','。您需要做的就是在拆分字符串之前替换第一个逗号。
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()
在这个程序中,我要输入:
name:lol
age:3
gender:F
name:koi
age:4
gender:F
所以 x.split 应该是
['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
我在输入的开头添加了逗号','。您需要做的就是在拆分字符串之前替换第一个逗号。