基于python实现英语学习系统(附完整代码)

简介: 基于python实现英语学习系统(附完整代码)

课程设计任务与要求


完整代码:https://download.csdn.net/download/weixin_55771290/87392414


本次课程设计利用《软件设计基础-Python》课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。

要求:


  • 对系统进行功能需求分析
  • 设计合理的数据结构和系统框架
  • 界面设计美观、清楚、合理
  • 编程简练,程序功能齐全,能正确运行
  • 具有一定的创新性
  • 说明书、流程图要清楚
  • 课题完成后必须按要求提交课程设计报告

任务:


  • 将用户要记忆的单词,按字母排序后,存到文件中。
  • 用户输入要删除的单词,将其从文件中存储的单词也删除。
  • 用书输入要修改的单词,将其在文件中存储的单词也修改。

3. 课程设计说明书


1.主要数据和主要函数介绍:

主要数据:

Data.txt 用户单词系统所存储的文件。

主要函数:

input_file: 提示用户输入单词,并进行排序,最后存储到文件中。


Del_word: 打开单词系统文件,用户进行输入要删除的单词,最后进行删除,并重新存储。


change_word: 打开单词系统文件,用户进行输入要修改的单词和修改后的单词,最后进行修改,并重新存储。


2.流程图及代码实现:


程序流程图:


69dd68933d6011129f141af3b4e932b4.png

源代码:

def input_file():
    # 输入单词
    f = open("data.txt","w+")
    n = int(input("请输入单词的个数:"))
    word = list()
    for i in range(1,n+1):
        t = input("第%d个单词是:"%i)+","
        word.append(t)
    # 单词进行排序
    word = sorted(word)
    print("文件中保存的单词为:",word)
    # 保存单词
    f.writelines(word)
    f.close()
    print("输入成功!")
def del_word():
    # 删除单词
    with open("data.txt","r") as f:
        line = f.readline()
    del_word = input("请输入你要删除的单词!")
    line = line.replace(del_word+",","")
    with open("data.txt","w") as f:
        f.writelines(line)
    print("删除成功!")
def change_word():
    # 修改单词
    with open("data.txt","r") as f:
        line = f.readline()
    will_change_word = input("请输入你要修改的单词?")
    change_word = input("请输入你要修改成什么?")
    line = line.replace(will_change_word+",",change_word+",")
    with open("data.txt","w") as f:
        f.writelines(line)
    print("修改成功!")
def main():
    while(True):
        print("--------英文单词学习系统--------")
        print(" 1.输入单词")
        print(" 2.删除单词")
        print(" 3.修改单词")
        print(" 4.退出")
        choose = input("请输入你的选择:")
        if(choose == "1"):
            input_file()
        if(choose == "2"):
            del_word()
        if(choose == "3"):
            change_word()
        if(choose == "4"):
            exit(0)
main()


2.设计中遇到的问题

在删除和修改单词的时候不能直接使用字符串替换的功能,因为可能会把其他含有要修改单词子子串的单词也进行修改。为了解决该问题,本课设使用字符串采用在要修改或删除的单词后面加上一个逗号,由此可以非常简单方便的解决,误删除误修改的问题。


4. 课程设计成果

运行结果:


90a5e039917e518439e3ab04482418d1.png

image.png


程序运行的最终结果图:

da88aa0b9b81d91874b06fc84c88311a.png


注意事项:请务必安按照程序提示得内容进行输入,请勿乱输!

5. 课程设计心得


在这次课设中,我对文件这一不常用,但是也是非常重要的内容进行练习,通过这次课设,我发现Python对文件处理真的是十分的方便和快捷。而且我还巩固了字符串的一些方法,例如replace和split方法,这让我以后处理字符串将会更加的熟练,迅速。

相关文章
|
1天前
|
Linux iOS开发 MacOS
pyinstaller---Python代码的打包神器,一键将python代码打包成exe可执行文件
pyinstaller---Python代码的打包神器,一键将python代码打包成exe可执行文件
|
2天前
|
Python
【Python21天学习挑战赛】- 错误和异常
【Python21天学习挑战赛】- 错误和异常
|
2天前
|
容器
【Python21天学习挑战赛】-迭代器 & f-格式化 & 模块
【Python21天学习挑战赛】-迭代器 & f-格式化 & 模块
|
2天前
|
Python
【Python21天学习挑战赛】- 函数进阶
【Python21天学习挑战赛】- 函数进阶
|
2天前
【Python21天学习挑战赛】文件读写操作
【Python21天学习挑战赛】文件读写操作
|
2天前
|
索引 Python
【Python21天学习挑战赛】集合 & 数据类型补充
【Python21天学习挑战赛】集合 & 数据类型补充
|
2天前
|
存储 缓存 Python
【Python21天学习挑战赛】字典 && 小数据池
【Python21天学习挑战赛】字典 && 小数据池
|
2天前
|
存储 索引 Python
【Python21天学习挑战赛】-列表 & 元组 & range
【Python21天学习挑战赛】-列表 & 元组 & range
|
2天前
|
Python
【Python21天学习挑战赛】-入门必备
【Python21天学习挑战赛】-入门必备
|
2天前
|
关系型数据库 MySQL C语言
【Python21天学习挑战赛】—Day1:学习规划,我与python的相遇
【Python21天学习挑战赛】—Day1:学习规划,我与python的相遇