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.