我是 Python 新手,我试图在两个不同的源文件中创建两个同名的类。我们称它们为“Main.py”和“Extension.py”。班级是“我的班级”。Extesntion.py 中的 MyClass 派生自文件Main.py 中的MyClass 。如果它有效,那么当我创建一个对象 myclass 并在我的代码中导入 Extension 时,与文件Main.py相比,我将拥有更多的功能。
class MyClass:
def __init__(self):
Initialize something
def foo1(self, a, b):
Do something
Run Code Online (Sandbox Code Playgroud)
然后扩展将是这样的:
import Main
class MyClass(MyClass):
def __init__(self):
Initialize something
def foo2(self, a, b):
Do something
def foo3(self, a, b):
Do something
Run Code Online (Sandbox Code Playgroud)
然后如果我有这样的代码。我希望我不能使用 foo2 和 foo3。
import Main
myclass = MyClass()
myclass.foo1(a, b)
Run Code Online (Sandbox Code Playgroud)
最后,如果我有这样的代码。我希望我使用所有功能。
import Extension
myclass = MyClass()
myclass.foo1(a, b)
myclass.foo2(a, b)
myclass.foo3(a, b)
Run Code Online (Sandbox Code Playgroud)
如果你这样做
import main
Run Code Online (Sandbox Code Playgroud)
您需要使用main.MyClass从 main.py 创建一个对象。
相反,你可以做
from main import MyClass
Run Code Online (Sandbox Code Playgroud)
让它直接可用。
如果您需要两个具有相同名称的不同类,则可以改为
from main import MyClass as MainClass
Run Code Online (Sandbox Code Playgroud)
并且您将在名称下使用该课程 MainClass
| 归档时间: |
|
| 查看次数: |
3852 次 |
| 最近记录: |