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库的简单介绍
  • ...
posted @ 2025-03-12 20:47  light-py  阅读(13)  评论(0)    收藏  举报