python os 常用方法_python中os常用方法详解

os的官方解释

os

os: This module provides a portable way of using operating system dependent functionality.

这个模块提供了一种方便的使用操作系统函数的方法。

os常用方法

在磁盘中创建一个测试文件夹

3d43eb199abcd0fd1c81d0a6c49cc8c8.png

os.rename(oldname, newname)

1、修改文件夹的名称

>>> os.listdir('E:\\python_cmd\\test_1')

['test_1_1']

>>> os.rename('E:\\python_cmd\\test_1\\test_1_1','E:\\python_cmd\\test_1\\new')

>>> os.listdir('E:\\python_cmd\\test_1')

['new']

修改后的结果:

9b4071ed301554cf9f948394491c84a0.png

2、修改文件名称

>>> os.rename('E:\\python_cmd\\test_1\\new\\test_1_1.txt','E:\\python_cmd\\test_1\\new\\test_new.txt')

>>> os.listdir('E:\\python_cmd\\test_1\\new')

['test_new.txt']

修改后的结果:

14e20372ebe629bacabfba51dd908911.png

os.remove(‘path/filename’) 删除文件

>>>os.remove('E:\\python_cmd\\test_1\\new\\test_new.txt')

>>> os.listdir(''E:\\python_cmd\\test_1\\new')

>>> os.listdir('E:\\python_cmd\\test_1\\new')

[]

os.walk() 生成目录树下的所有文件名

bdf5a3ced13edc89a47554394e2b9efd.png

>>> paths = os.walk('E:\\python_cmd') #获取指定文件夹里所有目录和文件名,以树状的形式展现

>>> paths

>>> for path in paths:

... print(path)

...

('E:\\python_cmd', ['test_1'], [])

('E:\\python_cmd\\test_1', ['new'], [])

('E:\\python_cmd\\test_1\\new', [], ['test1.txt', 'test2.txt', 'test3.txt', 'test4.txt'])

>>> paths = os.walk('E:\\python_cmd\\test_1\\new') #获取指定文件夹里所有的文件名

>>> for path in paths:

... print(path)

...

('E:\\python_cmd\\test_1\\new', [], ['test1.txt', 'test2.txt', 'test3.txt', 'test4.txt'])

os.listdir(‘dirname’) 列出指定目录的文件

>>> path = 'E:/python_cmd/test_1/new'

>>> paths = os.listdir(path)

>>> paths

['test1.txt', 'test2.txt', 'test3.txt', 'test4.txt']

os.getcwd() 获取当前工作目录

用IDE创建一个temp project

4719175dc9d3cfbc796dc8f307ebca62.png

>>> #进入该project环境中

>>> import os

>>> work_path = os.getcwd() #返回当前工作目录

d:\Deeplearning\temp project

os.chdir( pathname) 修改当前工作目录至指定目录

>>> new_path = 'D:/Deeplearning/temp_project_new'

>>> os.chdir(new_path)

>>> path = os.getcwd()

>>> print(path)

D:\Deeplearning\temp_project_new

os.mkdir/makedirs(‘dirname’) 创建目录/多层目录

1、创建单个目录,创建的目录必须存在上级目录

>>> path = 'E:/python_cmd/test_2'

>>> os.mkdir(path)

4ba4f6c751b616a3698554d44c5b2747.png

2、创建多层目录,如上级目录不存在,也能创建

>>> path = 'E:/python_cmd_1/test/test_1/test_1_1'

>>> os.makedirs(path)

1b75e902177fc5a59caea1ef2a844859.png

os.chmod() 更改目录授权权限

具体描述请见【暮良文王】博客

os.path.basename(‘path/filename’) 去掉目录路径,返回文件名

返回path最后的文件名,如果path以 / 或 \ 结尾,那么就会返回空值

>>> path = 'E:/python_cmd/test_1/new'

>>> path_name = os.path.basename(path)

>>> path_name

'new'

>>> path = 'E:/python_cmd/test_1/new/'

>>> path_name = os.path.basename(path)

>>> path_name

''

>>> path = 'E:/python_cmd/test_1/new/test1.txt'

>>> path_name = os.path.basename(path)

>>> path_name

'test1.txt'

os.path.dirname(‘path/filename’) 去掉目录路径,返回文件名

返回该文件所在的路径

>>> path = 'E:/python_cmd/test_1/new/test1.txt'

>>> path_name = os.path.dirname(path)

>>> path_name

'E:/python_cmd/test_1/new'

os.path.join(path1,[,path2[,…]]) 将分离的各部分组合成一个路径名

>>> path1 = 'E:/python_cmd'

>>> path2 = 'test_1'

>>> path3 = 'new'

>>> os.path.join(path1,path2,path3)

'E:/python_cmd\\test_1\\new'

>>> os.listdir(path)

['test1.txt', 'test2.txt', 'test3.txt', 'test4.txt']

os.path.split(‘path’) 返回(dirname(),basename())元组

>>> path = 'E:/python_cmd\\test_1\\new'

>>> os.path.split(path)

('E:/python_cmd\\test_1', 'new')

os.path.splitext() 返回(filename, extension)元组

>>> path = 'E:/python_cmd\\test_1\\new\\test1.txt'

>>> os.path.splitext(path)

('E:/python_cmd\\test_1\\new\\test1', '.txt')

os.path.getatime\getctime\getmtime 分别返回最近访问、创建、修改时间

>>> path = 'E:/python_cmd\\test_1\\new\\test1.txt'

>>> os.path.getatime(path)

1586263286.1632323

>>> os.path.getctime(path)

1586263286.1632323

>>> os.path.getmtime(path)

1586263286.1632323

os.path.getsize() 返回文件大小

>>> path = 'E:/python_cmd\\test_1\\new\\test1.txt'

>>> os.path.getsize(path)

0

>>> path = 'E:/python_cmd'

>>> os.path.getsize(path)

>>> path = 'E:/QQ/PCQQ2019.exe'

>>> os.path.getsize(path)

83891744

os.path.exist(path) 判断文件夹或者文件是否存在

如果path存在,返回True,否则返回False

>>> path = 'E:/python_cmd'

>>> os.path.exists(path)

True

>>> path = 'E:/python_cmd/cpp'

>>> os.path.exists(path)

False

>>> path = 'E:/python_cmd\\test_1\\new\\test1.txt'

>>> os.path.exists(path)

True

os.path.isabs()是否为绝对路径

如果是绝对路径,则返回True,否则返回False

os.path.isdir()是否为目录

如果是目录,则返回True,否则返回False

os.path.isfile() 是否为文件

如果是文件,则返回True,否则返回False

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值
>