TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #121 · 20 јул.

Регулярно требуется преобразовать какой-либо текст в максимально совместимый текст для URL, имени файла, имени объекта в каком-то софте и тд. Требования совместимости простые: в тексте должны быть только допустимые символы. Обычно это a-z, 0-9 и "_" или "-". То есть, только прописные буквы латинского алфавита и цифры (как пример). Допустим, нам нужно название статьи в блоге преобразовать в slug для добавления его в URL этой статьи. Как это лучше всего сделать? В Django по умолчанию есть готовая функция slugify для таких случаев. Но я её никогда не использую. Почему? Потому что её недостаточно! Приведём пример >>> from django.utils.text import slugify >>> slugify('This is a Title') 'this-is-a-title' Пока всё отлично >>> slugify('This is a "Title!"') 'this-is-a-title' Спец символы удалились, всё хорошо. >>> slugify('Это заголовок статьи') '' Вот и приехали 😢. Если текст не английский то буквы просто игнорируются. Можно это поправить >>> slugify('Это заголовок статьи', allow_unicode=True) 'это-заголовок-статьи' Но тогда мы не вписываемся в условие. У нас появилась кириллица в тексте. Так как я часто пишу сайты для русскоязычных пользователей эта проблема весьма актуальна. Я не использую стандартную функцию и всегда пишу свою. Оригинал я не беру в расчёт и пишу полностью свою функцию. И так, по порядку: 🔸1. Исходный текст: >>> text = 'Мой заголовок №10 😁!' Взял специально посложней со специальными символами. 🔸2. Транслит Необходимо сделать транслит всех символов в латиницу. Здесь очень выручает библиотека unidecode. Помимо простого транслита кириллицы в латиницу она умеет преобразовывать спец символы и иероглифы в текстовые аналоги. from unidecode import unidecode >>> unidecode("Ñ Σ ® µ ¶ ¼ 月 山") 'N S (r) u P 1/4 Yue Shan' Очень крутая библиотека, советую👍 В нашем случае получаем такое преобразование: >>> text = unidecode(text) >>> print(text) 'Moi zagolovok No. 10 !' Отличный транслит. Смайл просто удалился, хотя я ждал что-то вроде :). Ну и ладно, всë равно невалидные символы. А еще наш код уже поддерживает любой язык, будь то хинди или корейский. 🔸4. Фильтр символов Unidecode не занимается фильтрацией по недопустимым символам. Это мы делаем в следующем шаге через regex. Просто заменим все символы на "_" если они вне указанного диапазона. >>> text = re.sub(r'[^a-zA-Z0-9]+', '_', text) >>> print(text) 'Moi_zagolovok_No_10_' Символ "+" в паттерне выручает когда несколько недопустимых символов идут рядом. Все они заменяются на один символ "_". 🔸5. Slugify Осталось удалить лишние символы по краям и сделать нижний регистр >>> text = text.strip('_').lower() >>> print(text) 'moi_zagolovok_no_10' Получаем отличный slug! 😎 🌎 Полный код в виде функции. ______________ PS. Проверку что в строке остался хоть один допустимый символ я бы вынес в отдельную функцию. #libs#tricks#django

Резултати

Пронајдени 5 слични објави

Пребарај: #bunker

当前筛选 #bunker清除筛选
RTDocumentary

@rtdocumentary · Post #844 · 30.05.2022 г., 17:59

‘It’s better to depend on yourself than on the government for protection. What is the downside here? The downside is your family members might not survive because you made the wrong choice of being prepared. You thought that your government would take care of you.’ Kansas businessman Larry Hall is convinced of this. He sells seats in a luxury bunker that used to be a ballistic missile silo. The underground shelter looks like a five-star hotel and perhaps even surpasses it. The bunker has luxurious apartments, a saltwater swimming pool, and even a clinic with an operating room. People can live here in comfort and safety for a year. The demand for bunkers in the USA is high, and sellers are ready to supply rich clients and less wealthy buyers too. What bunkers are available in the USA, and what threats push Americans to buy them - watch the documentary Armageddon Ready to find out. #Kansas#bunker Follow: https://t.me/rtdocumentary

🚢Рост цен на бункер меняет экономику сухогрузных перевозок. Резкий рост цен на топливо становится ключевым фактором для рынка сухогрузов: доля бункера в структуре фрахта существенно увеличилась, смещая фокус с баланса спроса и предложения на издержки. По данным Drewry, цены на топливо в Сингапуре выросли более чем на 100% с февраля, что напрямую влияет на ставки. При этом на маршруте C3 фрахт вырос лишь на 2.4%, тогда как доля топлива в стоимости рейса для балкера типоразмера Сapesize превысила 85%. С операционной точки зрения, суда со скрубберами получают конкурентное преимущество за счёт использования более дешёвого топлива, тогда как "non-scrubber" тоннаж сталкивается с резким ростом затрат. Для рынка это означает переход к "cost-driven" динамике: даже при стабильных фундаментальных показателях рост бункера способен поддерживать ставки и усиливать волатильность. 📌Drewry Shipping Consultants Ltd. — основана в 1970 году в Великобритании, независимая аналитическая компания в сфере судоходства, находится в частной собственности. #DryBulk#Shipping#Bunker#Freight#Drewry

🚢Рост цен на бункер усилил интерес к альтернативным видам топлива. По оценкам отрасли, судоходство понесло дополнительные расходы на топливо в размере около €4.6 млрд только за первые три недели конфликта вокруг Ирана - €340 млн в день. Резкий рост цен на нефть продемонстрировал уязвимость отрасли к волатильности ископаемого топлива, усилив экономическое давление на судовладельцев и операторов. С операционной точки зрения, ситуация повышает привлекательность низкоуглеродных и альтернативных видов топлива как инструмента снижения затрат и рисков. Для рынка это сигнал ускорения перехода к декарбонизации, где экологические решения начинают играть не только регуляторную, но и экономическую роль. 📌Источник: отраслевые оценки и аналитика рынка бункерного топлива — расчёты основаны на данных участников рынка и мониторинге цен на энергоносители. #Shipping#Bunker#Decarbonization#Fuel#Energy

🚢Рост цен на нефть усиливает давление на круизный сектор: Carnival Corporation под наибольшим риском. Резкий рост цен на нефть на фоне конфликта на Ближнем Востоке усиливает давление на операционные расходы круизных компаний, напрямую влияя на доходность бизнеса. С начала кризиса цены на нефть выросли более чем на 35%, а котировки Brent превысили $100 за баррель, что существенно увеличивает стоимость бункера для круизных операторов. Наиболее уязвимой выглядит Carnival Corporation, которая, в отличие от конкурентов, не использует хеджирование топлива. По оценкам аналитиков, изменение цены топлива на 10% может снизить чистую прибыль компании на $145 млн в 2026 году — существенно больше, чем у Royal Caribbean ($57 млн) и Norwegian Cruise Line ($90 млн). Дополнительным фактором риска является масштаб флота: у Carnival Corporation он крупнейший среди конкурентов, что увеличивает общий объём потребления топлива. При этом компания делает ставку на снижение фактического расхода топлива, а не на финансовые инструменты защиты от ценовых колебаний. Однако в условиях волатильности рынка такой подход повышает чувствительность к внешним шокам. В целом, рост стоимости топлива становится ключевым фактором давления на прибыль круизного сегмента в 2026 году, усиливая различия в стратегиях управления рисками среди крупнейших операторов. 📌Carnival Corporation — основана в 1972 году, крупнейшая в мире круизная компания. Контроль сосредоточен у семьи Арисон (Micky Arison) через значительный пакет акций и влияние на совет директоров. Микки Арисон является председателем совета директоров с 1990 года и был генеральным директором с 1979 по 2013 год. Его отец, Тед Арисон, основал Carnival Cruise Lines. Хотя существуют крупные институциональные акционеры, такие как Vanguard Group и BlackRock, семья Арисон сохраняет значительное влияние и контроль над компанией. #Cruise#Shipping#Bunker#OilMarket#Carnival