Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中以多维数组导入文本_Python - Fatal编程技术网

在python中以多维数组导入文本

在python中以多维数组导入文本,python,Python,我知道如何从数组中的文件导入文本,以及如何删除每行末尾的“\n”,但我不知道如何拥有子列表,每个子列表包含每行。我需要加载一个网格来加密它 示例: 第1行:101\n 第2行:010\n 第3行:110\n ->我想得到这个结果[[1,0,1],[0,1,0],[1,1,0]]试试这个: text_file = r"/path/to/your/file/" definitive_list = [] array = [] with open(text_file, "r") as f:

我知道如何从数组中的文件导入文本,以及如何删除每行末尾的“\n”,但我不知道如何拥有子列表,每个子列表包含每行。我需要加载一个网格来加密它

示例:

第1行:101\n

第2行:010\n

第3行:110\n

->我想得到这个结果[[1,0,1],[0,1,0],[1,1,0]]

试试这个:

text_file = r"/path/to/your/file/"
definitive_list  = []
array = []

with open(text_file, "r") as f:
    for line in f:
        line = line.rstrip()
        for digit in line:
            array.append(digit)
        definitive_list.append( array )
        array = []

您可以在两行中完成此操作

with open('path/to/file') as f:
    line_lists = [list(line.strip()) for line in f]
str
对象上的
list
将返回一个列表,其中每个字符都是一个元素<代码>行首先被剥离,这将删除前导和尾随空格。这是假设您实际希望字符为
char
。如果您希望将它们解析为
int
,这将起作用:

with open('path/to/file') as f:
    line_lists = [[int(x) for x in line.strip()] for line in f]

请注意,这里应该有一些错误检查,如果任何字符无法解析为int,上面的示例将崩溃。

非常感谢,只需返回确定的_列表,它就可以工作了,干得好。