Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何跨类重用函数_Python_Oop - Fatal编程技术网

Python 如何跨类重用函数

Python 如何跨类重用函数,python,oop,Python,Oop,我有几个函数要重用。这不是我的确切例子,但在功能上是相似的 例如,我们会说我有一堆python整数列表,它们生活在不同的类中,每个类都是它们自己的文件。ListClassA.py,ListClassB.py,ListClassC.py 我想得到所有这些课程的平均值。我可以在每一个类中创建一个很好的小函数,它表示将列表求和并除以长度。我想做的是创建一个新类,它可以完成我所有的小列表函数(平均值、最大值等),这样我就可以调用listFunctions.average(列表)。如何从现有类调用新类?您

我有几个函数要重用。这不是我的确切例子,但在功能上是相似的

例如,我们会说我有一堆python整数列表,它们生活在不同的类中,每个类都是它们自己的文件。ListClassA.py,ListClassB.py,ListClassC.py


我想得到所有这些课程的平均值。我可以在每一个类中创建一个很好的小函数,它表示将列表求和并除以长度。我想做的是创建一个新类,它可以完成我所有的小列表函数(平均值、最大值等),这样我就可以调用listFunctions.average(列表)。如何从现有类调用新类?

您可以导入新类

from new_file import listFunctions

然后您可以使用
listFunctions.average(list)
您可以
导入新类

from new_file import listFunctions

然后您可以使用
listFunctions.average(list)

您根本不需要类<代码>平均等。可以只是模块中定义的函数。也可以考虑不使用每个类的一个文件。世界上只有一种语言迫使用户这么做——Java。Python没有,这是为了更好。它允许将属于彼此的类和函数分组到一个模块中,并且只有当模块变得庞大时才可能将其拆分。如果您确实需要基于类的解决方案,请使您的类从包含可共享函数的基类继承。您根本不需要类<代码>平均等。可以只是模块中定义的函数。也可以考虑不使用每个类的一个文件。世界上只有一种语言迫使用户这么做——Java。Python没有,这是为了更好。它允许将属于彼此的类和函数分组到一个模块中,并且只有当模块变得非常庞大时才可能将其分解。如果您确实需要基于类的解决方案,使类从包含可共享函数的基类继承。不要在Python中使用
list
作为名称。不要在Python中使用
list
作为名称。