Так что префикс подчеркивания для методов и атрибутов редко используется в Python. Но очень просто прояснить, какие методы являются частью API. Преимущество этого заключается в том, чтобы быть самоочевидным и сделать рефакторинг более безопасным, поскольку это предупреждение и дает ответственность другому программисту при доступе/перезаписи этих членов. Но примерно 80% методов и атрибутов были бы префиксом тогда, и, опять же, он редко используется в других библиотеках, выглядит уродливым и чувствует себя бесстрашным для меня.Должен ли я подчеркивать префикс всех членов, отличных от API в Python?
Я программирую на Python в течение 4 лет и почти никогда не использовал префикс подчеркивания по вышеуказанным причинам, и я не являюсь контрольным уродцем, но начинаю думать об этом по вышеуказанным причинам для более чистого описания интерфейса. PEP8 не препятствует его использованию.
Итак, что мне теперь делать, если я префикс все мои члены, не являющиеся членами API, с символами подчеркивания?
Это вопрос «стиль кодирования». Нет объективного ответа. [PEP8 содержит некоторые примеры и рекомендации] (http://www.python.org/dev/peps/pep-0008/#descriptive-naming-styles). – user2246674
Я знаю связанные с подчеркиванием части PEP8 и не мог найти никаких дальнейших намеков на это, кроме того, что это возможно *. Если это вопрос стиля кодирования, мой вопрос относится к тому, почему этот стиль кодирования настолько печален. Я много раз искал эту тему, прежде чем публиковать вопрос о SO, и везде он говорит «возможно», «полезно», но на самом деле он не так много используется. – Iodnas
Итак, вы можете делать то, что пожелаете (или старший разработчик или руководитель проекта/автор/сопровождающий). Будьте последовательны (в рамках каждого проекта) и сможете обосновать рациональные решения. – user2246674