用python实现石头剪刀布,并且可以调整获胜概率
时间: 2024-03-02 17:51:57 浏览: 172
python实现石头剪刀布程序
好的,我可以为您提供一个简单的石头剪刀布游戏的Python代码。以下是代码:
```python
import random
winning_probability = 0.5 # 默认获胜概率为50%
def set_winning_probability(prob):
global winning_probability
winning_probability = prob
def play(player_choice):
choices = ['石头', '剪刀', '布']
computer_choice = random.choice(choices)
if player_choice == computer_choice:
return '平局'
if player_choice == '石头':
if computer_choice == '剪刀':
return '你赢了'
else:
return '你输了'
if player_choice == '剪刀':
if computer_choice == '布':
return '你赢了'
else:
return '你输了'
if player_choice == '布':
if computer_choice == '石头':
return '你赢了'
else:
return '你输了'
def get_computer_choice():
choices = ['石头', '剪刀', '布']
return random.choice(choices)
def get_player_choice():
choice = input('请输入你的选择(石头/剪刀/布):')
while choice not in ['石头', '剪刀', '布']:
choice = input('请重新输入你的选择(石头/剪刀/布):')
return choice
def get_result(player_choice, computer_choice):
if player_choice == computer_choice:
return '平局'
if player_choice == '石头':
if computer_choice == '剪刀':
return '你赢了'
else:
return '你输了'
if player_choice == '剪刀':
if computer_choice == '布':
return '你赢了'
else:
return '你输了'
if player_choice == '布':
if computer_choice == '石头':
return '你赢了'
else:
return '你输了'
def play_with_probability(player_choice):
global winning_probability
choices = ['石头', '剪刀', '布']
computer_choice = random.choice(choices)
if random.random() < winning_probability:
# 让电脑故意输
if player_choice == '石头':
computer_choice = '剪刀'
elif player_choice == '剪刀':
computer_choice = '布'
else:
computer_choice = '石头'
return get_result(player_choice, computer_choice)
```
这个代码有两个函数可以用来玩石头剪刀布游戏。`play()`函数是一个普通的石头剪刀布游戏函数,它接受一个玩家的选择作为输入,并返回游戏结果。`play_with_probability()`函数是一个带有获胜概率的石头剪刀布游戏函数,它接受一个玩家的选择作为输入,并根据设定的获胜概率来决定电脑的选择。如果随机数小于获胜概率,电脑会故意输。
您可以使用`set_winning_probability(prob)`函数来设置获胜概率。例如,如果您想将获胜概率设置为70%,可以调用`set_winning_probability(0.7)`。
请注意,这只是一个简单的示例,您可以根据自己的需要进行修改和扩展。
阅读全文