05 2023 档案
摘要:# 关于logging 利用logging,我们在代码里面输出日志信息,这些日志信息可以包括代码中的数据、日志所在模块/文件/行、记录时间、日志级别等等,这些信息可以判断代码运行状态、查看具体代码信息以帮助我们定位问题。 在代码量大、模块多时,建议用logging来替代print,输出信息更加方便阅
阅读全文
摘要:关于json JSON 是一种按照 JavaScript 对象语法的数据格式 相关介绍 https://developer.mozilla.org/zh-CN/docs/Learn/JavaScript/Objects/JSON 很多网页和app前后端数据交换的数据的格式就是json,打开F12或者
阅读全文
摘要:# 1 关于argparse 从命令行工具运行python时,argparse 可以解析命令行工具输入的各种数据,通过argparse提供的函数或者属性,我们可以获得它解析到的数据 通过argparse,我们也可以自定义命令行选项,比如pytest -s -v ,-s -v就是pytest定义的命令
阅读全文
摘要:# 1 关于secrets secrets 模块用于生成高度加密的随机数,安全性比较高,应用方面有生成安全的随机数、生成密码字符串等 python官方也推荐最好用 secrets 替代 random 模块,random 模块生成的是一种伪随机数,基于系统时钟和其它可预测原理生成,不是真正随机和安全的
阅读全文
摘要:# 1 关于hashlib与hash算法 python的hashlib提供了对hash算法的的支持,常见的算法有MD5 SHA1 SHA224等,对不同的算法,hashlib提供了一些通用的函数,以方便我们的使用 ## hash算法 个人理解是,它可以将任意长度的二进制值变为固定长度的二进制值。 通
阅读全文
摘要:#1 简单介绍 configparser用来处理常见的配置文件ini文件 ## ini文件 ini文件是由section组成的,section区域,每个section由一个 [xxx]开头,xxx是该section的name,[xxx]后面跟着的是key value数据(key value之间默认用
阅读全文
摘要:# 1简单介绍 看名字就知道是用来处理csv文件的,此外,csv文件可以用excel等表格工具编辑,以前我一直以为是什么系统文件 好奇这个文件用什么软件打开 # 2 相关函数介绍 ## csv.reader() csv.writer() csv.reader(csvfile, dialect='ex
阅读全文
摘要:# 1简单介绍 SQLite 是轻量级的基于磁盘的数据库 不需要单独的服务器进程(比如像客户端/服务器SQL数据库mysql),它使用单一的磁盘文件来存放所有数据,由于体积小、速度快、容易使用,所以常常在许多地方看到它的应用 如Android和IOS应用的本地存储 浏览器应用等 sqlite3模块提
阅读全文
摘要:# 1 简单介绍 shutil提供了一系列函数来对文件或目录进行高级操作,如复制 压缩 移动 删除等,功能和os模块功能的很类似,但shutil更加易用 shutil没有提供对单个文件的删除操作,单个文件的复制 移动 解压缩是支持的 # 2 相关函数 ## shutil.make_archive()
阅读全文
摘要:# 简单介绍 tmpfile可以生成临时文件和目录,在生成后,其中一些函数还有自动清理那些生成的文件或目录的功能 # 相关函数 ## tempfile.TemporaryFile() tempfile.TemporaryFile(mode='w+b', buffering=- 1, encoding
阅读全文
摘要:# 1 简单介绍 filecmp文件用于比较不同目录下的文件及不同文件的内容 # 相关函数 ##filecmp.cmp(f1, f2, shallow=True) 比较名为 f1 和 f2 的文件,如果它们似乎相等则返回 True ,否则返回 False ##filecmp.cmpfiles(dir
阅读全文
摘要:# 1 简单介绍 stat模块需要结合 os.stat(), os.fstat() 和 os.lstat()这些函数的返回值来使用,提供文件和目录的一些信息(如类型 大小 修改时间等等) # 2 相关函数及属性 stat.S_ISDIR(mode) 判断是否为目录 stat.S_ISCHR(mode
阅读全文
摘要:# 1 关于fileinput 利用fileinput,我们可以循环遍历标准输入或者多个文件中的数据 它和open()作用很类似, 但是open()只能操作一个文件且相关函数功能没有它丰富 # 2 函数介绍 ## fileinput.input(files=None, inplace=False,
阅读全文
摘要:#1 简单介绍 os.path模块提供了一系列函数,以便我们处理目录路径和文件 os.path常和os中其它函数一起配合使用,如 ## os.getcwd() 获取当前所在的目录  page = BeautifulSoup(r
阅读全文
摘要:1 itertools itertools提供了许多的函数来创建各种各样的迭代器,以便用于高效的循环和迭代操作 2 itertools函数 itertools.count(start=0, step=1) 执行 itertools.cycle(iterable) 如上,会不断循环输出11-14 it
阅读全文
摘要:1 re模块的作用 个人觉得就是按照给定的条件,在文本中去寻找匹配对应的字符 re模块十分强大,提供的正则规则也非常多,网上有很多辅助和测试工具,现在有ai就更加方便了,不过一些基础的使用最好还是了解下 2 正则表达式 个人理解,正则表达式就是寻找、匹配的规则或者条件,它是一个字符串的形式 首先,一
阅读全文
摘要:# 1 pathlib中的 path类 获取当前工作目录 Path.cwd() 注意P是大写  ,可以把这个过程视为用例执行前面的准备工作 即setup test函数执行完后也有一些收尾工作要做,即teardown,比如前面我们在fixture中实现了一个数据库连接
阅读全文
摘要:1fixture的scope 在@pytest.fixture(scope='xxx')中,scope的可选值有5个,以下是官网的描述 2 function级别的scope 添加如下代码到pytest.ini,便于输出日志 新建conftest.py文件,把fixture函数写入其中,便于后面fix
阅读全文
摘要:1 什么是fixture @pytest.fixture def my_fruit(): return Fruit("apple") 如上,用@pytest.fixture装饰的函数就是fixture 2 fixture的作用 我的理解是为test函数的运行提供数据、必要的环境支持等 3 fixtu
阅读全文
摘要:##如上官网所说,pytest使用python中的assert来比较实际值与预期值,实现断言功能 ##1 常用的断言方式 assert xxx assert a == b assert a!=b assert a > b assert a <b assert a in b assert a not
阅读全文
摘要:1 pytest xxxx 2 python -m pytest xxxx python -m pytest --html=./report/rep2.html test_env_pytest_ini.py 这个与pytest几乎是相同的,官网是这样说的 3 python pytest xxx 这与
阅读全文