python剪刀石头布游戏复杂版
时间: 2023-07-08 17:55:31 浏览: 172
python实现石头剪刀布程序
好的,我可以为您提供一个Python剪刀石头布游戏的复杂版。这个版本可以让玩家与计算机进行多轮游戏,并记录每轮的胜负情况。以下是代码示例:
```python
import random
# 定义游戏规则
rules = {'rock': 'scissors', 'scissors': 'paper', 'paper': 'rock'}
# 定义计算机选择函数
def computer_choice():
return random.choice(list(rules.keys()))
# 定义比较函数
def compare(player_choice, computer_choice):
if player_choice == computer_choice:
return 'tie'
elif rules[player_choice] == computer_choice:
return 'win'
else:
return 'lose'
# 定义游戏主函数
def play_game():
player_wins = 0
computer_wins = 0
ties = 0
while True:
# 获取玩家输入
player_choice = input("Enter rock, paper, or scissors (or q to quit): ")
if player_choice == 'q':
break
# 判断玩家输入是否合法
if player_choice not in rules:
print("Invalid input. Please try again.")
continue
# 计算机选择
computer_choice = computer_choice()
# 比较结果
result = compare(player_choice, computer_choice)
print(f"Computer chooses {computer_choice}.")
if result == 'win':
player_wins += 1
print("You win!")
elif result == 'lose':
computer_wins += 1
print("You lose!")
else:
ties += 1
print("It's a tie!")
# 输出游戏结果
print(f"You won {player_wins} times, lost {computer_wins} times, and tied {ties} times.")
# 运行游戏
play_game()
```
这段代码中,我们定义了游戏规则、计算机选择、比较函数和游戏主函数。游戏主函数中,我们使用了一个while循环来让玩家和计算机进行多轮游戏,直到玩家输入q退出游戏。在每轮游戏中,我们获取玩家输入,判断输入是否合法,然后计算机随机选择,比较玩家和计算机的选择,输出结果,并统计胜负情况。最后,我们输出游戏结果。
希望这个代码示例能够帮助到您!
阅读全文