11.29

sys实战

查看解释器的版本:

 

可以查看操作系统:

查询解释器的路径:

 

在工作或者写代码的阶段,当导入的方式是正确的,但是提示模块不存在,那么这个时候我们

使用sys来解决。解决的思路是:把不存在模块的路径加到sys执行的路径中

 

hashlib实战

open api的加密思路:

1、对请求参数进行排序,根据key来进行排序

2、把请求参数处理成key=value&key=value

3、对请求参数进行md5的加密(加密的数据类型必须是bytes的数据类型)

4、把加密后的sign当作请求头给服务端发送过去,服务层进行比较,如果一致,可以请求,如果不一致,拒绝请求

 

我们对文件的操作,一般情况下,分为三种情况,分别是:打开文件,操作文件(读写等),关闭文件。在Python 的语言了,提供了对文件的操作方法,默认open()是打开文件并且是只读模式,事实上打开和关闭文件比较很好的 理解,操作文件,那么操作文件的前提打开文件,打开文件就涉及到以什么样的模式来打开文件,比如读,写,只 读,只写,二进制等等模式,具体总结的⻅如下: r:只读模式

w:只写模式【不可读,不存在就创建,存在就清空内容】

x:只写模式【不可读,不存在就创建,存在就报错】 a:增加模式【可读,不存在就创建,存在只增加内容】 "+"表示可以同时读写某个文件,具体为: r+:读写

w+:写读

x+:写读

a+:写读


with上下文

 

 

 

读取文件的内容

读取文件所有的内容

读取文件的第一行内容

按行读取文件的内容

 

面向对象编程

面向对象:
1、类的定义使用的关键字是class
2、类的首字母必须是大写
3、目前学习的类都是新式类
4、所有类的基类(祖先)都是object,因此都是需要来继承的
5、面向对象的三大特性:
封装
继承
多态
6、在OOP的编程中,如果要调用类里面的方法,首先需要对类
进行实例化,实例化后的对象可以调用类中的方法

 

class Person(object):
	def __init__(self, name, age, sex):
		self.name=name
		self.age=age
		self.sex=sex
	def show(self):
		print('my name is {0},and my age is {1},and my sex is {2}'.
		      format(self.name,self.age,self.sex))
obj=Person(name='wukong',age=524,sex='boy')
obj.show()

 

异常处理

程序在执行的过程中,都会存在异常的情况,和设计测试用例
的思想一样,需要考虑被测功能点的正常功能点和异常功能点
try:
expect
else:
finally

执行顺序:
1、如果try执行正常,代码就执行到else的逻辑,再执行finally
2、如果try执行异常,代码就执行到expect的逻辑,再执行finally

def func(a,b):
	try:
		return a/b
	except ZeroDivisionError:
		print('分母不能为0')
	except Exception as e:
		print('数据错误,请检查数据')
print(func(5,0))

 

def func(a,b):
	try:
		return a/b
	except Exception as e:
		return e.args
print(func(25,18))
print(func(4,'8'))
print(func(a={464},b=99))

 

def func(a,b):
	try:
		print(a/b)
	except Exception as e:
		print(e.args)
	else:
		print('try 运行正确,才能执行到')
	finally:
		print('不管是否正确,都会被执行到')
func(9,0)

 

def func(a,b):
	try:
		print(a/b)
	except Exception as e:
		print(e.args)
	else:
		print('try 运行正确,才能执行到')
	finally:
		print('不管是否正确,都会被执行到')
func(9,5)

 

posted @ 2021-11-29 20:26  高。  阅读(47)  评论(0)    收藏  举报