У меня есть следующий Helper.py Python скриптПайтона использования пространств имен
class Helper:
# Helper has many many classes! (AA, BB, CC, DD, ....) not just 2!
class AA:
CMD_AA = '8'
CMD_AB = '1'
class BB:
CMD_BA = '0'
CMD_BB = '1'
Я создал этот вспомогательный файл, чтобы сделать код более читаемым. Так можно это написать;
# this usage is more readable and makes sense
cmd.a = AA.CMD_AB
cmd.b = BB.CMD_BB
# instead of some thing like this where no one knows
# what 1 is interms of a or b!!
cmd.a = 1
cmd.b = 1
Вспомогательный скрипт импортируется во многие файлы python! И единственный способ, которым я знаю, как использовать его как таковой
from Helper import *
cmd.a = Helper.AA.CMD_AA # instead of cmd.a = 8
cmd.b = Helper.BB.CMD_BB # instead of cmd.b = 1
Есть ли способ избавиться от «Помощника». Я уже добавляю больше ввода текста. Так будет выглядеть;
from Helper import *
#in C++ u can use something like using namespace Helper;
cmd.a = AA.CMD_AA # instead of cmd.a = 8
cmd.b = BB.CMD_BB # instead of cmd.b = 1
Действительно, с этим предлагаемым изменением эквивалент 'using namespace Helper' будет' from Helper import * '. (Вы пробовали это раньше, Сайо, но у вас были * две вещи, названные Helper: файл модуля и класс внутри этого файла.) Импорт '*' не рекомендуется в Python так же, как 'using namespace' находится в C++. –
Спасибо, ребята, за помощь здесь. @RobKennedy, я определенно попробовал ** из импорта Helper * ** (как показано выше в вопросе), но не знал, что мне не нужно имя внешнего класса, как указано Джораном, который добавил дополнительную сложность. – sayo9394