Python编程—测试工程师核心开发技术(13)

发表于:2020-2-17 13:32

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:51Testing教研团队    来源:51Testing软件测试网原创

  第7章 Python编程
  Python是目前流行的开源编程语言,可以在各种领域中用于编写独立的程序和脚本。一般来说,Python可定义为面向对象的脚本语言,这个定义把面向对象的支持和全面的面向脚本语言的角色融合在一起。事实上,人们往往以"脚本"而不是"程序"描述Python的代码文件。
  Python具有开源、可移植、功能强大等优点,而且使用起来相当容易。来自软件行业各个领域的程序员都已经发现,Python对开发效率和软件质量的关注度很高,这无论在大项目还是小项目中都是一个明显的优点。
  7.1 Python的特点
  Python的主要特点如下。
  (1)注重软件质量。
  Python更注重可读性、一致性和软件质量,从而与脚本语言领域中的其他工具区别开来。Python代码的设计致力于可读性,因此具备了比传统脚本语言更高的可重用性和可维护性。
  (2)可提高开发效率。
  相对于C、C++和Java等语言,Python的开发效率提高了数倍。Python代码的大小往往只有C++或者Java代码的1/5~1/3。这意味着可以录入更少的代码,调试更少的代码并在开发完成之后维护更少的代码。另外,Python程序可以立即运行,不需要传统编译语言所必需的编译等步骤,进一步提高了程序员的开发效率。
  (3)程序的可移植性高。
  绝大多数的Python程序不做任何改变即可在所有主流计算机平台上运行。例如,在Linux平台和Windows平台之间移植Python代码,只需要简单地在机器间赋值代码即可。
  (4)支持标准库。
  Python内置了众多预编译并可移植的功能模块,这些功能模块称为标准库。标准库支持一系列应用级的编程任务,涵盖了从字符模式到网络脚本编程的匹配等方面。
  (5)支持组件集成。
  Python脚本可通过灵活的集成机制轻松地与应用程序的其他部分进行通信。这种集成使Python成为产品定制和扩展的工具。
  (6)简化了编程。
  Python的易用性和强大的内置工具有助于快速编写程序。
  7.2 Python环境的搭建与启动
  下面介绍Python环境搭建和启动。
  7.2.1  搭建Python环境
  Python环境搭建包括下载Python和安装Python两部分。
  1.下载Python
  我们可以从Python官网获取Python的最新版本。根据平台及机器的配置,下载对应的版本(这里选择Windows平台的Python 3.6.5版本),如图7-1所示。
  
图7-1  Python下载界面
  2.安装Python
  下载后会得到一个以.exe为扩展名的可执行文件,双击该文件进行安装。需要注意的是,如果希望通过命令行的方式快速启动Python,则要在安装过程中勾选Add Python 3.6 to PATH复选框,如图7-2所示。
  
图7-2  Python安装界面
  7.2.2 启动Python
  启动Python的方式有两种,分别是通过命令行和通过IDLE Shell。
  1.通过命令行
  打开命令行窗口,输入"python",进入Python交互窗口,如图7-3所示。
  
图7-3  Python交互窗口
  2.通过IDLE Shell
  通过"开始"菜单找到Python目录,打开Python IDLE,进入Python Shell窗口,如图7-4所示。
  
图7-4  Python Shell窗口
  IDLE(Integrated Development and Learning Environment,集成开发学习环境)是一个Python Shell,是一个通过输入文本与程序交互的途径,类似于Windows的命令行窗口、Linux的命令窗口。通过Shell,我们可以给操作系统下达命令,同样地,也可以利用IDLE这个Shell与Python进行交互。
  7.3 初识Python及IDLE
  Python自带的开发环境是IDLE,它具备基本的IDE功能,初学者可以利用它方便地创建和调试Python程序。
  7.3.1 Python的灵活性
  我们在Python Shell窗口中看到的">>>"这个提示符,用于告诉用户,Python已经准备好了,在等待着用户输入Python指令。
  输入语句:
>>> print('I love Python')
I love Python
  可以看到,要输出字符串,可以使用print()函数,字符串既可用单引号引起来,也可用双引号引起来。如果要输出的字符串包含单引号,则须使用双引号将整个字符串引起来或者使用转义符号"\"。例如:
>>> print('Let's go')
SyntaxError: invalid syntax
>>> print("Let's go")
Let's go
>>> print('Let\'s go')
Let's go
  Python可以自动识别变量的类型,尝试依次输入如下语句,观察运行结果。
>>> print(5+3)
8
>>> 5+3
8
>>> 1234567890987654321*9876543210123456789
12193263121170553265523548251112635269
>>> print("I love python "+"python loves me")
I love python python loves me
>>> print("I love python "+'python loves me')
I love python python loves me
  可以看出,Python自动识别变量类型的功能非常强大,变量类型无须单独声明。
  为了进一步了解Python更多的灵活性,分别输入以下语句,观察运行结果。
>>> print('I love python'*8)
I love pythonI love pythonI love pythonI love pythonI love pythonI love pythonI love pythonI love python
>>> print('I love python\n'*8)
I love python
I love python
I love python
I love python
I love python
I love python
I love python
I love python
  7.3.2 Python猜数字游戏
  【例7-1】 猜数字游戏。
  我们通过IDLE新建一个Python小程序。因为IDLE Shell是命令行的交互界面,当需要一个完整独立的Python源程序时,需要专门新建一个Python源文件。选择File→New File命令,在弹出的编辑窗口中输入如下Python代码。
print('===========猜数字游戏==========')
temp=input('请输入一个数字:')
number=int(temp)
if number==8:
print('真聪明,一下子就猜对了')
print('猜对了也没奖励!')
else:
print('猜错啦,正确的是8哦!')
print('游戏结束了,不玩了')
  选择File→Save命令,文件命名为first.py。保存文件后,按F5键或者选择Run→Run Module命令,即可运行程序。程序运行结果如下。
=====================RESTART:C:/Users/dh/Desktop/xx.py==========
===========猜数字游戏==========
请输入一个数字:5
猜错啦,正确的是8哦!
游戏结束了,不玩了
>>>
=====================RESTART:C:/Users/dh/Desktop/xx.py==========
===========猜数字游戏==========
请输入一个数字:8
真聪明,一下子就猜对了
猜对了也没奖励!
游戏结束了,不玩了
>>>
  下面对上述猜数字游戏涉及的Python语法进行讲解。
  (1)Python程序的层次结构是通过缩进来实现的,如猜数字游戏中的if...else语句块。缩进是Python的灵魂,严格的缩进使得Python代码显得非常精简且有层次。所以,在Python程序中要慎重对待缩进,如果没有正确的缩进,则代码所做的事情可能和用户的期望相距甚远。
  (2)Python具有自动识别变量类型机制,变量类型无须声明。
  (3)Python区分大小写,例如,number和Number是两个不同的变量名。
  (4)Python提供了非常丰富的内置函数(Built-In Function,BIF)供用户直接调用。例如,print()函数用于向屏幕输出信息;input()函数用于从键盘输入信息;int()函数用于转型。在IDLE Shell中直接输入命令"dir(__builtins__)"可以查看所有的内置函数,输入命令"help(函数名称)"可以查看某个特定的内置函数的作用和使用方法。

查看《测试工程师核心开发技术》全部连载内容>>
版权声明:51Testing软件测试网获得人民邮电出版社和作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号