python調(diào)用系統(tǒng)中應(yīng)用程序的函數(shù)示例
os.system()
在shell中執(zhí)行一條命令。函數(shù)原型如下:

它是最簡單的調(diào)用系統(tǒng)應(yīng)用的方式,下面是一個例子:
import os
import sys
os.system("dir")
os.system("git")結(jié)果如下(在VS Code中的打印結(jié)果,后面略了一部分打印信息):
D:\Codes\python_everything>cd d:\Codes\python_everything && cmd /C "set "PYTHONIOENCODING=UTF-8" && set "PYTHONUNBUFFERED=1" && C:\Python36\python.exe c:\Users\HOME\.vscode\extensions\ms-python.python-2018.6.0\pythonFiles\PythonTools\visualstudio_py_launcher.py d:\Codes\python_everything 56010 34806ad9-833a-4524-8cd6-18ca4aa74f14 RedirectOutput,RedirectOutput d:\Codes\python_everything\python-notes\WindowsAppCall.py "
驅(qū)動器 D 中的卷是 DATA1
卷的序列號是 A473-C4EE
D:\Codes\python_everything 的目錄
2018/07/01 00:57 <DIR> .
2018/07/01 00:57 <DIR> ..
2018/06/11 22:09 1,332 .gitignore
2018/06/11 20:57 <DIR> .vscode
2018/06/12 00:27 <DIR> begining-python
2018/07/01 00:58 <DIR> python-notes
2018/07/01 00:57 <DIR> python-tools
2018/06/21 23:06 204 README.md
2 個文件 1,536 字節(jié)
6 個目錄 235,383,660,544 可用字節(jié)
usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
[-p | --paginate | --no-pager] [--no-replace-objects] [--bare]
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
<command> [<args>]
These are common Git commands used in various situations:調(diào)用該函數(shù)直接將返回結(jié)果返回,所以就直接打印出來了。
os.popen()
也是在Shell下執(zhí)行一條指令,但是它會返回一個文件描述符,這個文件描述符對應(yīng)到管道對象,可以從中讀取命令執(zhí)行的返回信息。函數(shù)原型如下:

下面是一個例子:
import os
import sys
info = os.popen("dir")
print(info.readline())
print(info.readline())
print(info.readline())
print(info.readline())
print(info.readline())因為popen返回的是一個文件對象,因此可以去讀,也可以進行其它的很多操作。
不僅可以讀,還可以寫,不過需要設(shè)定popen的第二個參數(shù)mode為'w'。
commands.getstatusoutput()
這個在執(zhí)行完指令之后會同時返回狀態(tài)值和命令輸出,不過它似乎無法區(qū)分stdout和stderr,所以在3.x版本中被廢掉了,這里不再介紹。
subprocess.call()
也是在Shell下執(zhí)行指令,整個subprocess模塊是一個比較完備的模塊,是用來代替os.system()等的。
call函數(shù)的原型如下:

這里舉一個簡單的例子:
import subprocess
subprocess.call('git')關(guān)于subprocess模塊的總體介紹,見
17.5. subprocess — Subprocess management — Python 3.6.15 documentation。
以上就是python調(diào)用系統(tǒng)中應(yīng)用程序的函數(shù)示例的詳細內(nèi)容,更多關(guān)于python調(diào)用系統(tǒng)程序函數(shù)的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
入門tensorflow教程之TensorBoard可視化模型訓(xùn)練
在本篇文章中,主要介紹 了TensorBoard 的基礎(chǔ)知識,并了解如何可視化訓(xùn)練模型中的一些基本信息,希望對大家的TensorBoard可視化模型訓(xùn)練有所幫助2021-08-08
Python?ORM框架之SQLAlchemy?的基礎(chǔ)用法
這篇文章主要介紹了Python?ORM框架之SQLAlchemy?的基礎(chǔ)用法,ORM全稱?Object?Relational?Mapping對象關(guān)系映射,更多詳細內(nèi)容需要的小伙伴課題參考下面文章介紹。希望對你的學(xué)習(xí)有所幫助2022-03-03
python中關(guān)于property的最詳細使用方法
這篇文章主要介紹了python中關(guān)于property的最詳細使用方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-04-04

