编写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退出。希望此程序对您所有启发和帮助。

相关文章
|
8天前
|
存储 算法 安全
控制局域网上网软件之 Python 字典树算法解析
控制局域网上网软件在现代网络管理中至关重要,用于控制设备的上网行为和访问权限。本文聚焦于字典树(Trie Tree)算法的应用,详细阐述其原理、优势及实现。通过字典树,软件能高效进行关键词匹配和过滤,提升系统性能。文中还提供了Python代码示例,展示了字典树在网址过滤和关键词屏蔽中的具体应用,为局域网的安全和管理提供有力支持。
34 17
|
2月前
|
存储 运维 监控
探索局域网电脑监控软件:Python算法与数据结构的巧妙结合
在数字化时代,局域网电脑监控软件成为企业管理和IT运维的重要工具,确保数据安全和网络稳定。本文探讨其背后的关键技术——Python中的算法与数据结构,如字典用于高效存储设备信息,以及数据收集、异常检测和聚合算法提升监控效率。通过Python代码示例,展示了如何实现基本监控功能,帮助读者理解其工作原理并激发技术兴趣。
58 20
|
2月前
|
存储 缓存 算法
探索企业文件管理软件:Python中的哈希表算法应用
企业文件管理软件依赖哈希表实现高效的数据管理和安全保障。哈希表通过键值映射,提供平均O(1)时间复杂度的快速访问,适用于海量文件处理。在Python中,字典类型基于哈希表实现,可用于管理文件元数据、缓存机制、版本控制及快速搜索等功能,极大提升工作效率和数据安全性。
66 0
|
3月前
|
算法 Python
Python 大神修炼手册:图的深度优先&广度优先遍历,深入骨髓的解析
在 Python 编程中,掌握图的深度优先遍历(DFS)和广度优先遍历(BFS)是进阶的关键。这两种算法不仅理论重要,还能解决实际问题。本文介绍了图的基本概念、邻接表表示方法,并给出了 DFS 和 BFS 的 Python 实现代码示例,帮助读者深入理解并应用这些算法。
56 2
|
4月前
|
存储 IDE 开发工具
编写Python参考手册速查软件(一)
编写Python参考手册速查软件(一)
61 1
|
运维 监控 数据处理
使用Python开发员工微信监管软件的基础框架
在企业管理中,员工微信使用的监管成为一项重要的任务。为了实现高效的监管,我们可以利用Python语言开发一套基础框架,用于员工微信监管软件的开发。本文将介绍这个基础框架,并提供一些代码示例,以帮助读者理解如何构建这样的监管系统。
241 0
|
2月前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
2月前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。

热门文章

最新文章