首页 > 极客资料 博客日记

钱嘉铭的第二次作业

2024-10-27 00:00:03极客资料围观15

这篇文章介绍了钱嘉铭的第二次作业,分享给大家做个参考,收藏极客之家收获更多编程知识

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zjlg/rjjc/
这个作业的目标 实现一个命令行文本计数统计程序,能正确统计导入的txt文本中的字符数,单词数等数据
姓名-学号 钱嘉铭 2022330361017

说明:

由于博客园与gitee呈现的排版效果不一样,这边先展示README.MD,码云地址附在最后。

一、功能介绍

①基本功能:实现一个命令行文本计数统计程序。能正确统计导入的纯英文txt文本中的字符数,单词数,句子数。

②拓展功能:统计代码行、空行、注释行等,并提供相应命令接口。

③单元测试和性能测试

二、详细使用方法

1.右击 开始 图标,在搜索栏中输入cmd


2.下载PyInstaller并将Python脚本打包exe可执行文件
输入以下代码安装

pip install pyinstaller

之后输入以下代码将v0.2的Python脚本打包("D:\python代码\v0.2.py"里的是我保存的Python文件的位置)

pyinstaller --onefile "D:\python代码\v0.2.py"

输入以下代码将v0.3的Python脚本打包

pyinstaller --onefile "D:\python代码\v0.3.py"

成功后,可以在C盘的dist文件夹中找到生成的exe文件
之后,我将生成的exe文件都转移到D盘名为python代码文件夹

3.在命令行根目录切换至目标目录
重新在开始图标在搜索栏输入cmd打开,由于我的文件下载在D盘,需要切换至D盘,下面是要用到的命令

cd /
D:
cd D:python代码


3.使用命令
基本功能命令模式:

v0.2.exe -<指令> <file>

指令表

命令 描述
v0.2.exe -c <file> 计算并显示指定文件的字符数 📋
v0.2.exe -w <file> 计算并显示指定文件的单词数 📝
v0.2.exe -s <file> 计算并显示指定文件的句子数 💬

拓展功能命令模式:

v0.3.exe -<指令> <file>

指令表

命令 描述
v0.3.exe -d <file> 计算并显示代码行数 📜
v0.3.exe -e <file> 计算并显示空行数 ⬜
v0.3.exe -n <file> 计算并显示注释行数 🗒️

三、基本功能运行结果

文本内容:

案例1:

v0.2.exe -c "Qian Xuesen introduction.txt"

(由于文件名中有空格,需要在文件名外加" "
 结果如下:

案例2:

v0.2.exe -w "Qian Xuesen introduction.txt"

结果如下:

案例3:

v0.2.exe -s "Qian Xuesen introduction.txt"

结果如下:

四、拓展功能运行结果

代码内容:

案例1:

v0.3.exe -d "测试材料.py“

结果如下:

案例2:

v0.3.exe -e "测试材料.py“

结果如下:

案例3:

v0.3.exe -n "测试材料.py“

结果如下:

五、单元测试

1.基本测试

文件test_v02.py和test_v03.py是我专门写的单元测试文件,下面是它对单元测试的简单材料进行单元测试
v02测试内容:

v02 结果如下:

v03测试内容:

v03 结果如下:

2.异常捕捉

v0.2异常捕捉:v0.2代码中输入不存在的文件名将显示错误: 文件不存在
输入不存在的文件名(abcde)
结果如下:

v0.3异常捕捉:v0.3代码中输入不存在的文件名将显示文件不存在
输入不存在的文件名(abcde)
结果如下:

3.输错指令显示正确指令用法

v0.2中输入时错误指令v0.2.exe -f <file>
结果如下:

v0.3中输入时错误指令v0.3.exe -z <file>
结果如下:

六、性能测试

由于我下载的pycharm与python版本好像有点不兼容,需要imp模块在python新版本已被弃用,不能使用IDE附带的工具进行performance test,因此在pycharm中使用了 Python 的cProfile模块进行性能测试分析
结果如下:

七、作业感悟

这虽然是一次小的编程作业,但也花费了我比较多的时间,在校运动会以及周末的这几天时间,我花费了许多时间去查阅资料,也遇到了许多编程出现的问题。当遇到问题以后,我可能会一直卡在那边,然后想了很久也不能想到解决的方法。之后通过查阅Gitee以及CSDN上的一些开源的资料,我找到一些比较有用的信息,他们的经验给了我很多的指引,然后让我能顺利地解决问题,非常感谢那些他们那种开源的精神。当我解决了这个问题之后,我还是会有一种比较激动的成就感,以及一种解决问题后的喜悦和轻松。希望我以后科研碰到问题也能坚持下去,增强自己的韧性。

码云地址:https://gitee.com/Qian_JM/qjm


版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!

标签:

相关文章

本站推荐

标签云