首页 windows软件 手机软件 驱动下载 电脑教程 专题合集
当前位置: 首页 > 电脑教程 > 编程开发 > python编程中if __name__=='__main__如何理解

python编程中if __name__=='__main__如何理解

时间:2018-06-26 21:42:44

小编:动力软件园

阅读:

 在学习python编程中看到别人写的代码中一般最后都有if __name__=='__main__:这样一句代码,也不知道什么意思,翻阅资料经过试验才明白是个什么鬼,小白请看,大神飘过。

 代码如下:

if __name__=='__main__':
    test()


 期中看到廖雪峰老师的解释是:


当我们在命令行运行hello模块文件时,Python解释器把一个特殊变量__name__置为__main__,而如果在其他地方导入该hello模块时,if判断将失败,因此,这种if测试可以让一个模块通过命令行运行时执行一些额外的代码,最常见的就是运行测试。


我是不太明白意思,其实你实践一下就懂了,ok,代码如下。


#!/usr/bin/env python3
# -*- coding: utf-8 -*-

' a test module '

__author__ = '动力软件园 www.pw88.com'

import sys
print('第一个行代码是否执行')

def test_():
    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_()#调用函数

执行结果是:

第一个行代码是否执行
Hello, world!

第一个print和test_函数都执行了。


我们把该代码保存为一个文件if_main_test.py,在同目录下再建一个文件test.py 

import if_main_test


执行。看看结果就明白了。

第一个行代码是否执行

只执行了第一个print


总结:该代码(也就是脚本)作为脚本执行的时候是两个结果,如果被导入到其他脚本中 test_()函数不执行。如果脚本中有大量代码,不想执行该段代码段的时候就加上

if __name__=='__main__':搞定。

相关阅读
  • python编程中列表常用方法
    python编程中列表常用方法
    python列表常用方法整理:1、append 在列表后边追加元素2、count 统计元素出现的次数3、extend 拓展,批量添加4、index 获取指定元素索引号5、insert 在指定位置插入元素6、
    时间:2018-07-01
  • Python字符串方法图示
    Python字符串方法图示
    字符串常用方法非常用,只需要记住一些常用的即可。提供一张思维导图,随时方便查阅。index()rindex()find()rfind()count()strip() lstrtip()rstrip()split()rsplit()split
    时间:2018-07-01
  • python中对象使用[:]是什么意思
    python中对象使用[:]是什么意思
    前几天,同事遇到一个小问题在python中对象[:]不知道什么个意思。经查询这个叫切片。语法: 对象[起始下标:结束下标(不包含):步长]只写一个: 号就是取对象本事 等同于 [:
    时间:2018-07-01
  • python语言中的函数嵌套调用
    python语言中的函数嵌套调用
    普通写法,python函数是顺序执行,遇到def不执行,然后执行下一个代码片段,遇到第2个def同样不执行。直到执行函数体外的test1() 和 test2()才执行函数体内的内容。
    时间:2018-06-27

火爆手游