2 回答
TA贡献1712条经验 获得超3个赞
您可以将第 3 行及之后的所有点存储在列表列表中。
你只需要更换:
# parse remaining lines
.
.
.
# having trouble here...
.
.
.
和:
line = list()
points = list()
for i in range(2,len(data)):
line.extend(data[i].split())
points = [line[x:x+3] for x in range(0, len(line),3)]
或者如果您想将它们中的每一个存储为单独的列表,您可以执行以下操作:
x = list()
y = list()
pen = list()
for i in range(2,len(data)):
line = data[i].split()
for j in range(len(line)):
if j%3 == 0:
x.append(line[j])
elif j%3 == 1:
y.append(line[j])
else:
pen.append(line[j])
您可以通过这种方式轻松制作绘图。
TA贡献1856条经验 获得超11个赞
def regular_line_parse(data, line_number):
line_index = line_number - 1
scope_data = data[line_index]
line_parts = scope_data.split()
cluster_size = len(line_parts) / 3
X, Y, PEN = [], [], []
for i in range(cluster_size):
X.append(float(line_parts[3 * i]))
Y.append(float(line_parts[3 * i + 1]))
PEN.append(float(line_parts[3 * i + 2]))
return X, Y, PEN
此功能应该可以帮助您解决您标记的问题区域。它解析数据的特定行号(在您的情况下行号> 2)并将每种类型的值作为列表返回,以便您可以根据需要保存它们。
添加回答
举报