Использование Python или подчеркивание (частных) имен в PythonPython

Программы на Python
Ответить
Anonymous
 Использование Python или подчеркивание (частных) имен в Python

Сообщение Anonymous »

Мне хотелось бы знать, какой способ написания кода Python будет более питоничным с использованием _ в модулях, классах и методах.
Пример 1:

Код: Выделить всё

import threading as _threading

class Thread(_threading.Thread):
pass
по сравнению с

Код: Выделить всё

from threading import Thread

class MyThread(Thread):
pass
на уровне модуля имеет ли смысл вводить частные переменные в таких методах:

Код: Выделить всё

def my_module_method():
_throw = foo + bar
return _throw
по сравнению с

Код: Выделить всё

def my_module_method():
throw = foo + bar
return throw
Правильно ли я предполагаю, что лучшим использованием частного имени будет запретить экземпляру класса использовать какой-либо частный временный метод, например:

Код: Выделить всё

class MyClass(object):
_my_internal = 0
def _do_not_use_me()
pass
чтобы конечный пользователь этого класса знал, что не следует использовать эти методы непосредственно в:

Код: Выделить всё

foo = MyClass._do_not_use_me()
bar = MyClass._my_internal
Мы будем очень признательны за любые другие советы по общему использованию частных имен.

Подробнее здесь: https://stackoverflow.com/questions/686 ... -in-python
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»