用 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