024模块的概念

###模块
calculate是自己写的,出现红色也可以调用

import   calculate      # 通过搜索路径找到calculate.py后,将calculate = calculate.py(的全部代码)
print(calculate.add(4,5))

from  calculate  import *
print(add(3,4),'    ',sub(3,4))

from  calculate  import  add  as  plus
print(plus(3,4))

###包
导入包中的模块

from  web  import  logger
logger.logger()

导入包中包的模块

from  web.web2  import  logger
logger.logger()

导入包中包模块的方法

from  web.web2.logger  import  logger
logger()

导入包解释了__init__文件
导入模块和包的区别,导入模块把模块解释了一遍,导入包只是解释了__init__文件

###项目中的模块导入比较复杂
简单目录结构,最后执行bin.py

logger

 

main

这里使用from module import  logger的原因是因为在bin下执行的,工作目录在那里,但是还是要使用sys模块添加工作路径。

 #bin
# 所以就有了下面的步骤

import  sys,os
BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))   #拿到这个路径的上两层路径,也就是atm_demo路径
print(BASE_DIR)          #F:python_codeatm_demo
sys.path.append(BASE_DIR)    #解释器添加这个路径,让解释器可以找到,解释器默认从当前目录开始找
from module import main main.main()
原文地址:https://www.cnblogs.com/-nbloser/p/8280985.html