首页 > 其他分享 >模块的导入、包、规范书写

模块的导入、包、规范书写

时间:2023-06-07 20:22:04浏览次数:36  
标签:文件 log 书写 py 导入 模块 执行

绝对导入和相对导入

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

绝对导入:

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

相对导入:

在执行文件中运行导入文件 

  使用的符号是 .

  句点符号( . )

    . 表示当前的路径

    . . 表示的是上一级目录

相对导入就可以不按照执行文件所在位置为基准,而只参照当前文件所在位置

当文件中出现相对导入文件的语句,此文件就不能作为执行文件了,只能作为导入文件使用

 

包的使用

1.定义

  1.一个py文件就是一个模块

  2.包就是多个模块功能的结合体

 

2.和文件的区别

  包其实就是一个文件夹,包下有一个 __init__.py文件

  而普通文件夹是没有的

 

3.包首次被导入发生了3件事

  1.产生一个包的名称空间

  2.执行被导入包下的的__init__.py文件,然后把执行的数据丢到包的名称空间

  3.执行文件中产生的一个变量aaa指向这个包的空间名称

 

软件开发目录规范

不是必须遵守,但是最好遵守

 

bin

一般存放启动文件,或者是入口文件

start.py  

run.py

 

conf:config

一般存放配置文件,不会更改的数据

settings.py

 

lib:libray

库:里面一般放一些公共的文件

common.py

 

log:

日志:记录程序执行过程中发生的记录

log.log

 

core:

核心的

把项目的一些核心逻辑写在这个里面

src.py

 

db:database

把项目中一些需要使用到的数据存放到里面

userinfo.txt

 

readme:

写一些说明,对项目的解释

 

requirements.txt

存在项目中使用到所有的模块名

它有一个命令可以直接把你项目中最大的模块全部统计下来

 

标签:文件,log,书写,py,导入,模块,执行
From: https://www.cnblogs.com/caicaix/p/17464464.html

相关文章

  • clickhouse读写数据库3-- clickhouse_driver 模块
    这是用百度的文心一言生成的代码。刚开始2次都是错误的,明确指出clickhouse_driver没有占位符,让AI重新生成。重新生成了2次之后,才得到正确代码  #!/usr/bin/envpython#-*-coding:utf-8-*-#author:henry#desc:整理clickhouse读写的范例,方便日后读写click......
  • 相对导入、绝对导入、软件开发目录规范
    绝对导入和相对导入:1.注意事项:---当导入多个模块的时候,要始终以执行文件所在的位置为基准2.绝对导入:---始终以执行文件所在的位置查找3.相对导入:""" 使用的符号是. 句点符(.) .表示当前路径 ..表示的是上一级目录 """#相对导入就可......
  • 实验七 面向对象编程与内置模块
    实验任务一实验源码 classAccount:'''一个模拟银行账户的简单类'''def__init__(self,name,account_number,initial_amount=10):'''构造新账户'''self._name=nameself._card_no=accoun......
  • LDGRB-01 3BSE013177R1 ABB模块 DCS S800I/O 全新
    LDGRB-013BSE013177R1ABB模块DCSS800I/O全新LDGRB-013BSE013177R1ABB模块DCSS800I/O全新 什么是仪器仪表中的基金会现场总线?与传统概念相比,现场总线有哪些优势?什么是仪器仪表中的基金会现场总线? 基础现场总线是一种串行、双向、全数字网络,用作工厂或工厂自动......
  • 实验7 面向对象编程与内置模块
    实验任务1classAccount:#一个模拟账户类def__init__(self,name,account_number,initial_amount=10):'''构造新账户'''self._name=nameself._card_no=account_numberself._balance=initial_amount......
  • 实验7 面向对象编程与内置模块
    实验任务1源代码1classAccount:2def__init__(self,name,account_number,initial_amount=10):3self._name=name4self._card_no=account_number5self._balance=initial_amount67defdeposit(self,amount):8sel......
  • 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项目方式一:命令行中......
  • 实验7 面向对象编程与内置模块
    task1classAccount:def__init__(self,name,account_number,initial_amount=10):self._name=nameself._card_no=account_numberself._balance=initial_amountdefdeposit(self,account):self._balance+=accountdefwit......
  • 实验7 面向对象编程与内置模块
    实验任务1task1.py1classAccount:23def__init__(self,name,account_number,initial_amount=10):4self._name=name5self._card_no=account_number6self._balance=initial_amount7defdeposit(self,amount):......
  • Tengine 安装 nginx-module-vts 模块
    Tengine安装nginx-module-vts模块使用Tengine作为反向代理服务器,发现Tengine日志中接口请求过慢,需要绘制grafana展示详细的接口情况解决思路第一版解决思路,修改Tengine中accesslog日志格式,转行为json写入elk中,grafana从elk中获取日志信息绘图access......