Search
Write a publication
Pull to refresh
34
0
Илья @tapeline

User

Send message

Огонь статья, как всегда все очень подробно и интересно расписано! Будет еще интересно посмотреть на то, как поменяется инструментарий для веба на питоне в свете субинтерпретаторов

Так вы же пишете

«T-строки позволяют сделать структурный логгинг фактически бесплатным»

Ага, и получить накладные расходы на формирование шаблонов на каждое сообщение логгера, они же не ленивые!

Я и отмечаю, что т-строки частично ленивые, если так можно выразиться

Пожалуй, вы правы, кавычки там действительно лишние)

А ещё я нашел то, как т-строки начинают внедрять в psycopg3: https://github.com/psycopg/psycopg/pull/1054, и там таки тоже без кавычек)

logger.debug(f'Bla bla bla {super_heavy_object_to_format}')

Справедливости ради, они частично ленивые. Выражения считаются сразу, а вот форматирование откладывается.

Ну вот, например, сравнение с %:

PS C:\Users\Tapeline> python -m timeit "a=1; b='hello'; 'text %s text %s' % (a, b)"
1000000 loops, best of 5: 246 nsec per loop
PS C:\Users\Tapeline> python -m timeit "a=1; b='hello'; 'text '+str(a)+' text '+b"
1000000 loops, best of 5: 263 nsec per loop

На небольших размерах не существенно, но тем не менее, просадка есть

Но реализовывать его надо очень аккуратно, не с кондачка.

Абсолютно согласен. Собственно и ждем, когда умные дяди придумают как красиво и правильно все это применить. А тут пока просто примеры, что вообще можно в теории с ними сообразить. Ни один из приведенных в статье примеров не является production-ready, да, собственно, на это и не претендует

С какой-то стороны с вами согласен, но это уже скорее философия конкретного языка.

Сейчас точно не вспомню, в дискассе под каким пепом это читал, но там был комментарий от Core Developer в духе:

Необязательно, чтобы то, что добавляет PEP, было полезно всем. Python использует большое количество людей, эта фича будет полезной определенной части комьюнити.

А насчет пакетов на добавление строк на любые буквы: у нас и так есть PEP263 и порт f-строк на Python 2 с помощью него, хотя это скорее грязный хак, чем задуманная фича.

Да, а что в этом такого? До тех пор, пока меня не интересуют специфичные для числа форматы (sign, zero padding) можно и %s использовать

Более того, на discuss.python.org недавно предложили d-строки, но это вообще уже, как по мне, шиза. Суть в том, что они автоматом будут убирать кучу отступов в начале строки при, например, таком использовании:

def f():
    print(
    """
        Hello, World!
        This is a second line
    """

Как по мне, так это либо надо изначально было делать (как поступили, например, в Java), либо сейчас уже просто жить с textwrap.dedent и не плодить всякое в язык.

Да, вы правы, я не совсем правильно выразился. Исправил, чтобы не продолжать вводить в заблуждение. Спасибо!

Да, можно сделать с помощью батника, но, как я уже ответил в других комментариях, это было бы сложнее для конечных пользователей и не так интересно в реализации

итого данная задача потребовала бы около часа трудозатрат при использовании powershell

Несомненно, все эти штуки можно было бы выполнить с помощью батника/повершелл-файла, но заняло бы это времени поболее, часа 3-4, чтобы с этим всем разобраться и заставить работать.

складывается ощущение что у вас было очень много времени на стрельбу из пушки по воробьям

В целом, так и есть :). Была не только цель автоматизации, но ещё и (шило в одном месте) желание сделать что-то свое

В этом плане скорей всего проще WinGet официальную репу найти.

Как раз в этом и одна из главных проблем: сомневаюсь, что у КуМира и PascalABC.NET есть winget-репа)

Еще есть choco

Придется вручную указывать сайлент-флаги, что не слишком желательно

А еще есть Интюн и кастомные пакеты вида intunewin

Интересно, спасибо за рекомендацию, посмотрю!

Кучу лет было, чтобы обновить весь хлам

Так то оно так, но, хочу сказать, что это еще хорошо, что на большинстве стоит +- современная десятка. Нередки случаи, когда в школах стоят семерки до сих пор

Насколько я знаю, не-APPX/MSI штуки там поддерживаются так себе.

The client requires Windows 10 1809 (build 17763) or later at this time

Есть страшно старые компы (Win 10 1709, если мне не изменяет память), так что придется танцевать с бубном и здесь.

Плюс кроме установки, нужно еще делать некоторые доп. действия: копировать файлы, ярлыки (ставится все же из админского режима, ярлыки у админа, а должны быть у ученика). Не, разумеется, можно было бы все это подогнать и сделать bat / powershell скрипт, но:

  • было бы это так же удобно?

  • получилась ли бы такая интересная статья?)

P.s. ну и картинки велосипеда и костыля на КДПВ не просто так были :)

Кривые электронные дневники — наше все))

Наш региональный, например, JWT токен, логин и пароль передает в query-params...

Вдохновляющая статья, после прочтения прям хочется пойти делать что-то свое)

Особенно если учесть, что "не равно" здесь — это не привычное !=, универсальное для любой раскладки, а <>

Справедливый вопрос, я посчитал по временным меткам. Если вам так интересно, то это заняло 5 часов 46 минут.

1

Information

Rating
104-th
Location
Россия
Date of birth
Registered
Activity

Specialization

Backend Developer, Fullstack Developer
OOP
Python
Software development
Docker
English
Django
Fastapi
Git
PostgreSQL
REST