如何将来自 Python 中函数的数据写入文件?
how do I write data to file that came from a function in Python?
我有一个接受 4 个参数的函数,如下所示:
def Euler(nsteps, k , m , b):
nsteps = int(time_interval/step_size)
# Create empty arrays ready for the values of x and v
x = np.zeros(nsteps)
v = np.zeros(nsteps)
# Choose some initial conditions
x[0] = 0.0
v[0] = -1.0
for i in range(nsteps-1):
# Calculate the acceleration at step i
a = -(k/m)*x[i] - (b/m)*v[i]
# For each configuration at step i, calculate x and v for the later step i+1
x[i+1] = x[i] + v[i]*step_size
v[i+1] = v[i] + a*step_size
return x, v
我想将 x 和 v 写入文件,但我不太确定如何。这就是我所拥有的,但它不起作用。请问有人知道如何解决这个问题吗?
Euler_method = open('Euler_method.txt' , 'w')
Euler_method.write(Euler(nsteps, k, m, b))
Euler_method.close()
您的函数 returns 一个元组,如果将元组转换为字符串,您可以轻松地将其写入外部文件。因此,只需更改您的代码:
Euler_method = open('Euler_method.txt' , 'w')
Euler_method.write(str(Euler(nsteps, k, m, b)))
Euler_method.close()
但不清楚您的 objective 是什么,以及这是否是完成您的 objective 的正确方法。
我有一个接受 4 个参数的函数,如下所示:
def Euler(nsteps, k , m , b):
nsteps = int(time_interval/step_size)
# Create empty arrays ready for the values of x and v
x = np.zeros(nsteps)
v = np.zeros(nsteps)
# Choose some initial conditions
x[0] = 0.0
v[0] = -1.0
for i in range(nsteps-1):
# Calculate the acceleration at step i
a = -(k/m)*x[i] - (b/m)*v[i]
# For each configuration at step i, calculate x and v for the later step i+1
x[i+1] = x[i] + v[i]*step_size
v[i+1] = v[i] + a*step_size
return x, v
我想将 x 和 v 写入文件,但我不太确定如何。这就是我所拥有的,但它不起作用。请问有人知道如何解决这个问题吗?
Euler_method = open('Euler_method.txt' , 'w')
Euler_method.write(Euler(nsteps, k, m, b))
Euler_method.close()
您的函数 returns 一个元组,如果将元组转换为字符串,您可以轻松地将其写入外部文件。因此,只需更改您的代码:
Euler_method = open('Euler_method.txt' , 'w')
Euler_method.write(str(Euler(nsteps, k, m, b)))
Euler_method.close()
但不清楚您的 objective 是什么,以及这是否是完成您的 objective 的正确方法。