Coursera ——Mini Project rock-paper-scissor-lizard-Spock

Coursera 练习题 Mini Project rock-paper-scissor-lizard-Spock

详细请见Coursera

https://www.coursera.org/learn/interactive-python-1

"""Rock-paper-scissors is a hand game that is played by two people. The players count to three in unison and
    simultaneously "throw” one of three hand signals that
    correspond to rock, paper or scissors. The winner is determined by the rules:

    Rock smashes scissors
    Scissors cuts paper
    Paper covers rock
    """

import random


def name_to_number(name):
    if name == 'rock':
        number = 0
    elif name == 'Spock':
        number = 1
    elif name == 'paper':
        number = 2
    elif name == 'lizard':
        number = 3
    elif name == 'scissors':
        number = 4
    else:
        print("Please print the correct name.")
    return number


def number_to_name(number):
    if number == 0:
        name = 'rock'
    elif number == 1:
        name = 'Spock'
    elif number == 2:
        name = 'paper'
    elif number == 3:
        name = 'lizard'
    elif number == 4:
        name = 'scissors'
    else:
        print("Please print the correct number.")
    return name


def rpsls(player_choice):
    # print a blank line to separate consecutive games
    print("\n")

    # print out the message for the player's choice
    print("Player chooses " + player_choice)

    # convert the player's choice to player_number using the function name_to_number()
    player_number = name_to_number(player_choice)

    # compute random guess for comp_number using random.randrange()
    comp_number = random.randrange(0, 5)

    comp_name = number_to_name(comp_number)
    print("Computer chooses " + comp_name)

    result_number = (player_number - comp_number) % 5
    if (result_number == 2) or (result_number == 1):
        print("Player wins!")
    elif (result_number == 3) or (result_number == 4):
        print("Computer wins!")
    elif result_number == 0:
        print("Player and computer tie")


# Test
rpsls("rock")
rpsls("Spock")
rpsls("paper")
rpsls("lizard")
rpsls("scissors")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值