Скорее всего уже слышали, что складывать строки через + это плохая практика. Падение производительности, и всё такое. Без лишних слов, давайте измерять:
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
🇮🇳🛳Переосмысление Индией концепции «голубых вод»
Новая морская доктрина Индии «МАХАСАГАР» знаменует собой стратегический поворот от континентальной к глобальной морской державе, направленный на обеспечение безопасности торговых путей, противодействие китайскому влиянию и использование потенциала «голубой экономики» стран Глобального Юга
✍️Автор:Пранай Кумар Шоме
Научный аналитик, кандидат наук в Центральном университете Махатмы Ганди, Бихар, Индия
➡️Индия запустила доктрину «МАХАСАГАР» (Взаимное и целостное развитие для безопасности и роста в разных регионах), что сигнализирует о решительном переходе от исторически континентальной стратегической направленности к глобальному морскому видению. Этот шаг признает, что более 95% объема торговли Индии проходит через Индийский океан, что делает безопасность морских путей и влияние первостепенными.
➡️Доктрина выходит за рамки региональной стратегии SAGAR, позиционируя Индию как «надежного партнера по безопасности» и экономического партнера в Индийском океане, Восточной Африке, Латинской Америке и более широком Индо-Тихоокеанском регионе, включая спорное Южно-Китайское море.
Для любой великой державы поддержание высокого уровня влияния в морской сфере в целом и контроль над важными торговыми путями в частности является основной мотивацией.
➡️В геополитическом плане MAHASAGAR является прямым ответом на расширяющуюся инициативу Китая «Один пояс, один путь» и стратегию «Жемчужная нить». Она направлена на обеспечение открытости и инклюзивности важнейших морских путей сообщения, уравновешивая китайское влияние путем предложения альтернативной модели партнерства, ориентированной на взаимное экономическое развитие, сотрудничество в области безопасности и реагирование на стихийные бедствия, а не исключительно на инфраструктурные проекты, финансируемые за счет заемных средств.
🟦В экономическом плане доктрина направлена на освоение «голубой экономики» — развитие морской энергетики, морских биотехнологий, рыболовства и туризма — одновременно обеспечивая доступ к важнейшим минералам морского дна, таким как полиметаллические конкреции. Чтобы выйти за рамки риторики и добиться существенного эффекта, Индия должна разработать конкретную национальную стратегию морской безопасности, которая четко определит роли, заинтересованные стороны и институциональную координацию, превратив это амбициозное видение в действенную политику.
#MAHASAGAR
#Геополитика#Геоэкономика#ГлобальныйЮг#Индия#Экономическоесотрудничество
ЧИТАТЬ ДАЛЕЕ
🇷🇺Буст
✅@NewEasternOutlook_RU
🇮🇳🛳L'Inde repense le concept d'eau bleue
La nouvelle doctrine maritime MAHASAGAR de l'Inde marque un pivot stratégique d'une puissance continentale à une puissance maritime mondiale, visant à sécuriser les routes commerciales, à contrer l'influence chinoise et à exploiter l'économie bleue dans le Sud global
✍️Auteur :Pranay Kumar Shome
Analyste de recherche et candidat au doctorat à l'Université centrale Mahatma Gandhi, Bihar, Inde
➡️L'Inde a lancé la doctrine MAHASAGAR (Avancement mutuel et holistique pour la sécurité et la croissance dans les régions), marquant un changement décisif de son orientation stratégique historiquement continentale vers une vision maritime mondiale. Cette démarche reconnaît que plus de 95% du commerce indien en volume transite par l'océan Indien, rendant la sécurité des voies maritimes et l'influence primordiales.
➡️La doctrine va au-delà du cadre régional SAGAR, positionnant l'Inde comme un "partenaire de sécurité fiable" et un collaborateur économique à travers l'océan Indien, l'Afrique de l'Est, l'Amérique latine et l'Indo-Pacifique plus large, y compris la mer de Chine méridionale contestée.
Pour toute grande puissance, maintenir un degré élevé d'influence dans le domaine maritime en général et le contrôle de routes commerciales importantes en particulier est la motivation opérationnelle
➡️Sur le plan géopolitique, MAHASAGAR est une réponse directe à l'Initiative Ceinture et Route en expansion de la Chine et à la stratégie "String of Pearls". Elle vise à garantir que les routes maritimes de communication (SLOC) critiques restent ouvertes et inclusives, en contrebalançant l'influence chinoise en proposant un modèle de partenariat alternatif axé sur le développement économique mutuel, la coopération en matière de sécurité et la réponse aux catastrophes, plutôt que sur des projets d'infrastructure purement axés sur la dette.
🟦Sur le plan économique, la doctrine cherche à exploiter l' "économie bleue"—en développant l'énergie offshore, la biotechnologie marine, la pêche et le tourisme—tout en assurant l'accès aux minéraux des fonds marins critiques comme les nodules polymétalliques. Pour dépasser la rhétorique et obtenir un impact substantiel, l'Inde doit maintenant formuler une stratégie nationale de sécurité maritime concrète qui clarifie les rôles, les parties prenantes et la coordination institutionnelle, traduisant cette vision ambitieuse en politique actionnable.
#MAHASAGAR#Economiccooperation#geoeconomics#Geopolitics#India#TheGlobalSouth
LIRE PLUS (ENG)
(VPN requis pour l'accès à 🇪🇺l'UE)
⭐️Boostez-nous
✅@NewEasternOutlookFR