1. 程式人生 > >石頭剪刀布python程式設計設計

石頭剪刀布python程式設計設計

額,其實最不懂的是,如何才能造一個 a>b b>c c>a 的條件

是否需要寫三個函式?如果遇到多個數值無序或者亂序的話,該如何處理?

class類沒有學的很清楚,所以程式設計的思路需要再理清一下,嗯打個點記錄一下

def compare(op,pc):
    if op == "石頭":
        if pc == "石頭":
            print("人類:{} vs 電腦:{}".format(op,pc))
            print("平局")
        elif pc == "剪刀":
            print("人類:{} vs 電腦:{}".format(op,pc))
            print("人類贏,電腦輸")
        elif pc == "布":
            print("人類:{} vs 電腦:{}".format(op,pc))
            print("人類輸,電腦贏")
    if op == "剪刀":
        if pc == "剪刀":
            print("人類:{} vs 電腦:{}".format(op,pc))
            print("平局")
        elif pc == "布":
            print("人類:{} vs 電腦:{}".format(op,pc))
            print("人類贏,電腦輸")
        elif pc == "石頭":
            print("人類:{} vs 電腦:{}".format(op,pc))
            print("人類輸,電腦贏")
    if op == "布":
        if pc == "布":
            print("人類:{} vs 電腦:{}".format(op,pc))
            print("平局")
        elif pc == "石頭":
            print("人類:{} vs 電腦:{}".format(op,pc))
            print("人類贏,電腦輸")
        elif pc == "剪刀":
            print("人類:{} vs 電腦:{}".format(op,pc))
            print("人類輸,電腦贏")

import random
seq = ["石頭","剪刀","布"]
computer_decision = seq[random.randint(0,2)]
operator_decision = seq[int(input("請輸入一個0-2範圍的數字"))]
compare(operator_decision,computer_decision)

第一版程式碼,格式不是很好看,嗯

--------------------------------------------------------------------------------------------------------------------------------

看了一下老師寫的

用的是if(a>b)or(b>c)or(c>a) 就搞定了。。。

然後列舉值是從1開始。。。我偷懶用了0,感覺更麻煩了

接下來改造一下這個程式碼

import random
seq = ["石頭","剪刀","布"]
computer_decision = seq[random.randint(0,2)]
operator_decision = seq[int(input("請輸入一個0-2範圍的數字"))]

def compare(op,pc):
    print("人類:{} vs 電腦:{}".format(op,pc))
    if((op == "石頭" and pc == "剪刀") 
       or (op == "剪刀" and pc == "布") 
       or (op == "布" and pc == "石頭")):
        print("人類輸,電腦贏")
    elif op == pc :
        print("平局")
    else :
        print("人類輸,電腦贏")
compare(operator_decision,computer_decision)

目前還不懂類,等學到類再把程式更新一下