Скорее всего уже слышали, что складывать строки через + это плохая практика. Падение производительности, и всё такое. Без лишних слов, давайте измерять:
from timeit import timeit
def t1():
# складываем 10 строк через + из переменной
t = 'text'
for _ in range(1000):
s = t + t + t + t + t + t + t + t + t
def t2():
# склеиваем список строк через метод join
arr = ['text'] * 10
for _ in range(1000):
s = ''.join(arr)
def t3():
# складываем через + но не из переменной а непосредственно инлайн объекты
for _ in range(1000):
s = 'text' + 'text' + 'text' + ... # всего 10 раз
Теперь каждую строку склейки запустим по 10М раз
>>> timeit(t1, number=10000)
0.21951690399964718
>>> timeit(t2, number=10000)
1.4978306379998685
>>> timeit(t3, number=10000)
0.2213820789993406
Хм, а нам говорили что через "+" это плохо и медленно ))) 😁
Тут стоит учитывать, что речь идёт о склейке множества длинных строк.
Давайте изменим условия:
def t4():
t = 'text'*100
for _ in range(1000):
s = t + t + t + t + t + t + t + t + t
def t5():
arr = ['text'*100] * 10
for _ in range(1000):
s = ''.join(arr)
def t6():
for _ in range(1000):
s = 'text'*100 + 'text'*100 + ... # всего 10 раз
>>> timeit(t4, number=10000)
12.795130728000004
>>> timeit(t5, number=10000)
2.642637542999182
>>> timeit(t6, number=10000)
0.2184546610005782
Вот, уже другой разговор, сразу видна разница, в среднем в 6 раз. Но погодите, почему последний тест t6() по скорости такой же как и t3()? Ведь строки теперь в 100 раз длиннее!
Это вопросы оптимизации кода, какие простые изменения ускоряют или замедляют выполнение программы. Мы столкнулись с примером обхода обращения к переменной. Например, именно так работает директива #define в С++, во время компиляции подставляя значение переменной вместо ссылки на неё.
В Python это тоже работает, но часто ли вы сможете встретить такой способ работы со строками? К сожалению, способ почти только теоретический.
В целом, тесты показали то, что мы хотели. Делаем выводы самостоятельно.
Полный листинг 🌍
#tricks
#TCSG
🏦 Коммерсантъ назвал возможных интересантов на покупку у Тинькова TCS Group
Среди возможных интересантов на покупку доли семейного траста бизнесмена Олега Тинькова в основанной им TCS Group (35%) — Альфа-банк, Промсвязьбанк, АФК «Система» и «Яндекс», ранее претендовавший на покупку «Тинькофф банка». Долю Тинькова могут приобрести дешевле ее рыночной стоимости на конец марта в $2 млрд — за $300 млн.
19-03-26 10:00:00:МКПАО "Т-Технологии"Решения совета директоров (наблюдательного совета)
Контекст:
1. • Утвердить следующее распределение чистой прибыли МКПАО «Т-Технологии» за 2025 год: на выплату дивидендов направить 12 072 365 370 (двенадцать миллиардов семьдесят два миллиона триста шестьдесят пять тысяч триста семьдесят) руб.
2. • Выплатить дивиденды по обыкновенным акциям МКПАО «Т-Технологии» по результатам деятельности МКПАО «Т-Технологии» за 2025 год в размере 4 (четырех) рублей 50 копеек на 1 (одну) обыкновенную акцию.
3. • Выплату дивидендов в размере 4 (четырех) рублей 50 копеек на 1 (одну) обыкновенную акцию осуществить со счета МКПАО «Т-Технологии» денежными средствами номинальным держателям и являющимся профессиональными участниками рынка ценных бумаг доверительным управляющим, которые зарегистрированы в реестре акционеров МКПАО «Т-Технологии», в срок не позднее 08 июня 2026 года, другим зарегистрированным в реестре акционеров МКПАО «Т-Технологии» лицам – не позднее 30 июня 2026 года. Затраты на перечисление дивидендов любым способом осуществить за счёт МКПАО «Т-Технологии».
#дивиденды(+) #id39055#micex(+) #TCSG
29-12-25 10:00:00:МКПАО "Т-Технологии"Решения общих собраний участников (акционеров)
Контекст:
1. 1. Выплатить дивиденды по обыкновенным акциям МКПАО «Т-Технологии» по результатам деятельности МКПАО «Т-Технологии» за девять месяцев 2025 года в размере 36 (тридцать шесть) рублей на 1 (одну) обыкновенную акцию.
2. 2. Выплату дивидендов в размере 36 (тридцать шесть) рублей на 1 (одну) обыкновенную акцию осуществить со счета МКПАО «Т-Технологии» денежными средствами номинальным держателям и являющимся профессиональными участниками рынка ценных бумаг доверительным управляющим, которые зарегистрированы в реестре акционеров МКПАО «Т-Технологии», в срок не позднее 23 января 2026 года, другим зарегистрированным в реестре акционеров МКПАО «Т-Технологии» лицам – не позднее 13 февраля 2026 года. Затраты на перечисление дивидендов любым способом осуществить за счёт МКПАО «Т-Технологии».
#дивиденды(+) #id39055#micex(+) #TCSG
🟢Новости к этому часу
⚪️ Совет директоров «МД Медикал Груп» рекомендовал выплатить дивиденды за девять месяцев — по 20 ₽ на акцию — компания.
⚪️ Год к году «Т-Банк» в январе — октябре увеличил чистую прибыль по РСБУ на 36%, «Росбанк» — на 42% — группа.
⚪️ МТС Банк сохраняет планы по росту чистой прибыли в 2–2,5 раза к 2027 году — компания.
⚪️ «Ростелеком» отложил IPO РТК-ЦОД, своей облачной «дочки», — «Интерфакс».
⚪️ «Сегежа Групп» выкупила по оферте около 96% выпуска своих облигаций в объёме 8,7 млрд ₽ — компания.
⚪️ Центральный банк не исключает снижения ключевой ставки в следующем году — при отсутствии новых шоков — регулятор.
Упомянутые бумаги можно найти здесь.
#MDMG#TCSG#MBNK#RTKM#SGZH