Python package和folder
在Python项目里面的区分,按照如下规定进行:
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是文件夹,不是包)。
当package和py文件同名时,解释器会优先读取package的内容。
from后面可以写包名或者是包里的py文件名,import可以引入py文件名,*和函数名
Python package和folder的更多相关文章
- graphterm 0.40.1 : Python Package Index
graphterm 0.40.1 : Python Package Index graphterm 0.40.1 Downloads ↓ A Graphical Terminal Interface ...
- eclipse package,source folder,folder区别及相互转换
今天遇到一个问题:在com.a.b.c这个包路径下建一个package,但是不知为什么就会自动编程folder,而且在这个“package”下的所有property文件读不到.所以看了一下文章:在ec ...
- Ghost.py 0.1b3 : Python Package Index
Ghost.py 0.1b3 : Python Package Index Ghost.py 0.1b3 Download Ghost.py-0.1b3.tar.gz Webkit based web ...
- pyrailgun 0.24 : Python Package Index
pyrailgun 0.24 : Python Package Index pyrailgun 0.24 Download pyrailgun-0.24.zip Fast Crawler For Py ...
- qrcode 4.0.4 : Python Package Index
qrcode 4.0.4 : Python Package Index qrcode 4.0.4 Download qrcode-4.0.4.tar.gz QR Code image generato ...
- bottle-session 0.3 : Python Package Index
bottle-session 0.3 : Python Package Index bottle-session 0.3
- bottle-session 0.2 : Python Package Index
bottle-session 0.2 : Python Package Index bottle-session 0.2 Download bottle-session-0.2.tar.gz Redi ...
- django-cookieless 0.7 : Python Package Index
django-cookieless 0.7 : Python Package Index django-cookieless 0.7 Download django-cookieless-0.7.ta ...
- Beaker 1.6.4 : Python Package Index
Beaker 1.6.4 : Python Package Index Beaker 1.6.4 Download Beaker-1.6.4.tar.gz A Session and Caching ...
随机推荐
- Linux IO实时监控iostat命令详解(转)
简介 iostat主要用于监控系统设备的IO负载情况,iostat首次运行时显示自系统启动开始的各项统计信息,之后运行iostat将显示自上次运行该命令以后的统计信息.用户可以通过指定统计的次数和时间 ...
- mysql基础之三:char与varchar区别,varchar(M)能存多少
char与varchar区别 char (13)长度固定, 如'1234567890' 存储需要空间 10个字符; varchar(13) 可变长 如'1234567890' 需要存储空间 11字符; ...
- nginx实现防盗链配置方法介绍
有些朋友觉得防盗链就是防止图片,其实有很多东西要进行防盗链了,下面我来介绍在nginx中实现防盗链配置方法有对图片防盗链与下载资源等. 防盗链配置 假设网站域名是 www.php100.com. 编辑 ...
- Centos7 忘记密码的情况下,修改root或其他用户密码
转载:https://blog.csdn.net/wcy00q/article/details/70570043 应用场景 linux管理员忘记root密码,需要进行找回操作. 注意事项:本文基于ce ...
- Java Learning 000 搭建开发环境
Java Learning 000 搭建开发环境 你需要两个软件: * JDK (Java Develop Kit :Java开发工具包) * eclipse (eclipse 集成开发环境软件) 安 ...
- Leetcode: 67. Add Binary
二进制加法 https://discuss.leetcode.com/topic/33693/another-simple-java public String addBinary(String a, ...
- Coding CTO 孙宇聪:《人,技术与流程》
我先做一下自我介绍,我是 07 年加入的 Google,在 Moutain View 总部任Google SRE,今年年初回国加入 Coding . 在 Google 我参与了两个 Project, ...
- JavaScript中的真和假,==和===, 不等
咋JS中,下面这些值表示 “假”: "" (empty string) 0,-0,NaN (invalid number) null, undefined false 除了上面这些 ...
- Netbeans使用UTF-8编码
如果要NetBeans用UTF-8对文件进行解码,需要修改配置文件,具体方法如下: 1. 找到你的Netbeans安装目录下的etc文件夹,如C:\Program Files\NetBeans 6.9 ...
- Spark 各个组件关系
Term Meaning Application User program built on Spark. Consists of a driver program and executors on ...