猜数字游戏:提示几个数字正确几个位置正确

这个游戏以前玩过,学了几天python,信誓旦旦的跟儿子说我一定要做出来给你玩,结果研究了3,4天,所学所掌握的知识不够,一直实现不了(想起周六一大早要起来开长途回老家4小时,周五晚上熬夜到1点半—因为自信的认为我能开发出来,不出来不睡觉。。。。最后还是没出来,强迫不甘心的自己睡觉。。。。)。今天还是屡试不成,只好求助文心一言,本来就不报希望,只是看能不能找到有用的知识点。果然,文心兄没让我失望,它给的代码是无效的,不过学了个for index,digit in enumerate(字符串或者列表)的用法,问题迎难而解。

代码如下:

import random

k = input('您想挑战几位数的猜数字游戏呢:')
k = int(k)
a = random.randint(10 ** (k - 1) ,10 ** k - 1)
a = str(a)
gress = 0
num =0
#print(a)
while True:
    t1 = 0
    t2 = 0
    num +=1
    b =input(f'请猜{10 ** (k - 1)}到{10 ** k - 1}之间的一个整数')
    if k != len(b):
        print('输入错误,请重新输入')
    if k == len(b):
        for index,digit in enumerate(b):
            if digit in a:
                t1+=1
            if digit == a[index]:
                t2+=1
        print(f'{t1}个数正确,{t2}个位置正确')
    if t2 == k:
        print(f'恭喜您猜对了,游戏结束,您一共猜了{num}次')
        break

自己试玩了下,效果不错,2位数的适合2年级小朋友,3位数的应该适合4年级小朋友,太好了!晚上跟儿子女儿坐一排泡脚的时候,一人一个手机,玩这个猜数字游戏,比速度,完美!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值