在IDLE中导入脚本
这个问题可能之前有人问过,而且其实很基础,但我还是想问:
我现在用的是Windows 7。我安装了Python 2.4.4和3.1的Idle。我有一些脚本散落在我电脑的不同地方。我想导入这些脚本,试试它们的类型。我该怎么做呢?
在Ubuntu系统中,如果我在命令行输入import scriptname
,只要我从中调用python
的那个文件夹里有scriptname
,就能成功导入。那么如果我想从其他地方导入一个脚本,该怎么做呢?
3 个回答
1
在工作目录中,有一个文件叫做 myscript.py:
import math as ma
def A_sphere(r):
return 4 * ma.pi * r**2
r = 6700000 # r_Earth_meters
i = 0
while i < 100000:
i += 1
python3 # idle
>>> from myscript import * # will run any code in the script
>>> i
100000
>>> radius = r
>>> A_sphere(radius)
598284904949640.2
>>>
>>> print(ma.pi)
3.141592653589793
4
要从IDLE导入一个脚本,你可以这样做:
>>> import os
>>> os.chdir('C:\\Users\\You\\Some\\Arbitrary\\Path')
>>> import scriptname
记住,你需要在调用构造函数时加上scriptname.
,比如scriptname.myClass(...)
。
如果你对脚本做了修改,你需要像这样重新加载它:
>>> import imp
>>> imp.reload(scriptname)
(如果你只是想玩玩某个脚本里的类型,而且这个脚本只包含函数和类的定义(没有运行的代码),那么有个更简单的方法。你只需在IDLE中打开这个脚本,然后去Run>Run Module
。使用这种方法时,不需要在构造函数前加scriptname.
。)
8
在空闲状态下,你可以添加一个包含你的脚本文件 scriptname.py 的路径。
>>> import pprint
>>> import sys
>>> print pprint.pprint(sys.path)
# you could just move your scriptname.py to a directory in the sys.path list
>>> sys.path.append(r"C:\Users\You\")
>>> import scriptname
你还可以在 Windows 系统中自定义 PYTHONPATH 这个环境变量,把其他目录也加进去,比如 "C:\Users\You\lib"。