Python OS模块
Python的OS模块提供了与操作系统之间建立交互的功能。它提供了许多有用的操作系统函数,用于执行基于操作系统的任务并获取有关操作系统的相关信息。
OS位于Python的标准实用程序模块之下。此模块提供了一种便携的方式来使用与操作系统相关的功能。
Python的OS模块使我们可以使用文件和目录进行操作。
To work with the OS module, we need to import the OS module.
import os
有一些在OS模块中的函数如下:
os.name()
此函数提供了它导入的操作系统模块的名称。
目前,它注册了’posix’、’nt’、’os2’、’ce’、’java’和’riscos’。
示例
import os
print(os.name)
输出:
nt
os.mkdir()
os.mkdir() 函数用于创建新目录。考虑以下示例。
import os
os.mkdir("d:\\newdir")
它将在D盘的路径中创建名为newdir的文件夹。
os.getcwd()
它返回文件的当前工作目录(CWD)。
示例
import os
print(os.getcwd())
输出:
C:\Users\Python\Desktop\ModuleOS
os.chdir()
os模块提供了chdir()函数来改变当前工作目录。
import os
os.chdir("d:\\")
输出:
d:\\
os.rmdir()
rmdir()函数使用绝对或相关路径删除指定的目录。首先,我们必须更改当前工作目录并删除文件夹。
示例
import os
# It will throw a Permission error; that's why we have to change the current working directory.
os.rmdir("d:\\newdir")
os.chdir("..")
os.rmdir("newdir")
os.error()
os.error() 函数定义了操作系统级别的错误。在文件名或路径无效或不可访问时,会引发 OSError。
示例
import os
try:
# If file does not exist,
# then it throw an IOError
filename = 'Python.txt'
f = open(filename, 'rU')
text = f.read()
f.close()
# The Control jumps directly to here if
# any lines throws IOError.
except IOError:
# print(os.error) will <class 'OSError'>
print('Problem reading: ' + filename)
输出:
Problem reading:Python.txt
os.popen()
此函数打开指定的文件或命令,并返回一个连接到管道的文件对象。
示例
import os
fd = "python.txt"
# popen()类似于open()
file = open(fd, 'w')
file.write("This is awesome")
file.close()
file = open(fd, 'r')
text = file.read()
print(text)
# popen()提供了网关并直接访问文件
file = os.popen(fd, 'w')
file.write("This is awesome")
# 文件未关闭,在下一个函数中显示。
输出:
This is awesome
os.close()
此函数关闭与描述符 fr 相关联的文件。
示例
import os
fr = "Python1.txt"
file = open(fr, 'r')
text = file.read()
print(text)
os.close(file)
输出:
Traceback (most recent call last):
File "main.py", line 3, in
file = open(fr, 'r')
FileNotFoundError: [Errno 2] No such file or directory: 'Python1.txt'
os.rename()
使用该函数 os.rename() 可以重命名文件或目录。用户可以重命名文件,前提是拥有更改文件的权限。
示例
import os
fd = "python.txt"
os.rename(fd,'Python1.txt')
os.rename(fd,'Python1.txt')
输出:
Traceback (most recent call last):
File "main.py", line 3, in
os.rename(fd,'Python1.txt')
FileNotFoundError: [Errno 2] No such file or directory: 'python.txt' -> 'Python1.txt'
os.access()
此函数使用真实的 uid/gid 来测试调用用户是否对路径具有访问权限。
示例
import os
import sys
path1 = os.access("Python.txt", os.F_OK)
print("Exist path:", path1)
# 使用 os.R_OK 检查访问权限
path2 = os.access("Python.txt", os.R_OK)
print("具有读取文件的访问权限:", path2)
# 使用 os.W_OK 检查访问权限
path3 = os.access("Python.txt", os.W_OK)
print("具有写入文件的访问权限:", path3)
# 使用 os.X_OK 检查访问权限
path4 = os.access("Python.txt", os.X_OK)
print("检查路径是否可执行:", path4)
输出:
路径存在:False
可读取该文件:False
可写入该文件:False
检查路径是否可执行:False