Python猜数字代码猜对随机数仍输出you lost的问题排查求助
问题修复说明
错误原因
random.randint(1,2)生成的是整数类型的随机数,input()函数返回的所有内容默认是字符串类型,不同类型的值做相等判断时结果永远为假,所以就算输入的数值和随机生成的数字一致,也会判定为不相等,一直输出输掉的提示。
修正代码(保留原英文提示)
import random numgened = random.randint(1,2) print('Enter your bet amount:') amtbet = input() print('You have bet ' + amtbet) print('Number to bet on:') # 对用户输入的押注数字做整数类型转换 numbet = int(input()) print('You bet on ' + str(numbet)) print(numgened) if numgened == numbet: print('you won '+ amtbet) else: print('you lost '+ amtbet)
修正代码(全中文提示版本)
import random # 生成1到2的随机整数 generated_num = random.randint(1,2) print('请输入你的下注金额:') bet_amount = input() print('你下注的金额为:' + bet_amount) print('请输入你要押的数字:') # 转换输入为整数类型 bet_num = int(input()) print('你押的数字为:' + str(bet_num)) print('生成的随机数是:' + str(generated_num)) if generated_num == bet_num: print('你赢了,获得奖金:' + bet_amount) else: print('你输了,输掉下注金额:' + bet_amount)
内容的提问来源于stack exchange,提问作者dd1eg0
相关产品推荐
相关产品推荐

