• 命令行中引导用户指定选择文档


    背景

    在python中,我们如果需要操作文档,则需要用户指定文档,那么,如何引导用户指定或者选择文档呢?

    导入包

    本次我们即将演示的代码,使用了 DebugInfo python包,我们需要导入 DebugInfo

    pip install DebugInfo
    
    • 1

    代码演示

    👇以下代码演示了如何通过 DebugInfo 包中提供的功能,引导用户指定/选择文档:

    # -*- coding:UTF-8 -*-
    
    # region 引入必要依赖
    from DebugInfo.DebugInfo import *
    
    # endregion
    
    看板 = 打印模板()
    
    # 定义一个搜索接口,以便在引用用户指定文档时,可以提供待选项,此处使用了everything的http服务来提供此功能
    搜索接口 = 本地搜索接口类(everything地址='127.0.0.1', everything端口=59864)
    
    文档选择 = 交互接口类.指定选择文档(输入提示='请选择要操作的文档(0: 退出程序):', 搜索接口=搜索接口, 多选=True,
                                      画板=看板.副本)
    
    if '0' in 文档选择:
       # 用户要求退出程序
       exit(0)
    else:
       if len(文档选择) == 1:
           看板.消息(f'您选择的文档是: {绿字(文档选择[0])}')
       else:
           看板.消息('您选择的文档如下:')
           看板.准备表格().添加多行(行列表=文档选择, 拆分列数=1, 修饰方法=绿字).展示表格()
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25

    在以上👆的代码中我们首先定义了一个搜索功能的接口,这个接口提供基于everything http服务的搜索功能。我们需要指定我们本地上everything的http服务地址和端口。

    关于配置everything http服务的方法,可以参考文档:https://ynrx7b5i1u.feishu.cn/docx/CKO8d2NlTo62yVxkUKmcMSWBnDf?from=from_copylink 中的介绍

    以上👆脚本基本于everything提供的搜索能力,通过【交互接口类】中的类方法【指定选择文档】向用户发起交互请求,引导用户输入或者选择兴趣的文档。

    效果演示

    就以上代码,👇下图展示了其运行效果:
    20231115150034

    • 上图第一次交互,输入了 0,以示退出程序。程序正常响应
    • 上图第二次交互,输入了gpx.html,程序借助everything提供的搜索服务列出了匹配的文档供用户选择,用户通过输入代号 1 选择了第一个文档,程序反馈了用户的选择
    • 上图第三次交互,输入了gpx.html,程序借助everything提供的搜索服务列出了匹配的文档供用户选择,用户通过输入代号 1 3,同时选择了第一个和第三个文档,程序反馈了用户的选择

    通过以上三次交互,我们可以发现借助 everything 的搜索能力,可以大大提高用户指定/选择文档的效率。

    小结

    好了,这就是今天给大家分享的内容了,欢迎留言讨论。

  • 相关阅读:
    java-php-net-python-税务申报系统ssh计算机毕业设计程序
    go-cqhttp帮助文档
    mysql5.7 实现分组后组内排序功能 ROW_NUMBER() OVER (PARTITION BY)
    日志库的设计与模块
    JUC源码学习笔记8——ConcurrentHashMap源码分析1 如何实现低粒度锁的插入,如何实现统计元素个数,如何实现并发扩容迁移
    AXI非常用信号说明
    Java培训之java8新特性程序代码
    嵌入式软件开发中必备软件工具
    64134-30-1、多肽标签His-tag、His6
    逆傅里叶变IFFT原始信号恢复方法研究-附Matlab代码
  • 原文地址:https://blog.csdn.net/weixin_42148809/article/details/134421037