当我将numpy导入到我的python脚本时,脚本会执行两次。 有人能告诉我如何能阻止这一点,因为我的脚本中的一切都需要两倍的时间?
这是一个例子:
#!/usr/bin/python2 from numpy import * print 'test_start' lines = open('test.file', 'r').readlines() what=int(lines[0])+2 nsteps = len(lines)/what atom_list=[] for i in range(0,nsteps*what): atom_list.append(lines[i].split()) del atom_list[:] print 'test_end'
输出是:
test_start test_end test_start test_end
那么,我的脚本是先用普通的python执行,然后再用numpy执行? 也许我应该说,我还没有与numpy工作,只是想开始testing它。
干杯
你的脚本被命名为numpy.py
,无意中导入它自己。 由于模块级代码在导入时被执行,导入行会导致它运行,然后一旦完成,它就会再次运行其余的。
(关于脚本为什么可以导入的解释 )
建议:
numpy.py
以外的numpy.py
if __name__=='__main__'
成语 (您应该始终在您的脚本中使用它) 除此之外,正如已经指出的那样, from numpy import *
是强烈的不鼓励。 要么使用import numpy
或普通import numpy as np
。