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)并將每種類型的值作為列表返回,以便您可以根據需要保存它們。
添加回答
舉報