Python 零基础入门

1.1 Python介绍

Python 是一门优雅且健壮的面向对象解释型计算机程序编程语言,具有面向对象、可升级、可扩展、可移植
语法简洁清晰易学、易读写、易维护、健壮性、通用性、跨平台等特点。目前广泛应用于人工智能、机器学习、
科学计算、大数据分析、图像处理、爬虫、区块链、自动化测试、测试开发、自动化运维、Web 开发、接口开发
网站搭建等领域。

1.2 环境搭建
本书介绍的是基于 Windows 平台上进行安装,以及选择 Eclipse 4.5.2+Python 3.6.4+ PyDev 的安装环境,因为

Eclipse 功能强大,同时兼容 Windows 和 Mac,支持 Java 和 Python 等。

安装 Python 3.6.4,下载地址:https://pan.baidu.com/s/1diUgNzfMXgLhMQ ZjNNcNKA。官网下载地址:https://www.python.org/downloads/。

如图 1.1 所示,选择版本 Python 3.6.4,单击“Download Python 3.6.4”下载,下载后双击安装包,进入 Python安装向导,选择默认设置进行安装即可。

设置环境变量“C:\Users\zh\AppData\Local\Programs\Python\Python36”。

▲图 1.1

1.2.1 安装 JDK 1.7
下载解压文件夹进行默认安装,设置 Java 环境变量,右键单击“我的电脑→属性→高级→环境变量”,新建

系统变量 JAVA_HOME 和 CLASSPATH。
变量名:JAVA_HOME。
变量值:C:\Program Files\Java\jdk1.7.0_80。

变量名:Path。

变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;。

变量名:CLASSPATH。

变量值:;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;。

测试环境安装成功:运行 CMD,输入 java –version,如果成功则出现 Java 信息,如图 1.2 所示。
安装文件路径:https://pan.baidu.com/s/1gf4Ym3L。

▲图 1.2

1.2.2 安装 Eclipse
设置 IDE 集成开发环境,注意确认 Windows 系统是 32 位还是 64 位,Eclipse 版本需要与之对应。

下载地址:https://pan.baidu.com/s/1dF0sBcP。

1.2.3 安装配置 Python 3

Python 2 与 Python 3 在语法上有较大的一些差异,比如输出字符,Python 3 为 print (‘hello python3’); Python2为 print‘hello python2’。

比如异常处理,Python 3 为 exception exc as e; Python 2 为 exception exc,e。

比如操作 MySQL,Python3 为 import pymsql;Python2 为 import mysqldb。

由于官方未来将停止更新和维护 Python 2,所以个人建议用 Python 3。下载地址:https://www.python.org/downloads/。

配置环境变量:C:\Users\zh\AppData\Local\Programs\Python\Python36。
测试环境,运行 CMD,输入 Python,如输出如图 1.3 所示信息则表示配置成功。

▲图 1.3

1.2.4 安装 PyDev
在线安装 PyDev,插件的官方网址:http://www.pydev.org/。在 Eclipse 里,单击“HelpInstall New Software”

单击“Next”按钮,选择默认设置进行安装。

1.2.5 配置 PyDev
接下来配置 解释器路径,

在弹出的对话框中单击“Add”按钮,在 Name 中选择 PyDev,在 Location 中输入http://www.pydev.org/update_sites/4.5.5/,单击“OK”按钮,如图 1.4 所示。如果是最新版本的 JDK,则输入http://pydev.org/updates。

Python 在 Eclipse 中,单击“Windows→Preferences”,然后在对话框中单击“PyDev→Interpreters→Python Interpreter”,单击“New”按钮,选择 Python.exe 安装路径,单击“OK”按钮,如图 1.5所示。

如图 1.6 所示,安装好环境后,就可以创建 Python 工程了。

▲图 1.4

1.2.6 新建一个项目工程

单击“FileNewProjects”,选择 PyDev-PyDev project,输入项目名称:Python。
新建 Python 文件:hello。

▲图 1.5

▲图 1.6

#include utf-8
print ('hello python')

单击“运行”按钮,可以看到控制台输出 hello python,如图 1.7 所示。
程序可以正常运行,说明 Python 的环境搭建成功了。

▲图 1.7

1.3 基础知识
本章仅简要介绍测试开发会用到的一些 Python 基础知识,如图 1.8 所示。如要了解更详细的内容,请参考Python 专业书籍和官方资料。

1.3.1 语句与语法
1.Print 语句,print(“hello”)

▲图 1.8

逗号:打印多个表达式时用逗号(,)分开,列表中多个值用逗号分开,参数中多个值用逗号分开。

分号:一行中写多条代码时需要加上分号(;),如果只写一条代码,可以加也可以不加。

冒号:用冒号(:)、缩进及空格来区分代码块, 在 if class def 类、函数、循环、分支等。

示例:

if True:Print(“hello,python”)

Else:
Print (“hello,java”)

引号:单引号、双引号、多引号都可以表示字符串。

加号:加号可表示连接字符串,也可以表示加法运算符。

缩进:四个空格键,多一个空格、少一个空格或 Tab 键都会报错。

注释:单行注释使用#,多行注释使用′′ʹ ′′ʹ。

2.编码格式

# -*- coding: UTF-8 -*-:表示支持 UTF-8 中文。
U‘中文’:表示 unicode 创建实例的格式显示中文。

Encode(“utf-8”):表示以 UTF-8 编码对对象进行编码,获取 byte 类型对象。

Decode(“utf-8”):表示以 UTF-8 编码对对象进行解码,获取字符串对象。

3.标识符

大小写敏感,第一个字符必须为字母或下划线,不能使用字符、数字、下画线之外的特殊符号,不要与关键字重名。

常见关键字有:Print,class,def,for,if,else,or,in ,is,import,except,from,try,pass 等。

1.3.2 数据类型1.基本数据类型

1)数字类型 整型int

Print (100):输出 100。 浮点数 float

Print (100.00):输出 100.0。 布尔型

布尔型数据类型,其值是 True 或 False,它实际上是内置整数类型 int 的子类,其 True 可设置为整数 1,False可设置为整数 0,True+1=2。

print (True+1) 运行结果为 2。
Python 里的空值用 None 表示。
2)字符串
顾名思义,由一连串的字符组成的字符集合为字符串,Python 语言通常用引号标识,还支持索引。Strname=“fin is ok”,那么 Strname[0]=f。

如需将多个字符串连接起来,可以用(+)连接,Strname1=“fin”, strname2=“is”, strname3=“ok”,Strname== strname1+‘ ’+strname2+‘ ’+strname3。

3)标准型函数

列表:在 Python 中最常用,相当于 Java 里面的数组,用[]来定义空,访问列表等值用 alist [0] ;alist [1:3]。

aList = []
alist = [1, ‘a’, ’test’, ’dev’, 1.1]

元组:用小括号表示,功能与列表类似,区别在于元组中元素不能修改。

字典:相当于哈希表,即键-值(key-value)组成。
集合:用 set()表示,常用 add 和 update 增加和修改集合中数据。

数据类型转换:str(x)将 x 转换成字符串类型。

1.3.3 运算符和表达式

1)算术运算符,a=1,b=1,c=a+b,即 c=2。有+、、*、/等算术符。

2)比较运算符,if(a==b),print (“a 等于 b”)。

3)赋值运算符,c=a+b,= 即为简单的赋值运算符。

4)逻辑运算符,if(a or b),其中 and or not 代表布尔值与或非。

1.3.4 变量和赋值
strName = “fin” #定义了字符串变量并赋值。

Number = 100 #定义了整型变量并赋值。

1.3.5 基本控制流程

1)If else elif 条件分支语句
If 经常与 else、elif 一起使用,其中 elif 相当于 else if 的意思。

2)for 语句遍历一个列表或字符串等

Fruits = [“apple”, “banana”,“grape”,“mango”]
For fruit in fruits
   Print (fruit)

3)pass 语句,即不做任何事情。

1.3.6 类和对象

面向对象语言都包括类、属性、方法、对象(包含了类成员变量和方法)、实例化和继承等概念。

Class Test: #定义 Test 类i=100

Def num(self):

Return ‘hello’t=Test() #实例化Test类

Print(“Test 类的属性是”,t.i)Print (“Test 类的方法是”,t.num())Class Test(self):
......

表明 Test 继承类基类 self。

1.3.7 函数

Def test():
Print (‘test’)

自带函数:如 str(x),int(x),len(x),open(fn‘w’)。

参数:有必选参数、默认参数、可变参数、命名关键字参数和关键字参数。

关键字参数允许传 0 个或多个参数;

Def user(name,age,sex)Print('name:'name,'age:'age)

参数为 name,age,sex。

Def user(name,age=18)Name='zouhui'
While age》17

     Name = name +'is greate'
Return name

必选参数 name,默认值参数 age。

Def user(*ages)Age=18

  For i in ages
Age= age + i

Return age

可变参数 ages,返回值为 age。

1.3.8 模块导入和包导入

引用模块或包 import time、sys 是指引用了 time 和 sys 模块。

自定义模块 From X import X 是指从某个模块或某个包导入某个对象。

1.3.9 异常处理
格式语法为 try:语句 except as:e 语句。

1.4 实例讲解

1.4.1 文件操作实例

将内容写到相应的文件中,读取并打印到控制台,布局结构示例如图 1.9 所示。

程序清单:

▲图 1.9

# -*- coding: UTF-8 -*-

def wfile(): #定义写文件函数try:

filename="C:\\Users\\zh\\"+"test.html" #定义文件路径和文件名变量except IOError:

print ("file create error") #文件异常处理else:

fp=open(filename,'wb') #打开写文件fp.write("test".encode('utf_8')) #将 test 字符串写入到文件中fp.close() #关闭写文件

def rfile(): #定义读文件函数try:

filename="C:\\Users\\zh\\"+"test.html" #定义读文件路径和文件名变量

fp=open(filename,'r') #打开读文件except IOError:

print ("file open error") #文件异常处理else:

for f in fp: #循环读取每行数据

print ("file data is "+ f) #打印数据fp.close() #关闭读文件

if __name__ == '__main__': #程序调用 main 主函数#readSQL()

wfile() #调用写文件函数rfile() #调用读文件函数print ('Done!') #输出‘Done’完毕

运行结果:

file data is test
Done!

1.4.2 数据库操作实例
先安装好 MySQL 数据库环境,详见本书第 2 章 MySQL 数据库使用;

写基于 Python 的 MySQL 数据库的查询

语句编程实例,其他增删改与此类似。
程序清单:
# -*- coding: UTF-8 -*-
import pymysql

def readSQL():
#查询 SQL 语句

sql="SELECT id,`apiname`,apiurl from apitest_apistep where apitest_apistep.Apitest_id=2 "

#打开 MySQL 数据库连接
coon = pymysql.connect(user='root',passwd='test123456',db='autotest'
,port=3306,host='127.0.0.1',charset='utf8')

#获取数据库操作游标
cursor = coon.cursor()
#执行 MySQL 查询语句aa=cursor.execute(sql)
#获取执行查询语句后的结果数据列表

info = cursor.fetchmany(aa)
print(info)
# 提交
coon.commit()

#关闭游标cursor.close()
#关闭连接coon.close()

if __name__ == '__main__':
readSQL()
    print ('Done!')
执行后查询结果数据如下:

((1, '登录', '127.0.0.1:8000/login'), (2, '购物', '127.0.0.1:8000/login'))
Done!

主函数:表示主程序调用 main()函数即入口,格式固定如下即可:

if __name__ == '__main__':
readSQL()
    print ('Done!')

本文节选自:《自动化平台测试开发-Python测试开发实战》第一章

最新文章

  1. 读<<领域驱动设计-软件核心复杂性应对之道>>有感
  2. C#综合揭秘——通过修改注册表建立Windows自定义协议
  3. hbase基础-系统架构
  4. linux web服务器,防火墙iptables最简配置
  5. 《算法导论》笔记---附录 B.5 树
  6. 97. Interleaving String
  7. python 下的数据结构与算法---5:递归(Recursion)
  8. php redis数据库操作类
  9. SqlBulkCopy实现大容量数据快速插入数据库中
  10. 201521123047 《Java学习笔记》第二周学习总结
  11. POJ 3923 Ugly Windows(——考察思维缜密性的模拟题)
  12. js数组使用JSON.stringify()和toString()的区别,JSON.parse
  13. IntelliJ IDEA的入门使用
  14. 获取model的自定义特性
  15. 【转】Android播放音频MediaPlayer的几种方式介绍
  16. CSS3新增特性及知识学习线路
  17. VS中Debug与Release、_WIN32与_WIN64的区别
  18. Python字典小结
  19. Windows 运行库
  20. 笔记 : win8系统中的VM虚拟机的Ubuntu搭建samba服务

热门文章

  1. HDU - 4578 线段树+三重操作
  2. Unable to cast object of type 'System.String' to type 'System.Int32'.
  3. py学习笔记1.13、1.14
  4. 【转】Linux虚拟终端命令Screen用法详解
  5. AtCoder Beginner Contest 126
  6. soupUI解决md5加密签名,cookie传递
  7. java通过免费接口获取ip地址的服务商信息
  8. CCP 协议
  9. T-shirt
  10. 计算 $s=1+(1+2)+(1+2+3)+\cdots+(1+2+3+\cdots+n)$