Python - Por que no me suma

 
Vista:
Imágen de perfil de Dennis

Por que no me suma

Publicado por Dennis (20 intervenciones) el 13/03/2022 02:58:25
Hola a todos y saludos:
Este es el juego Piedra-Papel-Tijera
La idea por ahora es que en 10 partidas ver quien gana mas.
1- El problema es que no me suma la puntuación.
2- Me gustaría que me calificaran el juego de 1 - 5 y porque y como me recomiendan para mejorarlo
Gracias de antemano, cualquier critica se agradece.
1
2
3
4
from funciones import*
 
for i in range(10):
    play()

Archivo funciones.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import random
 
points_usu = 0
points_cpu = 0
 
# 1 - Piedra
# 2- Papel
# 3 - Tijera
 
def tabla():
    print "Usuario: ", points_usu
    print "CPU: ", points_cpu
 
 
def sum_usu():
    points_usu = points_usu + 1
 
def sum_cpu():
    points_cpu = points_cpu + 1
 
def time_user():
    return raw_input("> ")
 
def time_cpu():
    return random.randrange(1, 4)
 
def analyze(user, cpu):
    if user == cpu:
        return "Empate"
    elif ((user == 1 and cpu == 3) or
          (user == 2 and cpu == 1) or
          (user == 3 and cpu == 2)):
            return "Gana el usuario"
    else:
        return "Gana la cpu"
 
def play():
    tabla()
    result = analyze(time_user(), time_cpu())
    if result == "Empate":
        print result
    elif result == "Gana el usuario":
        sum_usu()
        print result
    elif result == "Gana el usuario":
        sum_cpu()
        print result
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de algoritmo
Val: 819
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Por que no me suma

Publicado por algoritmo (33 intervenciones) el 13/03/2022 11:07:28
Hola

Te hago unos pequeños cambios:

- Uso las variables 'points_cpu' y 'points_usu' como globales
- Transformo a entero el raw_input
- El último 'elif' es 'gana la cpu'

Espero que te sirva :)


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
mport random
 
points_usu = 0
points_cpu = 0
 
# 1 - Piedra
# 2- Papel
# 3 - Tijera
 
def tabla():
    print "Usuario: ", points_usu
    print "CPU: ", points_cpu
 
 
def sum_usu():
    global points_usu
    points_usu = points_usu + 1
 
def sum_cpu():
    global points_cpu
    points_cpu = points_cpu + 1
 
def time_user():
    return int(raw_input("> "))
 
def time_cpu():
    return random.randrange(1, 4)
 
def analyze(user, cpu):
    if user == cpu:
        return "Empate"
    elif ((user == 1 and cpu == 3) or
          (user == 2 and cpu == 1) or
          (user == 3 and cpu == 2)):
            return "Gana el usuario"
    else:
        return "Gana la cpu"
 
def play():
    tabla()
    result = analyze(time_user(), time_cpu())
    if result == "Empate":
        print result
    elif result == "Gana el usuario":
        sum_usu()
        print result
    elif result == "Gana la cpu":
        sum_cpu()
        print result
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Dennis

Por que no me suma

Publicado por Dennis (20 intervenciones) el 14/03/2022 14:08:56
Wow, muchísimas gracias.
Pero tengo otra duda, he pensado en que después de cierta cantidad de partidas analizar los patrones de jugadas del usuario y que la cpu pueda predecir mas o menos, es decir que se vuelva mas inteligente, no es que quiera crear una red neuronal pero, he buscado módulos pero ninguno me convence, conoces alguno que sea simple y que encaje con esto.
Gracias de antemano.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar