何时使用类比使用函数更有用?是否有任何我应该知道的硬性或快速规则?这与语言有关吗?我打算编写一个Python脚本,用于解析不同类型的json数据,我的直觉告诉我应该使用类来完成这个任务,而不是使用函数。
何时使用类比使用函数更有用?是否有任何我应该知道的硬性或快速规则?这与语言有关吗?我打算编写一个Python脚本,用于解析不同类型的json数据,我的直觉告诉我应该使用类来完成这个任务,而不是使用函数。
在您的程序需要保存状态时应使用类。否则,函数就足够了。
<func name>.attribute
吗? - martineauself.attribute
更加方便。 - Ignacio Vazquez-Abrams首先,我认为这不依赖于语言(只要语言允许您定义类和函数)。
一般规则是,类封装了一个行为。因此,如果您需要实现某种类型的服务(例如,使用不同的函数),那么类就是您要寻找的东西。
此外,类(更准确地说是对象)具有状态,并且您可以实例化更多类的实例(因此获得不同状态的不同对象)。
同样重要的是,类可以被继承:因此,您可以仅通过小的更改覆盖函数的特定行为。
当你有一个状态 - 一些应该在调用之间保持不变的东西时,使用类。
在其他情况下使用函数。
例外情况:如果你的类只存储了几个值,并且除了__init__方法之外只有一个方法,那么最好使用函数。
对于任何不太琐碎的问题,您应该使用一个类。我倾向于将所有“自由浮动”的函数限制在utils.py文件中。
这是与语言相关的。
有些语言,比如Java,坚持要求你为所有东西使用类。根本没有独立函数的概念。
Python不是这样的。定义独立函数是完全可以的 - 实际上是推荐的,相关函数可以分组在模块中。正如其他人所说,只有当你需要保留状态 - 即封装对象内部数据时,才真正需要在Python中使用类。