Python入门级--__mian__关键字

今天,在看廖雪峰老师的python教程,看到这样一段代码:

import sys

def test():
    print(__name__)
    args = sys.argv
    if len(args)==1:
        print(Hello, world!)
    elif len(args)==2:
        print(Hello, %s! % args[1])
    else:
        print(Too many arguments!)

if __name__==__main__:
    test()

最后两行中有一个if语句,不知道这个是什么意思?我直接运行了这个程序,出来没有结果:Empty test suite. 然后在教程中看到:当我们在命令行运行hello模块文件时,Python解释器把一个特殊变量_name_置为_main_, 然后我就测试了一下,新建一个py文件

import Hello
print(__name__)

然后打印出来了:‘_main_’ 在原有代码中,我也尝试打印了_name_变量的值。最后的结果是文件名。 说明这个变量就类似C++中的指针,指向当前使用的那个方法。 但是,我有一个疑惑的地方是:为什么要这样写?老师给的答案是:这种if测试可以让一个模块通过命令行运行时执行一些额外的代码,最常见的就是运行测试。这样便可以从命令行界面带入两个参数。那如果我想在IDE 中带入两个参数,该怎么写?

经验分享 程序员 微信小程序 职场和发展