|
发表于 2020-4-18 17:26:05
|
显示全部楼层
除了你使用整数来join导致错误以外,代码还有些其他的问题,修改了一部分,可以正常跑起来了:
- """
- 用户购买彩票
- 要求:共有7个球,红球有6个
- 红球的数值在(1-33)的范围内且不能重复
- 蓝球的范围在(1-16)的范围内
- (1)打印出你购买的号码
- (2)判断是否中奖
- """
- import random
- #中奖号码
- blue_ball = str(random.randint(1,16))
- price_num = []
- while len(price_num) < 6:
- red_ball = str(random.randint(1,33)) #红球要生成6次,所以必须在循环里
- if red_ball in price_num:
- continue
- price_num.append(red_ball)
- price_result = " ".join(price_num)+' '+blue_ball
- #创建用户号码盒
- box_user = []
- #用户购买红球
- a=1
- while len(box_user) < 6: #用户购买也要输入6次红球吧?
- user = input("请输入第%d个红球的号码: " % a)
- if int(user) > 33 or int(user) < 1 or (user in box_user):
- print("输入的号码不正确!")
- continue
- a+=1
- box_user.append(str(user))
- #用户购买蓝球
- while True:
- user_blue = input("请输入最后一个蓝球的号码: ")
- if 0<int(user_blue)<17:
- break
- print("输入的号码不正确!")
- box_user.append(user_blue)
- #将号码列表转换成用户彩票号码
- str_user = " ".join(box_user)
- print("您的彩票号码是:%s"%(str_user))
- #判断是否中奖
- if str_user == price_result:
- print("恭喜你中奖了!")
- else:
- print("很遗憾,你没有中奖!")
复制代码 |
|