python入门第十九天_包 package

Posted 独孤_败天

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python入门第十九天_包 package相关的知识,希望对你有一定的参考价值。

 

 测试:

新建一个目录: ATM ,目录下新建三个包 conf / bin / module 。并且在包 conf 新建一个 .py 文件 bin.py 。在 module 新建两个文件 logger.py / main.py 。

1 def logging():
2     print(\'logging.............\')
logger.py
1 from module import logger
2 
3 def main():
4     logger.logging()
5 
6 # main()
main.py
1 from module import main
2 
3 main.main()
bin.py

 

其中 bin.py 作为程序的进入接口

 运行起来,似乎没有问题。

 

"D:\\Program Files (x86)\\python36\\python.exe" F:/ATM/bin/bin.py
logging.............

Process finished with exit code 0
运行结果

但是其中隐藏了一个错误:

如下演示: 查看python解释器的运行时的查找目录。。。。。

对比

 

解决方式:

 1 import sys
 2 import os
 3 BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
 4 sys.path.append(BASE_DIR)
 5 # sys.path.append(\'F:\\\\ATM\')
 6 from module import main
 7 
 8 from conf import setting
 9 
10 main.main()
11 
12 # print(os.path.abspath(__file__))# 拿到绝对路径 F:\\ATM\\bin\\bin.py
13 #
14 # print(os.path.dirname(__file__))#拿到绝对路径的目录F:/ATM/bin
15 # print(os.path.dirname(os.path.abspath(__file__)))#F:\\ATM\\bin
16 # print(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))#F:\\ATM
17 # BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
18 # sys.path.append(BASE_DIR)
19 
20 # print(__file__)# 拿到相对路径  bin.py
21 #
22 #
23 # print(sys.path)

 

以上是关于python入门第十九天_包 package的主要内容,如果未能解决你的问题,请参考以下文章

大数据入门第十九天——推荐系统与mahout入门与概述

python入门第十六天__列表生成式

python入门第十六天__匿名函数,返回函数,闭包

python入门第十七天_生成器

Python 入门第十五天

Python 入门第十三天