Python子包引用父包下文件

作者:Davidszhou   来源:SEO优化博客   时间:2017-10-16 15:03:39   点击:

  python子包引用父包下文件
Python引用模块使用:
1、import ***
2、from *** import ***
3、import ***.***
4、import *** as ***
等的几种方法,但是有一点如果同一个包下的子包引用父包的文件应该如何处理?
最近在看flask web开发的内容,在自己根据理解实践的时候想在子包内引用父包中的config.py文件,按照import怎么搞都是提示错误,百度了一下解决办法,可以将上级的工作目录添加进模块的搜索列表中。
方法比较笨一点,解决思路,获得当前文件所在目录,将当前目录名替换掉,得到主包路径添加进模块搜索路径内。具体实施代码:
#coding:utf-8
import sys,os
#这条可以忽略开始
print(os.path.dirname(os.path.realpath(__file__)))
#这条可以忽略结束(os.path.realpath:获得文件路径名包含文件名,os.path.dirname:返回文件所在的目录去掉文件名)
configpath = os.getcwd().replace('\\func','')
#os.getcwd获得当前工作的目录不包含文件名,等效上面代码运行结果
sys.path.append(configpath)
#将得到的主包路径添加进模块搜索路径内
import config
#在引用config文件
print(config.dbname)
具体运行如下图:

Python子包引用父包下文件
问题:
这个提前知道当前文件名,有个弊端,Python如何获得当前工作的文件名?或者说是不是还有其他解决办法,望相告,可以再下面留言,刚接触Python。
学习:共同学习,共同分享,共同进步的过程

TAGS:Python , 模块 , 引用

来自Davids zhou博客原创文章请尊重作者:http://www.zongk.com/zongk/97.html转载请标注此链接

网站统计
文章总数:129
今天发布:0
软件资源数:18