• Day4-软件目录开发规范


    层次清晰的目录结构:
    1. 可读性高: 不熟悉这个项目的代码的人,一眼就能看懂目录结构,知道程序启动脚本是哪个,测试目录在哪儿,配置文件在哪儿等等。从而非常快速的了解这个项目。
    2. 可维护性高: 定义好组织规则后,维护者就能很明确地知道,新增的哪个文件和代码应该放在什么目录之下。这个好处是,随着时间的推移,代码/配置的规模增加,项目结构不会混乱,仍然能够组织良好。

    目录组织方式:

    README注意事项:

    1.软件定位,软件的基本功能。
    2.运行代码的方法: 安装环境、启动命令等。
    3.简要的使用说明。
    4.代码目录结构说明,更详细点可以说明软件的基本原理。
    5.常见问题说明。

    关于requirements.txt和setup.py

    setup.py:setup.py来管理代码的打包、安装、部署问题,python使用setuptools来安装部署。

    requirements.txt:解决依赖哪些包,使用pip install -r requirements.txt

    不同目录模块间进行互相调用!

    问题:如何实现执行文件foo跨目录调用main.py主程序。

    即如何实现可执行文件atm.py调用core目录下的main.py和conf下的settings.py?说明:项目名Atm的首字母大写,main.py也不是主逻辑程序,它是调用core下的各个文件。

    动态查找绝对路径:

    1 import os
    2 print(os.path.abspath(__file__))
    C:UsersHWPycharmProjectsG3day4Atminatm.py

    atm.py文件:

    import os
    import sys
    #要想atm.py调用main.py,必须添加相对路径
    #步骤1.先找绝对路径os.path.abspath(__file__);2.os.path.dirname()往上一级,找到bin目录下;3.再往上一级,找到Atm目录;
    BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
    
    sys.path.append(BASE_DIR) #添加环境变量
    # import conf,core 就可以导入文件了,然后core.main
    from conf import settings
    from core import main
    
    main.login()
    View Code

    main.py文件:

    1 def login():
    2     print("Welcome to my atm")
    View Code

    执行atm.py文件,执行结果:

    Welcome to my atm

  • 相关阅读:
    zoj 2001 Adding Reversed Numbers
    hdu 2391 Filthy Rich (简单dp)
    hdu 1128 (hash)
    华为交换机有关BGP的相关配置
    Cent os 6.8添加中文字体
    Liunx之始
    自己鼓励自己
    UML用例图中包含(include)、扩展(extend)和泛化(generalization)三种关系详解(转载)
    20091125心情感觉还不错
    DataTable 行列转换
  • 原文地址:https://www.cnblogs.com/wolfs685/p/6729000.html
Copyright © 2020-2023  润新知