Try:
pokemon2attacks = {
"squirtle": ["aqua jet", "bubbles", "water pulse"],
"charmander": ["fire fang", "slash", "flamethrower"]
}
squirtle = "\n- ".join(pokemon2attacks["squirtle"])
print(f"Choose one\n- {squirtle}")
[out]:
Choose one
- aqua jet
- bubbles
- water pulse
Or:
squirtle = "".join([f"\n{str(i+1)}. {a}" for i, a in enumerate(pokemon2attacks["squirtle"])])
print(f"Choose one {squirtle}")
[out]:
Choose one
1. aqua jet
2. bubbles
3. water pulse
Then we get fancy:
import requests
from bs4 import BeautifulSoup
def get_moves(pokemon):
response = requests.get(f"https://pokemondb.net/pokedex/{pokemon}")
bsoup = BeautifulSoup(response.content.decode('utf8'))
moves = {}
for tr in bsoup.find('table', attrs={'class': "data-table"}).find_all('tr'):
headers = ['level', 'name', 'type', 'category', 'power', 'accuracy']
if tr.find_all('td'):
move = {k:v.text for k, v in zip(headers, tr.find_all('td'))}
moves[move['name']] = move
return moves
pokemon = "squirtle"
squirtle_moves = "".join([f"\n{str(i+1)}. {a}" for i, a in enumerate(get_moves(pokemon).keys())])
print(f"Choose one\n{squirtle_moves}")
[out]:
Choose one
1. Tackle
2. Tail Whip
3. Water Gun
4. Withdraw
5. Rapid Spin
6. Bite
7. Water Pulse
8. Protect
9. Rain Dance
10. Aqua Tail
11. Shell Smash
12. Iron Defense
13. Hydro Pump
14. Skull Bash
And a little fancier:
import requests
from bs4 import BeautifulSoup
def get_moves(pokemon, level):
response = requests.get(f"https://pokemondb.net/pokedex/{pokemon}")
bsoup = BeautifulSoup(response.content.decode('utf8'))
moves = {}
for tr in bsoup.find('table', attrs={'class': "data-table"}).find_all('tr'):
headers = ['level', 'name', 'type', 'category', 'power', 'accuracy']
if tr.find_all('td'):
move = {k:v.text for k, v in zip(headers, tr.find_all('td'))}
moves[move['name']] = move
moves_filtered_by_level = {k:v for k,v in moves.items() if int(v['level']) <= level}
return moves_filtered_by_level
pokemon = "squirtle"
availble_moves = get_moves(pokemon, level=10)
squirtle_moves = "".join([f"\n{str(i+1)}. {a}" for i, a in enumerate(availble_moves.keys())])
print(f"Choose one\n{squirtle_moves}")
[out]:
Choose one
1. Tackle
2. Tail Whip
3. Water Gun
4. Withdraw
5. Rapid Spin