0

我正在编写一个需要我导入一组数据的代码。我在 python 文件夹中的什么位置保存数据以便程序识别它?

这是我的代码中的一个片段:

 from matplotlib.pylab import *
 from scipy import optimize

 # Read in the data, storing it as two 1D arrays, time and speed
 freefall=loadtxt('freefall.data')
 time  = freefall[:,0]
 speed = freefall[:,1]

我要导入的数据文件是 freefall.data。

4

2 回答 2

0

您必须将文件放在当前工作目录中。


如果您打算始终从命令行运行脚本而不是双击它,并且在没有先cd进入它所在的目录之前永远不要运行它,并且永远不要os.chdir在您的代码中执行,等等,那么您可以数数在工作目录上是脚本本身所在的目录,因此您只需将数据文件放在脚本旁边,您的脚本就会找到它。


但是,如果这些事情不全是真的,那么你真的没有地方可以把它放在那里。如果您当前的工作目录可以在任何地方,那么freefall.data必须放在任何地方!

所以,如果你想处理这些情况,你必须改变你的代码。

将其放在脚本的顶部:

import os
scriptdir = os.path.dirname(os.path.abspath(__file__))

然后像这样加载文件:

freefall=loadtxt(os.path.join(scriptdir, 'freefall.data'))

现在,freefall.data无论您如何运行脚本,都将始终在与脚本相同的目录中查找。所以,把它放在那里。

于 2013-10-04T01:32:45.823 回答
0

'freefall.data'如果将其放在执行脚本的同一目录中,则可以加载。

于 2013-10-04T01:11:47.017 回答