Tell us what’s happening:
My code does not pass 2-4, 6-8, and 10. I cannot figure out what is wrong other than it is not outputting exactly as freeCodeCamp wants it to be.
Your code so far
full_dot = '●'
empty_dot = '○'
def create_character(name, strength, intelligence, charisma):
if not isinstance(name, str): #Checks if name is not a string
return 'The character name should be a string.'
if name == '':#Checks if name is not empty
return 'The character should have a name.'
if len(name) > 10:#Checks if name is longer than 10 characters
return 'The character name is too long.'
if any(char.isspace() for char in name):#
return 'The character name should not contain spaces.'
#Validating stats
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 + intelligence + charisma > 7:
return 'The character should start with 7 points.'
return f"{name}\nSTR {full_dot * strength}{empty_dot * (10 - strength)}\nINT {full_dot * intelligence}{empty_dot * (10 - intelligence)}\nCHA {full_dot * charisma}{empty_dot * (10 - charisma)}"
print(create_character("Hero", 3, 2, 2))
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