- Este tópico contém 3 respostas, 3 vozes e foi atualizado pela última vez 3 anos, 6 meses atrás por Tutora Mayla.
-
AutorPosts
-
-
29 de abril de 2021 às 16:00 #66101Gustavo Vitor Martins de SousaParticipante
Queria entender porque da erro nesta parte:
for j in jogadores:
print(f'{j[“cod”]:>4}{j[“nome”]:<10}{j[“gols”]:<10}{j[“total”]:<5}’)Código inteiro:
jogador = dict() gols = list() jogadores = list() cod = 0 while True: jogador['cod'] = cod cod += 1 jogador['nome'] = str(input('Nome do jogador: ')) jogador['partidas'] = int(input(f'Quantas partidas {jogador["nome"]} jogou? ')) soma = 0 for c in range(0, jogador['partidas']): numgols = int(input(f'Quantos gols na partida {c}? ')) soma += numgols gols.append(numgols) jogador['gols'] = gols[:] gols.clear() jogador['total'] = soma soma -= soma jogadores.append(jogador.copy()) cont = str(input('Quer continuar? [S/N] ')) if cont in 'Nn': break print('-='*35) print(f'cod {"nome":<10}{"gols":<10}total') print('-'*30) print(jogadores) for j in jogadores: print(f'{j["cod"]:>4}{j["nome"]:<10}{j["gols"]:<10}{j["total"]:<5}') while True: m = int(input('Mostrar dados de qual jogador? ')) for c in range(0, jogadores[m]['partidas']): print(f' => Na partida {c}, fez {jogadores[m]["gols"][c]} gols.') print(f'Foi um total de {jogadores[m]["total"]} gols.')
- Este tópico foi modificado 3 anos, 6 meses atrás por IcaroFilho.
-
29 de abril de 2021 às 16:03 #66102Gustavo Vitor Martins de SousaParticipante
O aninhamento está todo certo, não consegui escrever certo aqui
-
30 de abril de 2021 às 22:03 #66186Tutora MaylaMestre
Gustavo, como dito o problema está nesta linha
print(f'{j["cod"]:>4}{j["nome"]:<10}{j["gols"]:<10}{j["total"]:<5}')
, ele ocorre poisgols
é uma lista, logo não consegue ser printada desta forma. Bata adicionar a transformação para string, ficando assim{str(j["gols"]):<10}
que funcionará.Espero ter ajudado, quaisquer outras dúvidas estamos a disposição.
-
-
29 de abril de 2021 às 16:37 #66112IcaroFilhoModerador
Boa tarde Gustavo.
1- A variável jogadores é uma lista. vc esta chamando com keys (dicionário) em vez de index.2- Quando vc copiar da sua IDE para o forum siga o seguinte processo:
1- na primeira linha do código, antes do primeiro caractere, ponha o cursor e pressione CODE que se encontra na barra de formatação de texto.
2- depois posicione o cursor após o ultimo caractere e pressionei novamente oCODE
3- vc notará que aparecerá uma crase` no inicio e no final do código, isso significa que tudo que tiver neste intervalo permanecerá com a formatação original.
-
-
AutorPosts
- Você deve fazer login para responder a este tópico.