python开发规范和包
作者:互联网
开发规范是开发要遵守的协议标准,它能快速查找,查看方便,便于修改;软件开发的首要规范就是从设计目录结构开始。
首先在目录文件中,要有如下几个目录文件:
1.bin,存放启动文件
开启项目的start文件。
import sys,os from core import src BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__))) sys.path.append(BASE_DIR) if __name__ == '__main__': src.run()
2.config,配置文件,存放settings文件
存放项目中的一些路径和信息
import os BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__))) DB_PATH=os.path.join(BASE_DIR,'db','db.json')
3.core,主逻辑,存放src文件
主逻辑部分
from conf import settings from lib import common import time
4.db,数据文件,存放项目相关的数据文件
5.lib,公共组件,存放common文件
6.log,日志项,存放logger文件
7.README,项目说明书
包
一个文件夹下有__init__.py文件,就是包,py2中,没有__init__就报错,__init__强制报错,py3中,__init__没有也可以,可以快速分辨
使用包的前提:必须在包的外面使用包
import bao from bao import *
导入包使用*,是在__init__中控制
导入模块使用*,是在本模块中控制
导包就是导包下面的__init__文件,
使用包的时候,后面不能再出现'.'
from和import中间可以出现'.'
__all__ = [''],在__init__里中控制包中要导入的模块,模块中要导入的功能
绝对路径: 从包的外部往内部找
相对路径: 在包的内部文件中找其他包的文件:
1.在启动文件中先找到一个内部文件
2.在这个内部文件中用from ..包名 import 内部文件名
. 当前路径
.. 父级路径
实例:
bao的外部,一个启动文件:包
定义一个大包:bao,在bao下设立foo,get,test包,foo下面加host文件,get下面加get_bao文件
在host文件中调用get_bao
先执行包,找到host文件 from bao.foo import host host找get_bao from ..get import get_bao 在文件内部用绝对路径: from bao.get import get_bao
将启动文件放到bao内:
import sys 启动文件在哪儿,就把当前文件的路径添加到环境变量中 当host文件为启动文件时,要把最上层包的路径添加进去 sys.path.insert(0,r'最上层包的路径') from get import get_bao
如果用包,就写一个run文件:
把run文件和包的总目录放在同级,
尽量不要在包的内部调用,sys.path会随着文件的不同而改变
标签:__,文件,get,python,规范,开发,bao,import,path 来源: https://www.cnblogs.com/py8318/p/10324507.html