文章末尾给大家留了大量的福利

前言

大家都知道学习软件测试需要必须要掌握一门开发语言,对于测试小白来说我们都是推荐python进行学习,因为比较简单,那么今天笔者想给大家唠唠python语言的基本数据类型可以分为三类:数值类型、序列类型、散列类型,本文主要介绍数值类型和序列类型及其通用操作。

一、数值类型

数值类型有四种:

1)整数(int):整数

2)浮点数(float):小数

3)布尔值(bool):只有两个值True和False

4)复数(complex):和数学中的复数一样由实部和虚部(j)组成(了解即可,学习自动化测试几乎用不到)

二、算数运算符

三、random模块

使用时需要导入random模块,这个模块在自动化测试中会经常用到,常用于生成随机的整数或生成随机浮点数,用法如下:

import random# 生成随机的整数
num_int = random.randint(1, 10)  # 参数:起始数、结束数,左闭右闭# 生成0-1之间的随机浮点数
num_float = random.random()  # 不需要传参
print(num_float)# 自动化测试主要使用上面两种,下面这几种了解即可,还有更多的方法有兴趣的自行百度
print( random.uniform(1.1,5.4) )     # 产生  1.1 到 5.4 之间的随机浮点数,区间可以不是整数
print( random.choice('tomorrow') )   # 从序列中随机选取一个元素
print( random.randrange(1,100,2) )   # 生成从1到100的间隔为2的随机整数

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
0.655518327833445
2.589485747270378
o
53Process finished with exit code 0

四、序列类型

1)字符串(str):用单引号('),双引号("),三引号(三单引号'''或三双引号""")来表示

2)列表(list):用[ ]中括号表示

3)元组(tuple):用()小括号表示

五、字符串str

1.定义

字符串定义:单引号、双引号、三引号、str() 引号都是成对出现

空字符串:s ='' (单引号对里没有任何数据)

空字符:s =' ' (中间有一个空格)

a = 'test'
b = "book"
c = '''student'''
d = """tea"""
x = 123     # x是数值类型
y = str(x)    # 通过python内置函数str()转换成字符串

2.字符串的常见操作

  • 字符串的拼接: +
  • 字符串的输出:print(),输出多个不同的数据用逗号隔开
  • 字符串转义:\n换行 , r 防止转义
  • 下标取值:[],默认下标从0开始,0,1,2.....,如果从后面倒序开始取,就是-1,-2,-3......
a = 'bo'
b = 'ok'
c = a + b   # 字符串拼接
print(c)print('这是测试换行\n的字符串')
print(r'!@$#%#&"""这是防止转义的字符串')
print(c[0])     # 下标取值 

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
book
这是测试换行
的字符串
!@$#%#&"""这是防止转义的字符串
bProcess finished with exit code 0

3.字符串的常用方法

1)join字符串拼接

str1 = '000'
str2 = str1.join(('zhangsan','nan','18')
print(str2)
# 输出结果
# zhangsan000nan00018str3 = ' '.join(str1)
print(str3)
# 输出结果
# 0 0 0

2)find查找元素

查找元素的位置,可以是单个元素,也可以查找字符串,如果找不到就返回-1

# find:查找元素,找到第一个返回对应的下标值,找不到返回-1
str1 = 'asdgsajl'
print(str1.find('a'))
print(str1.find('sa'))
print(str1.find('adadda'))# 输出结果
# 0
# 4
# -1

3)count统计元素个数

统计元素个数,可以是单个元素,也可以是字符串

str1 = 'asdgsajl'
print(str1.count('a'))# 输出结果
# 2

4)replace替换字符

可以替换单个元素,也可以替换字符串,从左到右会替换全部符合条件的,还可以指定替换次数

str1 = 'asdgsajl'
print(str1.replace('a','2'))
print(str1.replace('a','2',1))    # 只替换1次# 输出结果
# 2sdgs2jl
# 2sdgsajl

5)split字符串分割

split() 指定某个字符为分隔符,分割出来的结果放入一个列表

str1 = 'sdagsajl'
print(str1.split('a'))# 输出结果
# ['sd','gs','jl']# 分割后取出第一个,按下标取值,下标从0开始
print(str1.split('a')[0])
# 输出结果
# sd

6)upper、lower大小写

将英文字母全部转成大写、小写

str1 = 'asdfgh'
print(str1.upper())str2 = 'SDFGG'
print(str2.lower())# 输出结果
ASDFGH
sdfgg

7)strip去除空格换行符

去除首尾空格和换行符,另外还有lstrip()去除左边的空格,rstrip()去除右边的空格

str1 = ' asrfaada '
print(str1.strip())# 输出结果
# asrfaada

4.字符串格式化输出

1)传统格式化输出%

  • 输出整数 %d
  • 输出浮点数 %f
  • 指定输出小数点位数 %.2f (保留小数点后2位)
  • 输出字符串 %s
  • 字符串截取 %.2s (保留两个长度的字符串)
test = 'python'
num = 12345.45612
print('test是%s' % test)
print('test是%.2s' % test)
# print('test是%d' % test) # 因为test是一个字符串,使用%d会报错
print('num是%d' % num)
print('num是%f' % num)
print('num是%.2f' % num)

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
test是python
test是py
num是12345
num是12345.456120
num是12345.46Process finished with exit code 0

2)format格式化输出

用 { } 花括号作一个占位符,这种写法比较流行

  • 不指定序号,自动取匹配 {}
  • 指定下标序号去匹配 [0] [1]
  • 保留两位小数 {:.02f}
  • 百分比形式显示 {:.2%}
print('{}{}{}'.format('test','是','python'))  # 常用这种写法
print('{}a{}a{}'.format('test','是','python'))
print('{2}{0}{1}'.format('test','是','python')) # 指定format下标

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
test是python
testa是apython
pythontest是Process finished with exit code 0

六、元组tuple

1.定义

通过()小括号来表示元组,元组中的数据可以是任意的,但元组是不可变类型的数据,元组定义之后无法修改其内部的元素

2.元组的常见操作

下标取值:元组内部的数据是有序的,可以通过下标取值

注意点:

t = () 是空元祖

t = (1,) 只有一个数据的时候,要在末尾加一个逗号

3.元组的方法

count:查找元素的个数,找不到会返回0

index:查找元素的下标,还可以指定查找范围

t = ()  # 这是一个空元组
t2 = (1,)  # 只有一个元素
t3 = (1, 2, 3, 'sdfg', '张三' , 'sdfg')
res = t3.count('张三')
res2 = t3.count('sd')
res3 = t3.count('sdfg')
res4 = t3.index('sdfg')
res5 = t3.index('sdfg', 0, 4)
print(t, t2, t3, res, res2, res3,res4, res5)

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
() (1,) (1, 2, 3, 'sdfg', '张三', 'sdfg') 1 0 2 3 3Process finished with exit code 0

七、列表list

1.定义

  • 列表用[] 中括号表示
  • 列表内部的元素可以是任意类型
  • 列表是使用最频繁的数据类型之一

2.列表的常见操作

1)下标索引取值:列表内部的元素是有序的

2)修改元素的值:列表是可变类型数据,可以通过下标修改指定位置的值

li = [1, 2, 'ada', (1, 2)]  # 嵌套了一个元组,整个元组是一个元素
print(li[3])
li[3] = (1, 2, 3)
print(li)

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
(1, 2)
[1, 2, 'ada', (1, 2, 3)]Process finished with exit code 0

3.列表的方法

1)增:append、insert、extend

li = ['python', 'java', 'c', 'c++', 'go', 'ruby', 'html']# 增加元素
# append:往列表的最后位置增加元素
li.append('php')
print(li)
li.append([11, 22, 33])  # 嵌套,加一个列表
print(li)# insert:按指定位置插入,通过下标指定
li.insert(3, 'c#')
print(li)
li.insert(4, '[0,1]')  # 嵌套,指定位置加一个列表
print(li)# extend:插入多个元素
li.extend(['aa', 'bb', 'cc'])
print(li)

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
['python', 'java', 'c', 'c++', 'go', 'ruby', 'html', 'php']
['python', 'java', 'c', 'c++', 'go', 'ruby', 'html', 'php', [11, 22, 33]]
['python', 'java', 'c', 'c#', 'c++', 'go', 'ruby', 'html', 'php', [11, 22, 33]]
['python', 'java', 'c', 'c#', '[0,1]', 'c++', 'go', 'ruby', 'html', 'php', [11, 22, 33]]
['python', 'java', 'c', 'c#', '[0,1]', 'c++', 'go', 'ruby', 'html', 'php', [11, 22, 33], 'aa', 'bb', 'cc']Process finished with exit code 0

2)删:pop、remove、clear(还有一个关键字del删除)

li = ['python', 'java', 'c', 'c++', 'go', 'ruby', 'html']# 删除元素
# remove:删除指定元素,从前往后找,找到第一个删除,只删除第一个
li.remove('python')
print(li)# pop:指定下标删除,如果不传下标,默认删除最后一个,最后一个是-1
li.pop()
print(li)
li.pop(0)
print(li)# clear:清空列表的所有元素
# li.clear()  这里不做运行# del:关键字(关键字删除) 把整个li列表从内存删除了
# del li  这里不做运行
del li[1]    # 通过下标删除某一个元素
print(li)

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
['java', 'c', 'c++', 'go', 'ruby', 'html']
['java', 'c', 'c++', 'go', 'ruby']
['c', 'c++', 'go', 'ruby']
['c', 'go', 'ruby']Process finished with exit code 0

3)查:index、count

li = ['python', 'java', 'c', 'c++', 'go', 'ruby', 'html']# 查询
# count:计数
print(li.count('python'))  # 统计元素的个数
# index:返回下标
print(li.index('java'))     # 查找元素的下标

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
1
1Process finished with exit code 0

4)改:通过下标修改值

li = ['python', 'java', 'c', 'c++', 'go', 'ruby', 'html']# 修改列表元素
li[1] = 'python'
print(li)

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
['python', 'python', 'c', 'c++', 'go', 'ruby', 'html']Process finished with exit code 0

5)其他:copy、reverse、sort

lii = [88,17,22,56,123,23,22,5]
# copy:对列表的元素倒序显示
test = lii.copy()
print(test)# sort:对数值排序,默认从小到大排序
lii.sort()      # 从小到大排序
print(lii)lii.sort(reverse=True)   # 从大到小排序
print(lii)# reverse:对列表的元素倒序显示
lii.reverse()
print(lii)

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
[88, 17, 22, 56, 123, 23, 22, 5]
[5, 17, 22, 22, 23, 56, 88, 123]
[123, 88, 56, 23, 22, 22, 17, 5]
[5, 17, 22, 22, 23, 56, 88, 123]Process finished with exit code 0

八、序列类型的通用操作

1.下标取值

可以正向取,从0开始,也可以反向取,从-1开始

2.切片

[a:b] a代表起始位置,b终止位置,使用的是元素下标,左闭右开,需a<b ;

[a: b : ​c] c为步长,c为负时表示反切,从后面开始切,需a>b

# 内部元素按下标索引进行排序
# 切片[a:b]  左闭右开
#    [a:b:c]   为c步长str1 = 'hello python !'
str2 = ['python','java','c++','c#','go','php']
str3 = (1,3,4)
print(str1[1])
print(str1[6:12])
print(str2[6:-2])print(str1[::2])   # 毎2个元素为一步,取毎一步的第一个元素
print(str1[6:12:2])   # 取到python,步长为2,最后切片结果pto# 步长为正:开始位置下标小于终止位置 a<b
# 步长为负:开始位置下标大于终止位置 a>bprint(str2[::-2])  # 从后面切起,2个元素为一步print(str2[0:5:-2])   # 这样是切不到元素的,思考一下为什么?
print(str2[5:0:-2])

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
e
python
[]
hlopto
pto
['php', 'c#', 'java']
[]
['php', 'c#', 'java']Process finished with exit code 0

3.获取元素总数

len()

4.统计元素个数

count()

str1 = 'asdas'
li = [1,2]
# len():打印元素的个数
print(len(str1))
print(len(li))
# count():打印元素的个数
print(str1.count('a'))
print(li.count(1))

5.序列类型之间的转换

  • str():可以将整个元组或列表强制转换成一个字符串(基本不用)
  • list():将元组和字符串中的每个元素拿出来,组成一个列表
  • tuple():将列表和字符串中的每个元素拿出来,组成一个元组
# 序列类型之间的相互转换
str1 = 'hello python !'
str2 = ['python','java','c++','c#','go','php']
str3 = (1,3,4)
print(str(str2))     # 将整个元组或列表强制转换成一个字符串(基本不用)
print(str(str3))
print(list(str1))     # 将元组和字符串中的每个元素拿出来,组成一个列表
print(list(str3))
print(tuple(str1))    # 将列表和字符串中的每个元素拿出来,组成一个元组
print(tuple(str2))

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
['python', 'java', 'c++', 'c#', 'go', 'php']
(1, 3, 4)
['h', 'e', 'l', 'l', 'o', ' ', 'p', 'y', 't', 'h', 'o', 'n', ' ', '!']
[1, 3, 4]
('h', 'e', 'l', 'l', 'o', ' ', 'p', 'y', 't', 'h', 'o', 'n', ' ', '!')
('python', 'java', 'c++', 'c#', 'go', 'php')Process finished with exit code 0

总结

今天的文章就到这里了哟,需要获得下面福利的小伙伴可以私信我关键字“资料”获取哟。

喜欢的小伙伴不要忘记点赞收藏评论加关注哟。

​项目实战

app项目,银行项目,医药项目,电商,金融

大型电商项目

​全套软件测试自动化测试教学视频

300G教程资料下载【视频教程+PPT+项目源码】

​全套软件测试自动化测试大厂面经

​python自动化测试++全套模板+性能测试

全栈自动化测试之python基础基本数据类型数值类型及序列类型相关推荐

  1. 我的全栈之路-Python基础之Python概述与开发环境搭建

    我的全栈之路-Python基础之Python概述与开发环境搭建 我的全栈之路 1.1 信息技术发展趋势 1.2 浅谈计算机系统架构 1.2.1 计算机系统架构概述 1.2.2 计算机硬件系统 1.2. ...

  2. 自动化测试之什么是python基础基本数据类型数值类型及序列类型

    前言: 大家都知道学习软件测试需要必须要掌握一门开发语言,对于测试小白来说我们都是推荐python进行学习,因为比较简单,那么今天笔者想给大家唠唠python语言的基本数据类型可以分为三类:数值类型. ...

  3. 自动化测试之python基础什么是面对对象之类和对象

    前言 学习自动化测试需要掌握一门开发语言,Java.python这两个可以选一个,这里呢笔者推荐的是python语言,因为它比较好学,那么今天呢,笔者就来给大家介绍一下python基础中的面对对象之类 ...

  4. 视频教程-python全栈习题课-Python

    python全栈习题课 奥格斯堡大学计算机系毕业,后从事十年年Python,Java开发,后转入培训行业,现在为北京图灵学院Python职业讲师 刘英 ¥368.00 立即订阅 扫码下载「CSDN程序 ...

  5. python全栈工程师薪资-Python全栈工程师为何这么火薪资这么高看了才知道

    (文章转载于网络) 我每天听见全栈工程师这个成语. 这么很多小伙伴还是不明所以,什么是全栈工程师?咋回事全栈开发用Python?Python Web全栈开发到底有多高薪?今天就来为大家解读一下. 啥是 ...

  6. 1. JAVA全栈知识体系--- Java基础

    1. JAVA全栈知识体系- Java基础 文章目录 1. JAVA全栈知识体系--- Java基础 1.1 语法基础 面向对象特性? a = a + b 与 a += b 的区别 3*0.1 == ...

  7. 什么是全栈工程师,为什么全栈开发用Python,Python web全栈开发到底有多高薪?

    我们经常听到全栈工程师这个词语.那么很多小伙伴还是不明所以,什么是全栈工程师?为什么全栈开发用Python?Python web全栈开发到底有多高薪? 一.什么是Python web全栈工程师? 全栈 ...

  8. Python基础之数据类型(一)

    Python基础之数据类型(一) 一.数据类型种类 二.int类型 三.float类型 1.float介绍 2.float简单示例 三.bool类型 1.布尔值为true 2.布尔值为false 四. ...

  9. Python基础之数据类型II

    Python基础之数据类型II 3.List(列表) 引子 我们现在已经学过的基础数据类型: int float str bool,str类型可以帮我们存储少量的数据,但是str有什么缺点? str存 ...

最新文章

  1. webapp检测安卓app是否安装并launch
  2. Nginx Web服务应用
  3. Linux下巧妙使用邮件服务器之postfix(认证+web)
  4. python多继承_python作用域和多继承
  5. POJ 2967 (水题,考察putchar()按位输入)
  6. Lua元表(Metatable)简易教程
  7. spring boot配置dubbo(XML)
  8. jlabel字怎么变化_怎样才能把字写好?详解最科学的练字方法及步骤
  9. 一个有限状态机的C++实现
  10. Hdu2660 Accepted Necklace【简单dfs】
  11. mysql concat键值对_mysql中concat函数实现数据库字段合并查询
  12. 单链表的基础操作练习
  13. 【curl】【php】curl报错,错误代码77,CURLE_SSL_CACERT_BADFILE (77)解决方法
  14. C++前景如何,C++好学吗?
  15. WAV音频文件的分析
  16. 如何有效的阅读开源代码
  17. c语言变量格式化,C语言新手入门之格式化输出和变量类型
  18. OCR识别数学公式图片,获得原始公式代码
  19. 装了伽卡他卡打不开任务管理器的解决办法
  20. uniCloud云开发

热门文章

  1. MGA元宇宙创世大会 中国2022
  2. Ubuntu下crontab命令的用法
  3. c语言中witch作用,【在定语从句中什么时候witch不能用?】作业帮
  4. 【SQLIntegrityConstraintViolationException】:Duplicate entry
  5. 为omap3530使用BusyBox构建linux文件系统及添加telnet服务
  6. 洪泛路由模拟(Java实现)
  7. VUE jQuery+VUE带实时节气创意圆形罗盘时钟动画特效
  8. 自定义个性cmd界面 轻松打造个性的cmd 修改cmd字体颜色 添加个性cmd内容(转)
  9. 关于光伏发电量计算公式疑问
  10. 【国产化环境】设置java环境变量启动tomcat