Hola, primero comentar que quizás esta forma no es la mas ideal pero te puede servir en casos que puedes controlar.
1. Definíamos las estructuras que utilizaremos
En lo anterior ocupamos las opciones representan las opciones a elegir como usuario, el reemplazo representa el cambio que se realizará dada la opción elegida por usuario y pc para utilizar como posiciones de las respuestas definidas.
2. Ocupamos while para preguntar por una opción hasta que esta sea valida en base a la condición que ocupamos anteriormente
3 reemplazamos la opción usuario, pc para obtener los índices y obtener la respuesta del resultado
Lo anterior representa la matriz de resultado y su posiciones, es por esto que definimos un diccionario de reemplazo para que nos indicará la posición de los resultados. Los resultados fueron definidos en base a la opción que elige el usuario este se moverá en fila y el pc en base a columna. Ejemplo usuario elige papel en reemplazo papel es 1 por lo que en resultado ya tenemos el primer valor resultado[1], luego el pc elige al azar tijera que es 2 entonces nuestro resultado será fila 1 y columna 2 => resultado[1][2] lo que nos da en el diccionario que gana el pc