Python--软件⽬录结构
python新手适合的软件⽬的不必多说:提⾼项⽬可读性、可维护性
软件⽬录结构⽰例:
Game/
|-- bin/
| |-- game.py
|
|-- core/
| |-- tests/
| | |-- __init__.py
| | |-- test_main.py
| |
| |-- __init__.py
| |-- main.py
|
|-- logs/
| |-- err.log
| |-- run.log
|
|-- conf/
| |-- setting.py
| |-- abc.rst
|
|-- setup.py
|--
|-- README
那么问题来了,当类似于如上的⽬录结构时,我怎么在game.py中去调⽤setting.py或者main.py中的函数呢???解(有解给2分):
⾸先,需要通过os.path.abspath(__file__)获取到game.py的绝对路径,进⽽⽅便到setting.py⽂件的位置
然后,再通过os.path.dirname()⽅法回到⽂件的⽗级⽬录以及更上级的⽬录
最后,将项⽬的绝对路径通过sys.path.append()添加到系统环境变量中
此时,就可以调⽤啦,上栗⼦(真⾹!!!)
setting.py
1def Aset():
2print("这⾥是配置")
main.py
1def hello(name):
2print("hello,%s,这⾥是主函数" % name)
game.py
1import os
2import sys
3
4print(os.path.abspath(__file__))
5print(os.path.dirname(os.path.abspath(__file__)))
6print(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
7 BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
8 sys.path.append(BASE_DIR)
9
10from conf import setting
11from core import main
12
13 setting.Aset()
14 main.hello("tj")
15
16 >>>
17 F:\Python\资料\第⼆次学习\study\week4\day06\Game\bin\game.py
18 F:\Python\资料\第⼆次学习\study\week4\day06\Game\bin
19 F:\Python\资料\第⼆次学习\study\week4\day06\Game
20这⾥是配置
21 hello,tj,这⾥是主函数
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论