编写Python参考手册速查软件(二)

简介: 编写Python参考手册速查软件(二)

接上文 编写Python参考手册速查软件(一)https://developer.aliyun.com/article/1618069

添加条目模块分为两部分:
增加函数名文件源码如下:

#_*_coding:utf-8_*_
# 作者      :liuxiaowei
# 创建时间   :3/18/22 6:44 PM
# 文件      :增加名字文件条目.py
# IDE      :PyCharm

import csv

# 定义一个添加字典值(函数名列表)函数,参数为首字母作为键,函数名为对应的列表值
def add_Words(letter, words_Dict, words):
    if letter.lower() in words_Dict.keys():
        for key in words_Dict.keys():
            if letter.lower() == key:
                words_Dict[letter].append(words)
    else:
        print('请核实输入的信息!')



# 定义一个最后的整理函数,一旦需要修改函数描述文件是需要调用这个函数
def final_csv():
    py_dict = {
   }
    with open('Py_String_Name.csv', mode='r') as f:
        reader = csv.reader(f, delimiter=',')
        for row in reader:
            # 把读出来的csv文件内容转成列表
            row_lst = row[1].strip('[]').replace('\'', '').split(',')
            # 临时创建一个空列表,添加去掉空格的内容
            row1 = []
            for i in row_lst:
                # 去掉列表中内容的前空格
                row1.append(i.strip(' '))
            py_dict[row[0]] = row1

    with open('Py_String_Name.csv', mode='w') as fw:
        writer = csv.writer(fw, delimiter=',')
        for key in py_dict.keys():
            writer.writerow([key, py_dict[key]])
    return py_dict

# 生成csv文件
def create_Csv_desc(Pydict):
    # 生成指定文件名的csv文件
    with open('Py_String_Name.csv', mode = 'w', newline='') as f:
        writer = csv.writer(f, delimiter = ',')
        for key in Pydict.keys():
            writer.writerow([key, Pydict[key]])


# 修改函数描述csv文件内容的函数
def modi_desc_csv():
    desc_Dict = final_csv()
    Done = True
    # 循环操作,连续输入数据
    while Done:
        # 输入的首字母用于查找相应的字典键值对
        letter1 = input('\n请输入首字母(26个英文字母不分大小写):')
        # 如果输入quit,退出程序,生成csv文件
        if letter1 == 'quit':
            create_Csv_desc(desc_Dict)
            break
        else:
            # 输入函数的描述内容
            contents = input('\n请输入描述内容:')
            # 调用添加函数名描述内容的函数,参数为首字母,函数描述字典,描述内容
            add_Words(letter1, desc_Dict, contents)


if __name__ == "__main__":
    modi_desc_csv()

增加语法描述文件源码如下:

#_*_coding:utf-8_*_
# 作者      :liuxiaowei
# 创建时间   :3/18/22 2:51 PM
# 文件      :增加某个描述条目.py
# IDE      :PyCharm

import csv


# 定义一个函数添加描述列表,content为描述的内容作为字典值列表的内容,desc_Dict为描述字典,首字母为键
def add_Desc(letter, desc_Dict, content):
    if letter.lower() in desc_Dict.keys():
        for key in desc_Dict.keys():
            # 输入的内容不能为空
            if letter.lower() == key and content != '':
                desc_Dict[letter].append(content)
    else:

        print('请核实输入的信息!')


# 定义一个最后的整理函数,一旦需要修改函数描述文件是需要调用这个函数
def final_csv():
    py_dict = {
   }
    with open('内置函数名称文件.csv', mode='r') as f:
        reader = csv.reader(f, delimiter=',')
        for row in reader:
            # 把读出来的csv文件内容转成列表
            row_lst = row[1].strip('[]').replace('\'', '').split(',')
            # 临时创建一个空列表,添加去掉空格的内容
            row1 = []
            for i in row_lst:
                # 去掉列表中内容的前空格
                row1.append(i.strip(' '))
            py_dict[row[0]] = row1


    with open('Py_func_desc.csv', mode='w') as fw:
        writer = csv.writer(fw, delimiter=',')
        for key in py_dict.keys():
            writer.writerow([key, py_dict[key]])
    return py_dict

def create_Csv_desc(Pydict):
    # 生成指定文件名的csv文件
    with open('内置函数名称描述文件.csv', mode = 'w', newline='') as f:
        writer = csv.writer(f, delimiter = ',')
        for key in Pydict.keys():
            writer.writerow([key, Pydict[key]])

# 修改函数描述csv文件内容的函数
def modi_desc_csv():
    desc_Dict = final_csv()
    Done = True
    # 循环操作,连续输入数据
    while Done:
        # 输入的首字母用于查找相应的字典键值对
        letter1 = input('\n请输入首字母(26个英文字母不分大小写):')
        # 如果输入quit,退出程序,生成csv文件
        if letter1 == 'quit':
            create_Csv_desc(desc_Dict)
            break
        else:
            # 输入函数的描述内容
            contents = input('\n请输入描述内容:')
            # 调用添加函数名描述内容的函数,参数为首字母,函数描述字典,描述内容
            add_Words(letter1, desc_Dict, contents)
            if __name__ == "__main__":
    modi_desc_csv()

删除某个条目的文件源码如下:

#_*_coding:utf-8_*_
# 作者      :liuxiaowei
# 创建时间   :3/18/22 1:55 PM
# 文件      :删除描述文件的某个条目内容.py
# IDE      :PyCharm

import csv

# 定义一个函数添加描述列表,content为描述的内容作为字典值列表的内容,desc_Dict为描述字典,首字母为键
def del_Desc(letter, desc_Dict):
    if letter.lower() in desc_Dict.keys():
        for key in desc_Dict.keys():
            # 输入的内容不能为空
            if letter.lower() == key:
                desc_Dict[letter].remove()

# 定义一个最后的整理函数,一旦需要修改函数描述文件是需要调用这个函数
def final_csv():
    py_dict = {
   }
    with open('内置函数名称描述文件.csv', mode='r') as f:
        reader = csv.reader(f, delimiter=',')
        for row in reader:
            # 把读出来的csv文件内容转成列表
            row_lst = row[1].strip('[]').replace('\'', '').split(',')
            # 临时创建一个空列表,添加去掉空格的内容
            row1 = []
            for i in row_lst:
                # 去掉列表中内容的前空格
                row1.append(i.strip(' '))
            py_dict[row[0]] = row1


    with open('内置函数名称描述文件.csv', mode='w') as fw:
        writer = csv.writer(fw, delimiter=',')
        for key in py_dict.keys():
            writer.writerow([key, py_dict[key]])
    return py_dict

def create_Csv_desc(Pydict):
    # 生成指定文件名的csv文件
    with open('内置函数名称描述文件.csv', mode = 'w', newline='') as f:
        writer = csv.writer(f, delimiter = ',')
        for key in Pydict.keys():
            writer.writerow([key, Pydict[key]])
# 修改函数描述csv文件内容的函数
def modi_desc_csv():
    desc_Dict = final_csv()
    Done = True
    # 循环操作,连续输入数据
    while Done:
        # 输入的首字母用于查找相应的字典键值对
        letter1 = input('\n请输入首字母(26个英文字母不分大小写):')
        del_Desc(letter1, desc_Dict)
        # 如果输入quit,退出程序,生成csv文件
        if letter1 == 'quit':
            create_Csv_desc(desc_Dict)
            break
        # else:
        #     # 输入函数的描述内容
        #     contents = input('\n请输入描述内容:')
            # 调用添加函数名描述内容的函数,参数为首字母,函数描述字典,描述内容


if __name__ == "__main__":
    modi_desc_csv()

手册查询主程序源码

#_*_coding:utf-8_*_
# 作者      :liuxiaowei
# 创建时间   :3/17/22 5:22 PM
# 文件      :create_Python_速查手册.py
# IDE      :PyCharm

import csv
# 导入时间模块是为了输出条目的时候停顿一下,可根据自己需要是否设定
# import time

# 定义一个查找函数, choice_Num参数为选择项的数字
def find_Word(letter, choice_Num=1, dict='内置函数名称文件.csv', desc='内置函数名称描述文件.csv'):
    # 判断选项,然后给(函数、列表、字典、字符串)名称和描述赋值
    if choice_Num == 2:
        dict, desc = '列表方法文件.csv', '列表方法描述文件.csv'

    elif choice_Num == 3:
        dict, desc = '字典方法名称文件.csv', '字典方法描述文件.csv'

    elif choice_Num == 4:
        dict, desc = '字符串方法名称文件.csv', '字符串方法描述文件.csv'
    else:
        pass

    # 打开Py_func.csv是函数名称的csv文件,读取数据
    with open(dict, mode='r') as fr:
        # 实例化一个reader对象
        reader = csv.reader(fr, delimiter=',')
        # 根据行去查找数据
        for row in reader:
            if row[0] == letter and row[1] != '':
                # 将读取的值转换为列表
                row1_lst = row[1].strip('[]').replace('\'', '').split(',')

                # 定义一个函数名的空列表
                func_name_lst = []
                for fun_name in row1_lst:
                    # 去掉列表中内容的前空格
                    func_name_lst.append(fun_name.strip(' '))
    # 打开描述内容csv文件
    with open(desc, mode='r') as fd:
        reader = csv.reader(fd, delimiter=',')
        for row in reader:
            if row[0] == letter and row[1] != '':
                # 将读取的描述内容变成列表, 去掉"'"单引号
                row2_lst = row[1].strip('[]').replace('\'', '').split(',')

                func_desc_lst = []
                for fun_desc_name in row2_lst:
                    # 去掉列表中内容的前空格
                    func_desc_lst.append(fun_desc_name.strip(' '))

    # 输出查找的函数及相应的描述内容
    print(f'你查找的与首字母{letter}相关的内置函数及描述为:\n')
    for i in range(len(func_name_lst)):
        if func_name_lst[i] != '':
            print(f'内置函数名:"{func_name_lst[i]}"  描 述为:{func_desc_lst[i]}')
            # 时间函数可以根据自己需要设计
            # time.sleep(2)
        else:
            print('没有此函数!')


# 定义一个主函数,生成主界面
def main():
    print('\n')
    print('==== Python知识手册速查程序 ====  ')
    print('-' * 40)
    print('  1. 内置函数查询\n  2. 列表方法查询(输入a)\n  3. 字典方法查询(输入a)\n  4. 字符串方法查询(输入s)\n  5. 退 出')
    print('-' * 40)


# 定义一个操作函数operation
def Operation():
    # 调用界面主函数
    main()
    # 定义一个选择变量
    choice = int(input('请输入选项:(1,2,3,4,5)'))
    Done = True
    # 循环操作
    while Done:
        # 判断选择,如果选择1
        for i in range(1, 5):
            if choice == i:
                letter1 = input("请输入函数名称首字母(不分大小写):").lower()
                find_Word(letter1, choice)
        question = input('Do you want to quit?(q)').lower()
        if question == 'q' or question == 'quit':
            break
        else:
            Done = True
        if choice == 5:
            break


if __name__ == "__main__":
    # 调用操作函数
    Operation()

运行结果如下图:

image.png

备注:

此程序本人没加try: except:捕捉异常,可以自己添加,每个板块录入数据的时候,随时可以在输入首字母的时候输入quit退出。希望此程序对您所有启发和帮助。

相关文章
|
19天前
|
机器学习/深度学习 存储 数据可视化
这份Excel+Python飞速搞定数据分析手册,简直可以让Excel飞起来
本书介绍了如何将Python与Excel结合使用,以提升数据分析和处理效率。内容涵盖Python入门、pandas库的使用、通过Python包操作Excel文件以及使用xlwings对Excel进行编程。书中详细讲解了Anaconda、Visual Studio Code和Jupyter笔记本等开发工具,并探讨了NumPy、DataFrame和Series等数据结构的应用。此外,还介绍了多个Python包(如OpenPyXL、XlsxWriter等)用于在无需安装Excel的情况下读写Excel文件,帮助用户实现自动化任务和数据处理。
|
24天前
|
JavaScript 搜索推荐 Android开发
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
51 8
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
|
27天前
|
监控 算法 安全
内网桌面监控软件深度解析:基于 Python 实现的 K-Means 算法研究
内网桌面监控软件通过实时监测员工操作,保障企业信息安全并提升效率。本文深入探讨K-Means聚类算法在该软件中的应用,解析其原理与实现。K-Means通过迭代更新簇中心,将数据划分为K个簇类,适用于行为分析、异常检测、资源优化及安全威胁识别等场景。文中提供了Python代码示例,展示如何实现K-Means算法,并模拟内网监控数据进行聚类分析。
38 10
|
1月前
|
机器学习/深度学习 存储 算法
解锁文件共享软件背后基于 Python 的二叉搜索树算法密码
文件共享软件在数字化时代扮演着连接全球用户、促进知识与数据交流的重要角色。二叉搜索树作为一种高效的数据结构,通过有序存储和快速检索文件,极大提升了文件共享平台的性能。它依据文件名或时间戳等关键属性排序,支持高效插入、删除和查找操作,显著优化用户体验。本文还展示了用Python实现的简单二叉搜索树代码,帮助理解其工作原理,并展望了该算法在分布式计算和机器学习领域的未来应用前景。
|
2月前
|
存储 算法 安全
控制局域网上网软件之 Python 字典树算法解析
控制局域网上网软件在现代网络管理中至关重要,用于控制设备的上网行为和访问权限。本文聚焦于字典树(Trie Tree)算法的应用,详细阐述其原理、优势及实现。通过字典树,软件能高效进行关键词匹配和过滤,提升系统性能。文中还提供了Python代码示例,展示了字典树在网址过滤和关键词屏蔽中的具体应用,为局域网的安全和管理提供有力支持。
59 17
|
3月前
|
存储 缓存 算法
探索企业文件管理软件:Python中的哈希表算法应用
企业文件管理软件依赖哈希表实现高效的数据管理和安全保障。哈希表通过键值映射,提供平均O(1)时间复杂度的快速访问,适用于海量文件处理。在Python中,字典类型基于哈希表实现,可用于管理文件元数据、缓存机制、版本控制及快速搜索等功能,极大提升工作效率和数据安全性。
86 0
|
3月前
|
存储 运维 监控
探索局域网电脑监控软件:Python算法与数据结构的巧妙结合
在数字化时代,局域网电脑监控软件成为企业管理和IT运维的重要工具,确保数据安全和网络稳定。本文探讨其背后的关键技术——Python中的算法与数据结构,如字典用于高效存储设备信息,以及数据收集、异常检测和聚合算法提升监控效率。通过Python代码示例,展示了如何实现基本监控功能,帮助读者理解其工作原理并激发技术兴趣。
86 20
|
4月前
|
算法 Python
Python 大神修炼手册:图的深度优先&广度优先遍历,深入骨髓的解析
在 Python 编程中,掌握图的深度优先遍历(DFS)和广度优先遍历(BFS)是进阶的关键。这两种算法不仅理论重要,还能解决实际问题。本文介绍了图的基本概念、邻接表表示方法,并给出了 DFS 和 BFS 的 Python 实现代码示例,帮助读者深入理解并应用这些算法。
79 2
|
5月前
|
存储 IDE 开发工具
编写Python参考手册速查软件(一)
编写Python参考手册速查软件(一)
76 1
|
4天前
|
机器学习/深度学习 设计模式 API
Python 高级编程与实战:构建 RESTful API
本文深入探讨了使用 Python 构建 RESTful API 的方法,涵盖 Flask、Django REST Framework 和 FastAPI 三个主流框架。通过实战项目示例,详细讲解了如何处理 GET、POST 请求,并返回相应数据。学习这些技术将帮助你掌握构建高效、可靠的 Web API。

热门文章

最新文章

推荐镜像

更多
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等