基于Python編寫一個有趣的進(jìn)程勾選器(Process?Selector)
簡介
一個基于Python的程序,使用tkinter模塊創(chuàng)建一個GUI界面,在Checklistbox中列出系統(tǒng)中正在運行的進(jìn)程的名稱和PID,并允許用戶選擇進(jìn)程并將其保存到文本文件中。
源代碼
import psutil import tkinter as tk def save_selected_processes(): # 獲取選中的進(jìn)程名稱和PID selected_processes = [] for index in checklistbox.curselection(): process_info = checklistbox.get(index) selected_processes.append(process_info) # 將選中的進(jìn)程名稱和PID寫入到文本文件中 with open("process.txt", "w") as f: for process_info in selected_processes: f.write(process_info + "\n") def update_checklistbox(): # 獲取系統(tǒng)中所有進(jìn)程的信息 process_list = psutil.process_iter() # 清空Checklistbox checklistbox.delete(0, tk.END) # 循環(huán)獲取每個進(jìn)程的名稱和PID,并添加到Checklistbox中 for process in process_list: try: process_name = process.name() process_pid = process.pid checklistbox.insert(tk.END, f"{process_name} - {process_pid}") except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess): # 如果進(jìn)程不存在、無權(quán)訪問或為僵尸進(jìn)程,跳過此進(jìn)程并繼續(xù)循環(huán) continue # 更新Checklistbox中的內(nèi)容 checklistbox.update() # 創(chuàng)建GUI界面 root = tk.Tk() root.title("進(jìn)程列表") # 創(chuàng)建Checklistbox組件 checklistbox = tk.Listbox(root, selectmode=tk.MULTIPLE) checklistbox.pack(fill=tk.BOTH, expand=True) # 添加一個按鈕來保存選中的進(jìn)程列表 save_button = tk.Button(root, text="保存選中的進(jìn)程", command=save_selected_processes) save_button.pack() # 初始化Checklistbox update_checklistbox() # 進(jìn)入事件循環(huán) root.mainloop()
此程序使用psutil模塊獲取系統(tǒng)中正在運行的進(jìn)程列表,并將進(jìn)程的名稱和PID添加到一個tkinter的Checklistbox組件中。程序還包括一個按鈕,用于保存用戶選擇的進(jìn)程名稱和PID到文本文件中。用戶可以使用Ctrl鍵選擇多個進(jìn)程,并單擊保存按鈕以將所選進(jìn)程保存到文件中。保存的文件名為process.txt。
效果如下
到此這篇關(guān)于基于Python編寫一個有趣的進(jìn)程勾選器(Process Selector)的文章就介紹到這了,更多相關(guān)Python進(jìn)程勾選器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
利用Python將時間或時間間隔轉(zhuǎn)為ISO 8601格式方法示例
國際標(biāo)準(zhǔn)化組織的國際標(biāo)準(zhǔn)ISO8601是日期和時間的表示方法,全稱為《數(shù)據(jù)存儲和交換形式·信息交換·日期和時間的表示方法》,下面這篇文章主要給大家介紹了關(guān)于利用Python將時間或時間間隔轉(zhuǎn)為ISO 8601格式的相關(guān)資料,需要的朋友可以參考下。2017-09-0910分鐘學(xué)會使用python實現(xiàn)人臉識別(附源碼)
這篇文章主要介紹了10分鐘學(xué)會使用python實現(xiàn)人臉識別(附源碼),幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-03-03

python測試開發(fā)django之使用supervisord?后臺啟動celery?服務(wù)(worker/beat)

Python?日期和時間處理教程之datetime?模塊的使用示例詳解