前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >(十) 初遇python甚是喜爱之OS Module模块

(十) 初遇python甚是喜爱之OS Module模块

作者头像
XXXX-user
修改2019-07-30 10:57:46
4370
修改2019-07-30 10:57:46
举报
文章被收录于专栏:不仅仅是python不仅仅是python

各位读者大大们大家好,今天学习python的OS Module模块,并记录学习过程欢迎大家一起交流分享。

首先新建一个python文件命名为py3_os_module.py,在这个文件中进行操作代码编写:

代码语言:javascript
复制
#单独说说今天学习的OS module模块
import os
from datetime import datetime
#使用内置函数dir()
#查看os模块的属性和方法
#打印内容太多这里不做演示
#回头大家可以自己试试
print(dir(os))
#打印当前的工作目录
#我这里结果是:
#C:\Users\Administrator\Desktop
print(os.getcwd())
#切换目录
#注意转义字符
os.chdir("C:\\Users\\Administrator")
#查看当前目录已切换到:
#C:\Users\Administrator
print(os.getcwd())
#列出当前目录下的所有文件夹目录:
#我先把目录切换一下:
os.chdir("C:\\Users\\Administrator\\Desktop\\python3-demo")
#结果为一个文本文件
#三个文件夹的列表:
#['hello.txt', 'videos', 'yale', '模块学习']
print(os.listdir())
#在当前目录下创建文件夹:
os.mkdir('videos-1')
#打印查看是否创建成功
#['hello.txt', 'videos', 'videos-1', 'yale', '模块学习']
print(os.listdir())
#另外一个创建文件夹的方法
#makedirs():
os.makedirs('videos-2')
#['hello.txt', 'videos', 'videos-1', 'videos-2', 'yale', '模块学习']
print(os.listdir())
#mkdir 和 makedirs的区别
#mkdir:只能创建一级目录
#makedirs能够创建多级目录
#看如下例子:
os.makedirs('videos-2/video-sub1/video-sub2')
print(os.listdir())
#接下来看删除文件夹的方法:
#rmdir只删除掉video-sub2文件夹
os.rmdir('videos-2/video-sub1/video-sub2')
#removedirs 删除掉所有指定的文件夹目录
os.removedirs('videos-2/video-sub1')
#rmdir 和 removedirs区别同创建目录
#重命名文件:
os.rename('hello.txt','demo.txt')
#打印结果:
#['demo.txt', 'videos', 'videos-1', 'yale', '模块学习']
print(os.listdir())
#查看文件的状态信息
#os.stat_result(st_mode=33206, st_ino=3377699720911882, st_dev=2752502229,
#st_nlink=1, st_uid=0, st_gid=0, st_size=41,
#st_atime=1558059707, st_mtime=1558059707, st_ctime=1558059707)
print(os.stat('demo.txt'))
#比如查看下文件的大小
print(os.stat('demo.txt').st_size)#41
#查看文件的最后修改时间:
print(os.stat('demo.txt').st_mtime)#1558059707
#转换为日期格式显示
#先导入datetime模块(看代码开头)
modify_time = os.stat('demo.txt').st_mtime
#2019-05-17 10:59:12.788047
print(datetime.fromtimestamp(modify_time))
#使用os.walk()迭代文件夹的树形结构信息
#方法返回三个结果值:文件夹路径、文件夹名称、文件名称
#看如下代码:
for dirpath,dirname,filename in os.walk("C:\\Users\\Administrator\\Desktop\\python3-demo"):
    print("当前路径:" , dirpath)
    print("目录名称:" , dirname)
    print("文件名称:" , filename)
    print()
#获取系统环境变量
##C:\Users\Administrator
print(os.environ.get('HOME'))
#使用os.path.join()拼接文件路径
file_path = os.path.join(os.environ.get('HOME'),'test.txt')
#C:\Users\Administrator\test.txt
print(file_path)
#使用os.path.basename()
#查看最后的文件名
#文件路径不需要真实存在
#如下例子:
#打印结果为:test.txt
print(os.path.basename('/tmp/test.txt'))
#使用os.path.dirname()
#查看目录名
#打印结果:/tmp/yale
print(os.path.dirname('/tmp/yale/test.txt'))
#使用split()分割获取
#目录名和文件名
#打印结果:('/tmp/yale', 'test.txt')
print(os.path.split('/tmp/yale/test.txt'))
#使用os.path.exists()
#判断文件是否存在
print(os.path.exists('/tmp/test.txt'))#False
#使用os.path.isdir()
#判断是不是目录文件夹
print(os.path.isdir('C:\\Users'))#True
#使用os.path.isfile()
#判断是不是文件
print(os.path.isfile('C:\\Users\\test.txt'))#Ture
#使用os.path.splitext()
#获取文件扩展名
#('/tmp/test', '.txt')
print(os.path.splitext('/tmp/test.txt'))

运行结果:

代码语言:javascript
复制
C:\Users\Administrator\Desktop
C:\Users\Administrator
['hello.txt', 'videos', 'yale', '模块学习']
['hello.txt', 'videos', 'videos-1', 'yale', '模块学习']
['hello.txt', 'videos', 'videos-1', 'videos-2', 'yale', '模块学习']
['hello.txt', 'videos', 'videos-1', 'videos-2', 'yale', '模块学习']
['demo.txt', 'videos', 'videos-1', 'yale', '模块学习']
os.stat_result(st_mode=33206, st_ino=3377699720911882, st_dev=2752502229, st_nlink=1, st_uid=0, st_gid=0, st_size=41, st_atime=1558059707, st_mtime=1558061952, st_ctime=1558059707)
41
1558061952.788047
2019-05-17 10:59:12.788047
当前路径: C:\Users\Administrator\Desktop\python3-demo
目录名称: ['videos', 'videos-1', 'yale', '模块学习']
文件名称: ['demo.txt']

当前路径: C:\Users\Administrator\Desktop\python3-demo\videos
目录名称: []
文件名称: []

当前路径: C:\Users\Administrator\Desktop\python3-demo\videos-1
目录名称: []
文件名称: []

当前路径: C:\Users\Administrator\Desktop\python3-demo\yale
目录名称: []
文件名称: []

当前路径: C:\Users\Administrator\Desktop\python3-demo\模块学习
目录名称: []
文件名称: []

C:\Users\Administrator
C:\Users\Administrator\test.txt
test.txt
/tmp/yale
('/tmp/yale', 'test.txt')
False
True
True

今天初学python的 OS Module模块学习就到这里!

关注公号

下面的是我的公众号二维码图片,欢迎关注。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-05-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 yale记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关注公号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档