题主你好,
方法及相应代码见截图:
*.方法不只一种, 题主看看如果不合适请追问. 上面这种做法的好处是封装的这个函数func可以带任意多个位置参数. //就图主的问题来看, *args就够了, 如果func函数中还有关键字参数,则还需要使用**argv.
-----
希望可以帮到题主, 欢迎追问
1 封装概述封装(Encapsulation),指的是在设计类时, 将不需要对外提供的内容都隐藏起来,提供公共方法以供外部对其访问。
具体指的是刻意地将一些属性和方法隐藏(私有化)在类的内部,这样在使用此类时,将无法直接以类对象.属性名、或 类对象.方法名(参数) 的形式调用这些私有属性或私有方法,而只能用未隐藏的公有方法间接操作这些隐藏的私有属性和私有方法。
封装的优点,如下所示:
封装保证了类内部数据结构的完整性:封装之后,用户无法直接看到类中的数据结构,只能使用类允许公开的数据(通常指公有方法),很好地避免了外部对内部数据的影响,提高了程序的可维护性。
封装数据可以很好的保护隐私。
封装方法的主要原因是隔离复杂度。
封装提高了代码的复用性。
还可以轻松实现避免用户对类中属性和方法的不合理操作:用户只能借助暴露出来的类方法来访问数据,我们只需要在这些暴露的方法中加入适当的控制逻辑,即可轻松实现用户对类中属性或方法的不合理操作。
2 Python 类的简单封装
为了实现 Python 类的封装,Python 采取了下面的方法:
公有(共有):默认情况下,类中的变量和方法都是公有的,它们的名称前都没有下划线,公有的变量和方法,在类的外部、类内部以及子类中,都可以正常访问。
私有:类中的变量或方法以双下划线 __ 开头命名,则该变量或方法为私有的,私有的变量或方法,只能在本类内部使用,类的外部以及子类都无法使用。
也有把变量名或方法名以单下划线 _ 开头定义的,通常也表示私有的。
最近写了一个小小的程序,需要进行封装exe,为了简单,就直接用了pyinstaller这个模块,对于python3.6版本的童鞋来说,简直方便的不要。下面就给大家介绍一下如何用pyinstaller去封装程序为exe程序。首先,需要安装一下pip这个应用,这个已经在前面的文章中说过了,windows和linux都有请借鉴windows和linux。
第二步,安装好pip之后,在cmd命令窗口中输入pip install pyinstaller即能安装上pyinstaller,那么接下来要介绍一下关于pyinstaller几个指令了:
-w指令
直接发布的exe应用带命令行调试窗口,在指令内加入-w命令可以屏蔽;
-F指令
注意指令区分大小写。这里是大写。使用-F指令可以把应用打包成一个独立的exe文件,否则是一个带各种dll和依赖文件的文件夹;
-p指令
这个指令后面可以增加pyinstaller搜索模块的路径。因为应用打包涉及的模块很多。这里可以自己添加路径。不过经过笔者测试,site-packages目录下都是可以被识别的,不需要再手动添加。
那么通常是使用-F指令,使用的语法是:pyinstaller -F (python程序名称).py