Cara menggunakan modul subproses untuk melaksanakan arahan luaran dalam Python 2.x

王林
Lepaskan: 2023-07-29 18:36:30
asal
841 orang telah melayarinya

Modul subproses Python menyediakan cara untuk melaksanakan arahan luaran dalam program Python. Ia membolehkan kami berinteraksi dengan baris arahan sistem pengendalian dan mengawal serta merujuk output dan tingkah laku program luaran melalui kod. Artikel ini akan memperkenalkan cara menggunakan modul subproses untuk melaksanakan arahan luaran dan menyediakan beberapa contoh kod praktikal.

  1. Laksanakan arahan luaran mudah

Untuk melaksanakan perintah luaran ringkas, anda boleh menggunakan fungsi subprocess.call() modul subproses. Fungsi ini akan mengembalikan kod status keluar arahan selepas melaksanakan arahan luaran. subprocess.call()函数。这个函数在执行完外部命令后会返回命令的退出状态码。

import subprocess

# 执行一个简单的外部命令:获取当前目录下的文件列表
subprocess.call('ls')
Salin selepas log masuk
  1. 获取外部命令的输出

如果想要获取外部命令的输出结果,可以使用subprocess.check_output()函数。这个函数会执行外部命令,并将其输出作为函数的返回值。

import subprocess

# 执行外部命令:获取当前目录下的文件列表
output = subprocess.check_output('ls')
print(output)
Salin selepas log masuk
  1. 控制外部命令的输入和输出

有时候,我们需要将输入数据传递给外部命令,或者从外部命令中获取实时的输出。subprocess模块提供了Popen类来满足这些需求。

import subprocess

# 执行外部命令:使用cat命令将输入数据输出到标准输出
input_data = b'Hello, World!'
process = subprocess.Popen(['cat'], stdin=subprocess.PIPE, stdout=subprocess.PIPE)
output, error = process.communicate(input=input_data)
print(output)
Salin selepas log masuk
  1. 执行命令行参数包含空格的外部命令

当外部命令的参数包含空格时,需要将整个命令作为一个字符串传递给subprocess.call()subprocess.check_output()

import subprocess

# 执行外部命令:计算一个数的平方
number = 10
subprocess.call('python -c "print({}**2)"'.format(number), shell=True)
Salin selepas log masuk

    Dapatkan output arahan luaran
    1. Jika anda ingin mendapatkan output arahan luaran, anda boleh menggunakan fungsi subprocess.check_output(). Fungsi ini melaksanakan perintah luaran dan mengembalikan outputnya sebagai nilai pulangan fungsi.
    import subprocess
    
    # 执行外部命令:命令不存在
    try:
        subprocess.check_output('nonexistent_command')
    except subprocess.CalledProcessError as e:
        print('Command execution failed:', e)
    Salin selepas log masuk

      Kawal input dan output arahan luaran

      Kadangkala, kita perlu menghantar data input kepada arahan luaran, atau dapatkan output masa nyata daripada arahan luaran. Modul subproses menyediakan kelas Popen untuk memenuhi keperluan ini. 🎜rrreee
        🎜Laksanakan perintah luaran yang parameter baris arahannya mengandungi ruang🎜🎜🎜Apabila parameter arahan luaran mengandungi ruang, keseluruhan arahan perlu dihantar ke subprocess.call() sebagai fungsi rentetan atau subprocess.check_output(). 🎜rrreee🎜🎜Tambah pengendalian ralat🎜🎜🎜Apabila melaksanakan arahan luaran, beberapa ralat mungkin berlaku, seperti arahan tidak wujud atau pelaksanaan arahan gagal. Kita boleh menggunakan pernyataan try-except untuk mengendalikan ralat ini. 🎜rrreee🎜Kod sampel ini menunjukkan cara menggunakan modul subproses untuk melaksanakan arahan luaran. Menggunakan modul subproses membolehkan kami berinteraksi dengan mudah dengan baris arahan dan mengawal tingkah laku program luaran secara fleksibel. Sama ada arahan mudah atau tugas yang kompleks, modul subproses boleh membantu kami mencapainya. 🎜

    Atas ialah kandungan terperinci Cara menggunakan modul subproses untuk melaksanakan arahan luaran dalam Python 2.x. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!