如何在python中将50个文件的内容合并到同一个列表中

如何在python中将50个文件的内容合并到同一个列表中,python,list,Python,List,我想在同一目录中50个文件的函数中使用以下代码 with open(files) as f: my_list = [int(i) for line in f for i in line.split()] 我试过了 with open(file1) as a, open(file2) as b, ... open(file50) as c: list1 = [int(i) for line in a for i in line.split()] list2 = [int

我想在同一目录中50个文件的函数中使用以下代码

with open(files) as f:
     my_list = [int(i) for line in f for i in line.split()]
我试过了

with open(file1) as a, open(file2) as b, ... open(file50) as c:
    list1 = [int(i) for line in a for i in line.split()]
    list2 = [int(i) for line in b for i in line.split()]
    ...
    list50 = [int(i) for line in c for i in line.split()]
    my_list = list1 + list2 + ... list50
从而将50个文件的内容合并到同一个数组中。但这太长太复杂了,而且也不起作用。我知道有一种更简单的方法可以做到这一点,我只是不知道如何做到这一点。非常感谢您的帮助。

您可以使用:

import fileinput


items = []
for line in fileinput.input(files):
    items.extend(int(x) for x in line.split())
它还可以用作上下文管理器:

with fileinput.input(files=files) as f:
    for line in f:
        items.extend(int(x) for x in line.split())
您可以为此使用:

import fileinput


items = []
for line in fileinput.input(files):
    items.extend(int(x) for x in line.split())
它还可以用作上下文管理器:

with fileinput.input(files=files) as f:
    for line in f:
        items.extend(int(x) for x in line.split())

也许我完全没有抓住要点,但你不需要同时打开所有文件,所以循环并逐个打开文件有什么不对

my_list = []

for filename in [file1,file2,file3]:
    with open(filename) as f:
        my_list += [int(i) for line in f for i in line.split()]

也许我完全没有抓住要点,但你不需要同时打开所有文件,所以循环并逐个打开文件有什么不对

my_list = []

for filename in [file1,file2,file3]:
    with open(filename) as f:
        my_list += [int(i) for line in f for i in line.split()]

其中一种情况是,
items.extend(int(x)for x in line.split())
可以替换为
items.extend(map(int,line.split())
@Ashwini如何对50个文件执行此操作?@Sekou我假设您已经有了一个文件列表,只需将列表传递给
fileinput.input
()。其中一种情况是
items.extend(int(x)表示line.split()中的x)
可以替换为
items.extend(map(int,line.split())
@Ashwini如何处理50个文件?@Sekou我假设您已经有一个文件列表,您只需要将列表传递到
fileinput.input
()。好奇这些文件是什么?CSV、tab、txt、XML?因为根据格式有各种解决方案。@Parfait它们是txt文件好奇这些文件是什么?CSV、tab、txt、XML?因为根据格式有各种解决方案。@Parfait它们是txt文件这很有效,只是没有输出正确的答案。我只使用了四个文件进行了测试,结果是错误的我的答案与应该的答案稍有不同。你知道为什么吗?请通过编辑你的问题并添加一个例子来定义正确答案。我们不是你知道的读心术者;)这很有效,只是没有输出正确答案。我用四个文件对它进行了测试,它给出的答案与它应该给出的答案略有不同。你知道为什么吗?请通过编辑你的问题并添加一个例子来定义正确答案。我们不是读心术的人,你知道;)