零基础学python:第18节 文件和目录

文件和目录

1. os模块

需要引入os模块

1.1 os基本方法

函数名函数值
os.name获取当前的操作系统的类型nt->windows posix->unix 后者Linux
os.environ获取操作系统中的环境变量
os.environ.get(“path”)获取path的环境变量
os.curdir获取当前的目录
os.getcwd()获取当前的工作目录
os.listdir() **以列表的形式 返回当前目录的文件
os.mkdir()创建目录
os.rmdir()删除目录
os.rename(old,new)修改文件后者文件夹的名字
os.remove()删除文件
os.system(command)执行系统命令
os.walk(path) **遍历目录
os.path.join(path1,path2)将path1和path2拼接成一个正常的路径
os.path.splitext()获取文件扩展名
os.path.isdir() **判断是否是目录
os.path.isfile() **判断是否是文件
os.path.exists() **判断文件或者目录是否存在
os.path.getsize() **获取文件的大小(字节)
os.path.dirname()获取路径的目录名
os.path.basename()获取路径的文件名
os.path.abspath()返回文件的绝对路径
os.path.split()拆分路径

1.2 目录的遍历

  • 深度优先
  • 广度优先遍历

2. 单元测试和文档测试

###2.1 单元测试

作用:对一个函数,模块或者一个类进行正确性的校验工作

###2.2 文档测试

作用:可以提取注释中的代码执行

doctest严格Python交互模式下的写法

3 pillow图形库的使用

PIL:Python Imaging Library,已经是Python平台事实上的图像处理标准库了。PIL功能非常强大,但API却非常简单易用。官网地址:https://pillow.readthedocs.io/en/5.1.x/reference/index.html

由于PIL仅支持到Python 2.7,加上年久失修,于是一群志愿者在PIL的基础上创建了兼容的版本,名字叫Pillow,支持最新Python 3.x,又加入了许多新特性,因此,我们可以直接安装使用Pillow。

Pillow常用的模块Image、ImageDraw、ImageFont。其中Image模块用于操作图像,ImageDraw用于绘图,ImageFont用于设定字体。

方法参数说明
Image.new(mode, size, color=0)mode用于设置是RGB或者RGBA,size设定宽和高,元组(width,height),color设定颜色,可以是‘#rrggbb’或者’red’或者(r,g,b)其中r,g,b是0-255的整数创建画布
ImageDraw.Draw(im, mode=None)im是画布,就是Image.new创建的画布,mode可省略创建画笔
ImageDraw.point(xy, fill=None)xy为设置点的坐标,可以设置多个点,格式[(x,y),(x,y)…]或者[x1,y1,x2,y2…]。fill是填充颜色画点
ImageDraw.line(xy, fill=None, width=0)xy同上,fill同上,width设定线宽画线
ImageDraw.rectangle(xy, fill=None, outline=None)xy设置长方形的对角(左上,右下)坐标,格式[(x1,y1),(x2,y2)], outline设定线的颜色,fill指的长方形内部填充颜色画长方形
ImageDraw.arc(xy, start, end, fill=None)xy设置同长方形,start开始角度,end结束角度,3点钟方向为0度,顺时针方向增加,fill内部填充色圆弧
ImageDraw.text(xy, text, fill=None, font=None)xy为文字左上角坐标,设置为元组(x,y),text要画的文字,fill指字体颜色,font设置字体画文字
ImageFont.truetype(font=None, size=10, encoding=‘’)font字体名称,size字体大小,encodeing字符串编码设置字体
  • 小练习:
import os
import os.path as path

#
 print(os.name)  #操作系统名称  nt->windows 7/8/10/
# print(os.environ)  #系统环境变量,字典
# print(os.environ['path'])

# print(os.curdir)  # . 相对路径
# print(os.getcwd())  #绝对路径
#获取目录下的内容(子目录和文件)
# print(os.listdir(r"C:\bj1812\base\15"))
# os.mkdir('a')  #创建目录
# os.rmdir('a')    #删除目录

# os.remove('test1.txt')  #删除文件
# os.system("dir")
# os.system('calc.exe')  #打开计算器
# for abs_path,child_path,files in os.walk(r'C:\bj1812\base\15'):
#     print(abs_path)
#     print(child_path)
#     print(files)
#路径处理
print(os.path.join(r'C:\bj1812\base\15\code','1_os.py'))  #路径拼接

#判断文件是否存在
if path.exists(os.path.join(r'C:\bj1812\base\15\code','1_os.py')):
    print("文件存在")
else:
    print("文件不存在")

print(path.isdir(r"C:\bj1812\base\15\code\1_os.py")) #判断是否是目录,是目录返回True
print(path.isfile(r"C:\bj1812\base\15\code\1_os.py"))  #判断是否是文件
print(path.basename(r"C:\bj1812\base\15\code\1_os.py"))  #从路径中获取文件名
print(path.dirname(r"C:\bj1812\base\15\code\1_os.py"))  #获取路径中的目录部分
print(path.dirname(r"C:\bj1812\base\15\code"))  #获取目录的父目录
print(path.abspath('1_os.py'))  #获取文件的绝对路径
print(path.split(r"C:\bj1812\base\15\code\1_os.py")) #将路径分割为目录和文件两部分
print(path.splitext(r"C:\bj1812\base\15\code\1_os.py"))  #将路径分割为文件部分和后缀部分
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值