我试图通过将我之前做过的一个旧Java项目移植到Python中来学习Python。

但是我将在这里以更简化的方式表达我的疑问...

我想让我的代码尽可能地面向对象...

这是我得到的基本疑问...

public class MainApp {
public static void main(String[] args) {
    AnotherClass another = new AnotherClass(); // I instantiated an object
    System.exit(0);
  }
}


实例化此对象时,我可以在AnotherClass()中处理过程代码,并从那里获取输出...

public class AnotherClass {
   public AnotherClass(){
    System.out.println("Output from AnotherClass()");
   }
}


我得到这个:

Output from AnotherClass()


除了Python,我该如何做同样的事情(这是我第一次尝试使用Python,但我还是想理解OOP!)

我希望我的问题的答案将对希望通过移植学习新语言的另一位程序员有所帮助!

编辑:我目前正在使用python 2.7 ....
抱歉,没有声明版本...

最佳答案

这是将AnotherClass转换为python的方法

class AnotherClass:
    def __init__(self):
        print("Output from AnotherClass()")
        self._x = 0


another_class = AnotherClass()  # get instance of AnotherClass


python中没有new。我假设您已经知道Java中的this关键字,python中的self做同样的事情,您可以访问self._x之类的实例变量,但是self不是保留关键字

10-08 16:02