如何输入一个字符串然后给它分配一个数字

你好,我正在做一些个人的python学习,我有一个实践问题,我想弄清楚。主要目标是在计算机上玩剪刀石头布。您应该输入“纸”,“石头”或“剪刀”作为用户答案,然后计算机将随机生成一个1-3的数字,该数字与特定选择相对应。如果用户输入1-3中的数字,我可以使程序正常运行,但这不是问题所要的。我觉得我已经尝试了所有类似将每个名称分配给相应数字的操作,创建了一个if then语句,然后将选择项重新分配给数值,但是它总是在输入提示后卡住,并且不会随代码一起前进。我知道问题很可能出在第6行,因为那是它执行的最后一个位置..不知道如何解决它。同样,如果有人可以给我一些指导,让我可以更清洁一点,或者在效率和清洁度方面大概是什么样。请记住,我还没有学到像字典列表这样的高级内容。现在应该使用基本的东西解决问题。谢谢!

import random

def main():
    global user_answer
    print('lets play paper rock scissors')
    number = comp_answer()
    user_answer = int(input('What do you choose?')) <--- # i know the change would be 
    while number = comp_answer():                        # here.... maybe str(input(' ')) 
        tie(number)                                      # then define the choices? tried 
    paper_rock_scissors(number)                          # that and failed not sure if i'm 
                                                         # doing it wrong.

def comp_answer():
    number = random.randint(1,4)
    return number

def tie(number):
    print("its a tie!")
    print ("tie breaker")
    user_answer = input('What do you choose?')

def paper_rock_scissors(number):

    if number == 3 and user_answer == 1:
        print("computer: scissors")
        print("you: ",user_answer )
        print("you won!")
        print("rocks smashes scissors")

    elif number == 3 and user_answer == 2:
        print("computer: scissors")
        print("you: ",user_answer )
        print("Game over")
        print("scissors cuts paper")

    elif number == 1 and user_answer == 3:
        print("computer: rock")
        print("you: ",user_answer )
        print("Game over")
        print("rocks smashes scissors")
    elif number == 2 and user_answer == 3:
        print("computer: paper")
        print("you: ",user_answer )
        print("you won!")
        print("scissors cuts paper")

    elif number == 1 and user_answer == 2:
        print("computer: rock")
        print("you: ",user_answer )
        print("you won!")
        print("paper covers rock")
    elif user_answer == 1 and number == 2:
        print("computer: paper")
        print("you: ",user_answer )
        print("Game over")
        print("paper covers rock")
main()