Python数值类型数据运算及字符串(Python自动化测试入门)

Posted 程序员小濠

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python数值类型数据运算及字符串(Python自动化测试入门)相关的知识,希望对你有一定的参考价值。

本篇内容较长,介绍了Python数值类型、运算以及字符串的一些操作,逐步的学习过程中也会涉及到面试常考题,后续我会整理一篇面试常见题。

一、Python运算符

Python运算符包含算数运算符、赋值运算符、比较运算符、逻辑运算符四种

1.1 算数运算符

算数运算符就是简单的加、减、乘、除

1.1.1 加

num1 = 100
num2 = 99
sum = num1 + num2
print(sum)

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
199

1.1.2 减

num1 = 100
num2 = 99
dec = num1 - num2
print(dec)

运算结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
1

1.1.3 乘

num1 = 100
num2 = 99
mul = num1 * num2
print(mul)

运算结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
9900

1.1.4 除

num1 = 100
num2 = 99
div = num1 / num2
print(div)

运算结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
1.0101010101010102

1.2 赋值运算符

赋值运算符包含 += 、-= 、*= 、/=

1.2.1 +=

sum+=100 ,即等于sum = sum + 100
其余的赋值运算符同理

1.3 比较运算符

比较运算符包含 == 、!= 、 > 、< 、>= 、<=
比较运算符的运行结果是布尔值(False、True)

num1 = 100
num2 = 99
print(num1 == num2)
print(num1 != num2)

print(num1 >= num2)
print(num1 <= num2)

print(num1 < num2)
print(num1 > num2)

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
False
True
True
False
False
True

1.4 逻辑运算符

逻辑运算符包含与(and)、或(or)、非(not)三种
逻辑运算符的运行结果也是布尔值(False、True)

1.4.1 与(and)

所有条件为真,结果才为真

user_age = int(input('请输入你的年龄:'))
user_city = input('请输入你的城市:')
res = user_age < 30 and user_city == '上海'
print(res)

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
请输入你的年龄:31
请输入你的城市:上海
False

1.4.2 或(or)

任意条件为真,则结果为真

user_age = int(input('请输入你的年龄:'))
user_city = input('请输入你的城市:')
res = user_age < 30 or user_city == '上海'
print(res)

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
请输入你的年龄:31
请输入你的城市:上海
True

1.4.3 非(not)

与实际运算结果相反

user_age = int(input('请输入你的年龄:'))
user_city = input('请输入你的城市:')
res = not(user_age < 30 or user_city == '上海')
print(res)

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
请输入你的年龄:31
请输入你的城市:上海
False

二、Python字符串操作

2.1 定义

  1. 单引号、双引号:定义单行字符串
  2. 三引号、三双引号:定义多行字符串
  3. 空字符串:s=‘’
  4. 转换成字符串:str()

注意:字符串中有单引号时(外面用双引号区分;外双内单,外单内双,内外一样用转义)
比如: s = "hello,py\\"30\\"!!"

2.2 索引取值

即通过索引获取指定位置的字符

2.2.1 顺序索引

顺序索引的下标是从0开始

s = 'hello,py33'
print(s[0])
print(s[4])

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
h
o

2.2.2 倒序索引

倒序索引的下标是从-1开始

s = 'hello,py33'
s_len = len(s)  # 字符串长度
print(s[s_len-1])  # 字符串长度减1
print(s[-1])  # 倒序,字符串最后一位

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
3
3

2.3 索引切片

2.3.1 格式

  1. 字符串[起始索引:结束索引:步长]
  2. 默认起始索引为0,默认步长为1
  3. 左闭右开:含起始,不含结束
  4. 步长为正,表示正序切;步长为负,表示倒序切
  5. 字符串反转:[::-1] (注意:面试经常会问到这个)
s = "monty,python"

print(s[:3])  # 下标从0开始,结束下标为2,默认步长为1   [0,1,2]   取头不取尾
print(s[:])  # 下标从0开始,一直到字符串最后。步长为1
print(s[2:]) # 下标从2开始,一直到最后。

print(s[::2]) # 下标从0开始,下标+2
print(s[1::2]) # 下标从1开始,下标+2

# 如果步长是正数,正向取。如果步长是负数,倒序取。
print(s[::]) # 全取
print(s[::-1]) # 倒序 - 反转

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
mon
monty,python
nty,python
mnypto
ot,yhn
monty,python
nohtyp,ytnom

2.4 常见操作

在pycharm中输入s.之后下拉框会出来
在这里插入图片描述

2.4.1 查找(find)

s = "monty,python"
res = s.find(",") # 参数就是子字符串。查找结果为下标。
print(res)

res = s.find("PY")  # 如果找不着,就返回-1
print(res)

res = s.find("py") 
print(res)

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
5
-1
6

2.4.2 返回下标(index)

s = "monty,python"
res = s.index("t")
res2 = s.index("t",4)
res3 = s.index("th")
print(res3)

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
8

注意:当查找的字符不存在于字符串之中时,运行结果会报ValueError: substring not found错误

2.5 拼接和截断

2.5.1 split

  1. 分隔符
  2. 指定分隔次数
  3. 默认就是以空格作为分隔符
s = 'keke 九三 数 水滴 小婵 秋呆呆'
res = s.split(" ")
# res = s.split()  # 默认就是以空格作为分隔符
# res = s.split(" ",2)  # 运行结果:['keke', '九三', '数 水滴 小婵 秋呆呆']
print(res)

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
['keke', '九三', '数', '水滴', '小婵', '秋呆呆']

2.5.2 join

  1. 列表当中的字符串,拼成一个字符串。列表当中的成员必须都是字符串。
  2. 以,号将s当中的成员拼成一个字符串。
  3. 用法:拼接符.join(列表) 拼接符也是字符串类型。
s = ['keke', '九三', '数', '水滴', '小婵', '秋呆呆']
new_str = "2 ".join(s)
print(new_str)

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
keke2 九三2 数2 水滴2 小婵2 秋呆呆

2.5.3 无规则拼接

举例:随意拼接两个字符串

s1 = 'hello'
s2 = 'python'
print(s1 + ',' + s2)

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
hello,python

2.6 格式化输出

2.6.1 format

格式:字符串.format():{ }

age = input("请输入你的年龄:")
height = input("你的身高:")
city = input("你的城市:")

s = "hello,大家好,我今年{}岁!".format(age)

# 用法一  每一个{}都有一个值替换
s1 = "hello,大家好,我今年{}岁,身高{},我在{}".format(age, height, city)

# 用法二
s2 = "hello,大家好,我今年{}岁,身高{},我的大学在{},我的工作城市在{}".format(age, height, city, city)
s3 = "hello,大家好,我今年{0}岁,身高{1},我的大学在{2},我的工作城市在{2}".format(int(age), height, city)

print(s1)
print(s2)
print(s3)

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
请输入你的年龄:24
你的身高:160
你的城市:成都
hello,大家好,我今年24岁,身高160,我在成都
hello,大家好,我今年24岁,身高160,我的大学在成都,我的工作城市在成都
hello,大家好,我今年24岁,身高160,我的大学在成都,我的工作城市在成都

如果输出时候的数据需要保留两位小数点,那么要使用 .2f
如下:

num1 = 100.236
s = "我今天买了个liulian,价格为{:.2f}".format(num1)
print(s)

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
我今天买了个liulian,价格为100.24

2.6.2 f表达式

f表达式只能在Python3.6以上使用
我个人比较喜欢用这种方式来格式化输出,比较简便,但是大家在使用之前一定要确保Python版本是3.6以上,不然会报错

age = input("请输入你的年龄:")
height = input("你的身高:")
city = input("你的城市:")
s = f"hello,大家好,我今年{age}岁,身高{height},我在{city}"
print(s)

运行结果:

请输入你的年龄:24
你的身高:160
你的城市:成都
hello,大家好,我今年24岁,身高160,我在成都

2.6.3 %(只需了解)

  1. %s(格式化字符串)
  2. %d()格式化整数
  3. %f(格式化浮点数字,可指定小数点后的精度)
age = input("请输入你的年龄:")
height = input("你的身高:")
city = input("你的城市:")
s = "hello,大家好,我今年%d岁,身高%s,我在%s" % (int(age),height,city)
print(s)

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
请输入你的年龄:24
你的身高:160
你的城市:成都
hello,大家好,我今年24岁,身高160,我在成都

2.7 转义字符

  1. 换行(\\n)
  2. 输出一个\\,即取消转义(\\)
print("D:\\\\Backup\\\\我的文档")
print(R'D:\\Backup\\我的文档')  # 大小r都可以

运行结果:

C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\python.exe E:/python程序小项目/day17/one.py
D:\\Backup\\我的文档
D:\\Backup\\我的文档

转义字符还有很多,这里就写了两个常用的,需要看其他的可以去官网查看具体用法。

最后,为方便大家自学软件测试,特意给大家准备了一份13G的超实用干货学习资源,涉及的内容非常全面。

 包括软件学习路线图,50多天的上课视频、16个突击实战项目,80余个软件测试用软件,37份测试文档,70个软件测试相关问题,40篇测试经验级文章,上千份测试真题分享,还有2021软件测试面试宝典,还有软件测试求职的各类精选简历,希望对大家有所帮助…..

关注我的微信公众号:程序员小濠】就可以免费获取了~

我的软件测试交流群:175317069欢迎大家一起讨论交流,里面也有各种软件测试资料和技术交流

如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。

 

以上是关于Python数值类型数据运算及字符串(Python自动化测试入门)的主要内容,如果未能解决你的问题,请参考以下文章

Python3 - 运算符详解

Python 编程学习教程

Python常见数据类型及操作

Python中的运算符数据类型字符串及列表操作举例

Python3 - 基础语法篇 - 运算符详解(第一天)

python数据类型及基本运算符