python猜产生的随机数

img


随机产生四个数字,每位数字不同输入一个四位不重复数字。如果输入数字与随机数字相同且位置相同返回数字+10。如果输入数字与随机数字相同但位置不同,返回数字+1。根据返回数字猜产生的随机数直至每一个数字和位置全部正确。

你这题有问题啊 如果位数,数字都不同呢 猜到啥时候去啊
而且你的返回数字指什么 我也不懂 是输入数字还是 生成的数字基础上加10 或者1呢
只能给你个模板您发挥想象


import random

p = random.sample(range(10), 4) # 用于随机产生不重复的4个数字
print(p)
num = 0 # 返回数字
while True:
    inp = input("请输入一个不重复的四位数:")
    inpl = [int(i) for i in inp]
    
    if inpl == p: # 完全相同 返回+10
        print(num + 10)
        break
    elif not set(inpl).difference(set(p)): # 只是数字相同位置不同 返回+1
        print(num + 1)
    else:
        pass

https://www.ycpai.cn/python/Bh3jQMvG.html

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^