Мне нравится соглашение Java о наличии одного открытого класса на файл, даже если иногда есть веские причины для размещения более одного открытого класса в одном файле.В моем случае у меня есть альтернативные реализации того же интерфейса.Но если бы я поместил их в отдельные файлы, у меня были бы избыточные имена в операторах импорта (или вводящие в заблуждение имена модулей):
import someConverter.SomeConverter
, тогда как someConverter
будет именем файла (и модуля) иSomeConverter
название класса.Это выглядит довольно не элегантно для меня.Поместить все альтернативные классы в один файл приведет к более осмысленному оператору импорта:
import converters.SomeConverter
Но я боюсь, что файлы станут довольно большими, если я соберу все связанные классы в один файл модуля.Какова лучшая практика Python здесь?Один класс на файл необычен?