[英]Reading text file line by line in Python and storing into struct as coordinates for graphing
我有一個這樣訂購的文本文件:
A,1,1
B,1,5
C,3,7
D,5,5
E,5,1
字母是節點標簽,第一個數字是x坐標,第二個數字是ay坐標。
我正在嘗試將這些“節點”存儲為不同數組的片段(即,字母標簽存儲在元素位置的一個數組中,x坐標存儲在匹配元素位置的數組中,y坐標存儲到匹配元素的數組中元素位置)
因此,對於我的第一個節點,我將擁有:
A在nodeLabel[]
位置0
1在xCoord[]
位於位置0
1在yCoord[]
位置0
據我了解,這涉及一些概念。 首先,我需要打開文件並閱讀。
該文件需要讀取為逗號或\\ n並存儲值
然后,它需要切換數組並讀取下一個逗號或\\ n並存儲值。
然后,它需要切換數組並讀取下一個逗號或\\ n並存儲值。
如果.read函數碰到新行,則需要轉到下一行
我的問題是我不知道如何告訴Python我要將特定值存儲在哪里以及應將它們存儲在哪個數組中。 我發現了一些有關使用split()
函數的信息。 這能讓我告訴read()
函數何時停止嗎?
現在我有這個:
def file_stuff():
with open('Offices.txt') as input_data:
for line in input_data
if line.strip() == ',', '\n':
break
elif
我不知道該如何設置elif
條件。
因為我將必須實現GUI來繪制節點圖形,所以作為結構更有意義嗎?
像這樣:
def file_stuff():
nodes = []
X = []
Y = []
with open('Offices.txt') as input_data:
for line in input_data:
n, x, y = line.split(',')
nodes.append(n)
X.append(int(x))
Y.append(int(y))
這很簡單,因為它不檢查輸入文件的有效性,但是如果文件格式正確,它應該執行您想要的操作。 另一個問題是您的函數不會返回任何值,如果要進行進一步的操作,應添加以下內容:
return (n, X, Y)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.