Python中__name__和“__main__”的含义

import time
class Clock(object):
    """数字时钟"""
    def __init__(self, hour=0, minute=0, second=0):
        """初始化方法
        :param hour: 时
        :param minute: 分
        :param second: 秒
        """
        self._hour = hour
        self._minute = minute
        self._second = second
    def run(self):
        """走字"""
        self._second += 1
        if self._second == 60:
            self._second = 0
            self._minute += 1
            if self._minute == 60:
                self._minute = 0
                self._hour += 1
                if self._hour == 24:
                    self._hour = 0

    def show(self):
        """显示时间"""
        return '%02d:%02d:%02d' % \
               (self._hour, self._minute, self._second)

def main():
    clock = Clock(23, 59, 58)
    while True:
        print(clock.show())
        time.sleep(1)
        clock.run()

if __name__ == '__main__':  
    main()

if name == ‘main

这么一段代码,这段代码该怎么来理解?
这段代码的功能理解如下:

一个python的文件有两种使用的方法:
作用一,直接作为脚本执行。
作用二,import到其他的python脚本中被调用(模块重用)执行。
if name == ‘main’: 的作用就是控制这两种情况执行代码的过程,在if name == ‘main’: 下的代码只有在第一种情况下(即文件作为脚本直接执行)才会被执行,而import到其他脚本中是不会被执行的。

就是:name 是当前模块名,当模块被直接运行时模块名为 main 。当模块被直接运行时,代码将被运行,当模块是被导入时,代码不被运行

def c2f(cel):
   fah = cel * 1.8 + 32
   return fah

def f2c(fah):
   cel = (fah - 32) / 1.8
   return cel

def test():
   print("测试,0摄氏度 = %.2f华氏度"%c2f(0))
   print("测试,0华氏度 = %.2f摄氏度"%f2c(0))

test()
   或 
if __name__ == '__main__':       # 程序的主入口
   test()
import requests
def getHTMLText(url):
    try:   # 没有问题进入
        r=requests.get(url,timeout=20)
        r.raise_for_status()
        r.encoding='utf-8'
        return r.text
    except:     #  有问题这里走
        return"产生异常"
        
if __name__=='__main__':    # 程序的主入口
    url="https://www.baidu.com/"
    print(getHTMLText(url))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值