陈柯烽的第二次作业

news/2025/1/27 12:54:19/文章来源:https://www.cnblogs.com/ckf123456/p/18508841
这次作业属于哪个课程 https://edu.cnblogs.com/campus/zjlg/rjjc
这个作业的目标 实现一个命令行文本计数统计程序。能正确统计导入的纯英文txt文本中的字符数,单词数,句子数。
姓名-学号 陈柯烽-2022329301006

Gitee地址:https://gitee.com/ckf123456/text-counting-statistics-program
注:项目代码在gitee开源

一、作业要求

实现一个命令行文本计数统计程序。能正确统计导入的纯英文txt文本中的字符数,单词数,句子数。
具体命令行界面要求举例:

命令模式: wc.exe [参数] [文件名]

wc.exe -c file.txt 统计字符数
wc.exe -w file.txt 统计单词数

扩展功能(加分项):统计代码行、空行、注释行等,并提供相应命令接口。

项目要求必须通过多次提交体现各个版本更迭和运行结果截图,版本号分别为

v0.1 空项目;

v0.2 项目完成基础功能

v0.3 项目完成扩展功能(加分项)

编写对应的单元测试。

使用选用的IDE附带的工具进行performance test。

二、项目介绍

本项目采用Python语言进行编程,开发环境中选择了VScode作为集成开发环境(IDE)。作为软件技术基础课程的第二次作业,我们设计并实现了一个命令行文本计数统计程序,主要功能是统计纯英文文本文件中的字符数量、单词数量以及句子数量。此外,程序还扩展了其他统计功能,如代码行数、空行数及注释行数的统计。为了满足作业要求,即生成可执行文件(.exe),项目中应用了Python的PyInstaller库,通过它将Python脚本(.py文件)打包成独立的可执行文件(.exe文件)。

基础功能

  1. 统计纯英文文本中的字符数、单词数和句子数。
  2. 对测试数据进行测试。
  3. 利用Python的cProfile库对各个函数的进行performance test。

拓展功能

  1. 统计纯英文文本中的代码行、空行、注释行数。
  2. 对测试数据进行测试。
  3. 利用Python的cProfile库对各个函数的进行performance test。

三、使用说明

  1. 通过win+R调出命令行窗口输出cmd,进入终端。
  2. 进入到代码所在的路径。
  3. 按照如下指令运行程序

基础命令

  1. wc.exe -c file1.txt 统计字符数。
  2. wc.exe -w file2.txt 统计单词数。
  3. wc.exe -s file1.txt 统计句子数。
    注:file1,file2是测试的文件,可以自行更改。

拓展命令

  1. wc.exe -l file1.txt 统计代码行。
  2. wc.exe -e file2.txt 统计空行。
  3. wc.exe -m file1.txt 统计注释行。

四、代码运行结果以及性能测试

基础代码

测试结果1:

测试结果2:

拓展代码

测试结果1:

测试结果2:

五、心得体会

在这次的的作业编写过程中,加强了我对于Python代码的掌握程度,也让我体验到了和之前编程所带来的不一样的体验,这是一种对于一个简单功能的综合性优化,使这个功能变得完善,是之前写一大堆比较复杂的代码,只要能实现要求的功能就行的那种编写所不能带给我的细致感,一种对于我自己代码的安全感。也让我体验到了开源平台的使用,学到了很多我之前不会的知识,让我对于软件技术基础有了更好的了解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/822890.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大数据作业

做了几个小时,最后还是这死出,解决了一个又来了一个 费尽心思解决了这个问题

MySQL的自增ID用完了应该怎么办

一种解决方法是使用BIGINT数据类型。BIGINT数据类型的最大值是9223372036854775807,这比INT数据类型大得多。如果您使用BIGINT数据类型来存储自增ID,那么您的表可以插入更多的数据。一、MySQL的自增ID用完了应该怎么办 解决方案1:使用BIGINT数据类型 一种解决方法是使用BIGI…

第四次高级语言程序设计作业

2024高级语言程序设计:https://edu.cnblogs.com/campus/fzu/2024C 高级语言程序设计课程第四次个人作业:https://edu.cnblogs.com/campus/fzu/2024C/homework/13293 姓名:阿卜杜拉阿布力克木 学号:102400110 6.16.16.16.56.16.76.16.86.16.96.16.106.16.126.16.136.16.156.16…

PHP中的错误处理最佳实践

在PHP中,错误处理最佳实践包括错误日志记录、使用异常处理机制、设置自定义错误处理器,和配置错误报告级别。其中,使用异常处理机制可以让代码更加健壯,并且易于调试。 异常处理允许开发者将错误处理代码与业务逻辑分离,使得后者更清晰,更准确地反映出程序应有的流程。通…

如何使用数据分析进行人群管理

在进行人群管理时,使用数据分析是关键、提高目标精准度、增强客户满意度,并可以深化客户洞察,优化营销策略。数据分析能帮助我们理解目标人群的行为习惯、购购物偏好、媒体使用习惯等多维度信息。以提高目标精准度为例,借助数据分析技术,我们可以细分市场、创建买家画像,…

项目经理在项目成本控制中的技巧

项目经理在项目成本控制中的技巧包括:精确的项目预算编制、持续的成本监控、主动的风险管理、有效的沟通协作、实施变更控制、成本效益分析。在这些技巧中,精确的项目预算编制尤为关键。通过对项目活动细致划分、历史数据参考、市场调研以及专家判断等方式,能够确保预算的精…

Adams导出图象/数据的主要设置

步骤:Result——Postprocessor——File——Export。 Export之后会有多种选项,以下列举常用的各个选项: 1.Plot Config File: 该选项会导出一个.plt文件,系AutoCAD打印文件。这一步会弹出界面:Config File Name是你要导出文件名称。 Target是你要导出的路径。 Page Names是…

黑盒、白盒和自动化测试有什么区别

黑盒测试、白盒测试和自动化测试是软件测试领域的关键技术,每种方法有各自特点与适用场景。1、黑盒测试不考虑内部实现细节,重在测试软件功能的正确性。2、白盒测试深入到代码内部逻辑,验证代码执行的正确性和完整性。3、自动化测试侧重于利用自动化工具来执行测试用例,提升…

徐冰岩的第二次作业

这次作业属于哪个课程 https://edu.cnblogs.com/campus/zjlg/rjjc这个作业的目标 实现一个命令行文本计数统计程序。能正确统计导入的纯英文txt文本中的字符数,单词数,句子数。姓名-学号 徐冰岩-2022329301028Gitee地址:https://gitee.com/xu-bingyan8399/software-engineer…

静态网页和动态网页有什么区别

​​静态网页和动态网页在构建和呈现方式上存在显著差异。本文探讨了静态网页与动态网页的区别,包括:1. 页面内容生成方式;2. 用户交互性;3. 数据加载方式;4. 适用场景差异;5. 网站性能影响。深入剖析了这两种网页类型的技术特点,为读者更好地理解和选择适当的网页类型提…

HarmonyOS:应用/元服务上架

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤博客园地址:为敢技术(https://www.cnblogs.com/strengthen/ )➤GitHub地址:https://github.com/strengthen➤原文地址:https://www.cnblogs.com/strengthen/p/18508754➤如果链接不是为敢技术的博客园…

DHorse v1.6.0 发布,基于 k8s 的发布平台

版本说明 新增特性支持Codeup(阿里云云效)代码仓库; 支持环境的自动部署;优化特性管理员角色部署环境部需要审批; 优化页面展示;升级指南 升级指南 DHorse介绍 DHorse是一个轻量级、简单易用的云应用管理平台,具有多云和多环境管理、应用管理和部署、服务治理等功能,使…