多测师_python基本介绍001
python
一、python的介绍
python 是一门面向对象,解释型,动态类型语言
面向对象:在python中 一切皆为对象
解释型语言:边解释,边执行,
动态类型:就是检查是在运行才做的。 动态类型语言:在一个文件中变量可以随时改变,使用
var="zhangsan" var="lisi" 静态类型语言:C,c++
var="zhangsan" 变量使用前先定义,定义后才能使用,而且变量定义后就不能修改
如果修改必须重新去编译
特点:
1、执行效率低,每次都要解释
2、目前市面上比较流行web应用,分布式部署,多语言多环境搭建,这种解释型语言更容易扩展,没有平台依赖性 (二)两种语言的区别:解释性语言和编译性语言都是翻译,翻译的时间不一样 2.1编译性语言代表:C,c++ ,pascal/object
(1)只须编译一次就可以把源代码编译成机器语言,后面的执行无须重新编译,直接使用之前的编译结果就可以;因此其执行的效率比较高;
(2)编译性语言代表:C、C++、Pascal/Object Pascal(Delphi);
(3)程序执行效率比较高,但比较依赖编译器,因此跨平台性差一些; 2.2解释性语言
(1)源代码不能直接翻译成机器语言,而是先翻译成中间代码,再由解释器对中间代码进行解释运行;
源代码—>中间代码—>机器语言
(2)程序不需要编译,程序在运行时才翻译成机器语言,每执行一次都要翻译一次;
(3)解释性语言代表:Python、JavaScript、Shell、Ruby、MATLAB等;
(4)运行效率一般相对比较低,依赖解释器,跨平台性好; 两种语言类型的区别
(1)一般,编译性语言的运行效率比解释性语言更高;但是不能一概而论,部分解释性语言的解释器通过在运行时动态优化代码,甚至能使解释性语言的性能超过编译性语言;
(2)编译性语言的跨平台特性比解释性语言差一些; java语言应是编译性-解释性语言,因为其同时具备编译性和解释性两种特性; 我们我要学习python语言
python的特点:
简单,易学,开源,免费,可移植,高级语言,夸平台行、丰富的第三方库
python 主要目的,学习一门语言,使用python语言做自动化,写自动化脚本
测试开发 职位
既测试又开发(写自动化脚本)
python版本
python2x python2.7 维护到2020年
python3x python3.5 主流的python3.4;最高版本3.8
python2和python3版本中有很多编号,方法的添加和删除 学习python2.7的原因 我们自动化的框架是基于python2.7的版本开发的
支持的环境
linux CentOS7 默认安装python2.6 命令:python 显示python的版本
windows
mac python的使用人群
1、测试爱好者
2、测试开发人员
3、运维人员
4、自动化测试人员
5、大数据 bigdata
6、区块链 blockchain python适用项目
1、人工智能
2、网页爬虫
3、雅虎的地图
4、谷歌中很多插件
5、大数据 bigdata
6、区块链 blockchain python环境搭建安装步骤
1、windows安装python
2、配置环境变量
3、在dos中使用python /pycharm工具写python代码,执行python文件 python环境变量配置
1、在系统环境变量中parth变量中添加python的安装路径
2、如何验证自己的python环境变量配置成功?
在dos中执行命令:python 会显示python版本,如果提示不是内部命令,说明python环境变量配置不正确 print 函数 作用输出
code0 执行成功
code1 执行失败k 二、python操作
1、python2.7最上面一行需要声明字符集格式为utf-8、固定的写法三种
1、1coding=utf-8
1.2coding:utf-8
1.3-*- coding:utf-8 -*-
1.2注释
'单行注释: shift+# ,
多行注释 :Ctrl+/ 或 “ ” 或" " " " " " 或 ‘’‘ ‘’‘
多行注释用''' 注释的内容为'''
文档注释用:""
注意:单引号注释中不能包括单引号和三引号,但是可以包括双引号
双引号注释中不能包括双引号,但是可以包括单引号和三引号
三引号注释中不能包括三引号,但是可以包括单引号和双引号
反斜杠(\) 转义 例如:
# test = 'dcs is '''number''' one'
# test = "dcs is '''number''' one"
# test = '''dcs is "number" one'''
#文档内容的注释用单引号、双引号、三引号都可以
# def f(x):
# '''
# 这是一个函数
# :param x:
# :return:
# ''' Python中的变量命名规则
1.1、字母,数字,下划线组成,但必须是字母或下划线开头,区分大小写 数字不能打头
_input="laowang"
dcs="123"
12 ="laoxiao"# 报错
1.2、下划线开头的标识符有特殊意义:
1)、单下划线开头标识符_foo表示不能直接访问的类属性,相当于JAVAprotected类型,需要类提供的实例访问,也不能通过from xxx import *导入
2)、双下划线开头和结尾的标识符,一般为python中特殊的方法标识符,如__init__类的构造函数 1.3 、 python的默认打印方式print ,把结果打印到控制台
分为两种一种:一般输出
另一种:格式化输出
一般输出
# print 123
# print "hello dcs45" 1.4、定义一个变量,在把"hello dcs45"字符串赋值给到test这个变量
test = "hello dcs45" #把"hello dcs45"字符串赋值给到test这个变量
print test #打印test变量、输出结果到控制台
1个等于号是赋值 2个等于号是恒等
1.4 print之格式化输出:通过格式化符实现,常见格式化符如下:
%s :字符串 (采用str()的显示) %r :字符串 (采用repr()的显示)
%c :单个字符 %b:二进制整数 %d:十进制整数 %i :十进制整数
%o:八进制整数 %x:十六进制整数 %e:指数 (基底写为e) %E:指数 (基底写为E)
%f:浮点数 %F:浮点数,与上相同 %% :字符"%"
请注意:字符串就是用单引号或者双引号引起来的 1.4.1%s 字符串可以为字母,数字,特殊字符,优先用str()函数进行字符串转换
test ='广州多测试'
test1=123
print type(test) 输出的结果是:<type 'str'>
print type(test1) 输出的结果是:<type 'int'>
test = '*&^%$#@#$%^'(有疑问) 1.4.1.2将数值类型改成字符类型
print '结果为:%s'%test 输出结果:结果为:广州多测试 s='结果为:%s'%test1
print type(s) 输出结果: <type 'str'> 多个值输出:
print "%s number %d" %('duoceshi1',1)
print "%s number %d" %(2,'duoceshi2')使用合适的格式化输出 1.4.2
# # %c 单个字符
# test = '1'
# print 'result is number %c'%test #result 结果 1.4.3 %d 十进制整数
test = 8
print '年化收益率为:%d'%test
print '年化收益率为:%d%%'%test
结果是年化收益率为:8
结果是年化收益率为:8%
1.4.4
#对2位(test,num)进行格式化输出
# test = 'dcs' #字符串
# num = 1 #十进制数
# print '%s is number %d'%(test,num)
或
num =66
print "结果为""%d" %num 输出:结果为59
1.4.5
%i 十进制整数
num =59
print "结果为""%i" %num 输出:结果为59
1.4.6
%o 八进制整数
test = 12
print '结果为:%o'%test 输出:结果为14
1.4.7
%x 十六进制整数
test = 12
print '结果为:%x'%test 输出结果为:c
1.4.8
%e 指数 (基底写为e)
test = 12
print '结果为:%e'%test 输出结果:1。200000e+01
1.4.9
E 指数 (基底写为E)
1.4.9
test = 12
print '结果为:%E'%test 输出结果:1。200000E+01
1.4.10
%f 转成浮点数
test = 12
print '结果为:%f'%test 显示:结果为:12.000000
1.4.11
%F 转成浮点数,与上相同
test = 12
print '结果为:%F'%test 显示:结果为:12.000000
1.4.12
%g 指数(e)或浮点数 (根据显示长度)
test = 12
print '结果为:%g'%test 显示:结果为:12
1.4.13
%G 指数(E)或浮点数 (根据显示长度)
test = 12
print '结果为:%G'%test 显示:结果为:12
1.4.14
%% 百分号标记 就是输出一个%(格式化字符串里面包括百分号,那么必须使用%%)
test=12
print('年化收益率为: %d %%' % test) 显示:结果为:8% 1.5.1input语句:
输入用户输入什么数据类型,就会以什么类型保存,但是用户在输入时要符合我们的语法规则 user= raw_input('请输入您的用户名:')
print user
print type(user) #输入dcs45 结果: <type 'str'> 类型为string字符串
print type() #输入123 结果:<type 'str'> 类型为string字符串
注意:单引号和双引号没有区别 raw_input 语句( 转化格式打印)
(1)改语句把所有用户的输入都以字符串形式保存,需要其他数据类似,则需要调用相应的函数进行转换
user=raw_input("账号:")
print type(user)
print user name=raw_input("账号:") #输入的值是显示字符类型
name1=int(name) #字符串转换成数值类型
print type(name) 结果:<type 'str'>
print type(name1) 结果:<type 'int'> (2)同一格式的字符相加是拼接
输入8,从字符串转换数值类型
user=raw_input("账号:")
sum =user + "1" #拼接要同一字符格式 ,
赋值2进去,等到21,注意,不加“”就报错,不同类型无法操作
print sum
格式固定:以字符串格式输出 1.5.2把str字符串转换为int整型
通过int()函数进行转换
num = int(raw_input('请输入您的内容:'))
sum=num+18 #加法运算
print num 输入12 ,显示:结果是30
print type(num) #<type 'int'> 数据类型为int整型 1.5.3 num = raw_input('请输入您的内容:') #将字符类型转成数据类型
print type(int(num)) #<type 'int'> 数据类型为int整型 1.5.4 name = input('请输入您的用户名:')
print name #输入xiaowang NameError: name 'xiaowang' is not defined ( 报错 )
print name #输入"xiaowang" 显示结果:xiaowang 数据类型为<type 'str'>
print name #输入123 显示结果:123 显示int类型;
print type(name) #<type 'int'> 注意:(1)输入的值是数字且带引号,输出的就是字符串
(2)如果输入的是非数字字符,必须加上单引号和双引号 raw_input()和input()总结:
# raw_input()该输入将用户所有的输入都转换成字符串存储,
# 如果输入内容想要使用其他格式存储需要进行转换数据类型 # input()该输入根据用户输入什么类型值,就以什么类型值存储,
# 但是输入时必须符合Python语法的规则 其实Python2.x中,
# input()函数让我们明确我们输入的是数字格式还是字符格式,
# 就是我们自己要知道我们想的是什么,数字格式直接输入,字符
# 格式必须加上单引号或者双引号,以确定我们输入的是字符串。 #raw_input()结合if条件判断语句
# name = raw_input('请输入您的用户:') #备注格式:二选一;
# name = input('请输入您的用户:')
# if name == 'admin':
# print '登录成功'
# else:
# print '登录失败'
注意:格式和冒号 例题:
user=input("账号: ")
if user== 'admin':
print "账号正确"
else:
print "账号错误"
注释方法:
#文档内容的注释用单引号、双引号、三引号都可以
# test = 'dcs is '''number''' one'
# test = "dcs is '''number''' one"
# test = '''dcs is "number" one'''
# print test
或
# def f(x):
# '''
# 这是一个函数
# '''
三、操作符
3.1(基础运算符)
+ - * / //(取整) %(取余) **(幂)
注意:+ 也可以将两个字符串“相加”在一起,这种我们叫做拼接字符串 ,但是不能把两个完全不同的东西拼接在一起。如:数字和文本 可直接写成 输出结果
print 2+2 4 加法 print 2-2 0 减法
print 10/3 3
(取整)# # /传统除法,也叫真除法 整数除整数,只能得出整数。
# # 如果要得到小数部分,把其中一个数改成浮点数即可
多测师_python基本介绍001的更多相关文章
- 多测师讲解unittest介绍及自动化测试实现流程_高级讲师肖sir
unittest框架介绍 unittest框架是python中一个标准的库中的一个模块,该模块包括许多的类如 test case类.test suit类.texttest runner类.textte ...
- 多测师讲解python_安装001.1
Python+pycharm 一.Python安装 python现在主要就是python2和python3,目前python3最新是3.8,考虑稳定性我们用3.6,3.7等 第一步:下载Python安 ...
- 多测师讲解第一个月 _综合面试题_高级讲师肖sir
第一个月综合面试题 1. 冒烟测试是什么意思? 对主要的用例测试 2.你们公司的项目流程是什么? 3.你们公司的bug分几个级别? 4个 4.你对外键是怎么理解的? 你会使用外键吗?给一个表添加 ...
- 多测师讲解自动化--rf断言(下)--_高级讲师肖sir
1.Page Should Contain 1.1存在页面上的内容 1.2 不存在页面上的内容, 运行抛异常 1.3 Page Should Not Contain 1.4 1.5 输入页面元素,判断 ...
- 多测师讲解自动化测试 _RF封装_(三层模式)高级讲师肖sir
rf自动化:分层作用: 1.项目----有重复的流程(借款-登录,出借-登录) 2.借款--登录(8个流程)机器人:案例层(用例)写在机器人中,1个机器人=1条用例 分三个层次: 1.案例层(存放用例 ...
- 多测师讲解自动化--rf关键字--断言(下)_高级讲师肖sir
断言: 1.1Page Should Contain Maximize Browser Window sleep 2 Comment Page Should Contain hao123 #断言当前页 ...
- 多测师讲解自动化测试 _RF关键字001_(上)_高级讲师肖sir
讲解案例1: Open Browser http://www.baidu.com gc #打开浏览器 Maximize Browser Window #窗口最大化 sleep 2 #线程等待2秒 In ...
- 多测师讲解自动化测试_rf节课内容_高级讲师肖sir
*** Settings ***Library Selenium2LibraryLibrary OperatingSystem *** Variables ***${name} zhangsan@{l ...
- 多测师讲解自动化selenium___定位元素002___高级讲师肖sir
高级自动化测试python+selenium教程手册 --高级讲师肖sir(Harm) 第 2 章8种定位方法 总结: selenium 的 webdriver 提供了八种基本的元素定位方法,前面六种 ...
随机推荐
- Oracle WITH 语句 语法
With语句可以在查询中做成一个临时表/View,用意是在接下来的SQL中重用,而不需再写一遍. With Clause方法的优点: 增加了SQL的易读性,如果构造了多个子查询,结构会更清晰. 示例: ...
- 用Nginx将web请求引导到本机两个tomcat
如何在本机启动两个tomcat请参考:https://www.cnblogs.com/xiandedanteng/p/12100461.html 而Nginx这边,将\conf\nginx.conf ...
- ubuntu安装docker-ce 、docker-ce-cli、containerd.io
问题 ubuntu安装docker的时候特别慢,百度搜了一大堆都没讲到点子上,最后请教了大佬才知道是源的问题 安装 修改源 sudo gedit /etc/apt/sources.list 添加源 阿 ...
- HTTP 协议类
HTTP 协议的主要特点 简单快速:每个资源的URL是固定的 灵活:在每个 http 协议中都有一个头部分有一个数据类型,通过一个 http 协议就可以完成不同数据类型的传输 无连接:连接一次就好断掉 ...
- Unity3D获得服务器时间/网络时间/后端时间/ServerTime,适合单机游戏使用
说明 一些游戏开发者在做单机游戏功能时(例如:每日奖励.签到等),可能会需要获得服务端标准时间,用于游戏功能的逻辑处理. 问题分析 1.自己如果有服务器:自定义一个后端API,客户端按需请求就行了: ...
- JS红宝书笔记——第一章 JavaScript简介
1.JavaScript简史 Netscape公司决定开发一种客户端语言用来处理浏览器端简单的表单验证. Netscape公司派布兰登·艾奇(BrendanEich)为计划于1995年2月发布的Net ...
- 【深入理解Linux内核架构】3.3 页表
页表:用于建立用户进程空间的虚拟地址空间和系统物理内存(内存.页帧)之间的关联. 向每个进程提供一致的虚拟地址空间. 将虚拟内存页映射到物理内存,因而支持共享内存的实现. 可以在不增加物理内存的情况下 ...
- Java中读取配置文件中的内容,并将其赋值给静态变量的方法
应用场景 项目开发中某个功能需要抽取成方法写成一个工具类,提供给别人使用.写过工具类的人都知道,工具类中的方法一般都是静态方法,可以直接使用类名点方法名调用, 使用很方便,比如判断某个对象是否为空的方 ...
- SpringBoot中使用切面的每次传的参数,进行解析,验签,并返回解码后的参数
目的,在每次请求的时候,对每次传的参数,进行解析,验签,并返回解码后的参数, 以json传递: 例子背景: IOT平台提供对外可访问的接口, 需要对所有参数的传递做到 不泄露.认证的目的:所以需要在每 ...
- 将HBase中的表加载到hive中
两种方式加载hbase中的表到hive中,一是hive创建外部表关联hbase表数据,二是hive创建普通表将hbase的数据加载到本地 1. 创建外部表 hbase中已经有了一个test表,内容如下 ...