Python 之 os 模块常用操作

120 阅读4分钟

我们知道,使用 Python 内置的库函数, open() 函数可以对文本文件进行读写操作,那么这是在文件层面上的操作,如果说我们想对文件夹进行增、删、改、查时,又该如何去做呢? Python 拥有强大的生态,库函数十分丰富,对于文件夹的一系列操作自然也有相应的解决办法,在 Python 中可以通过调用 os 模块下的方法,对文件夹进行增、删、改、查的操作。 下表中我们将给出常用的几个 os 模块下的方法:

方法说明
os.mkdir(path)创建指定路径的文件夹
os.rmdir(path)删除指定路径的文件夹
os.remove(path)删除指定路径的文件
os.getcwd()获取当前的工作目录
os.chdir(path)改变当前的工作目录
os.listdir(path)列出指定路径的文件夹和文件
os.walk(path)文件、目录遍历器,返回三元组
os.path.split(path)一般用于返回路径目录和文件名,返回类型为元组
os.path.dirname(path)返回指定路径的文件夹名
os.path.getsize(path)获得指定路径的文件大小,以字节为单位,若为文件夹则返回0
os.system(cmd)执行shell命令,若命令执行成功则返回0,否则返回1
下面给出其中几个常用方法的使用示例,代码段如下:
import os
# 获取当前文件所在目录
print("当前文件所在目录为 " + os.getcwd())
# 创建文件夹, r 是取消转义字符
os.mkdir(r"C:\Users\Desktop\新建文件夹")
# 修改文件夹名称
os.rename(r"C:\Users\Desktop\新建文件夹", r"C:\Users\Desktop\新建文件夹1")
# 删除文件
os.remove(r"C:\Users\Desktop\myText.txt")
# 修改文件名称
os.rename(r"C:\Users\Desktop\新书.txt", r"C:\Users\Desktop\new_book.txt)
# 删除文件夹
os.rmdir(r"C:\Users\Desktop\新建文件夹1")
# 查看文件大小,str()是将整数转换成字符串,与前后的字符串拼接
print("文件大小为:" + str(os.path.getsize(r"C:\Users\Desktop\myText.txt")) + " 字节")
# 输出指定目录下的所有文件和文件夹
print(os.listdir(r"E:\Anaconda"))

代码解析: 上面的代码段挑选了上表中几个 os 模块下常用的方法,对照注释即可知晓方法的作用,这里不再赘述。 最后,我们再来重点关注一下上表中最后一个方法,即 os.system(cmd), 这个方法可以执行 cmd (command) 指令, 就像正常使用 cmd 指令一样在 Python 中对计算机进行操作。 下面将给出几个基本的 cmd 指令,如下表所示:

命令说明
calc启动计算器
logoff注销计算机
notepad打开记事本
mspaint画图板
shutdown -s -t 时间定时关机(单位为秒)
shutdown -a取消定时关机
cd切换目录
osk打开屏幕键盘
mstsc远程桌面连接
下面给出一个利用 Python 打开记事本的示例:
import os
os.system("notepad")

通过上面的代码,便可利用 Python 打开一个记事本了,是不是很简单呢。 最后,我们利用 os.system() 方法,实现设置计算机定时关机以及能够有个反悔操作,即取消定时关机的功能。

import os
print("提示:1----关机  2-----取消关机")
while 1:
	command = input("输入要进行的操作")
	if command = "1":
		os.system("shutdown -s -t 180")
		print("计算机即将在 180s 后关机")
	elif command == "2":
		os.system("shutdown -a")
		print("取消定时关机成功")

代码解析:

  1. "while 1" 代表一个死循环,目的就是为了让用户能够持续输入命令,既能够设置关机也能够取消关机。这就类似于我们的操作系统,操作系统在按下关机键之前就是一个死循环,一直等待用户的操作,直到关机,循环才结束。
  2. shutdown -s -t 180 就是定时关机,shutdown 的中文意思不就是关机嘛,其实这是关机相关的命令,s 其实是 shutdown 的缩写,表示关机相关的命令中选择 shutdown 操作,t 就是 time 的缩写,即设置定时时间,180 紧跟着 -t,表示倒计时秒数值,这个可以根据自己需求自由设定。
  3. shutdown -a 表示关机相关的命令中选择 a 命令,a 其实就是 abort 的缩写,它的中文意思就是取消,所以组合起来就是取消关机。

至此,以上全部就是 Python 中 os 模块下常用操作以及几个小的示例。