zoukankan      html  css  js  c++  java
  • Python

    Python 是如何执行的?执行顺序是怎么样?

    至上而下,逐行执行

    #!usr/bin/env python
    # -*- coding:utf-8 _*-
    """
    # author: 小菠萝测试笔记
    # blog:  https://www.cnblogs.com/poloyy/
    # time: 2021/7/18 3:09 下午
    # file: 3_字符串.py
    """
    
    print("hello world")
    print('hello world')
    print("""hello world""")
    
    # 单双引号
    print("hello 'poloyy' world")
    print('this is my name "poloyy"')

    Python 会从上往下一行一行执行

    什么是 Python 脚本的执行入口

    • 类比:进入一栋大楼肯定有个大门入口,赛车要进入赛道也一定有一个入口
    • 所以,执行程序,也需要一个入口
    • 一般称代码执行的入口叫做主函数(main 函数)

    执行入口(主函数)的写法

    if __name__ == '__main__':
        print("执行入口的代码")

    比较通俗的一个说法

    • 假设你叫 xiaoming.py,那么在其他人眼里,你是 xiaoming(__name__=="xiaoming")
    • 对你自己来说,你就是自己(__name__=="__main__")

    再来解释下

    • 所以上面代码 if 的意思就是:如果运行的程序是你自己,那么就 print....
    • 假设运行的是 xiaoming.py,那么就会执行主函数
    • 假设运行的是 xiaohong.py,即使 xiaohong 导入了 xiaoming,也不会执行 xiaoming.py 里面的主函数(main 函数)

    是否一定需要执行入口(主函数)

    • 不一定
    • 假设没有主函数,那么运行 xiaoming.py 时,就会至上而下,逐行运行 xiaoming.py 的所有代码

    执行入口的意义

    • 将业务代码写在主函数上面,主函数用来调用有业务代码,代码结构整洁
    • 向 Java、C、Golang 看齐,他们都是要求一个程序必须有一个主执行入口才能正确运行

      

  • 相关阅读:
    使用 rabbitmq 的场景?
    什么是 Spring Cloud Bus?我们需要它吗?
    使用 Spring Cloud 有什么优势?
    我们如何监视所有 Spring Boot 微服务?
    什么是 YAML?
    如何集成 Spring Boot 和 ActiveMQ?
    什么是 JavaConfig?
    数据字典属于哪一个用户的?
    怎么对命令进行取别名?
    使用什么命令查看网络是否连通?
  • 原文地址:https://www.cnblogs.com/poloyy/p/15027893.html
Copyright © 2011-2022 走看看