繁体   English   中英

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

[英]import text in multi-dimensional array in 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:
    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]

list一个上str其中每个字符是一个元素对象将返回的列表。 line首先被剥离,这将删除前导和尾随空格。 这是假设您实际上希望字符为char 如果您希望它们解析为int ,这将起作用:

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM