os模块

文件夹的查询和判断:查询路径,判断大小,是否文件、文件夹,获取文件大小
import os
print(os.path.join('D:','move','a.mp4')) #拼路径D:move\a.mp4
print(os.path.exists('passwords.txt')) #判断文件或文件夹是否存在,返回True或flase
print(os.path.dirname('/NiuTest/MLingTest')) # 获取父目录,入参文件 文件要用/,win用/ mac用\
print(os.path.abspath('passwords.txt')) #根据相对路径,获取绝对路径 D:\NiuTest\MLingTest\day5\passwords.txt
print(os.path.abspath('../day4/test.py')) #根据相对路径,获取绝对路径 D:\NiuTest\MLingTest\day4\test.py
# 相对路径:根据当前文件去上层找其他文件,上级文件要用..
# 再当前文件中,通过相对目录找day4下的test.py,../day4/test.py

print(os.path.split('/day4/test.py')) #('/day4', 'test.py') 将路径分隔成一个元组
print(os.path.getsize(r'../day4/test.py')) #13 #获取当前文件的大小
print(os.path.isfile('../day4/test.py')) #判断是不是文件
print(os.path.isdir('../day4')) #判断是不是文件夹 True

#运行结果
D:move\a.mp4
True
/NiuTest
D:\NiuTest\MLingTest\day5\passwords.txt
D:\NiuTest\MLingTest\day4\test.py
('/day4', 'test.py')
13
True
True

 

文件/文件夹的创建和删除

 

import os
#mkdir和makedirs的区别
print(os.mkdir('test.py')) #创建文件夹 再当前目前下创建一层目录
print(os.mkdir('../day4/tests'))  #这样创建是ok的,父目录是存在的
print(os.mkdir('../day4/tests/test.py'))  #不能一连创建两层,如果父目录tests不存在的时候,创建不了
os.makedirs('/tests/test.py') #可以一连创建多层不存在的文件夹下的文件

#rmdir和remove的区别
os.rmdir('test') #仅能删除空文件夹
os.remove('python/射手座') #只能删除文件,不能删除文件夹,删传文件夹的时候会报错,删之后不能恢复

os.rename('test.py','MLing.py') #修改文件名称

  

目录的获取,进入、查询

print(os.listdir('.')) #获取当前文件下所有的文件和文件夹
#['MLing.py', 'os模块.py', 'passwords.txt', 'sys模块.py', 'test', '上周作业一.py', '上周作业二.py', '上周回顾.py', '商品管理.py', '大乐透.txt']

print(os.listdir('..')) #获取上层文件下的所有的文件和文件夹
#['day1', 'day2', 'day3文件+函数', 'day4', 'day5']

os.chdir('../day4') #进入到某个文件夹,写相对和决断路径都可以,没有返回值
open('chdir.txt','w') #在进入的文件夹中打开一个文件,不存在的时候 创建

  

walk的使用
获取某个目录下的内容
1、当前入参的目录
2、当前目录下有哪些文件夹
3、当前目录下有哪些文件
4、循环下面的所有的子目录
import os
for cur_dir,dirs,files in os.walk('D:/NiuTest/MLingTest'):
    print('当前目录是%s'%cur_dir)
    print('当前目录下的文件夹是%s'%dirs)
    print('当前文件夹下的所有文件%s'%files)
    print('='*10)

执行结果:
当前目录是D:/NiuTest/MLingTest
当前目录下的文件夹是['day1', 'day2', 'day3文件+函数', 'day4', 'day5']
当前文件夹下的所有文件[]
==========
当前目录是D:/NiuTest/MLingTest\day1
当前目录下的文件夹是[]
当前文件夹下的所有文件['four.py', 'hello.py', 'one.py', 'three.py', 'two.py', '作业.py', '判断小练习.py', '字典.py']
==========
当前目录是D:/NiuTest/MLingTest\day2
当前目录下的文件夹是['作业']
当前文件夹下的所有文件['作业.py', '元组.py', '切片.py', '判断.py', '字符串.py', '布尔类型.py', '文件读写.py', '课前.py', '集合.py']
==========
当前目录是D:/NiuTest/MLingTest\day2\作业
当前目录下的文件夹是[]
当前文件夹下的所有文件['a.txt', 'student.txt', 'users.txt', '排序作业.py', '用户作业.py']
==========
当前目录是D:/NiuTest/MLingTest\day3文件+函数
当前目录下的文件夹是[]
当前文件夹下的所有文件['jsion操作.py', 'student.txt', 'student1.txt', 'tihuan.txt', 'u2.txt', '__init__.py', '修改文件.py', '冒泡排序.py', '函数.py', '函数的参数.py', '函数练习.py', '简便写法.py']
==========
当前目录是D:/NiuTest/MLingTest\day4
当前目录下的文件夹是['tests', '作业']
当前文件夹下的所有文件['chdir.txt', 'random模块.py', 'test.py', '全局和局部变量.py', '内置函数.py', '模块.py']
==========
当前目录是D:/NiuTest/MLingTest\day4\tests
当前目录下的文件夹是['test.py']
当前文件夹下的所有文件[]
==========
当前目录是D:/NiuTest/MLingTest\day4\tests\test.py
当前目录下的文件夹是[]
当前文件夹下的所有文件[]
==========
当前目录是D:/NiuTest/MLingTest\day4\作业
当前目录下的文件夹是[]
当前文件夹下的所有文件['goods.json', 'number.txt', 'password.txt', 'pd.txt', 'test.py', '作业一.py', '作业三.py', '作业二.py']
==========
当前目录是D:/NiuTest/MLingTest\day5
当前目录下的文件夹是['MLing.py', 'test', 'test.py', '__pycache__']
当前文件夹下的所有文件['os作业.py', 'os模块.py', 'passwords.txt', 'pymysql操作.py', 'sys模块.py', '上周作业一.py', '上周作业二.py', '上周回顾.py', '商品管理.py', '大乐透.txt', '时间相关的模块.py']
==========
当前目录是D:/NiuTest/MLingTest\day5\MLing.py
当前目录下的文件夹是[]
当前文件夹下的所有文件[]
==========
当前目录是D:/NiuTest/MLingTest\day5\test
当前目录下的文件夹是[]
当前文件夹下的所有文件[]
==========
当前目录是D:/NiuTest/MLingTest\day5\test.py
当前目录下的文件夹是[]
当前文件夹下的所有文件[]
==========
当前目录是D:/NiuTest/MLingTest\day5\__pycache__
当前目录下的文件夹是[]
当前文件夹下的所有文件[]
==========

  

 
posted @ 2020-05-16 18:34  MLing  阅读(145)  评论(0编辑  收藏  举报