Python os.popen() 方法



Python 的 os.popen() 方法提供了一种使用 Python 代码运行 shell 命令的方式。它通过打开一个到命令行的管道来工作。此方法的返回值是一个连接到管道的打开的文件对象。这有助于根据指定的模式执行读取和写入操作。

语法

以下是 Python os.popen() 方法的语法:

os.popen(command, mode, bufsize)

参数

Python os.popen() 方法接受以下参数:

  • command − 指定需要执行的命令。

  • mode − 此参数指定打开文件对象的方式。其默认值为“r”,表示读取。

  • bufsize − 如果缓冲区大小设置为 0,则不会进行缓冲。如果缓冲区大小为 1,则在访问文件时将执行行缓冲。如果将缓冲区大小指定为大于 1 的整数,则将以指定的缓冲区大小执行缓冲操作。如果为负数,则缓冲区大小为系统默认值(默认行为)。

返回值

Python os.popen() 方法返回一个连接到管道的打开的文件对象。

示例

以下示例显示了 popen() 方法的使用,其中我们正在执行“mkdir”命令。

import os, sys

# using command mkdir
a = "mkdir nwdir"

b = os.popen(a,"r",1)
print (b)

当我们运行上述程序时,它将创建一个名为“nwdir”的目录,并以读取模式打开。

<os._wrap_close object at 0x74f4dbd26e60>

示例

在此示例中,我们正在执行“ls”命令,该命令列出当前工作目录中可用的文件。

import os

# Using popen() to execute the 'ls' command
fileStream = os.popen("ls")
res = fileStream.read()
print(res)

当我们运行上述程序时,它会产生以下结果:

aa.txt
atty.py
chown.py
cwd.py
datasync.py
dsync.py
exp.txt
fdopen.py
foo.txt
fopen.py
python_files_io.htm
广告