No Python, as exceções são classes e são caracterizadas como tais. Por exemplo: OSError.
No entanto, existem algumas exceções, como as do módulo de soquete , nomeadas em minúsculas. Por exemplo: socket.timeout, socket.error.
Por que é isso?
2
Não tenho certeza se isso é responsável, mas é muito interessante.
—
Jared Smith
Autores diferentes? Não existem convenções de nomenclatura estabelecidas?
—
Johnny Mopp
A questão pode se resumir a algo semelhante a "Por que algumas funções do Python
—
ggorlen
camelCase?" Algumas bibliotecas têm um estilo ligeiramente inconsistente que evoluiu com o tempo. Eu acho que o PEP-8 fala disso e foi uma tentativa de "colocar todos na mesma página", que foi parcialmente bem-sucedida.
Observe que as perguntas "por que" sobre o design da linguagem são geralmente consideradas fora de tópico aqui , pois não são "práticas" - no sentido de algo cuja resposta permita corrigir um erro ou alterar a maneira como você pratica a prática de programação. (Consulte os critérios "práticos, responsáveis" no quarto ponto de stackoverflow.com/help/on-topic , que é AND em outras condições).
—
Charles Duffy
Não concordo neste caso específico, @CharlesDuffy. Se eu não tivesse experiência com Python, poderia pensar que havia algo especial neles que significa que eu deveria lidar com eles de uma certa maneira ou que eles eram sutilmente diferentes de alguma outra maneira que provavelmente me morderia. Eu acho que é razoável perguntar por que eles não são como os outros.
—
Kirk Strauser