我想將 apt(或任何非 pip)安裝的所有包名稱作為“Python 串列”。
這個 bash 命令將所有包寫入檔案apt_list.txt:
dpkg -l | grep ^ii | awk '{print $2}' > apt_list.txt
我考慮通過 Python 代碼讀取此檔案以獲取串列,但此解決方案對我來說效率低下:
import os
os.system("dpkg -l | grep ^ii | awk '{print $2}' > apt_list.txt")
# ...
# Python code
# to read the file apt_list.txt
# ...
那么什么是直接有效的方法呢?
我想到的另一個解決方案是直接通過 Python 代碼獲取檔案夾的內容(檔案串列),其中包括“dpkg -l *”命令列出的包。但我想這些包可能在多個檔案夾中,我不知道這些多個位置是什么。
uj5u.com熱心網友回復:
如果你使用subprocess那么你可以讀取標準輸出,所以你不需要寫檔案
import subprocess
ret=subprocess.run("dpkg -l | grep ^ii | awk '{print $2}'", capture_output=True, shell=True)
my_list=ret.stdout.decode().split('\n')
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/386329.html
