猜拳小游戏,间断自学1周小白求助

faladilong 2022-11-25 19:07:06
问题在代码注释里 ,代码如下:


import random

print(7*"* ","云 中 游 戏 ",7*"* ")
print("*"," "*9," 剪刀   石头   布"," "*9,"*")
print(20*"* ")

r=input("是否开始猜拳小游戏(y/n):")

#判断是否开始游戏

if r=="y":
    player=eval(input("请选择1、剪刀 2、石头 3、布:"))
else :
    print("感谢使用本程序,程序已关闭。")
    #本来我在这里打上了break ,但一直报错

#玩家出拳
if player==1:
     player_action="剪刀"
elif player==2:
     player_action = "石头"
elif player==3:
     player_action = "布"
else :
     player_action = "石头"   #如果输入错误,直接默认为出“石头”

#电脑出拳

computer= random.randint(1, 3)

if computer==1:
     computer_action="剪刀"
elif computer==2:
     computer_action = "石头"
else :
     computer_action = "布"

print("您出的是:",player_action,"\n电脑出的是:",computer_action)

#判断输赢,并输出结果
if player==computer:
    print("您和电脑打成了平手,请再接再厉!!")
elif (player==1 and computer==2) or (player==2 and computer==3) or (player==3 and computer==1):
    print("很遗憾,您输了!请再接再厉!")
else:
    print("恭喜您,您赢得了胜利!")

# 怎么才能回到之前继续游戏,这里一直有错误~哭~
r=input("您是否继续游戏y/n:")

感谢感谢!!!

...全文
140 5 打赏 收藏 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiang5223992 2023-01-02
  • 打赏
  • 举报
回复

很不错的内容,干货满满,已支持师傅,期望师傅能输出更多干货,并强烈给师傅五星好评

另外,如果可以的话,期待师傅能给正在参加年度博客之星评选的我一个五星好评,您的五星好评都是对我的支持与鼓励(帖子中有大额红包惊喜哟,不要忘记评了五星后领红包哟)
⭐ ⭐ ⭐ ⭐ ⭐ 博主信息⭐ ⭐ ⭐ ⭐ ⭐
博主:橙留香Park
本人原力等级:5
链接直达:https://bbs.csdn.net/topics/611387568
微信直达:Blue_Team_Park
⭐ ⭐ ⭐ ⭐ ⭐ 五星必回!!!⭐ ⭐ ⭐ ⭐ ⭐

点赞五星好评回馈小福利:抽奖赠书 | 总价值200元,书由君自行挑选(从此页面参与抽奖的同学,只需五星好评后,参与抽奖)

faladilong 2022-11-28
  • 打赏
  • 举报
回复

感谢您的指导!
while语句管用 可以循环了

但是运行中,break能关闭程序,但前一句"感谢使用本程序,程序已关闭。"一直不能输出。这是为啥,请大神指教!

m0_71869462 2023-01-03
  • 举报
回复
@faladilong 当r!="y"的时候,走不到while循环里,可以把 while r=="y" 改成 while 1,这样就能显示了
m0_71869462 2022-11-26
  • 打赏
  • 举报
回复 1

稍微有点改动,加入了一个while循环,需要注意符号不能是中文的


import random

print(7*"* ","云 中 游 戏 ",7*"* ")
print("*"," "*9," 剪刀   石头   布"," "*9,"*")
print(20*"* ")

r=input("是否开始猜拳小游戏(y/n):")

#判断游戏是否继续
while r=="y" :
    #判断是否开始游戏
    if r=="y":
        player=eval(input("请选择1、剪刀 2、石头 3、布:"))
    else :
        print("感谢使用本程序,程序已关闭。")
        #本来我在这里打上了break ,但一直报错,现在问题解决了
        break
    #玩家出拳
    if player==1:
        player_action="剪刀"
    elif player==2:
        player_action = "石头"
    elif player==3:
        player_action = "布"
    else :
        #注意中英文符号
        player_action = "石头"   #如果输入错误,直接默认为出“石头”

    #电脑出拳

    computer= random.randint(1, 3)

    if computer==1:
        computer_action="剪刀"
    elif computer==2:
        computer_action = "石头"
    else :
        computer_action = "布"

    print("您出的是:",player_action,"\n电脑出的是:",computer_action)

    #判断输赢,并输出结果
    if player==computer:
        print("您和电脑打成了平手,请再接再厉!!")
    elif (player==1 and computer==2) or (player==2 and computer==3) or (player==3 and computer==1):
        print("很遗憾,您输了!请再接再厉!")
    else:
        print("恭喜您,您赢得了胜利!")

    # 怎么才能回到之前继续游戏,这里一直有错误~哭~
    # 在前面加入while循环就好了
    r=input("您是否继续游戏y/n:")
    #用户输入后,将会进入下一次循环
jiang5223992 2023-01-02
  • 举报
回复
@m0_71869462 很不错的内容,干货满满,已支持师傅,期望师傅能输出更多干货,并强烈给师傅五星好评 另外,如果可以的话,期待师傅能给正在参加年度博客之星评选的我一个五星好评,您的五星好评都是对我的支持与鼓励(帖子中有大额红包惊喜哟,不要忘记评了五星后领红包哟) ⭐ ⭐ ⭐ ⭐ ⭐ 博主信息⭐ ⭐ ⭐ ⭐ ⭐ 博主:橙留香Park 本人原力等级:5 链接直达:https://bbs.csdn.net/topics/611387568 微信直达:Blue_Team_Park ⭐ ⭐ ⭐ ⭐ ⭐ 五星必回!!!⭐ ⭐ ⭐ ⭐ ⭐ 点赞五星好评回馈小福利:抽奖赠书 | 总价值200元,书由君自行挑选(从此页面参与抽奖的同学,只需五星好评后,参与抽奖)

67,947

社区成员

发帖
与我相关
我的任务
社区描述
灌水发信息每周送书 灌水发干货每周送惊喜 谁最水过年送大礼 谁最硬核过年送大礼 谁最贡献过年送大礼
社区管理员
  • 1_bit
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

我们“新手村”社区就是大家的孵化器

你们学习,我来评分

每周最高分送一本书

每月第四周送一份机械键盘

咱们新手村使用一切狂暴手段让优秀的人得到奖励

 

试试用AI创作助手写篇文章吧