模块的定义&引入
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # Author:woshinidaye 4 ''' 5 模块:从逻辑上组织python代码,本质就是.py文件 6 python package:带有一个__init__.py文件的文件夹 7 '''''' 8 9 模块的引入 10 方法一: 11 from test import * 12 #这等于是把test函数中定义的代码复制到了当前文件;所以引用方法就变了,直接引用直接的test中的函数即可 13 14 方法二: 15 import test 16 #这样引入,test中的函数就变成了test模块的一种用法 17 #引用方式是test.XXXXX 18 19 方法一容易出现模块的修改,和混用。 20 from test import logger as test_loggger 21 22 python package是一堆模块的集合,用了组合模块。 23 导入package 24 import package_test #其实就是在解释包下面的__init__.py文件 25 ''' 26 27 28 import os,sys 29 # print(__file__) #这是获取文件的相对路径,因为pychomre是通过绝对路径执行,所以显示为绝对路径 30 base_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 31 sys.path.append(base_dir) #导入了ATM这个python package就能将改目录下的 子python package直接引用了 32 print(base_dir,sys.path) 33 sys.path.insert(0,base_dir) #查询环境变量时按照顺序查询的,这样可以优先查到。 34 # import conf,main #直接这样好像会报错,因为我导入的是一个包!!导入一个包只会执行这个包下面的__init__.py文件,而不会执行导入包下面的其他模块!!!! 35 36 #方法一:from xxx import xxxx 37 from atmconf import test 38 sys.path.insert(0,base_dir) 39 40 方法二:修改__init__.py 41 from . import test
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· Qt个人项目总结 —— MySQL数据库查询与断言