我有一个像这样订购的文本文件:
A,1,1
B,1,5
C,3,7
D,5,5
E,5,1
字母是节点标签,第一个数字是x坐标,第二个数字是ay坐标。
我正在尝试将这些“节点”存储为不同数组的一部分(即,字母标签存储在元素位置的一个数组中,x坐标存储在匹配元素位置的数组中,y坐标存储到匹配元素的数组中元素位置)
因此,对于我的第一个节点,我将拥有:
A在中的位置0 nodeLabel[]
1位于0的位置 xCoord[]
1位于0的位置 yCoord[]
根据我的理解,这涉及一些概念。首先,我需要打开文件并从中读取。
该文件需要读取为逗号或\ 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)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句