20242120庞耀《Python程序设计》实验一报告
20242120 2024-2025-2 《Python程序设计》实验一报告
课程:《Python程序设计》
班级: 2421
姓名:庞耀
学号:20242120
实验教师:王志强
实验日期:2025年3月12日
必修/选修: 公选课
1.实验内容
(1).熟悉Python开发环境;
(2).练习Python运行、调试技能;(编写书中的程序,并进行调试分析,要有过程)
(3).编写程序,练习变量和类型、字符串、对象、缩进和注释等;(编写一个猜数字或者剪刀石头布的游戏)
(4). 掌握git技能
2. 实验过程及结果
(1)从python官网下载python3.13.2
(2)启用python自带的IDLE,运行print语句,初步了解python
(3)下载PyCharm,调试环境并安装插件;创建git账户,通过克隆仓库实现gitee与PyCharm的绑定并上传第一个程序
(5)编辑一个猜数字的代码,并对其进行断点调试
以下是源代码(第一个为教师版,第二个为自己编写版)
代码1:
import random
print("""
**************************************
欢迎来到猜数字游戏
***************
***********
*******
*****
***
*
版本号---------1.0
版权----------py
**************************************
""")
level=int(input('输入难度(三岁小孩:30,五岁小孩:50,十岁小孩:100:'))
luckynum=random.randint(1,level)
guess=int(input('请输入你的数字:'))
while True:
if guess==luckynum:
print("恭喜你,猜对了!")
break
else:
print('哈哈,你猜错了!')
if guess>luckynum:
guess=int(input('大了,继续猜:'))
else:
guess=int(input('小了,继续猜:'))
代码二:
import random
print("""
*************************
猜数字游戏
********
******
****
**
版本------------------1.0
版权------------------py
**************************
""")
level=int(input('选择等级---简单(30)中等(100)困难(1000):'))
rand_int=random.randint(1,level)
flag=1
while flag==1:
user_guess=int(input(f"请输入一个数字(1-{level}):"))
if user_guess==rand_int:
print("恭喜你,猜对了!6666666")
flag=0
elif user_guess<rand_int:
print("你猜的太小了,再猜一次:")
elif user_guess>rand_int:
print("你猜的太大了,再猜一次:")
以下是调试代码:
以下是实验结果:
3. 实验过程中遇到的问题和解决过程
- 问题1:怎么实现用户循环输入(避免只能猜一次)
- 问题1解决方案:使用while循环,其中教师版本用了break来退出,自编版本用了标志变量falg,都解决了问题并避免了死循环
- 问题2:怎么解决目标数字不随机的问题
- 问题2解决方案:通过导入python自带的库(import random),调用其中的randint函数,每次代码运行都随机生成一个整型数
- 问题3:怎么丰富猜数字游戏体验感
- 问题3:解决方案:首先设计了level功能,用户可以根据自己的要求选择难度;其次编写了一个简要的界面,具有独创性
- ...
其他(感悟、思考等)
本次实验让我初步认识了Python这门语言,相比于C语言这种编译型语言,Python显然更加简单,更加高效。除此之外,我首次接触到了博客园和gitee等平台,拓宽了学习视野。回到实验题目本身,我学到了多种方式实现循环与循环退出。通过今后的学习,我希望能将猜数字的小游戏变为一个可点击的界面(使用tk库)
参考资料
- 王志强实验一课上手打代码
- -查询豆包关于random库的简单介绍
- ...