当我运行这个文件时,所有的东西似乎都计算正确,除了列表中的各个列表元素结束了这个事实。这使得我很难对列表的各个部分执行其他操作
我的代码:
growthslist = []
f = open("growths.txt",'r')
count = 0
for line in f:
count+=1
charnum = int((count/9))
f.seek(0)
for i in range(count):
growthslist.append(f.readline().splitlines())
namelist = []
namecounter = 0
for i in range(charnum):
namelist.append(growthslist[namecounter])
namecounter +=9
print(namelist)
当我运行此代码时,它返回[['Test 1']、['Test 2']、['Test 3']、['Test 4']、['Test 5']]。 我能做些什么吗
f.readline()
返回一行。没有理由分开.splitlines()
将其转换为一个列表本部分:
是你的问题
str.splitlines()
返回一个列表。这就是为什么你看到的是一个列表列表,而不是一个简单的列表。但是您不需要str.splitlines()
,因为您已经在使用file.readline()
。就用这个:如果需要从行中去掉多余的空格,请使用
str.strip()
:正如@idjaw在评论中指出的,实现目标的另一种方法是读取文件的内容,然后使用
splitlines()
分隔每一行,删除任何尾随空格:另外,考虑使用context manager statement ^{} 。它将确保您的文件将始终关闭,无论程序执行过程中出现任何错误或问题
你可以试试这个:
相关问题 更多 >
编程相关推荐