OK, estou ciente de que cadeias de aspas triplas podem servir como comentários de várias linhas. Por exemplo,
"""Hello, I am a
multiline comment"""
e
'''Hello, I am a
multiline comment'''
Mas tecnicamente falando, essas são seqüências de caracteres, correto?
Pesquisei no Google e li o guia de estilo do Python, mas não consegui encontrar uma resposta técnica para o motivo de não haver uma implementação formal de multilinha, / * * / tipo de comentários. Não tenho problema em usar aspas triplas, mas estou um pouco curioso sobre o que levou a essa decisão de design.
if False:
o códigoRespostas:
Duvido que você obtenha uma resposta melhor do que "Guido não sentiu a necessidade de comentários em várias linhas".
Guido twittou sobre isso:
fonte
if False:
antes do código que precisa ser desabilitado.if False
é melhor. Ele realiza exatamente a mesma coisa, embora seja menos claro (já que não é tão óbvio à primeira vista que o bloco de código foi desativado).Comentários de várias linhas são facilmente quebráveis. E se você tiver o seguinte em um programa de calculadora simples?
Tente comentar isso com um comentário de várias linhas:
Ops, sua string contém o delimitador de comentário final.
fonte
#:
e use o recuo para mostrar quando o comentário terminou. É limpo, consistente e lida perfeitamente com o aninhamento.O texto com aspas triplas NÃO deve ser considerado comentários de várias linhas; por convenção, eles são doutrinas . Eles devem descrever o que seu código faz e como usá-lo, mas não para coisas como comentar blocos de código.
De acordo com Guido, os comentários multilinhas no Python são apenas comentários de linha única contíguos (procure por "comentários em bloco").
Para comentar blocos de código, às vezes uso o seguinte padrão:
fonte
V}>>
Provavelmente, isso remonta ao conceito central de que deveria haver uma maneira óbvia de executar uma tarefa. Estilos de comentários adicionais adicionam complicações desnecessárias e podem diminuir a legibilidade.
fonte
#
.Bem, as aspas triplas são usadas como comentários de múltiplas linhas nas doutrinas. E # comentários são usados como comentários embutidos e as pessoas se acostumam.
A maioria das linguagens de script também não tem comentários de várias linhas. Talvez seja essa a causa?
Ver PEP 0008 , seção Comentários
E veja se o seu editor Python oferece algum atalho de teclado para comentar em bloco. O Emacs suporta, assim como o Eclipse, presumivelmente a maioria dos IDEs decentes.
fonte
Do Zen de Python :
Deve haver uma - e preferencialmente apenas uma - maneira óbvia de fazê-lo.
fonte
Pessoalmente, meu estilo de comentário diz que Java é como
Portanto, ter comentários de linha única não é algo tão ruim se o seu estilo é típico do exemplo anterior, porque em comparação você teria
O VB.NET também é um idioma com apenas uma linha comentando e, pessoalmente, acho irritante, pois os comentários acabam parecendo menos com gostos e mais com algum tipo de citação
Os comentários de linha única acabam tendo menos uso de caracteres do que os comentários de várias linhas e têm menos probabilidade de serem escapados por alguns caracteres desonestos em uma instrução regex, talvez? Eu tenderia a concordar com Ned.
fonte
Para comentar um bloco de código no Pycharm IDE:
fonte
Use o bloco de comentários ou pesquise e substitua (s / ^ / # / g) no seu editor para conseguir isso.
fonte
Resolvi isso baixando uma macro para o meu editor de texto (TextPad) que me permite destacar linhas e depois insere # no primeiro de cada linha. Uma macro semelhante remove os # 's. Alguns podem perguntar por que a multilinha é necessária, mas é útil quando você está tentando "desativar" um bloco de código para fins de depuração.
fonte
Para quem procura comentários com várias linhas em Python - o uso do formato de cotação tripla pode ter algumas consequências problemáticas, como acabei de aprender da maneira mais difícil. Considere isto:
O comentário de várias linhas será inserido na próxima sequência, atrapalhando a
'species'
chave. Melhor usar apenas#
para comentários.fonte
Como a convenção # é comum, e realmente não há nada que você possa fazer com um comentário com várias linhas que não possa com um comentário #-sign. É um acidente histórico, como a ascendência dos
/* ... */
comentários que remontam ao PL / I,fonte
Suponha que eles foram considerados desnecessários. Como é muito fácil digitar
#a comment
, os comentários com várias linhas podem consistir em muitos comentários de linha única.Por outro lado, para HTML , há uma necessidade maior de multilinhas. É mais difícil continuar digitando
<!--comments like this-->
.fonte
Isso é apenas um palpite .. mas
Por serem seqüências de caracteres, elas têm algum valor semântico (o compilador não se livra delas); portanto, faz sentido que sejam usadas como doutrinas. Eles realmente se tornam parte do AST , tornando mais fácil extrair a documentação.
fonte
Além disso, comentários multilinhas são uma merda . Lamento dizer, mas, independentemente do idioma, não os uso para nada além de fins de depuração. Digamos que você tenha um código como este:
Então você descobre que há algo em seu código que não pode ser corrigido com o depurador e, portanto, começa a depurá-lo manualmente, comentando trechos cada vez menores de código com esses comentários de várias linhas. Isso daria a função:
Isso é realmente irritante.
fonte
/*
comentários no estilo.Comentários de várias linhas usando o IDLE em:
O Mac OS X , após a seleção do código, comente um bloco de código com Ctrl+ 3e descomente usando Ctrl+ 4.
O Windows , após a seleção do código, comente um bloco de código com Ctrl+ Alt+ 3e remova o comentário usando Ctrl+ At+ 4.
fonte
Lembro-me de ler sobre um cara que colocaria seus comentários de várias linhas em uma variável de citação tripla:
Isso consome um pouco de memória, mas oferece funcionalidade de comentários em várias linhas e, além disso, a maioria dos editores destacará a sintaxe para você :)
Também é fácil comentar o código, simplesmente envolvendo-o com
e
fonte
x =
e não ocupa nenhuma memória.