def create_character(name, strength, intelligence, charisma):
if type(name) is not str:
return "The character name should be a string."
if 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."
stats = (strength, intelligence, charisma)
if not all(isinstance(x, int) and not isinstance(x, bool) for x in stats):
return "All stats should be integers."
if any(x < 1 for x in stats):
return "All stats should be no less than 1."
if any(x > 4 for x in stats):
return "All stats should be no more than 4."
if sum(stats) != 7:
return "The character should start with 7 points."
full = "●"
empty = "○"
def bar(v):
return full * v + empty * (10 - v)
return "\n".join([
name,
"STR " + bar(strength),
"INT " + bar(intelligence),
"CHA " + bar(charisma),
])
