欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

用 Python 编写剪刀石头布游戏(包括 5 种方法)

最编程 2024-05-03 21:18:38
...

用Python编写 剪刀石头布 游戏 (内附5种方法)

  • 方法一:稍微有点繁琐,但每一步都非常清楚(适合新手入门)
  • 方法二:使用随机数生成,random函数
  • 方法三:可以和电脑玩的游戏
  • 方法四:可以和电脑玩(比方法三稍稍简化了一些)
  • 方法五:高级版

方法一: 剪刀石头布的游戏 有点复杂了 T^T

import random
a = random.randint(0,2)
b = random.randint(0,2)
print("甲出的是:%s, 乙出的是:%s"%(a,b))
print("0代表剪刀,1代表石头,2代表布")
if  a==0 and b==1:
    print("乙获胜")
elif a==1 and b==1:
    print("甲乙平局")
elif a==2 and b==1:
    print("甲获胜")
elif a==0 and b==0:
    print("甲乙平局")
elif  a==1 and b==0:
    print("甲获胜")
elif a==2 and b==0:
    print("乙获胜")
elif a==0 and b==2:
    print("甲获胜")
elif  a==1 and b==2:
    print("乙获胜")
elif a==2 and b==2:
    print("甲乙平局")

方法二: 剪刀石头布的游戏 用random函数和or连接

import random
a = random.randint(0,2)
b = random.randint(0,2)
print("甲出的是:%s, 乙出的是:%s"%(a,b))
print("0代表剪刀,1代表石头,2代表布")

if  (a==0 and b==1)or(a==2 and b==0)or(a==1 and b==2):
    print("乙获胜")
elif (a==1 and b==1)or(a==0 and b==0)or(a==2 and b==2):
    print("甲乙平局")
elif (a==2 and b==1)or(a==1 and b==0)or(a==0 and b==2):
    print("甲获胜")

方法三: 剪刀石头布的游戏 和电脑玩版本

print("欢迎来到剪刀石头布游戏")
print("0代表剪刀,1代表石头,2代表布")

a = input("你出什么呢?请输入:")
a = int(a)

# 获取电脑出的随机值
import random
b = random.randint(0,2)

print("你出的是:%s, 电脑出的是:%s"%(a,b))

if  (a==0 and b==1)or(a==2 and b==0)or(a==1 and b==2):
    print("你输了,再接再厉,继续加油")
elif (a==1 and b==1)or(a==0 and b==0)or(a==2 and b==2):
    print("你和电脑是平局")
else:
    print("恭喜你!获胜哦~")

方法四: 剪刀石头布的游戏 和方法三类似,稍有点点不一样

print("欢迎来到剪刀石头布游戏")

print("0代表剪刀,1代表石头,2代表布")

a = input("你出什么呢?请输入:")

a = int(a)

#获取电脑出的随机值
print("你出的是:%s, 电脑出的是:%s"%(a,b))

if  (a==0 and b==1)or(a==2 and b==0)or(a==1 and b==2):
    
    print("你输了,再接再厉,继续加油")

elif a==b:
    print("你和电脑是平局")

else:
    print("恭喜你!获胜啦~")

方法五:剪刀石头布 高级版方法

import random
guess_list = ["石头", "剪刀", "布"]
win_combination = [["布", "石头"], ["石头", "剪刀"], ["剪刀", "布"]]

while True:
    computer = random.choice(guess_list)
    people = raw_input('请输入:石头,剪刀,布\n').strip()
    if people not in guess_list:
        continue
    elif computer == people:
        print ("平手,再玩一次!")
    elif [computer, people] in win_combination:
        print ("电脑获胜,再玩,人获胜才能退出!")
    else:
        print ("人获胜!")
        break