基于Python实现英文单词学习系统

1, 课程设计目的 《软件设计基础-Python》课程设计是这门课程的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖Python的知识点,又接近工程实际需要

本文包含相关资料包-----> 点击直达获取<-------

1. 课程设计目的

《软件设计基础-Python》课程设计是这门课程的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖Python的知识点,又接近工程实际需要。目的是通过课程设计的综合训练,培养学生实际分析问题、解决问题的能力,以及编程和动手能力,最终目标是通过课程设计这种形式,帮助学生系统掌握Python这门课程的主要内容,养成良好的编程习惯,更好的完成教学任务。

2. 课程设计任务与要求

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

要求:

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

任务:

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

3. 课程设计说明书

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

主要数据:

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

主要函数:

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

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

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

2.流程图及代码实现:

程序流程图:

源代码:

``` 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. 课程设计成果

运行结果:

程序运行的最终结果图:

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

5. 课程设计心得

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

参考文献

  • 互动智能英语学习系统的研究与实现(电子科技大学·武文斌)
  • 基于React Native的英语视听应用的设计与实现(福州大学·刘草)
  • 基于Android移动学习平台的设计与实现(电子科技大学·李永杰)
  • 基于SSM的英语学习网站的设计与实现(华中科技大学·陈颖慧)
  • 文本综合处理平台的研究与实现(济南大学·王孟孟)
  • 基于知识图谱的开放空间知识采集系统(中南民族大学·马荣香)
  • 商务英语网络学习平台的设计与实现(山东大学·李策)
  • 基于智能手机的奥运英语学习软件的研究与开发(四川师范大学·陶丽)
  • 文本综合处理平台的研究与实现(济南大学·王孟孟)
  • 英语应用文写作在线学习系统模式研究(燕山大学·李鑫)
  • 商务英语网络学习平台的设计与实现(山东大学·李策)
  • 互动智能英语学习系统的研究与实现(电子科技大学·武文斌)
  • 商务英语网络学习平台的设计与实现(山东大学·李策)
  • 基于智能手机的奥运英语学习软件的研究与开发(四川师范大学·陶丽)
  • 基于Joomla!框架的基础英语E-Learning学习系统的设计与实现(中国科学技术大学·胡前进)

本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:毕设小屋 ,原文地址:https://bishedaima.com/yuanma/36111.html

相关推荐

  • 后端ssm + 前端bootstrap + maven搭建的高并发秒杀系统

    SpikeSystem 后端ssm + 前端bootstrap + maven搭建的高并发秒杀系统 一,全局异常处理思路 1, 分析该秒杀系统会出现哪些异常: 秒杀操作要做两件事情
    2024年05月14日
    2 1 1
  • 频繁模式挖掘之Python

    数据仓库大作业--频繁模式挖掘 1, 实验综述 关联分析常常用于从大规模数据库中寻找元素的隐含关系,是数据仓库中数据挖掘的最常用的方法,本实验旨在实现基本的数据挖掘算法(Apriori 算法)
    2024年05月14日
    3 1 1
  • 基于 Python 制作推箱子小游戏

    基于 Python 制作推箱子小游戏 导语 月初更波 python 制作小游戏系列吧~用 python 写了个推箱子小游戏,在这里分享给大家,让我们愉快地开始吧~ 开发工具 Python 版本:3
    2024年05月14日
    1 1 1
  • 基于SpringBoot+Quartz实现的任务调度中心

    基于SpringBoot+Quartz实现的任务调度中心 1,项目简介 因为想要做一个类似于调度中心的东西,定时执行一些Job(通常是一些自定义程序或者可执行的jar包)
    2024年05月14日
    2 1 1
  • 基于JaveWeb技术开发Web技术课程网站

    1,框架 前端:layui 后端:springboot mybatis 2,数据库设计 数据库 用户表 用户附加信息表 留言回复表 留言表 回复表[方便展示–有冗余数据] 课程的相关表 主体表 收藏记录[方便记录有冗余数据] mybatis设计 User为例 实体类 ``` @Data @AllArgsConstructor @NoArgsConstructor public class User { private Integer user_id; private String user_name; private String user_password; private String user_avatar; private String user_signature; public User(String user_name
    2024年05月14日
    2 1 1
  • 基于ssm+bootstrsp简单极易上手的小型图书系统

    基于 ssm+bootstrsp 简单极易上手的小型图书系统 效果图: 步骤 第一步 idea 下载 idea, 怎么下载安装配置 idea 第二步 创建项目 打开 idea —> File —> new —> project —> maven —> create from archetype —> maven-archetype-webapp —> 接下来一般默认即可 先放上项目结构图 第三步 配置 maven 依赖
    2024年05月14日
    3 1 1
  • 基于JAVA的远程屏幕监控系统

    基于JAVA的远程屏幕监控系统 摘 要 远程屏幕监控系统在生活中是很常见的,学校机房的机房管理系统,PC版QQ的远程演示功能等都属于远程屏幕监控系统
    2024年05月14日
    2 1 1
  • 基于 JavaWeb 设计实现博客管理系统

    基于 JavaWeb 设计实现博客管理系统 摘要 博客,很多人称他为 Web2,0 的核心代表,刚出现便在网上流行起来,那什么是博客呢?简单一点来说
    2024年05月14日
    1 1 1
  • 一款教室预约Web项目后端之Java

    J2EE 程序设计项目名称: Class Int——基于互联网的教室资源管理系统 一,需求介绍 1,1 项目前景 近年来,随着高校不断的扩招
    2024年05月14日
    3 1 1
  • 基于SpringBoot框架的图书个性化推荐系统

    这是一套精心打造的📚📚SpringBoot驱动的图书个性化推荐系统源代码📚📚,采用Java编程语言,结合SpringBoot和Vue,js框架构建,开发工具为Idea或Eclipse
    2024年05月23日
    4 1 2

发表回复

登录后才能评论