История изменений
Исправление FishHook, (текущая версия) :
-
PEP8
-
Где main.py или хотя бы
__init__.py
? Почему у вас все модули исполняемые? -
Вы не знаете про ООП или вы из секты?
-
Магическое всё - магические переменные, магические индексы, магические пути. Вы cделали все, чтобы программу захардкодить по максимуму
-
Однострочники! Они всюду, в вашем коде они играют роль парадигмы, самый лучший код - код записанный в одну строку
-
Тайп хинты? Что это и зачем?
-
Локальные импорты. Вместо того, чтобы подумать над структурой пакета, мы сделаем импорты локальными, чтобы избежать циклических ссылок. Кажется, вы применили парадигму «всё есть однострочник» к структуре пакета.
-
Нелогичности и детские баги, решаемые применением стандартных практик программирование вроде контекстных менеджеров, которые вы игнорируете абсолютно
for k, v in bdB.items():
b = fitz.open()
if len(lst := v['l']) < 2:
continue
здесь вы решили открыть на всякий случай? Прозапас? А закрывать вы его не собираетесь никогда? Причем в данном случае код не будет работать вообще. Ну потому что вы по какой-то причине не любите глобальный импорт, но в этой функции вы НЕ ИМПОРТИРОВАЛИ fitz. Вы тестировали ваш код?
-
Ну да, тесты. Не слышал.
-
За имена переменных вас надо лишить прав доступа к клавиатуре на два года
-
Гениальный код
def getinfo():None
Это новое в питоне? Или что это вообще?
- Порой ваш код можно читать как загадку
def sw(doc, name):
nonlocal i
doc.save(name, garbage=2, deflate=True)
print(timing.log(i := i+1, name))
return fitz.open(), 0
При этом i нигде выше не определена. То есть вы определяете переменную нелокальную в этом скоупе в самом скоупе? Это кто вас так научил?
out1.insert_pdf(
fitz.open(Mp := f'{srcM}\\{pg}'), links=0, annots=0, show_progress=0)
rm(Mp)
мозг сломался, спасибо. Если я правильно понял, в этом месте программы вы пишете в файл, который немедленно после записи удаляете.
Короче, ну это даже на джуниора не тянет. Это же ужас.
Исходная версия FishHook, :
-
PEP8
-
Где main.py или хотя бы init.py? Почему у вас все модули исполняемые?
-
Вы не знаете про ООП или вы из секты?
-
Магическое всё - магические переменные, магические индексы, магические пути. Вы зделали все, чтобы программу захардкодить по максимуму
-
Однострочники! Они всюду, в вашем коде они играют роль парадигмы, самый лучший код - код записанный в одну строку
-
Тайп хинты? Что это и зачем?
-
Локальные импорты. Вместо того, чтобы подумать над структурой пакета, мы сделаем импорты локальными, чтобы избежать циклических ссылок. Кажется, вы применили парадигму «всё есть однострочник» к структуре пакета.
-
Нелогичности и детские баги, решаемые применением стандартных практик программирование вроде контекстных менеджеров, которые вы игнорируете абсолютно
for k, v in bdB.items():
b = fitz.open()
if len(lst := v['l']) < 2:
continue
здесь вы решили открыть на всякий случай? Прозапас? А закрывать вы его не собираетесь никогда? Причем в данном случае код не будет работать вообще. Ну потому что вы по какой-то причине не любите глобальный импорт, но в этой функции вы НЕ ИМПОРТИРОВАЛИ fitz. Вы тестировали ваш код?
-
Ну да, тесты. Не слышал.
-
За имена переменных вас надо лишить прав доступа к клавиатуре на два года
-
Гениальный код
def getinfo():None
Это новое в питоне? Или что это вообще?
- Порой ваш код можно читать как загадку
def sw(doc, name):
nonlocal i
doc.save(name, garbage=2, deflate=True)
print(timing.log(i := i+1, name))
return fitz.open(), 0
При этом i нигде выше не определена. То есть вы определяете переменную нелокальную в этом скоупе в самом скоупе? Это кто вас так научил?
out1.insert_pdf(
fitz.open(Mp := f'{srcM}\\{pg}'), links=0, annots=0, show_progress=0)
rm(Mp)
мозг сломался, спасибо. Если я правильно понял, в этом месте программы вы пишете в файл, который немедленно после записи удаляете.
Короче, ну это даже на джуниора не тянет. Это же ужас.