Open axiopaladin opened 1 year ago
One way to get around this is to use getattr
. For this example, you could get around it by saying
import pokebase as pb
pikachu = pb.pokemon("pikachu")
pikachu_sprite = getattr(pikachu.sprites.versions, "generation-iv").front_default
Though, you'd need to specify a version group in between since generation-iv leads to diamond-pearl, platinum, and heartgold-soulsilver. For the version groups that have dashes, you'd have to use another getattr
call.
If I wanted to get, say, the Gen 4 sprite of Pikachu, my first instinct would be the following:
However, notice that
generation-iv
has a hyphen. According to the python interpreter, that's a subtraction operator, and it throws an error because it doesn't know how to subtractiv.front_default
(an object that doesn't exist) frompikachu.sprites.versions.generation
(which also doesn't exist).The simplest fix would probably be to change all generation calls to use underscores instead.