【问题】
之前导入另外一个Python模块,包括自己的模块,都是直接通过 import 模块文件名,即可实现导入。
后来想要把多个子模块都放到当前文件夹下面的某个子文件夹中,但是却不知道如何导入了。
【解决过程】
1.通过类似于
import subFolder/subModule
是无法导入的,因为不支持这种写法。
2.后来看到python怎么import指定文件夹下的模块,才知道,原来可以通过把对应路径加入到os的path中即可。
3.后来就去将自己的BlogsToWordpress中的众多博客的模块py文件都移至到一个子文件夹libs/blogModules中了:
libs中有:
crifanLib.py
BeautifulSoup.py
libs/blogModules中有:
BlogNetease.py
BlogBaidu.py
BlogSina.py
BlogQQ.py
BlogRenren.py
BlogCsdn.py
BlogSohu.py
BlogBlogbus.py
这样,对应代码本来是:
import os; import re; import sys; import math; ...... import crifanLib; import BlogNetease; import BlogBaidu; import BlogSina; import BlogQQ; import BlogRenren; import BlogCsdn; import BlogSohu; import BlogBlogbus;
改为对应的:
import os; import re; import sys; sys.path.append("libs"); sys.path.append("libs/blogModules"); import math; ...... import crifanLib; import BlogNetease; import BlogBaidu; import BlogSina; import BlogQQ; import BlogRenren; import BlogCsdn; import BlogSohu; import BlogBlogbus;
就可以实现将各个子模块BlogBaidu,BlogNetease等都正常导入了。
【总结】
1.如果第三方库,和当前python脚本都在同一个文件夹下面,那么直接通过 import xxx,即可导入,即可使用第三方库。
2. 如果第三方库,在别的路径下,比如此处在子文件夹下,那么可以通过将其路径添加到os.path中方法:
sys.path.append(文件夹路径);
实现让python可以找到对应的库,实现可以导入并使用第三方库的目的。
3. 需要注意一点的是,需要自己保证导入的各个模块之间,以及和系统模块之间,没有出现重名的模块,就行了。
转载请注明:在路上 » 【已解决】Python中导入子文件夹中的模块