Python中的类,方法,实例创建和Java等效于Java

时间:2016-05-03 11:26:32

标签: java python python-2.7 python-3.x

我正在尝试使用main方法实现一个带有类的示例python程序,一些方法和实例创建(对象创建)。但我是python的新手,我尝试过很多例子但是我没有在python中得到上面的确切流程。下面是我在python中需要等效的java代码。

Class hello {            //Class name

    void display () {          // user defined method    
        System.out.println("Hello");    
    }

    public static void main(String args[]) { //main method    
        hello obj=new hello();  //instance creation (object creation)
        obj.display();  // invoking methods 
    }
}

输出

Hello 

我在python中需要上面的代码请帮我解决这个问题

我尝试使用相同的

的python
import sys

class MyApplication():

    def get_name():
        print 'hi'

def main():
    app=MyApplication()
    print('Hi ' + app.get_name())

    if __name__ == '__main__':
        main()

但是上面的python代码没有工作,没有给出任何错误和输出。我得到空白的控制台

2 个答案:

答案 0 :(得分:6)

在python中,意图非常重要。如果您想要一些代码段,则意味着代码段是块的一部分。

请参阅代码中的以下代码段

def main():
    app=MyApplication()
    print('Hi ' + app.get_name())

    if __name__ == '__main__':
        main()

您应该更正此代码段的缩进。它应该是,

def main():
    app = MyApplication()
    print('Hi ' + app.get_name())

if __name__ == '__main__':
    main()
  

'__ main__'是顶级代码执行的范围的名称。   从标准读取时,模块的__name__设置为“__main__”   输入,脚本或交互式提示。

     

模块可以发现它是否在主范围内运行   通过检查自己的__name__,它允许一个常见的习语   当它作为脚本运行时,有条件地执行模块中的代码   使用python -m但不是在导入时:   模块可以发现它是否在主范围内运行   通过检查自己的__name__,它允许一个常见的习语   当它作为脚本运行时,有条件地执行模块中的代码   使用python -m但不是在导入时: - Python documentation

答案 1 :(得分:1)

感谢您在进行修改后重播它正在运行,并在我的方法get_name(self)中添加了“self”作为现在正在使用的args

以下代码

import sys

class MyApplication():

    def get_name(self):
        print   'hi'


def main():
    app=MyApplication()
    app.get_name()

if __name__ == '__main__':
    main()