专栏首页Java架构师进阶从零学Python,一个完整Python程序这些东西缺一不可

从零学Python,一个完整Python程序这些东西缺一不可

前两天我们准备好了安装环境这些,那么今天我们要来认知一下,一个完整的Python程序到底要具备哪些东西,

编写一个Python程序很简单,你只需要在电脑上新建一个后缀为.py的文件,然后在这个文件中编写指令或者定义和调用函数,然后便可用Python解释器来执行这个文件。这些指令构成了Python程序的逻辑,也决定了该程序的功能,因此,在这一章中,我们有必要来了解一下一个完整的Python程序。

本文将通过以下2个方面来展开:

Python程序的构成

Python程序的执行过程

Python程序的构成

以下代码来自文件digwebs.py,是digwebs中的某个脚本文件。

#!/usr/bin/env python__author__ ='SLZ''''

digwebs framework demo.

'''importlogginglogging.basicConfig(level=logging.INFO)fromwww.webimportdigwebs_appif__name__ =='__main__': digwebs_app.run(9999, host='0.0.0.0')else: wsgi_app = digwebs_app.get_wsgi_application()

以上代码片段包含了一些常用的知识点:

#!/usr/bin/env python指定了运行该脚本的程序是Python

__author__ = 'SLZ'用于标记该文件的作者是SLZ

2个'''之间的内容代表注释,注释的作用是写给人看的,因此Python解释器会忽略注释中的内容

import关键字用于导入外部模块,这些模块很有可能是Python环境自带的,也有可能是其他组织编写的

logging.basicConfig(level=logging.INFO)设置日志的级别,日志的作用是输出程序执行过程中产生的信息,这些信息有助于研发人员分析,诊断以及定位程序发生的问题。

if和else指令用于控制程序执行的路径

由以上信息可以推断出,几乎所有Python程序都会包含多个.py文件,这些文件之间通过import来相互调用,你可以通过digwebs来确认这一点。每一个.py文件中均会使用Python的一些能力,比如定义一个类或函数,使用循环控制语句或者条件控制语句等等。正是这些文件和它们之间的调用关系构成了一个完整的Python程序。接下来,让我们看看这个完整的程序是如何工作的。

Python程序的执行过程

Python程序的执行过程有点类似于人类阅读文章的过程,人类的阅读习惯是从上到下,每读到一句话,就会理解这句话的内容。Python程序的执行过程也类似,解释器也会从上到下从输入的.py文件中读取和执行每一句指令,如果需要使用其它.py文件的功能,那么解释器会跳转到相关的指令处,然后接着从上到下依次读取和执行其它.py文件中的指令,直到把输入.py文件中的所有指令执行完才会退出。

让我们根据之前出现的代码片段来分析整个执行过程,首先,在Terminal中输入这句指令python digwebs.py,并回车。

Python解释器会读取digwebs.py中的指令,然后从上到下依次执行每一句指令,它先执行以下指令

__author__='SLZ'

接着再执行以下指令来导入内置的日志库(也就是说digwebs.py依赖于logging库)

importlogging

接着执行以下命令来设置日志的级别

logging.basicConfig(level=logging.INFO)

接着执行以下命令来导入其它模块(该模块由另外一个.py文件来定义)

fromwww.webimportdigwebs_app

接着执行以下命令来执行外部模块

if__name__ =='__main__': digwebs_app.run(9999, host='0.0.0.0')else: wsgi_app = digwebs_app.get_wsgi_application()

如果digwebs_app.run(9999, host='0.0.0.0')运行结束,那么解释器会继续往下执行,此时,没有其它指令,因此整个Python程序会结束运行。

总结

本文主要介绍了一个完整的Python程序和它的执行过程。一个Python程序均会有多个.py文件,每一个文件均会提供职责单一的功能,它们之间通过import来引用,并最终构成一个复杂的程序,而复杂程序的背后实际上是由基础的Python能力来构建的。接下来,让我们以Python的基础运算符开始,学习这些能力。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 一个五年开发经验过来人谈如何自学 Python?

    其实python非常适合初学者入门。相比较其他不少主流编程语言,有更好的可读性,因此上手相对容易。自带的各种模块加上丰富的第三方模块,免去了很多底层的工作,可以...

    企鹅号小编
  • 无编程基础如何自学Python?前辈深剖学习方法 附入门视频

    其实python非常适合初学者入门。相比较其他不少主流编程语言,有更好的可读性,因此上手相对容易。自带的各种模块加上丰富的第三方模块,免去了很多“重复造轮子”的...

    企鹅号小编
  • 新手学python,如何才能更快升职加薪,迎娶白富美,走上人生巅峰

    最近在问答里发现好多咨询怎么学习python,或者学习难不难的问题,这里给大家提几点建议:

    云飞
  • 宝宝都能学会的python编程教程1:第一行代码

    前言 众所周知,现在IT行业很火,行业薪酬也很高,国家在2017年也发布了人工智能教育的推广计划,人人会编程的时代将要到来。不会编程、不懂编程可能有些跟不上时代...

    JKXQJ
  • 人人都能学会的python编程教程1:第一行代码

    众所周知,现在IT行业很火,行业薪酬也很高,国家在2017年也发布了人工智能教育的推广计划,人人会编程的时代将要到来。不会编程、不懂编程可能有些跟不上时代的节奏...

    JKXQJ
  • python入门的正确姿势,要永远做个学习者,但不仅仅只做学习者!

    为什么要学习Python?为什么要选择Python,而不是其他别的20多种编程语言?当你开始走上开发者之路时,这个问题会可能会一天在你的脑海里出现多次。

    一墨编程学习
  • 小白如何入门机器学习?

    机器学习作为人工智能领域的一个重要主题,已经被大家关注相当一段时间了。机器学习提供了有吸引力的机会,进入这一领域工作并不像想像中那么困难。即使你在数学或编程方面...

    用户1408045
  • 案例 | 电子商务网站用户行为分析与服务推荐

    今天分享的案例来自CDA数据分析师就业班第三期远程组学员的毕业答辩,学员代表钱小菲分享了他们的数据报告。 他们以网站运营优化为案例,内容涉及: 对给出的数据进行...

    CDA数据分析师
  • Android冬天真的来了!

    昨天九大手机厂商一起在北京开了一个所谓的快应用生态大会,具体细节可以围观这篇文章 小米、华为联合推出“快应用”,九大手机商对抗微信小程序! .

    龙哥

扫码关注云+社区

领取腾讯云代金券