Передача частных атрибутов в функцию полезностиPython

Программы на Python
Ответить Пред. темаСлед. тема
Гость
 Передача частных атрибутов в функцию полезности

Сообщение Гость »


У меня есть 3 класса с операцией слияния, которая выполняет одинаковые операции с разными аргументами.

Вот скелет того, чем я сейчас занимаюсь:

класс FirstClass: защита __init__(сам): # определяем конструктор def merge(сам, другое): # объединить другого с собой merge_util(src=other, dest=self) класс ВторойКласс: защита __init__(сам): # определяем конструктор def merge(сам, другое): # объединить другого с собой merge_util(src=other, dest=self) # Третий класс определен одинаково merge_util определяется следующим образом:

def merge_util(src, dest): # объединить частные атрибуты src (массив, список и таблицу базы данных) в dest Проблема в том, что этот дизайн нарушает инкапсуляцию. Внешняя функция обращается к частным/защищенным атрибутам.

Я придумал два решения:
[*]
Определите merge_util как метод каждого класса, но тогда я буду дублировать код для каждого класса.
[*]
Используйте наследование. В остальном эти классы имеют мало общего, поэтому я не использовал наследование с самого начала и хочу этого избежать.

Есть ли другие подходы, которые я могу рассмотреть?
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • API данных Youtube — получение частных и частных плейлистов
    Anonymous » » в форуме Php
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • API данных Youtube — получение частных и частных плейлистов
    Anonymous » » в форуме Php
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • API данных Youtube — получение частных и частных плейлистов
    Anonymous » » в форуме Php
    0 Ответы
    28 Просмотры
    Последнее сообщение Anonymous
  • Пользовательская инициализация с проверкой дочернего класса pydantic.BaseModel для частных атрибутов
    Anonymous » » в форуме Python
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Пример полезности спецификатора формата G9 в C# для округления чисел с плавающей запятой?
    Anonymous » » в форуме C#
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous

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