python文件结构与import用法

首先上一张总结图:

python文件结构与import用法

在pycharm中,一般不会将当前文件目录自动加入自己的sourse_path。如果遇到无法import同级目录下的其他模块,

右键make_directory as-->Sources Root将当前工作的文件夹加入source_path就可以了。

python文件结构与import用法

但是那个总结图非常的不协调,下面来详细说明:

(1)同一个包中不同模块互相引用

在确认把此文件夹路径加入sourcepath的前提下:【from 模块名 import 类名】

python文件结构与import用法

(2)同一个文件夹中的不同包互相引用

有三种写法:

--可以直接引用对方的模块:【from 模块名 import 类名】

python文件结构与import用法

--如果在各自包的__init__.py文件夹中什么也没写的话,其中包名前面的两个点表示上一级目录下的文件

python文件结构与import用法

--在包的__init__.py中先写上自己的引用

python文件结构与import用法

然后就可以直接用包名引用类名:

python文件结构与import用法

(3)不同文件夹中的不同包的互相引用

python文件结构与import用法

只不过是多写一个目录的事情,当然如果在wx_video中的__init___.py文件中已经引用过自己的类,难么就可以直接通过包名import类

总结:

1、当你导入一个包的时候,实际上导入的是这个包的 __init__.py文件,所以,如果你在init里面写入了其他的import功能,就等于是在初始化的时候帮忙导入了其他东西。

2、每一个包目录下面都会有一个__init___.py的文件,这个文件是必须存在的,否则,Python就把这个目录当成普通目录,而不是一个包。__init__.py可以是空文件,也可以有Python代码,因为__init__.py本身就是一个模块。

上一篇:11:12:21.924 [main] DEBUG org.apache.ibatis.logging.LogFactory - Logging initialized using 'class org.apache.ibatis.logging.slf4j.Slf4jImpl' adapter.


下一篇:【OpenCV新手教程之十五】水漫金山:OpenCV漫水填充算法(Floodfill)