python学习之-软件开发的目录规范

通常软件目录下有几个标准文件夹

软件主文件夹命名,通常都是大写(ATM_SHOPPING)

-------------------------------------------------------------------------

bin : 启动文件文件夹(整个软件的启动文件)

conf : 软件配置文件(软件全局性的一些变量和参数)

core :核心逻辑

db :专门放数据相关的文件(比如账号数据等)

lib :自定义的模块

log :日志文件

Readme.txt 软件介绍的文本

---------------------------------------------------------------------------

bin :start.py  启动文件

import sysimport os

BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__))) #就是取执行文件的绝对路径,然后获取执行文件的目录赋值给一个变量sys.path.append(BASE_DIR)from core import srcsrc.run()

PS:调用sys和os模块,os模块下有个path模块下有个dirname模块和abspath模块,用abspath获取绝对路径,dirname就是取执行文件的目录,有几层目录取几次dirname即可

PS:有一个内置的全局变量是__file__,是当前执行文件的绝对路径

PS:sys模块下有一个path模块,指的是环境变量,将变量放入环境变量即可调用所有模块

conf : setting.py 配置文件

import osBASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))  #动态获取路径,获取当前文件的绝对路径,然后获取执行文件的目录,有几层目录写几次log_path=r‘%s\log\transaction.log‘ %BASE_DIR  #这里将日志文件的路径以动态方式放入log_path变量以供其他文件调用

core : src.py 核心代码 (主要的业务功能,就是一些主功能)

func_dic={    ‘1‘:login,    ‘2‘:register,    ‘3‘:shopping,    ‘4‘:transfer,    ‘5‘:pay}def run():    while True:        print("""        0 退出        1 登录        2 注册        3 购物        4 转账        5 支付        """)

choice =input(‘请输入操作>>>: ‘).strip()        if choice == ‘0‘:break        if choice in func_dic:            func_dic[choice]()        else:            print(‘输出的指令不存在,请重新输入‘)

PS:就是一个首页的功能,软件相关功能所有的集合文件

db : 数据文件

lib  : 自定义的库

  项目中共用的功能,主功能需要调用的功能等模块

common.py

import timefrom conf import settings  #从conf文件夹内导入setting模块def logger(msg):    with open(r‘%s‘ %settings.log_path, ‘at‘, encoding=‘utf-8‘) as f: #直接获取setting模块内的日志变量        f.write(‘%s %s\n‘ % (time.strftime(‘%Y-%m-%d %H:%M:%S‘),msg))

log : transaction.log(这个根据软件来命名,没有固定格式)

小常识:

(一)

日志功能需要调用时间模块

import time

写入时间功能:time.strftime(‘%y-%m-%d %H:%M:%S‘) #(这是固定格式)

(二)

项目文件夹放在顶级,建在顶级,就可以在导入模块的时候可以用tab补全,或者弹出提示

(三)

启动文件放在项目文件夹的根目录下,就无需处理环境变量,因为软件的根目录就是当前启动文件的文件夹(软件的环境变量都是以执行文件为准)

原文地址:https://www.cnblogs.com/shizhengquan/p/10017480.html

时间: 2024-11-06 18:24:53

python学习之-软件开发的目录规范的相关文章

python学习_软件开发的目录规范以及示例代码(解决软件移植的路径问题)

目录结构: Package |------bin |------start.py |------conf |------settings.py |------core |------src.py |------db |------table.db |------lib |------common.py |------log |------transaction.log |------README 1.在src中编写核心代码 from lib import common def shopping(

软件开发的目录规范/定制程序的入口/引用配置文件/引用自定义模块/logging模块/日志继承与propagate属性/通过字典导入配置/日志模块在项目中的使用

02.软件开发的目录规范单独的文件放单独的东西py文件src 程序的核心有关setting 配置有关common 常用功能的集合体 文件夹lib 库log 日志conf 配置文件有关的db 数据有关的文件夹bin 整个程序的入口放启动文件core 里面写主逻辑=====================read me 解释说明文件夹里面做什么 原文地址:https://www.cnblogs.com/wangmiaolu/p/8734561.html

软件开发的目录规范

在实际开发的过程中,不可能和之前一样将所有的代码都写在一个py文件里,这样会导致程序的可读性,和可移植性变的极差,所以要分目录进行开发. 一般分为几部分: 1.bin:里面放的一般是可执行文件 2.conf:里面一般是放配置文件 3.lib:库,即一些公用的功能 4.core:里面一般是写核心逻辑 5.db:数据处理 6.interface:接口层,连接core和db,实现这两部分的解耦合 7.log:主要是日志相关的信息 原文地址:https://www.cnblogs.com/xiaocao

1.模块2.循环导入问题及解决思路3.区分py文件的两种类型4.模块的查找顺序5.模块的绝对导入与相对导入6.项目开发的目录规范

一.模块 什么是模块? 模块就是一系列功能的结合体 模块的三种来源: 1.内置的(python解释器自带的) 2.第三方的(别人写的) 3.自定义的(你自己写的) 模块的四种表现形式: 1.使用python编写的py文件(也就是意味着py文件也是可以称之为模块 2.已被编译为共享库或DLL的或C++扩展(了解) 3.把一系列模块组织到一起的文件夹(文件夹下有一个__init__.py文件,该文件夹称之为包) 4.使用C编写并连接到Python解释器的内置模块 模块选择 1.用别人写好的模块(内置

python学习笔记九——文件与目录

1.python进行文件读写的函数是open或file类 mode:r  只读 r+   读写 w  写入,先删除原文件,再重新写入,如果文件没有则创建 w+  读写,先删除原文件,再重新写入,如果文件没有则创建(可写入和输出) a  写入,在文件末尾追加新的内容,文件不存在则创建 a+  读写,在文件末尾追加新的内容,文件不存在则创建 b  打开二进制文件,可与r,w,a,+结合使用 U  支持所有的换行符号,"\r","\n","\r\n"

python学习day4软件目录结构规范

为什么要设计好目录结构? 参考:http://www.cnblogs.com/alex3714/articles/5765046.html "设计项目目录结构",就和"代码编码风格"一样,属于个人风格问题.对于这种风格上的规范,一直都存在两种态度: 1.一类同学认为,这种个人风格问题"无关紧要".理由是能让程序work就好,风格问题根本不是问题: 2.另一类同学认为,规范化能更好的控制程序结构,让程序具有更高的可读性: 我是比较偏向于后者的,因为

python学习之-项目开发目录规范

软件目录结构规范有什么好处: 通过规范化,能够更好的控制软件结构,让程序具有更高的可读性. 项目目录组织结构如下: Foo/ # 项目名 --bin/ # 可执行文件目录 --foo # 可执行程序 --core/ # 主程序目录 --test/ # 测试用例(用于对项目中功能性测试) --__init__.py --test_main.py --__init__.py --main.py # 主程序入口 --conf/ # 配置文件目录 --settings.py #配置文件 --logs/

python 开发搭建目录规范

软件目录结构规范有什么好处: 通过规范化,能够更好的控制软件结构,让程序具有更高的可读性. 项目目录组织结构如下: Foo/ # 项目名 --bin/ # 可执行文件目录 --foo # 可执行程序 --core/ # 主程序目录 --test/ # 测试用例(用于对项目中功能性测试) --__init__.py --test_main.py --__init__.py --main.py # 主程序入口 --conf/ # 配置文件目录 --settings.py #配置文件 --logs/

python学习笔记 操作文件和目录

如果我们要操作文件.目录,可以在命令行下面输入操作系统提供的各种命令来完成.比如dir.cp等命令. 如果要在Python程序中执行这些目录和文件的操作怎么办?其实操作系统提供的命令只是简单地调用了操作系统提供的接口函数,Python内置的os模块也可以直接调用操作系统提供的接口函数. 打开Python交互式命令行,我们来看看如何使用os模块的基本功能: >>> import os >>> os.name # 操作系统类型 'posix' 如果是posix,说明系统是L