python子程序 Python實戰之子程序

2021-10-11 13:12:30 字數 975 閱讀 3446

最近做乙個小工具需要用到python的字程序,看了一下python的api,subprocess模組可以就可以實現,並且還挺簡單

要實現乙個簡單的自程序,只需要

import sys, os, subprocess

p = subprocess.popen(["ls", "-l"], shell=false, stdin=none, stdout=none, stderr=none)

print p.pid

print p.returncode

此時,pid將是子程序的id號,如果子程序正常推出,returncode將會是none。

也可以使用以下**建立子程序

import sys, os, subprocess

retcode=subprocess.call(["ls", "-l"], shell=false, stdin=none, stdout=none, stderr=none)

print retcode

此時,如果子程序正常推出,retcode將會是0。

另外,如果期望不要輸出建立出來的子程序的列印資訊,可以將方法引數中的stdout和stderr設定為subprocess.pipe。

以下是乙個小例子,建立乙個子程序p1,然後再建立乙個子程序p2用來結束p1的執行。

import sys, os, subprocess

p1 = subprocess.popen(["sleep", "60"], shell=false, stdin=none, stdout=none, stderr=none)

print p1.pid

print p1.returncode

p2 = subprocess.popen(["kill", str(p1.pid)], shell=false, stdin=none, stdout=none, stderr=none)

print p2.pid

print p2.returncode

python程序之fork建立子程序

程式執 到os.fork 時,作業系統會建立 個新的程序 程序 然後複製 程序的所有資訊到 程序中 然後 程序和 程序都會從fork 函式中得到 個返回值,在 程序中這 個值 定是0,程序中是 程序的 id號 在unix linux作業系統中,提供了 個fork 系統函式,它 常特殊。普通的函式調 ...

Python中的子程序併發

date 2019 06 16 22 35 33 author headsen chen notice 個人原創 例項 import os,time time.sleep 1 from multiprocessing import process a 100 print a,os.getpid os...

python 程序 python程序

python程序池pool 當需要建立的子程序數量不多時,可以直接利用multiprocessing中的process動態生成多個程序,但如果是上百甚至上千個目標,手動的去建立程序的工作量巨大,此時就可以用到multiprocessing模組提供的pool方法。初始化pool是,可以指定乙個最大程序...