Build an RPG Character - Build an RPG Character

Tell us what’s happening:

this code fails at 11 and 12 th testy can someone tell me why?

Your code so far

full_dot = '●'
empty_dot = '○'
def create_character(character_name,strength,intelligence,charisma):
    if not isinstance(character_name,str):
        return "The character name should be a string"
    if character_name == "":
        return "The character should have a name"
    if len(character_name) > 10:
        return "The character name is too long"
    if " " in character_name:
        return "The character name should not contain spaces"
    if not isinstance(strength,int) or not isinstance(intelligence,int) or not isinstance(charisma,int):
        return "All stats should be integers"
    if strength < 1 or intelligence < 1 or charisma < 1:
        return "All stats should be no less than 1"
    if strength > 4 or intelligence > 4 or charisma > 4:
        return "All stats should be no more than 4"
    if strength + intelligence + charisma != 7:
        return "The character should start with 7 points"
    return (
        f"{character_name}\n"
        f"STR {full_dot * strength}{empty_dot * (10 - strength)}\n"
        f"CHA {full_dot * charisma}{empty_dot * (10 - charisma)}\n"
        f"INT {full_dot * intelligence}{empty_dot * (10 - intelligence)}"
    )
print(create_character("ren",4,2,1))

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36

Challenge Information:

Build an RPG Character - Build an RPG Character

it’s saying

  1. create_character('ren', 4, 2, 1) should return ren\nSTR ●●●●○○○○○○\nINT ●●○○○○○○○○\nCHA ●○○○○○○○○○ .

So you can add these two lines below your function to confront your output with the expected output:

print(repr(create_character("ren",4,2,1)))
print(repr('ren\nSTR ●●●●○○○○○○\nINT ●●○○○○○○○○\nCHA ●○○○○○○○○○'))

notice the differences, and update your output

1 Like