如果想使用非当前模块中的代码,需要使用Import,这个大家都知道。
如果你要使用的模块(py文件)和当前模块在同一目录,只要import相应的文件名就好,比如在a.py中使用b.py:
import b
或者 from b import b.类或者是方法
但是如果要import一个不同目录的文件(例如b.py)该怎么做呢?
首先需要使用sys.path.append方法将b.py所在目录加入到搜素目录中。然后进行import即可,例如
import sys
sys.path.append(‘c:\\xxxx\\b.py‘) or sys.path.append(‘c:/xxxx/b.py‘)
但是如果写成sys.path.append(‘c:\xxxx\b.py‘),会出现错误 ImportError: No module named xxxxxx 这是因为:
sys模块是使用c语言编写的,因此字符串支持 ‘\n‘, ‘\r‘, ‘\t‘等来表示特殊字符。所以要写成 sys.path.append(‘c:\\xxxx\\b.py‘) or sys.path.append(‘c:/xxxx/b.py‘)