python石头剪刀布

# 2018-15-15
#作业:石头剪刀布,要求赢了需要添加一次机会,机会全部用完要提示是否充钱继续玩
#1元3次
import random
list1=["石头","剪刀","布"]
winlist=[("石头","剪刀"),("剪刀","布"),("布","石头")]
faillist=[("石头","布"),("剪刀","石头"),("布","剪刀")]
# 定义函数judge,用于判断人出拳和电脑出拳输赢
def judge(count1):
    if personInput==computerInput:
        print("电脑出的是%s,平局" % computerInput)
        count1-=1
    elif (personInput,computerInput) in winlist:
        print("电脑出的是%s,恭喜你胜利了" % computerInput)
        count1 += 1
    elif (personInput,computerInput) in faillist:
        print("电脑出的是%s,你输了" % computerInput)
        count1 -= 1
    else:
        print("你的出拳有误")
    return count1
#退出
def Exit(count1):
    print("Game Over")
    money = count1/3
    print("你的账户余额为%s" % money)
    count1=-1
    return count1
# 充值
def recharge(count1):
    while True:
        continueOrExit = int(input("输入1继续,输入-1退出"))
        if continueOrExit==1 or continueOrExit==-1:
                break
        else:
            print("你的输入错误")
    if continueOrExit == 1:
        if count1 ==0:
            print("你的机会已用完,是否充钱继续 ")
            while True:
                input2 =int(input("输入1充钱,输入-1退出"))
                if input2 ==1:
                    money=int(input("请输入充值金额:"))
                    if money > 0:
                        count1=3*money
                        break
                    else:
                        print("你输入的充值金额错误")
                elif input2==-1:
                    count1=Exit(count1)
                    break
                else:
                    print("输入错误")
    elif continueOrExit == -1:
        count1=Exit(count1)
    return count1
#记录输赢次数总局数
def winFailCount(win,fail,total):
    if tempCount2<tempCount3:                       #赢了记录次数
        win+=1
    elif tempCount2>tempCount3:                     #输局记录次数
        fail+=1
    total+=1
    print("总局数%s\t赢局%s\t输局%s"%(total,win,fail))

# 程序开始,设置变量
total=0     #总局数
win=0       #赢局数
fail=0      #输局数
count1=1    #开始时拥有的机会次数
while count1!=-1:                           #count=-1退出游戏
    computerInput = random.choice(list1)    #获取电脑输入
    print("-----------------猜拳游戏------------------")
    print("你有%s次机会出拳"%count1)
    personInput=input("请出拳:")           #人出拳
    tempCount2=count1                       #保存未和电脑判断前count1
    tempCount3=count1=judge(count1)         #判断输赢并返回剩余机会数count1
    count1=recharge(count1)                 #机会用完提醒用户充值或退出
winFailCount(win,fail,total)            #记录输赢次数总局数



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值