Python 3.x 如何在python中读取和存储文本文件中的k、m和数据点
我有一个文本文件,第一行包含k和m的值,从第二行开始,它包含所有m维数据点,如下所示Python 3.x 如何在python中读取和存储文本文件中的k、m和数据点,python-3.x,csv,Python 3.x,Csv,我有一个文本文件,第一行包含k和m的值,从第二行开始,它包含所有m维数据点,如下所示 5 4 1.6 0.3 15.0 14.1 1.3 9.1 0.9 12.4 5.6 9.9 14.4 18.6 25.0 1.3 12.9 2.1 17.2 3.4 9.2 14.7 2.3 2.2 1.2 9.5 ............. 如何阅读和存储 k = 5, m = 4 and x[0] = 1.6, y[0] = 0.3, z[0] = 15.0, t[0] = 14.1
5 4
1.6 0.3 15.0 14.1
1.3 9.1 0.9 12.4
5.6 9.9 14.4 18.6
25.0 1.3 12.9 2.1
17.2 3.4 9.2 14.7
2.3 2.2 1.2 9.5
.............
如何阅读和存储
k = 5,
m = 4 and
x[0] = 1.6, y[0] = 0.3, z[0] = 15.0, t[0] = 14.1 (this could be m dimensional)
x[1] = 1.3, y[1] = 9.1, z[1] = 0.9, t[1] = 12.4 (this could be m dimensional)
x[2] = 5.6, y[2] = 9.9, z[2] = 14.4, t[2] = 18.6 (this could be m dimensional)
........
x[n-1] = , y[n-1] = , z[n-1] = , t[n-1] = (this could be m dimensional)
读取所有数据点后,我想对其执行最远优先算法您不需要m维空间-您只需要列表 创建您的数据:
data = """5 4
1.6 0.3 15.0 14.1
1.3 9.1 0.9 12.4
5.6 9.9 14.4 18.6
25.0 1.3 12.9 2.1
17.2 3.4 9.2 14.7
2.3 2.2 1.2 9.5"""
fn = "file.txt"
with open(fn, "w") as f:
f.write(data)
将其读回适当的浮动列表数据结构:
fn = "file.txt"
all_data = []
with open(fn,"r") as f:
k,m = map(float,f.readline().strip().split())
for line in f:
if line.strip(): # weed out empties
line = list(map(float,line.split()))
all_data.append(line)
print("k:",k,"m:",m)
print(all_data)
给出以下输出:
k: 5.0 m: 4.0
[[1.6, 0.3, 15.0, 14.1], # each line is one row of your data
[1.3, 9.1, 0.9, 12.4], # its position the same as in your file
[5.6, 9.9, 14.4, 18.6], # and you can use those in whatever calculations
[25.0, 1.3, 12.9, 2.1], # you need to do
[17.2, 3.4, 9.2, 14.7],
[2.3, 2.2, 1.2, 9.5]]
你有列表中的所有数字,可以从那里开始
如果您需要它们作为x
,y
,z
,t
,您可以使用并利用分解从所有数据中收集它们:
x,y,z,t = map(list,zip(*all_data))
print(x)
print(y)
print(z)
print(t)
输出:
[1.6, 1.3, 5.6, 25.0, 17.2, 2.3] # x
[0.3, 9.1, 9.9, 1.3, 3.4, 2.2] # y
[15.0, 0.9, 14.4, 12.9, 9.2, 1.2] # z
[14.1, 12.4, 18.6, 2.1, 14.7, 9.5] # t
也用于:您的问题不清楚您需要帮助的部分。您是否已经执行了第1步:“学习Python”?@usr2564301不,我正在从头开始寻求帮助。好的,这就更清楚了。堆栈溢出不是教Python的合适网站。@usr2564301是的,我同意,并且我已经尝试过以下内容:Fh=open(“fft_datapoints.txt”,“r”)#print(Fh.read())k=5m=4 Data=[]x,y,z,k=[],[],[]对于Fh中的l:row=l.split()x.append(row[0])y.append(row[1])z.append(row[2])k.append(row[3]))但它如何能推广到m维空间,这就是我寻求帮助的原因!!然后把代码放在你的问题中,加上代码的问题所在。我对你的问题投了反对票(!),并对你的问题投了反对票(!!),因为它现在只不过是“这里,数据。给我代码。”因此我的第一个问题是“你知道Python吗?”。如果问题变好了,我会收回他们两个。