何时使用的函数比函数更有用?我应该知道有什么硬性或快速的规则吗?它是语言依赖的吗?我打算为Python编写一个脚本,它将解析不同类型的json数据,我的直觉是我应该使用一个类来执行此操作,而不是函数。
答案 0 :(得分:9)
当您的例程需要保存状态时,您应该使用一个类。否则一个函数就足够了。
答案 1 :(得分:3)
首先,我认为这不依赖于语言(如果语言允许您定义类和函数)。
作为一般规则,我可以告诉你,一个类将自己包含在行为中。因此,如果您必须实现某种类型的服务(具有不同的功能),那么您正在寻找一个类。
此外,类(比如更正确的对象)具有状态,您可以实例化更多类的出现(因此不同的对象具有不同的状态)。
同样重要的是,一个类可以被挖掘出来:所以你只能通过很小的改动来覆盖你的函数的特定行为。
答案 2 :(得分:1)
当你有状态时的课程 - 在整个电话中应该持久的东西
其他情况下的功能
异常:如果你的类只存储了几个值并且除__init__之外还有一个方法,你应该更好地使用函数
答案 3 :(得分:1)
对于任何非平凡的事情,你应该使用一个类。我倾向于将所有“自由浮动”函数限制为utils.py文件。
答案 4 :(得分:1)
此 依赖于语言。
有些语言,比如Java,坚持要为所有内容使用类。根本没有独立功能的概念。
Python不是那样的。完全可以 - 事实上建议 - 单独定义功能,相关功能可以在模块中组合在一起。正如其他人所说的那样,你真正想要一个Python类的唯一时间就是你需要保持状态 - 即将数据封装在对象中。