19 导入模块成员冲突 总结

成员和冲突

#如果导入的方法存在冲突时,进行取别名
import db as d1
from utils.db import db as d2
#也支持下面的方法导入
from utils.db import x1,x3,x3
from utils.db import * #此方式不推荐
def run():
    d1.f1()
    d1.f2()
    d2.xxx()
if __name__ == "__main__":
    run()    

导入方法时,建议导入到模块级别,这样查找方法也好找一些

from utils.net import db 这种方式也可以,只是调用方法时,需要使用db.x1进行调用

image-20240817210920688

小结

  • 模块 ,本质就是一个py文件或者文件夹
  • 导入模块时根据sys.path路径寻找相关名称
脚本的所有目录

安装目录

安装目录/site-pagckages

- 

  • 主动添加
import sys
sys.path.appedn('.....')
  • pycharm自动将项目根目录添加到sys.path里面
  • 导入
#用于同级目录导入
import xxx  

#适应于不同文件夹下模块导入
from xxx import xxxx 
  • 主文件
#主文件标志 ,一般代码都写在def run() 里面
def run():
    pass
 

if __name__ == '__main__': 
    run()

  • 导入模块时,冲突命名
from xxx import xxx as xxx
  • 导入成员
#将模块内的多个方法同时导入
from xxx import x,x,x,  
  • 注意事项:千万不要让自己创建的py文件与内置模块同名
radom/re/datatime/xml/configparse/....
posted @ 2024-09-28 08:45  jhchena  阅读(1)  评论(0编辑  收藏  举报