python自定义模块导入方法,文件夹,包的区别
2024-10-15 21:25:21
python模块导入,网上介绍的资料很多,方法也众说纷纭。根据自己的实践,感觉这个方法最简单直接,而且可以与主流的python ide生成的工程是一样的。
规则只有三条
1. 严格区分包和文件夹。包的定义就是包含__init__.py的文件夹。如果没有__init__.py,那么就是普通的文件夹。
2. 导入package。 在python 安装目录的site-package文件夹中新建xxx.pth,内容是需要导入的package所在的文件夹路径。
3. 导入模块。就是一般的模块导入写法,注意只要包路径,不要文件夹路径。
示例:
以上面工程为例,
总共有4个包,分别是:package,package1, package2, folder2.(注意,folder1不是package,因为它没有__init__.py)。
这些包所在的文件夹共有两个,test以及test/folder1。 注意,package2所在的文件夹是test,虽然它是包含在folder2里面,但是folder2是一个包,不是一个文件夹。
因此在site-package中新建一个XXX.pth, 里面添加上test以及test/folder1的绝对路径即可。
模块导入比较简单,只要依次填包名就可以了,但注意只要包名
如果需要导入module2,则import folder2.package2.module2
如果需要导入module1,则import package1.module1 注意,路径中没有folder1,因为folder1是文件夹,不是包。
最新文章
- 在idea中maven项目jdk编译version总是跳到1.5
- hive外部表的建立与数据匹配
- 使用keytool 生成证书
- 因为此控件已在 web.config 中注册并且与该页位于同一个目录中
- xcode8 导入 dylib
- javascript 中文数字阿拉伯数字转换类 Nzh
- mysql和oracle日期和字符相互转换
- 安装ipython notebook
- 对开发中常见的内存泄露,GDI泄露进行检测
- FZU 1502 Letter Deletion(DP)
- 套接字API
- pgAdmin的数据导入之CSV
- Mac电脑使用:您的安全性偏好设置仅允许安装来自App Store和被认可的开发者的应用(解决方法)
- Qt error ------ qRegisterMetaType() 跨线程信号与槽的形参携带
- poj 3041(最大匹配问题)
- 【LeetCode】- Length of Last Word(最后一个单词的长度)
- php调java接口
- SQL Server2012创建约束图解
- 二:Bootstrap-css组件
- 明确出需求 然后开会评审 要什么接口 接口参数、返回json内容、格式 协定好 在做
热门文章
- 双拓扑排序 HDOJ 5098 Smart Software Installer
- 477 Total Hamming Distance 汉明距离总和
- Problem E: 穷游中国在统题 优先队列 + 模拟
- JSP九大内置对象的作用和用法总结【转】
- Java中“==”的使用,以及“==”和equal的比较
- ios学习笔记 UITableView(纯代码) (一)
- 前端之CSS创建的样式
- Java_静态变量
- Ajax深入理解
- Java URL 中文乱码解决办法