20241417 2024-2025-2 《Python程序设计》实验一报告

news/2025/3/12 23:28:00/文章来源:https://www.cnblogs.com/lry666666/p/18768238

20241417 2024-2025-2 《Python程序设计》实验一报告

课程:《Python程序设计》
班级: 2414
姓名: 罗若元
学号:20241417
实验教师:王志强
实验日期:2025年3月12日
必修/选修: 公选课

1.实验内容

1.熟悉Python开发环境;
2.练习Python运行、调试技能;(编写书中的程序,并进行调试分析,要有过程)
3.编写程序,练习变量和类型、字符串、对象、缩进和注释等;(编写一个猜数字或者剪刀石头布的游戏)
4. 掌握git技能

2. 实验过程及结果

1.实验代码

import random
import os
import sys
import subprocessdef get_input(prompt):result = subprocess.run(["powershell", "-Command", f"Read-Host '{prompt}'"], capture_output=True, text=True)return result.stdout.strip()def guess_number(level):if level == 1:target = random.randint(1, 10)print("已选择等级 1:目标数字在 1 到 10 之间。")elif level == 2:target = random.randint(1, 20)print("已选择等级 2:目标数字在 1 到 20 之间。")elif level == 3:target = random.randint(1, 30)print("已选择等级 3:目标数字在 1 到 30 之间。")else:print("无效的等级选择!")returnwhile True:try:guess = int(get_input("请输入你猜的数字: "))if guess == target:print("恭喜你,猜对了!🎉")breakelif guess > target:print("猜大了,再试试!")else:print("猜小了,再试试!")except ValueError:print("请输入一个有效的数字!")def pack_to_exe():print("\n检测到您可能希望将游戏打包成可执行文件。")print("正在安装 PyInstaller...")try:os.system("pip install pyinstaller")print("PyInstaller 安装成功!")except Exception as e:print(f"安装 PyInstaller 失败:{e}")returnprint("\n正在打包游戏...")try:os.system(f"pyinstaller --onefile --noconsole --debug=all {sys.argv[0]}")print("打包成功!")print(f"可执行文件位于当前目录的 'dist' 文件夹中。")except Exception as e:print(f"打包失败:{e}")def main():print("""⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐Welcome to the Guess Number Game!⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐""")while True:try:level = int(get_input("请选择游戏等级 (1-3): "))if level not in [1, 2, 3]:print("等级选择无效,请输入 1、2 或 3!")continueguess_number(level)except ValueError:print("请输入一个有效的数字!")play_again = get_input("是否再来一局?(输入 'yes' 继续,其他退出): ")if play_again.lower() != "yes":print("感谢游玩,再见!👋")pack_choice = get_input("是否将游戏打包成可执行文件?(输入 'yes' 打包,其他退出): ")if pack_choice.lower() == "yes":pack_to_exe()breakif __name__ == "__main__":main()

2.设置断点并调试

3.程序打包到码云

4.运行结果

3. 实验过程中遇到的问题和解决过程

  • 问题1:代码打包成exe后无法运行
  • 问题1解决方案:询问ai后发现电脑无法运行input(),修改成其他代码后成功

其他(感悟、思考等)

学会了打包py代码,方便他人使用

参考资料

  • 《Java程序设计与数据结构教程(第二版)》

  • 《Java程序设计与数据结构教程(第二版)》学习指导

  • ...

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

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

相关文章

高性能计算-探究GPU延迟隐藏(26)

1. 延迟隐藏作用:可以最大化线程束的使用效率,提高计算性能 2. 延迟隐藏概念 (1)指令延迟是指令发出到完成之间的时钟周期间隔; (2)指令可以分为两种:算数指令和访存指令。 3. 算数指令延迟隐藏实现 (1)假如一个算数指令的指令延迟是 4 个时钟周期 (2)查询cuda文档…

毒王正传:初出江湖

忽见江湖风云变, 协议如雪落满天。 十方少侠争破译, 哪知此物带瘟烟。楔子混沌起微澜忽见江湖风云变,协议如雪落满天。十方少侠争破译,哪知此物带瘟烟。话说那日产品大殿突发英雄帖:"今有通天协议问世,三日接入者赏鸡腿三筐!"众客户端少侠摩拳擦掌,却不知正堕…

uniapp 开发微信小程序自定义背景图与导航栏

uniapp 开发微信小程序自定义背景图与导航栏 1、page.json中使用custom自定义导航栏{"path": "pages/store/store","style": {"navigationBarTitleText": "店铺详情","navigationStyle": "custom" //自…

Redis--Lesson06--Redis进阶2

一.Redis持久化之RDB Redis的RDB持久化机制是通过快照(snapshot)的形式将存储在内存中的数据以一定的时间间隔保存到硬盘上。以下是RDB持久化的具体流程: 触发条件:RDB文件可以通过配置文件设置自动触发(例如,根据时间或修改次数),也可以手动通过命令SAVE或BGSAVE来触发。…

Spring Security-web安全框架

进入移动互联网时代,大家每天都在刷手机,常用的软件有微信、支付宝、头条等,下边拿微信来举例子说明认证相关的基本概念,在初次使用微信前需要注册成为微信用户,然后输入账号和密码即可登录微信,输入账号和密码登录微信的过程就是认证。Spring Security 1. 基本概念 1.1 …

SpringBoot文件上传到数据库

SpringBoot文件上传到数据库 首先导入了相应的jar包 <!--thymeleaf--> <dependency><groupId>org.thymeleaf</groupId><artifactId>thymeleaf-spring5</artifactId> </dependency> <dependency><groupId>org.thymeleaf.…

供应链系统中的 “计划单、订单、通知单,入库 / 出库单” 的区别

在供应链管理中,各种单据是业务流程的核心纽带,但它们之间的区别和联系常常让新手感到困惑。本文从采购和销售两大业务场景出发,详细拆解了“计划单、订单、通知单、入库/出库单”等常见单据的定义、作用及相互关系。在供应链系统中,经常会听到一些名字相近,但是意思可能略…

20232209实验一《Python程序设计》实验报告

20232209 2024-2025-2 《Python程序设计》实验一报告 课程:《Python程序设计》 班级: 2322 姓名: 吴易阳 学号:20232209 实验教师:王志强 实验日期:2025年3月12日 必修/选修: 公选课 1.实验内容 1.熟悉Python开发环境; 2.练习Python运行、调试技能;(编写书中的程序…

20242909王天宇_网络攻防实践第2次作业

20242909王天宇《网络攻防实践》第2次作业 1.实验内容 学习内容总结 本次实验内容涵盖了网络信息查询、网络安全扫描和个人隐私保护等多个方面,旨在通过实践掌握网络信息获取、漏洞分析及隐私保护的基本技能。主要学习内容如下:DNS与IP信息查询:通过 nslookup 等工具,学习如…

如何给海淘电子产品挑一根「合格」电源线——IEC 320解读

转载声明:https://sspai.com/post/72699 网站:少数派 作者:Levinson喜欢海淘的朋友们,你是否碰到过「买来的数码产品或家用小电器自带的电源插头不是中国大陆标准,不得不自己再配一根国标线却不知道该搜什么关键词」的尴尬时刻呢?实际上这些电源线都是有统一标准的,这个…

IEC 320解读——如何给海淘电子产品挑一根「合格」电源线

喜欢海淘的朋友们,你是否碰到过「买来的数码产品或家用小电器自带的电源插头不是中国大陆标准,不得不自己再配一根国标线却不知道该搜什么关键词」的尴尬时刻呢?实际上这些电源线都是有统一标准的,这个标准被称为 IEC 60320,所有的电源线都可以通过这个标准找到唯一的那一…

Netty基础—3.基础网络协议

大纲 1.网络基础的相关问题总结 2.七层模型和四层模型 3.物理层(网线 + 光缆 + 01电信号) 4.数据链路层(以太网协议 + 网卡mac地址) 5.网络层(IP协议 + 子网划分 + 路由器) 6.传输层(TCP和UDP协议 + Socket + 端口) 7.应用层(HTTP协议 + SMTP协议) 8.浏览器请求一个域名会发生什…