内置重要模块(os,json,sys)
os模块
os模块主要与操作系统进行交互import os
# 1.创建目录 mkdir/makedirs
os.mkdir(r'a')
os.mkdir(r'a\bb')
os.mkdir(r'a\bb\ccc')
mkdir每次只能创建一个单级目录,否则会报错
os.makedirs(r'a\bb\ccc')
makedirs 可以一次性创建一个多级目录
# 2.删除目录,文件 rmdir/removedirs/remove
os.rmdir(r'a')
os.rmdir(r'a\bb')
os.rmdir(r'a\bb\ccc')
rmdir可以删除一个一个单级目录,目录内有文件会报错
os.removedirs(r'')
removedirs可以删除内部没有东西的多层目录,由内到外的
os.remove(r'a.txt')
os.remove(r'D:\pycharmProjects\day24\os模块\ccc\a.txt')
删除当前执行文件所在根目录的指定文件
# 3.列举指定路径的文件名称 listdir
print(os.listdir()) 括号内不写会展示当前工作路径下的文件与文件夹['.venv', 'aa', 'text.py', 'vscod']
print(os.listdir(r'aa')) 括号内填写,要填入目录的绝对路径,才会以列表的形式展示,其他格式路径会报错
# 4.重命名目录和文件 rename
os.rename(r'aaa', r'ccc')
os.rename(r'os模块', r'os')
os.rename(r'os.py', r'ooss.py')
可以对当前工作路径目录,文件重命名。
# 5.获取路径 getcwd
print(os.getcwd()) 当前工作的路径,得到的是绝对路径: D:\pythonProject\001
os.mkdir(r'123')
print(os.getcwd()) 在相对路径创建新目录,改变当前工作目录到新目录
os.chdir(r'D:\pycharmProjects\day24\123')
print(os.getcwd())
# 6.判断路径是否存在 exists/isdir/isfile
print(os.path.exists(r'D:\pycharmProjects\day24\123')) # Ture
print(os.path.exists(r'ccc')) # Ture print(os.path.exists(r'222')) # False
括号里可以放入绝对路径,或者同一级的文件名,目录名,没有的会输出False
print(os.path.isdir(r'D:\pycharmProjects\day24\123')) # Ture
print(os.path.isdir(r'ccc')) # Ture print(os.path.isdir(r'ooss.py')) # False
isdir只能用于获取输入的路径是不是目录(文件夹)
print(os.path.isfile(r'D:\pycharmProjects\day24\123')) # False
print(os.path.isfile(r'ccc')) # False print(os.path.isfile(r'ooss.py')) # Ture
# 7.动态获取项目根路径()
print(os.path.abspath(__file__)) # 获取执行文件的绝对路径 D:/pythonProject03/day19/01 os模块.py
print(os.path.dirname(__file__)) # 获取执行文件所在的目录路径 D:/pythonProject03/day19
# 8.路径的拼接 join
absolute_path ='D:\pycharmProjects\day24\os模块'
relative_path ='ooss.py'
res = os.path.join(absolute_path, relative_path)
print(res)
路径的拼接不建议使用+/join方法可以自动识别当前操作系统并切换正确的分隔符。windows用\ mac用/
# 9.获取文件的大小 bytes
print(os.path.getsize(r'a.txt'))
获取到的是文件字节大小
sys模块
主要与python解释器打交道
import sys # 1. print(sys.path) 当前执行文件的系统环境变量。结果统合为一个列表 # 2. print(sys.version) 查看python解释器信息 # 3. print(sys.platform) 查看当前平台的操作系统 win32
# 4. print(sys.getrecursionlimit()) 获取python解释器默认最大递归深度
# 5. sys.setrecursionlimit(2000) 修改python解释器默认最大递归深度
res = sys.argv
if len(res) != 3:
print('执行命令缺少了用户名或密码')
else:
username = res[1]
password = res[2]
if username == 'jason' and password == '123':
print('jason您好 文件正常执行')
else:
print('您不是jason无权执行该文件')
json模块
序列化与反序列化(可以打破语言限制实现不同编程语言之间数据交互)
json格式数据的形式都是双引号的字符串类型 # 1.针对于数据操作 json.dumps() json.loads() # 2.针对于文件操作 json.dump() json.load()
json模块实战
https://www.cnblogs.com/juzijunjun/p/16810067.html
分类:
python基础 / 模块
, python基础
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律