Crea un personaje RPG Python

full_dot = ‘●’

empty_dot = ‘○’

def create_character(nombre, fza, intel, car):

#verificamos la cadena

if not isinstance(nombre, str):

return “The character name should be a string”

if nombre == “”:

return “The character should have a name”

if len(nombre) > 10:

return “The character name is too long”

if " " in nombre:

return “The character name should not contain spaces”

#Validar estadistica

if not isinstance(fza, int) or not isinstance(intel, int) or not isinstance(car, int):

return “All stats should be integers”

if fza < 1 or intel < 1 or car < 1:

return “All stats should be no less than 1”

if fza > 4 or intel > 4 or car > 4:

return “All stats should be no more than 4”

if fza+intel+car !=7:

return “The character should start with 7 points”

else:

return nombre+"\nSTR “+full_dot+full_dot+full_dot+empty_dot+empty_dot+empty_dot+empty_dot+empty_dot+empty_dot+empty_dot+”\nINT “+full_dot+full_dot+empty_dot+empty_dot+empty_dot+empty_dot+empty_dot+empty_dot+empty_dot+empty_dot+”\nCHA "+full_dot+empty_dot+empty_dot+empty_dot+empty_dot+empty_dot+empty_dot+empty_dot+empty_dot+empty_dot

#result =“”

#result += nombre +“\n”

#result += “STR “+full_dot*fza+empty_dot*(10 - fza)+”\nINT”

#result += “INT “+full_dot*intel+empty_dot*(10 - intel)+”\n”

#result += “CHA “+full_dot*car+empty_dot*(10 - car)+”\n”

#return result

#llamamos a la función

resul = create_character(‘ren’,4,2,1)

print (resul)

Mi código completa las primeras 10 pruebas, pero en las 2 últimas no avanza aun cuando en consola me muestra el resultado tal como se pide
Aquí las pruebas que debe cumplir

  • 1. Debes tener una función llamada create_character.

  • Aprobado:2. Cuando create_character se llama con un primer argumento que no es una cadena, debería devolver The character name should be a string.

  • Aprobado:3. Cuando create_character se llama con un primer argumento que es una cadena vacía, debería devolver The character should have a name.

  • Aprobado:4. Cuando create_character se llama con un primer argumento que tiene más de 10 caracteres, debería devolver The character name is too long.

  • Aprobado:5. La función create_character no debería decir que el carácter es demasiado largo cuando no tiene más de 10 caracteres.

  • Aprobado:6. Cuando create_character se llama con un primer argumento que contiene un espacio debería devolver The character name should not contain spaces.

  • Aprobado:7. Cuando create_character se llama con un segundo, tercer o cuarto argumento que no es un entero, debería devolver All stats should be integers.

  • Aprobado:8. Cuando create_character se llama con un segundo, tercer o cuarto argumento que sea menor que 1, debería devolver All stats should be no less than 1.

  • Aprobado:9. Cuando create_character se llama con un segundo, tercer o cuarto argumento que sea mayor que 4, debería devolver All stats should be no more than 4.

  • Aprobado:10. Cuando create_character se llama con un segundo, tercer o cuarto argumento que no suma 7, debería devolver The character should start with 7 points.

  • Falló:11. create_character('ren', 4, 2, 1) debería devolver ren\nSTR ●●●●○○○○○○\nINT ●●○○○○○○○○\nCHA ●○○○○○○○○○.

  • Falló:12. Cuando create_character se llama con valores válidos debería mostrar las estadísticas del personaje como se requiere.

Y esta es la salida de consola:

// ejecutando pruebas
11. create_character('ren', 4, 2, 1) debería devolver ren\nSTR ●●●●○○○○○○\nINT ●●○○○○○○○○\nCHA ●○○○○○○○○○.
12. Cuando create_character se llama con valores válidos debería mostrar las estadísticas del personaje como se requiere.
// pruebas completadas
// salida de consola
ren
STR ●●●○○○○○○○
INT ●●○○○○○○○○
CHA ●○○○○○○○○○

Si tienes alguna pregunta sobre un desafío específico relacionada con tu código y necesitas ayuda, haz clic en el botón Obtener ayuda > Solicitar ayuda, ubicado en el desafío.

El botón Solicitar ayuda creará un nuevo tema con todo el código que has escrito e incluirá un enlace al desafío. Podrás seguir haciendo preguntas en la publicación antes de enviarla al foro.

Gracias.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.