写点什么

软件测试 / 测试开发丨 Python 内置库学习笔记

作者:测试人
  • 2023-06-28
    北京
  • 本文字数:2445 字

    阅读完需:约 8 分钟

点此获取更多相关资料

本文为霍格沃兹测试开发学社学员学习笔记分享

原文链接:https://ceshiren.com/t/topic/25556

内置库

一、内置库 OS

1、os 概述

  1. os: Operating System

  2. os 模块的常用功能

  3. 跨平台的差异

2、os 使用

  1. 导入 os 模块

  2. 查看 os 模块使用文档

  • help(os)

  • dir(os)

import os
# 查看os模块说明文档help(os)
# 查看os模块的属性和方法print(dir(os))
复制代码

3、os 常用方法

(1)系统相关

  • os.name:获取系统名称

  • os.environ:获取系统环境变量信息

  • os.getenv(‘PATH’):获取指定名称的环境变量信息

  • os.system():执行系统指令

import osdir(os)
# 获取操作系统的名称 nt是window系统 posix是是limux系统print(os.name)
# 获取系统环境变量信息,以字典形式展现print(os.environ)
# 获取指定名称的环境变量信息print(os.getenv("chrom"))
# 执行系统命令# linux系统os.system('pwd')# windows系统print(os.system("dir"))
复制代码

(2)操作目录

  • os.getcwd():获取当前目录

  • os.chdir():切换目录

  • os.listdir():列出当前目录内容

  • os.mkdir():创建空目录

  • os.makedirs():递归创建多级目录

  • os.rmdir():删除空目录

  • os.rename():重命名目录

  • os.remove():删除文件

"""目录相关"""# 获取当前所在目录 E:\python_test\Reptile Fictionprint(os.getcwd())# 切换目录 change directoryos.chdir('..')# # 列出当前目录下的所有文件print(os.listdir())  # ['.idea', 'a1', 'chromedriver.exe', 'fiction.py', 'homework_test.py', 'main.py', 'zhihu.py']# # 创建空目录os.mkdir('new')# # 递归创建多级空目录os.makedirs('a/b/c')# # 删除空目录os.rmdir('new')# # 重命名目录os.rename('a', 'a1')# # 删除文件os.remove('demo.txt')
复制代码

(3)os 操作路径(path 方法)

二、内置库-sys

1、sys 概述

  • 是 Python 自带的内置模块

  • 是与 Python 解释器交互的桥梁

2、sys 使用

# 导入sys模块import sys
# 查看sys模块帮助文档help(sys)
# 查看sys模块的属性和方法print(dir(sys))
复制代码

3、常用属性

  • sys.version:返回 Python 解释器版本

  • sys.platform:返回操作系统平台名称

  • sys.argv:返回外部向程序传递的参数

  • sys.modules:返回已导入的模块信息

  • sys.path:返回导包的搜索路径列表

"""sys模块常用属性"""# 返回Python 解释器版本print(sys.version)# 返回操作系统平台名称print(sys.platform)# 返回外部向程序传递的参数print(sys.argv)# 返回已导入的模块信息print(sys.modules)print(sys.modules.keys())# 返回导包的搜索路径列表print(sys.path)
--------------------------------->3.9.7 (tags/v3.9.7:1016ef3, Aug 30 2021, 20:19:38) [MSC v.1929 64 bit (AMD64)]win32
复制代码

4、常用方法

  • sys.getdefaultencoding():获取编码方式

  • sys.exit():运行时退出

"""sys模块常用方法"""# 获取系统当前编码print(sys.getdefaultencoding())
# 运行时退出sys.exit()# 退出后显示errorsys.exit(error)
复制代码

三、内置库-IO

1、IO 概念

IO 就是 input 和 output


2、文件操作步骤

  • 打开文件

  • 操作文件:读/写内容

  • 关闭文件(读写完成,要及时的关闭)file:文件路径;mode:读取模式 buffering:缓冲区的大小(默认为-1,0 为关闭缓冲区,1 遇到换行符才写入磁盘)encoding:编码 errors:遇到编码/解码错误时是否抛出来 newline:换行符,如-r,-nclosefd:文件描述符

def open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True)
复制代码

3、文件读写方式


4、读操作


5、写操作

  • mode=“w+”, 读写权限,会新建文件,清空内容再写入

  • mode=“r+”, 读写权限,替换原来的内容

  • mode=“a+”, 读写权限,追加内容

# 打开文件(以只读的方式)f = open('data', 'r', encoding='utf-8')
# 读取全部内容print(f.read())# 读取括号前的内容print(f.read(10))# 查看读取内容的类型result = f.read()print(type(result))# 设置初始化游标位置f.seek(0)# readlines的类型是list,readline的类型是strresult2 = f.readlines()print(type(result2))# 读取1行内容print(f.readline())
# 关闭文件f.close()print(f'文件已关闭')
复制代码

6、 忘记关闭文件的危害

  • 打开文件达到一定数量, 将会导致打开失败

  • 占用内存空间,非常浪费资源

  • 会导致系统自动回收资源,而丢失数据

7、 with 用法

使用 with 方法,会自动关闭操作

with open('data.txt', 'r', encoding='utf-8') as f:    print(f.read())print(f.closed)   ## 查看关闭状态
复制代码

总结

1)使用 with 方法,会自动完成关闭操作 2)通过 python 封装的 API,可以实现读,写,追加操作 3)文件打开要使用 utf-8 的编码格式(以免中文出现乱码)

四、内置库-科学计算

1、math 函数

math 函数,python 提供的内置数学类函数库,包含了很多数学公式。比如幂函数运算,三角函数,高等函数运算等

2、math 函数操作

1)数字常数 2)数论与表示函数 3)幂对数函数 4)三角对数函数 5)高等特殊函数

3、数字常量


4、数论与表示函数


5、幂函数与对数函数


6、三角函数


7、高等特殊函数


实战练习

  • 常量

  • 数论与表示函数(ceil, floor)

  • 幂函数与对数函数 (pow(), sqrt())

import math
"""数字常量"""print(math.pi)print(math.e)print(math.inf)print(math.nan)"""数论与表示函数"""# 向上取整,取>4.3 的最小的整数5print(math.ceil(4.3))# 向上取整,取>-4.3 的最小的整数-4print(math.ceil(-4.3))# 向下取整,取<4.3 的最大的整数4print(math.floor(4.3))# 向下取整,取<-4.3 的最大的整数-5print(math.floor(-4.3))"""幂函数与对数函数"""print(math.pow(2, 10))print(math.sqrt(3))

"""练习:天天向上的力量
一年365天,以第1天的能力值为基数,记为1.0,当努力学习时,能力值相比前一天提高1%,当没有学习时能力值相比前一天下降1%。(每天努力和每天放任,一年下来的能力值相差多少呢? )"""# 当努力学习时,能力值相比前一天提高1%print(math.pow((1.0 + 0.01), 365))# 当没有学习时能力值相比前一天下降1%print(math.pow((1.0 - 0.01), 365))
复制代码

点此获取更多相关资料

发布于: 刚刚阅读数: 3
用户头像

测试人

关注

专注于软件测试开发 2022-08-29 加入

霍格沃兹测试开发学社,测试人社区:https://ceshiren.com/t/topic/22284

评论

发布
暂无评论
软件测试/测试开发丨Python内置库学习笔记_Python_测试人_InfoQ写作社区