Скорее всего уже слышали, что складывать строки через + это плохая практика. Падение производительности, и всё такое. Без лишних слов, давайте измерять:
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
💥DSR презентовала инновационные решения в Барселоне
Наша компания приняла участие во встрече членов Connectivity Standards Alliance (CSA) в Барселоне 10–13 ноября.
На мероприятии DSR представила две разработки:
• Ambient Sensing — технологию на основе искусственного интеллекта, которая использует радиосигналы для определения движения и изменений в окружающей среде.
• X-to-Matter Bridge — решение, позволяющее подключать устройства вне стандарта Matter к экосистеме Matter.
👨💻Руководитель направления IoT в DSR Владимир Степанченко отметил:
«Встреча членов альянса CSA — это отличная возможность обменяться опытом, обсудить технологические тренды и реальные кейсы, а также найти новые идеи для развития решений DSR».
📝DSR является членом Альянса стандартов подключения (CSA) с 2012 года и продолжает вносить вклад в развитие стандартов для умных устройств и Интернета вещей.
#DSR#CSA#IoT
🏆DSR Corporation получила 4 престижные награды от CSA
Компания с 2012 года активно участвует в работе Альянса стандартов подключения (The Connectivity Standards Alliance), внося особенно значительный вклад в развитие беспроводного протокола Zigbee. Представители DSR активно участвовали в работе Альянса - выступали модераторами и проводили дискуссии.
👉Подробнее рассказываем здесь!
🎉За выдающийся вклад в деятельность рабочих групп CSA были отмечены:
✅Евгения Пешкова, President
✅Артём Вакулин, Senior Software Embedded Engineer
✅Евгений Эксаревский, Principal Software Architect
✅Владимир Степанченко, Wireless Products Manager
Мы гордимся своим участием в разработке технологий для умных домов и IoT-устройств, таких как стек Zigbee и фреймворк zHome. Присоединяйтесь к нам, чтобы стать частью команды профессионалов! 👀
#DSRCorporation#CSA#Zigbee#IoT#DSR_team
💥 Престижные награды на CSA Member Meeting в Будапеште!
Спешим поделиться новостями!
Недавно Евгения Пешкова, президент компании DSR Corporation, и Александр Щербаков, руководитель бизнес-подразделения децентрализованных систем, получили награды Outstanding Contributor Award от Connectivity Standards Alliance!
🏆Евгения Пешкова была отмечена за вклад в развитие протокола Zigbee.
🏆Александр Щербаков был награжден за ключевую роль в развитии Matter DCL.
Гордимся тем, что профессиональное сообщество вновь признало высокий уровень экспертизы DSR на международной арене!
🗣Альянс стандартов подключения (The Connectivity Standards Alliance) — это сообщество компаний, работающих над развитием, техническими спецификациями и продвижением стандартов беспроводной связи для умных домов и IoT-устройств.
❗️DSR Corporation с 2012 года активно участвует в работе Альянса стандартов подключения (CSA) и играет важную роль в развитии беспроводного протокола Zigbee.
#CSA#награды#децентрализованные_системы#DSR_team
Приготовьтесь к глубокому анализу и захватывающим комментариям: представляем наших кастеров! 🎙
Всё начнется уже завтра! Подписывайся на наши каналы, чтобы смотреть трансляции онлайн:
📺 YT PUBG MOBILE Киберспорт
📺VK PUBG MOBILE Киберспорт
📺YT PUBG MOBILE СНГ
📺TG PUBG MOBILE
#PMSL#CSA#PMSLCSA#PMSLCSA2024#PUBGMOBILE
Команды из СНГ поднимаются все выше!
Борьба за выход в финал накаляется всё сильнее!
Ключевой день для многих команд, подключайся к 5 игровому дню 3 игровой недели, и переживай эти эмоции вместе с нами!
Завершающие схватки стадии лиги!
📺 YT PUBG MOBILE СНГ
#PMSL#CSA#PMSLCSA#PMSLFALL#PMSLCSA2024#PUBGMOBILE
Команды из СНГ поднимаются все выше и ты можешь стать свидетелем их триумфа!
Ждем тебя на трансляции 3 дня 3 недели осеннего сезона PMSL CSA 2024 в 14:00 по МСК.
📺YT PUBG MOBILE Киберспорт
📺 VK PUBG MOBILE Киберспорт
📺 YT PUBG MOBILE СНГ
📺 TG PUBG MOBILE
📺 RT PUBG MOBILE СНГ
📺 TW PUBG MOBILE RU
#PMSL#CSA#PMSLCSA#PMSLFALL#PMSLCSA2024#PUBGMOBILE
Они сражаются за право быть лучшим! Топовые игроки, 6 матчей и одна мечта - стать чемпионом!
Ждем тебя сегодня в 14:00 по МСК
📺 YT PUBG MOBILE Киберспорт
📺 VK PUBG MOBILE Киберспорт
📺 YT PUBG MOBILE СНГ
📺 TG PUBG MOBILE
📺 RT PUBG MOBILE СНГ
📺 TW PUBG MOBILE RU
#PMSL#CSA#PMSLCSA#PMSLFALL#PMSLCSA2024#PUBGMOBILE
Впереди последняя неделя отборочного этапа осеннего сезона 2024 PMSL CSA. Страсти накалены, соперничество на максимум!
Ждем тебя сегодня в 14:00 по МСК!
📺 YT PUBG MOBILE Киберспорт
📺 VK PUBG MOBILE Киберспорт
📺 YT PUBG MOBILE СНГ
📺 TG PUBG MOBILE
📺 RT PUBG MOBILE СНГ
📺 TW PUBG MOBILE RU
#PMSL#CSA#PMSLCSA#PMSLFALL#PMSLCSA2024#PUBGMOBILE
Последний день 2 недели вот-вот начнется и уже скоро мы узнаем, какая команда займет лидирующие позиции.
Ждем тебя в 14:00 по МСК на наших трансляциях.
📺 YT PUBG MOBILE Киберспорт
📺 VK PUBG MOBILE Киберспорт
📺 YT PUBG MOBILE СНГ
📺 TG PUBG MOBILE
📺 RT PUBG MOBILE СНГ
📺 TW PUBG MOBILE RU
#PMSL#CSA#PMSLCSA#PMSLFALL#PMSLCSA2024#PUBGMOBILE
Отличные новости, фанаты PUBG MOBILE!🎉
Сегодня в 14:00 по МСК возвращаются матчи PMSL CSA Fall!
Не пропусти захватывающий экшн — увидимся на трансляции! 🔥
📺 YT PUBG MOBILE Киберспорт
📺 VK PUBG MOBILE Киберспорт
📺 YT PUBG MOBILE СНГ
📺 TG PUBG MOBILE
📺 RT PUBG MOBILE СНГ
📺 TW PUBG MOBILE RU
#PMSL#CSA#PMSLCSA#PMSLFALL#PMSLCSA2024#PUBGMOBILE
Осенний сезон 2024 PMSL CSA - это событие, где титаны и легенды противостоят друг другу за право вывести свой регион в ТОП. Ждем тебя на первом дне второй недели уже сегодня в 14:00 по МСК!
📺 YT PUBG MOBILE Киберспорт
📺VK PUBG MOBILE Киберспорт
📺YT PUBG MOBILE СНГ
📺TG PUBG MOBILE
📺RUTUBE PUBG MOBILE СНГ
📺TWITCH PUBG MOBILE RU
#PMSL#CSA#PMSLCSA#PMSLFALL#PMSLCSA2024#PUBGMOBILE
⚡️Игра может измениться в мгновение ока. Кто обладает силой продолжать борьбу? 🚀
2024 PMSL CSA Fall 1 Неделя День 5 – в прямом эфире!
📺 YT PUBG MOBILE Киберспорт
📺VK PUBG MOBILE Киберспорт
📺YT PUBG MOBILE СНГ
📺TG PUBG MOBILE
#PMSL#CSA#PMSLCSA#PMSLFALL#PMSLCSA2024#PUBGMOBILE