gallery代码怎么运行_自学Python进阶-把代码变成程序、软件

之前的几篇,我们一起认识了python语言(python语言里有哪些东西),见识python代码(三种核心语句、程序代码里的记忆体:变量),并用python语言解决了几个著名的常见数学问题(百钱百鸡问题、闰年问题)。

8c93009819ceaec85357c6fb771d5c70.png

百钱百鸡

73c6b538c72d10b892a651f3b23c7ab1.png

闰年闰月

怎么可以让python更好地解决自己的问题呢?当然是希望能用它做出像其它软件一样的程序,成为可以直接用的工具;不仅自己能够重复使用,还可以发给别人用。现在就讲讲这方面的知识。

前面讲过,python是跨平台的语言,写出的程序可以同时在windows,macOS,linux,甚至Android或iOS手机上运行,做一定的封装处理(程序员专业的说法是:系统兼容和机型适配)就可以开发跨系统的商用软件来。

无论你在哪个操作系统下运行python写的代码、程序,首先必须装作该系统下的python安装包 - 内含python解析器及一些工具和基础库。解析器的作用就是在我们运行自己写的代码时,把python语言代码翻译成操作系能执行的功能,从而完成我们期望的工作。python也因此被归类为解释型语言。

我们学习语言阶段,或完成功能单一的工作时,可以把所有的代码放在一起 - 保存在一个文件里,然后运行它。如果要制作功能复杂的大点工具,或软件系统,则需要把代码按照一定规则保存在多个文件里,甚至还要将它们分类放到多个目录里,再按照python语言定义的规则,调度执行它们。

我们现在主要学习python语言本身,实现些单一、具体的功能,因此都把代码放在一个文件里来讲解,上一篇的自学Python进阶-闰年问题就是这样的例子。

首先运行一个python代码文件最简单的方式,就如上次例子里讲的:直接在python自带的IDE里操作,具体见 自学Python进阶-闰年问题 的末尾部分。这个也是在widnow, macOS, ubuntu等各种系统下通用的方法。

其次,如果想脱离python默认IDE环境 - 更轻便、灵活的运行,则不同操作系统下有点区别,下面就分开讲讲:

1,windows系统下,我们一般都是双击一个文件或软件来运行程序的。将python写的程序保存并让扩展名为 .py 的文件,然后就可以双击运行了,这是因为在安装python解析器时,windows操作系统已经将 .py扩展名和 python解析器关联上来,双击时会自动调用。

2,在苹果操作系统macOS和linux操作系统(如ubuntu)下的运行,则和windows不一样。首先这两个系统环境下命令行方式运行python会更灵活些,其次这些系统对它里面的文件都有个属性:决定文件是否可被当作程序直接运行。

我们以计算闰年问题的代码文件名 leapYear.py为例,如果它没有执行权限,那么我们可以通过运行python解析器,再把文件名附在后面 - 当作参数,这样来运行:

打开命令行窗口,用 cd 命令进入到leapYear.py所在目录python  ./leapYear.py

如果有运行权限 - 这可以通过 chmod +x filename.py 给文件加上执行权限,则可以直接运行我们的代码文件:

打开命令行窗口,用 cd 命令进入到leapYear.py所在目录chmod +x leapYear.py./leapYear.py

仔细思考的话,会有个疑问:最后这种方法和前面的对比,操作系统怎么知道用什么来解析执行文件里我们写代码呢?这就对我们写的代码有一个特殊的要求:第一行内容指明运行本文件里下面代码所使用的解析器。python3语言代码文件的第一行写法通常如下:

#!/usr/bin/env python3

其中开头的两个字符"#!"是固定的,后面的需要根据你操作系统、安装软件的不同会有变化。如果你写的代码是其它解释型语言,通常也只是后面这部分不同。

到了这里,各种操作系统,各种环境下,我们都能让python解析器调用我们写的代码来执行命令了。但是如果要保证正常运行我们这个leapYear.py文件,还得对文件里面的代码格式有个特殊的要求,必须存在下面一样代码:

if __name__ == '__main__':

这行代码的作用就是告诉python解析器:此处是代码运行开始的地方,程序员称之为:程序运行入口。

24cdf144b2269bb0487b0a9167a8076f.png

python编程中

#编程# #Python#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值