Eu executei esse código no terminal Python:
>>> for news in news_list:
... print news("li", {"class", "first"})[0].a["href"]
...
...
Quero poder fechar esse loop for no terminal, mas não faço ideia de como fazê-lo. Tentei pressionar Enterduas vezes, mas não funciona.
command-line
12.10
python
jason328
fonte
fonte
print news
eprint news_list
antes disso e nos fornecer a saída? Vamos ter uma idéia das estruturas de dados lá.Respostas:
Não importa em quais dados ele está trabalhando. De qualquer maneira que você esteja usando
print "spam"
ou com alguma expressão complicada, o loop for deve ser fechado após duas entradas ou uma exceção do Python será gerada com dados incorretos ou um erro de sintaxe.O problema é que você está recuando as linhas vazias; portanto, o intérprete acha que você ainda fornecerá algum código.
Veja a diferença no snippet de código abaixo (selecione o texto para ver o porquê):
fonte
bpython
. É um interpretador python de linha de comando com sugestões de palavras-chave, recuo automático, memória do histórico entre sessões, uma opção para salvar código em um arquivo etc. Os dois primeiros recursos o tornam um aplicativo matador. Tantas vezes pressionei a tecla tab no intérprete padrão apenas para encontrar uma guia na tela!ipython
?