首页 > 其他分享 >相对导入、绝对导入、软件开发目录规范

相对导入、绝对导入、软件开发目录规范

时间:2023-06-07 18:45:46浏览次数:43  
标签:文件 软件开发 py 导入 模块 目录

绝对导入和相对导入:

1. 注意事项:


---
      当导入多个模块的时候,要始终以执行文件所在的位置为基准

2. 绝对导入:

---
     始终以执行文件所在的位置查找

3. 相对导入:

"""
		使用的符号是.
		句点符(.)
			. 表示当前路径
			.. 表示的是上一级目录
	"""
    # 相对导入就可以不按照执行文件所在的位置为基准,而只参照当前文件所在的位置
   
    """当文件中出现相对导入的语句,此文件就不能作为执行文件了,只能作为导入文件使用"""


4.列如:


    1.绝对导入的格式为 import A.B 或 from A import B。
    2.相对导入格式为 from . import B 或 from ..A import B,.代表当前模块,..代表上层模块,...代表上上层模块,依次类推。

包的使用:

讲述之前我们先明确如下:

定义:

模块:一系列功能的结合体

包:就是多个模块的结合体
	# 包就是文件夹,里面存放多个py文件
 
"""导包就是在导包下的__init__.py文件"""

  init.py文件:表示这是一个包,init文件可以是一个空文件,
      也可以包含一些初始化代码或者变量__all__赋值。(目的避免一些文件的命名影响搜索路径中的有效模块。)

软件开发目录规范:

# 规范不是必须要遵守的,只不过你遵守的话会更好
软件开发目录规范:
	就是以后在开发项目的时候,文件夹的名字该怎么起更好
    

软件开发目录框架介绍:

1. bin
	一般存放一些启动文件或者叫入口文件,当启动文件只有一个的时候,我们其实可以放到项目的跟目录下面
   - start.py   启动文件可以放在bin文件夹下面,或者直接在外面也可以
   - run.py
    
2. conf:config
    一般存放一些配置文件
    - settings.py    里面放项目的默认配置   一般都是大写
    
3. lib:library
     库:里面一般放一些公共的文件
    - common.py
    
4. log:
    日志
    记录一些程序在执行过程中发生的一些记录
    - log.log
    
5. core:
    核心的
    把项目的一些核心逻辑、功能写在这个里面
    - src.py
    
6. db:
    - database
    把项目中一些需要使用到的数据存放在这里
    - userinfo.txt
    
7. readme:
    写一些说明,对项目的解释

    github:https://github.com/
    # github其实就是一个代码仓库,它是国外的,有时候可能进不去,有时候进的很慢
    # gitee:码云https://gitee.com/

 requirements.txt
    # 存你项目中使用到的所有模块名
    # 它有一个命令可以直接把你项目中用大的模块全部统计下来

附上相关图片:

标签:文件,软件开发,py,导入,模块,目录
From: https://www.cnblogs.com/huangchunfang/p/17463361.html

相关文章

  • vue之vue-cli创建项目、vue项目目录结构、vue项目编写规范、 es6导入导出语法
    目录一、vue-cli创建项目1.1、背景知识单页面应用:spa单文件组件(一个组件一个文件)一个组件中有的东西使用vue-cli创建vue项目,才能使用单文件组件vue-cli脚手架,1.2使用vue-cli创建vue项目1.3vue-cli创建项目vue-cli命令行创建项目使用vue-cli-ui创建运行vue项目方式一:命令行中......
  • 使用Navicat导入《MySQL必知必会》书上用例数据库的方法
    在Navicat中新建一个名为mysqk_crash_course的数据库此数据库初始为空接着将下载好的的sql文件导入完成:再导入另一个sql文件:完成:大功告成:书中用例sql文件下载地址......
  • mysql 超大文件导入 超时报错
    亲测:只要导入出错就把如下语句执行就可以了。至今屡试不爽。setglobalmax_allowed_packet=10000000000; setglobalnet_buffer_length=1000000; SETGLOBAL interactive_timeout=288000000;SETGLOBAL wait_timeout=28800000;以上语句的解释:–max_allowed_packet=X......
  • python脚本 用sqoop把mysql数据导入hive
    主要功能:用python把mysql数据库的数据导入到hive中,该过程主要是通过python语言操作sqoop.#!/usr/bin/envpython#coding:utf-8#--------------------------------#Createdbycocoon16/2/23#---------------------------------#Comment:主要功能说明:初始化业务数......
  • yum源导入KEY值----warning: rpmts_HdrFromFdno: Header V3 RSA/SHA1 Signature, key
    Totalsize:42MDownloadingPackages:warning:rpmts_HdrFromFdno:HeaderV3RSA/SHA1Signature,keyIDc105b9de:NOKEYRetrievingkeyfromfile:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5GPGkeyretrievalfailed:[Errno14]Couldnotopen/readfile:///......
  • 记录--你真的能区分JavaScript的各种导入导出方式吗?
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助前言......
  • Mysql Workbench的CSV数据导入
    首先新建一个数据库和要从.csv导入数据的表,注意数据格式的选取。然后将csv文件用NOTEPAD++打开,将文件格式转换为UTF8.转化完成即可关闭。在MysqlWorkbench中想要导入数据的表,右键选取TableDataImportWizard进入数据导入向导,在文件路径中找到csv文件,下一步。选择Useex......
  • Mac 在指定目录下打开终端的方式
    参考资料:1、mac当前位置打开终端https://jingyan.baidu.com/article/ce436649281a293773afd3d8.html2、如何在MAC指定文件夹打开终端(terminal)https://www.jianshu.com/p/3e1b5fe48952......
  • BootStrap_实现导入Excel(BootStrap-InputFile)【实例】
    BootStrap_实现导入Excel(BootStrap-InputFile)【实例】weixin_40877388于2020-03-3114:52:47发布分类专栏:BootStrap版权订阅专栏一、前言在批量加入学生信息的时候,我们通常采用Excel导入的方式,方便,快捷。本篇使用SpringBoot+BootStrap-InputFile+poi的结合方式,写......
  • 学习通如何下载章节目录里的ppt
    第一步:打开学习通页面,按下f12进入开发者工具第二步:选择网络,并点击想要下载的ppt,然后点击刷新网页,右下出现不同类型文件第三步:选择xhr型文件且名称比较奇怪的(如下图所示带有数字字母)文件第四步:将上步所述.xhr文件预览,并看到“pdf:”对应链接,将其copy,并在网页中打开,即可进行下......