Python命令行中引導(dǎo)用戶指定選擇路徑

問題引入
在我們熟悉的操作中,【另存為】操作往往需要用戶一層一層的瀏覽尋找路徑,直到用戶找到滿意的路徑并最終選擇確認(rèn),這種千年不變操作方式,效率相當(dāng)?shù)拖隆?/p>
可能的解決方案
想必大家都不陌生everything,everything提供了強(qiáng)大的文檔/路徑搜索能力,如何我們在另存為時(shí),可以借助everything的力量,那操作效率豈不美哉?
導(dǎo)入包
本次我們即將演示的代碼,使用了 DebugInfo python包,我們需要導(dǎo)入 DebugInfo 包
pip install DebugInfo
代碼演示
??以下代碼演示了如何通過 DebugInfo 包中提供的功能,借助everything,引導(dǎo)用戶指定/選擇路徑:
# -*- coding:UTF-8 -*-
# region 引入必要依賴
from DebugInfo.DebugInfo import *
# endregion
看板 = 打印模板()
# 定義一個(gè)搜索接口,以便在引用用戶指定文檔時(shí),可以提供待選項(xiàng),此處使用了everything的http服務(wù)來提供此功能
搜索接口 = 本地搜索接口類(everything地址='127.0.0.1', everything端口=59864)
路徑選擇 = 交互接口類.指定選擇路徑(輸入提示='請指定目標(biāo)文件夾(0: 退出程序):', 搜索接口=搜索接口, 畫板=看板.副本)
if '0' == 路徑選擇:
# 用戶要求退出程序
exit(0)
else:
看板.消息(f'您選擇的路徑是: {綠字(路徑選擇)}')在以上??的代碼中我們首先定義了一個(gè)搜索功能的接口,這個(gè)接口提供基于everything http服務(wù)的搜索功能。我們需要指定我們本地上everything的http服務(wù)地址和端口。
關(guān)于配置everything http服務(wù)的方法,可以參考文檔 http://m.fzitv.net/softjc/866497.html
以上??腳本基本于everything提供的搜索能力,通過【交互接口類】中的類方法【指定選擇路徑】向用戶發(fā)起交互請求,引導(dǎo)用戶輸入或者選擇興趣的路徑。
效果演示
就以上代碼,??下圖展示了其運(yùn)行效果:

- 上圖第一次交互,輸入了 0,以示退出程序。程序正常響應(yīng)
- 上圖第二次交互,輸入了tmpf,程序借助everything提供的搜索服務(wù)列出了匹配的路徑供用戶選擇,用戶通過輸入代號(hào) 2 選擇了第二個(gè)路徑,程序反饋了用戶的選擇
通過以上三次交互,我們可以發(fā)現(xiàn)借助 everything 的搜索能力,可以大大提高用戶指定/選擇路徑的效率。用戶不需要記憶路徑的中間過程,只根據(jù)只言片語,即可準(zhǔn)確定位目標(biāo)路徑,完成交互過程。
相關(guān)文章
使用Python3編寫抓取網(wǎng)頁和只抓網(wǎng)頁圖片的腳本
這篇文章主要介紹了使用Python3編寫抓取網(wǎng)頁和只抓網(wǎng)頁圖片的腳本,使用到了urllib模塊,需要的朋友可以參考下2015-08-08
Python名片管理系統(tǒng)+猜拳小游戲案例實(shí)現(xiàn)彩(色控制臺(tái)版)
這篇文章主要介紹了Python名片管理系統(tǒng)+猜拳小游戲案例實(shí)現(xiàn)彩(色控制臺(tái)版),文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2022-08-08
Pygame與OpenCV聯(lián)合播放視頻并保證音畫同步
Pygame的Movie模塊已經(jīng)廢棄多年,本文主要介紹了Pygame與OpenCV聯(lián)合播放視頻并保證音畫同步,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-12-12
pytorch dataloader 取batch_size時(shí)候出現(xiàn)bug的解決方式
今天小編就為大家分享一篇pytorch dataloader 取batch_size時(shí)候出現(xiàn)bug的解決方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02
python 劃分?jǐn)?shù)據(jù)集為訓(xùn)練集和測試集的方法
今天小編就為大家分享一篇python 劃分?jǐn)?shù)據(jù)集為訓(xùn)練集和測試集的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-12-12
Python密碼學(xué)XOR算法編碼流程及乘法密碼教程
這篇文章主要為大家介紹了Python密碼學(xué)XOR流程及乘法密碼教程示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05
Python實(shí)現(xiàn)數(shù)據(jù)透視表詳解
今天小編就為大家分享一篇用Python實(shí)現(xiàn)數(shù)據(jù)的透視表的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-10-10
使用Python Typing模塊提升代碼可讀性和健壯性實(shí)例探索
這篇文章主要為大家介紹了使用Python Typing模塊提升代碼可讀性和健壯性實(shí)例探索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01

