List 将文本文件放入列表中
这是我的文本文件的组成部分: “文件1 文件2“ 到目前为止,这是我的代码:List 将文本文件放入列表中,list,file,python-3.6,List,File,Python 3.6,这是我的文本文件的组成部分: “文件1 文件2“ 到目前为止,这是我的代码: def create_filenames_list(filename): filenames_list = [] file = open('input.txt', "r").readlines() for line in file: filenames_list = line return filenames_list.split() def main():
def create_filenames_list(filename):
filenames_list = []
file = open('input.txt', "r").readlines()
for line in file:
filenames_list = line
return filenames_list.split()
def main():
filenames_list = create_filenames_list('input.txt')
print(filenames_list)
我得到的结果是:
“文件2”
我所期望的是:
['file1','file2']而不是
def create_filenames_list(filename):
filenames_list = []
file = open('input.txt', "r").readlines()
for line in file:
filenames_list.append(line)
return filenames_list
def main():
filenames_list = create_filenames_list('input.txt')
print(filenames_list)
filenames_list = line
(它会用一个字符串
两次覆盖列表文件名
,因此它最终只会包含最新的一个-“file2”
)
使用
添加到列表。如果文本文件的每个文件名都在单独的一行上,则“file.readlines()”将很容易生成所需的列表 此外,在循环之前,不需要将整个文件读入变量(file=open('input.txt',“r”).readlines())。您可以直接在文件对象上循环(f=open('input.txt','r')) 您的所有文件名是否都必须像看上去的那样位于同一行上?如果是这样的话,您只需获取第一行,然后将其拆分到列表中即可
filenames_list = open('input.txt',"r").readline().split()
在代码中,“file”变量已经是文本文件中每行的列表。下面的循环在该列表上循环,最终只返回文件中的最后一行。最后,只返回文件最后一行中以空格分隔的值的列表
同样,如果您将每个文件名放在文件的单独一行,您的代码可以大大简化:
def create_filenames_list(filename):
return open(filename,"r").readlines()
def main():
filenames_list = create_filenames_list('input.txt')
print(filenames_list)
def create_filenames_list(filename):
return open(filename,"r").readlines()
def main():
filenames_list = create_filenames_list('input.txt')
print(filenames_list)