python与c语言是高级,高级文件操作

我们在前面模块中汇总的函数里,有的支持对文件目录的高级操作,我们在这一节介绍一下这些函数的使用方式。

1. 重命名

我们在使用文件或者目录的时候,总是离不开重命名操作的,有的时候我们可以选择直接创建覆盖,但是当我们已存在的文件储存大量信息的时候我们就需要重命名操作,我们使用os模块中的os.rename()方法,使用Pycharm的同学可以发现在Pyacharm中手动给文件重命名的名字也是rename,程序中重命名的格式为:os.rename(src,dst)

src为更改的文件或者目录名,dst为新的名字。

看下面的例子:

先创建一个文件夹import os

print(os.getcwd())#如果不知道当前的目录,先输出找到当前的目录。

os.mkdir(r'C:\Users\轻烟\PycharmProjects\untitled1\teach\new')#注意这个r,如果存在\t,\n这种内容,在前面加r。

68f6f9ee2f7476d6bd3ea8af6bcb2c12.png

然后我们进行重命名操作:import os

os.rename(r'C:\Users\轻烟\PycharmProjects\untitled1\teach\new',r'C:\Users\轻烟

\PycharmProjects\untitled1\teach\newname')

f4a2a3d8b480c96ce0c4a008c80095b1.png

我们在重命名的时候都使用了绝对路径,这种方式更为严谨一点,在前面加个‘r’更好一点,‘r’在前面学习过在这里就不作过多的介绍,重命名文件和目录的方式一样,就是注意一下后缀即可。

2. 删除文件

删除文件的时候我们使用os模块中的os.remove()函数,它的语法格式为:os.remove(path)

path为我们要删除文件的路径,可以使用相对路径或者绝对路径,严谨的使用方式是使用绝对路径,因为当需要删除的文件不在当前的工作目录下,那么将会抛出异常。

看下面代码:

bb5356f2e0648c13426235e6da780295.png

运行过后:

8dc3c2a49cc2e5056f11d1c582e4d36d.png

我们采用了绝对路径和相对路径删除了当前目录下的两个文件,如果我们使用相对路径去删除非当前目录下的文件是什么情况。

代码如下:import os

os.remove('tst.py')

运行结果:Traceback (most recent call last):

File "C:/Users/轻烟/PycharmProjects/untitled1/teach/test.py", line 2, in 

os.remove('tst.py')

FileNotFoundError: [WinError 2] 系统找不到指定的文件。: 'tst.py'

因此我们在删除文件的时候最好使用绝对路径:import os

os.remove(r'C:\Users\轻烟\PycharmProjects\untitled1\venv\tst.py')

3. 文件的基本信息

很多时候我们要通过程序去获得当前文件的一些信息,例如它的最后一次更改时间或者文件大小等。

我们使用os模块中的os.stat()方法来获取相关信息。

我们直接通过例子来学习使用这种方法:import os

file = os.stat('test.py')

print(os.path.abspath('test.py'))#先访问路径

print(file.st_dev)#设备号

print(file.st_size)#文件大小

print(file.st_atime)#最后一次访问

print(file.st_mtime)#最后一次修改时间

输出结果为:C:\Users\轻烟\PycharmProjects\untitled1\teach\test.py

1010955597

239

1580789484.635313

1580789484.635313

4. 总结

关于文件和目录的相关操作到这里就讲完了,无论我们在使用C或者C++又或者是Java语言,项目开发的时候都离不开文件和目录的管理,在实际开发的时候涉及到的内容会更多,掌握好这些基础操作,对未来的学习有很大的帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值