关键点在于(user_input+1) % 3与computer_input的值进行比较,这样就省掉了对于边界值0和2的单独判断,简化了代码
from random import choice
def finger_guessing_game(user_input):
a_dict = {0: '石头', 1: '布', 2: '剪刀'}
computer_input = choice([0, 1, 2])
print('人出'+a_dict[user_input], '电脑出'+a_dict[computer_input])
if user_input == computer_input:
print('平局')
elif (user_input+1) % 3 < computer_input:
print('人胜')
else:
print('电脑胜')
return
new_input = int(input('0-石头,1-布,2-剪刀\n'))
finger_guessing_game(new_input)