繁体   English   中英

通过文本输入创建列表列表

[英]Creating a list of list from a text input

我正在尝试创建一个包含从.txt文件中读取的列表的列表。 内部列表最好是整数

我已经创建了两个从文本文件接收器创建的变量,第一个是接收器,而raw是从[1:]开始的原始文本文件的一部分

来自txt文件的示例输入

4,0,5,3,0,0,0,2,4,0,0,0,5,0,0,0,0

水槽= 4

原始= ['0','5','3','0','0','0','2','4','0','0','0','5' ,“ 0”,“ 0”,“ 0”,“ 0”]

第一个数字表示除法(4),并且随着列表的增大或减小而发生良好的变化。 所以我想创建类似g = [[0,5,3,0],[0,0,2,4],[0,0,0,5],[0,0,0,0 ]]

抱歉,我删除了尝试。

class Reader:
    #place holder for rawData
   rawData = []
   file = open("test4.txt")
   rawData = file.read()
   file.close()     
   rawData = rawData.split(',')

r = Reader()
sink = int(r.rawData[0])
source = 0 #(this is for calculations in other parts of the program)
raw = r.rawData[1:]

假设未加工的长度总是可以被水槽整除的,这将为您提供所需的东西!

sink = 4
raw = ['0', '5', '3', '0', '0', '0', '2', '4', '0', '0', '0', '5', '0', '0', '0', '0']

g = [raw[i:i+sink] for i in range(0, len(raw), sink)]

print(g)

如果您不喜欢它,那么这就是循环:

sink = 4
raw = ['0', '5', '3', '0', '0', '0', '2', '4', '0', '0', '0', '5', '0', '0', '0', '0']

g = []
for i in range(0, len(raw), sink):
    g.append(raw[i:i+sink])

print(g)

暂无
暂无

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

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