Build an RPG Character - Build an RPG Character

Tell us what’s happening:

My code gets the desired result and changing arguments so that they do not fulfill requirements returns the appropriate messages. I can’t figure out what’s wrong!

Your code so far

full_dot = '●'
empty_dot = '○'

def create_character(name, strength, intelligence, charisma):
    if not isinstance(name, str):
        return 'The character name should be a string'
    if not name:
        return 'The character should have a name'
    if len(name) > 10:
        return 'The character name is too long'
    if ' ' in 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'
    else:
        my_str = strength*full_dot + (10 - strength)*empty_dot
        my_int = intelligence*full_dot + (10 - intelligence)*empty_dot
        my_cha = charisma*full_dot + (10 - charisma)*empty_dot
        return f'{name} \nSTR {my_str} \nINT {my_int} \nCHA {my_cha}'
        
print(create_character('ren', 4, 2, 1))


        

Your browser information:

User Agent is: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36

Challenge Information:

Build an RPG Character - Build an RPG Character

Welcome to the forum @graybethgray !

Try adding this code to compare actual to expected:

print('Actual:   ',repr(create_character('ren', 4, 2, 1))) 
print('Expected: ',repr('ren\nSTR ●●●●○○○○○○\nINT ●●○○○○○○○○\nCHA ●○○○○○○○○○'))
1 Like

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