Если вы хотите, чтобы уровни происходили с регулярными приращениями (например, последовательно каждые 5000 xp), вы можете использовать что-то простое и быстрое:
# Defined at the top, easily modifiable this way
max_level = 21
xp_per_level = 5000
...
level_number = self.xp // xp_per_level
self.level = f"Level {level_number}" if level_number < max_level else "MAX LEVEL"
Вы можете вкладывать вышеуказанное поведение в подобное элифк тому, что вы уже сделали, и используйте эту технику, чтобы первые 10 уровней масштабировались на 500 очков опыта за уровень, и, возможно, следующие 10 требуют 1000 очков опыта и т. д.