今天来聊聊Python中的模块,就像前面写代码时,先要导入用到的模块,基本都是系统内置的模块、或第三方模块。 那如何自定义一个模块并使用它呢?其实你写的每一个Python文件里面的类都可以当作一个模块导入到其它文件中。 今天拿咱们前面写的实战案例来详细说明下,前面咱们写过一个BMI计算器,如下:一、今天咱们聊聊,如何把这二个计算器合到一个窗口中显示出来?步骤如下:② 把海伦公式计算窗口当作一个模块,在BMI窗口代码中导入模块(类);③ 在BMI主窗口布局中直接把海伦公式窗口当作一个控件添加到布局中,这样就可以把他们二个放在一个窗口中了;① 咱们把BMI、海伦公式二个.py文件放在同一个文件夹内;② 只需要在最顶部从文件中导入模块名即可
上面的意思就是从名为 海伦公式的文件中导入名为WindowArea的类
注意:
1、二个模块(或类)的名不能相同,若相同修改为不同的类名;
2、模块名最好用英文,不要用中文,我上面只是为了演示,中文在打包后可能会出现不可预料的问题 。
海伦公式的代码内容如下
③ 在BMI的代码中实例化一个类
④ 把实例化的对象self.area 作为一个控件 放在BMI的布局中
其余代码不用变,运行代码就直接把二个窗口全并到一个窗口中了,是不是很方便,运行效果如下:
三、作用原理
其实你的任何一个可视化的类都是一个控件(也相当于一个模块),只不过是由很多个控件组成的一个大控件而已;他当然也可以实例化为一个控件,然后像其它控件一样布局在窗口上就行了。
四、这样合并窗口的好处是什么
(1) 假如我的窗口里有很多个小功能组成;
(2) 可以分多个.py 文件分别实现不能功能;
(3) 然后在其中一个主窗口中分别导入各个功能,把他们合并到一个窗口中;
如果把一个软件的所有功能都写在一个.py 文件中,代码量非常大,一般几千行代码是很正常的,后期维护、修改很麻烦;
如果分成多个小的.py文件,每个文件和功能都是独立的,维护、修改就很容易了,说点大白话,就是对我这种业余爱者,不用看着一大堆代码头疼,只用维护每个小功能就行了。
五、请看我的小插件中一个功能,里面有四、五个小功能都在一个页面中,我都是从其它.py文件导入的
每个py文件都是一个小功能,也就二三百行代码,小的功能可能一百多行代码就完成了,对我们业余爱好者是不是很友好呀!