Python中的os模块提供了许多与操作系统相关的功能,比如文件操作、进程管理、环境变量等。下面是os模块中常用的一些API:
一、os模块
1.文件操作
- os.rename(src, dst):将文件src重命名为dst。
- os.remove(path):删除path指定的文件。
- os.mkdir(path):创建一个目录。
- os.makedirs(path):创建一个多层嵌套的目录,如果已存在则不会抛出异常。
- os.rmdir(path):删除一个空目录。
- os.removedirs(path):删除一个多层嵌套的目录,如果目录不为空则会抛出异常。
- os.listdir(path):返回path指定目录下的文件和目录列表。
- os.getcwd():返回当前工作目录的路径。
- os.chdir(path):将当前工作目录改变为path。
- os.stat(path):获取path指定的文件或目录的状态信息。
- os.access(path, mode):检验path是否存在,以及当前用户是否有访问该文件的权限。
2.进程管理
- os.fork():创建一个新进程,并将父进程的所有资源复制给子进程。
- os.wait():挂起当前进程,直到一个子进程退出或收到一个信号为止。
- os.system(command):在新进程中执行一个shell命令。
- os.execv(path, args):在当前进程中执行一个新程序。
- os.kill(pid, sig):向进程pid发送信号sig。
3.环境变量
- os.getenv(key):获取环境变量key的值。
- os.putenv(key, value):设置环境变量key的值为value。
二、举例演示
下面举例说明一些os模块和os.path模块中常用API的用法。
文件操作
import os
# 重命名文件
os.rename('old.txt', 'new.txt')
# 删除文件
os.remove('file.txt')
# 创建目录
os.mkdir('dir')
# 创建多层目录
os.makedirs('dir/subdir/subsubdir')
# 删除空目录
os.rmdir('dir')
# 删除多层目录
os.removedirs('dir/subdir/subsubdir')
# 列出目录下的文件和目录
print(os.listdir('.'))
# 获取当前工作目录
print(os.getcwd())
# 改变当前工作目录
os.chdir('dir')
# 获取文件状态信息
print(os.stat('file.txt'))
# 检查文件是否存在,并且是否可读可写
if os.access('file.txt', os.R_OK | os.W_OK):
print('File is readable and writable')
else:
print('File is not readable and writable')
进程管理
import os
# 创建子进程
pid = os.fork()
if pid == 0:
# 子进程执行的代码
print('This is child process')
else:
# 父进程执行的代码
print('This is parent process')
# 挂起当前进程,直到一个子进程退出或收到一个信号为止
status = os.wait()
# 在新进程中执行一个shell命令
os.system('ls -l')
# 在当前进程中执行一个新程序
os.execv('/bin/ls', ['ls', '-l'])
# 向进程发送信号
os.kill(pid, 9)
环境变量
import os
# 获取环境变量的值
print(os.getenv('HOME'))
# 设置环境变量的值
os.putenv('PYTHONPATH', '/usr/local/lib/python')
© 版权声明
THE END
暂无评论内容