Как разделить строку с shell-командой на отдельные аргументы в виде списка?
Если сделать просто сплит по пробелу то получим то что надо, кроме случаев со вставками текста с пробелами. Например так:
>>> '-arg "I Am Groot"'.split(' ')
['-arg', '"I', 'Am', 'Groot"']
Чтобы учитывать текст в кавычках как единый аргумент можно воспользоваться функцией shlex.split()
Кто читает мой канал давно, уже в курсе.
А что делать, если нужно обратное действие? Объединить аргументы из списка в строку и при этом добавить кавычки в аргумент с пробелами.
Конечно, если вы используете subprocess то он сам всё разрулит. Но если вам нужна именно команда одной строкой, то можно воспользоваться готовой функцией в том же subprocess.
>>> from subprocess import list2cmdline
>>> list2cmdline(['-arg', 'I Am Groot'])
'-arg "I Am Groot"'
Он также позаботится об экранировании уже имеющихся кавычек
>>> list2cmdline(['-arg', 'I Am "Groot"'])
'-arg "I Am \"Groot\""'
А вот так он может "схлопнуть" в команду JSON
>>> list2cmdline(['--json', json.dumps({'key': 'value'})])
'--json "{\"key\": \"value\"}"'
_______________
Возможно кто-то спросит, а зачем соединять аргументы в строку если subprocess сам это сделает а os.system не наш путь?
Мне как-то потребовалось отправлять команду на удалённое выполнение и в API поддерживалось указание команды только строкой. Так что всякое бывает)
#libs#basic
🚢Индекс Drewry WCI снизился на 1% на неделе 08/2026.
По данным Drewry Supply Chain Advisors, композитный World Container Index (WCI) продолжил умеренную нисходящую динамику и сократился на 1% - до $1 919 за 40-фт контейнер.
✔️ Шанхай – Роттердам: −1% до $2 109
✔️ Шанхай – Генуя: −2% до $2 895
✔️ Шанхай – Нью-Йорк: −1% до $2 782
✔️ Шанхай – Лос-Анджелес: без изменений: $2 219
В обратных направлениях динамика смешанная:
✔️ Роттердам – Шанхай: +2% до $536
✔️ Нью-Йорк – Роттердам: +1% до $957
✔️ Лос-Анджелес – Шанхай и Роттердам – Нью-Йорк: без изменений
Общий тренд указывает на стабилизацию ставок после резких колебаний 2025 года. Снижение носит ограниченный характер и отражает баланс между умеренным спросом и контролем предложения тоннажа со стороны линий. Рынок остается чувствительным к сезонным факторам и управлению мощностями.
📌Drewry основана в 1970 году в Великобритании, штаб-квартира — Лондон. Компания является независимой частной консалтинговой и аналитической группой, специализирующейся на морских перевозках и логистике; принадлежит менеджменту и частным акционерам.
#ContainerMarket#WCI#FreightRates#LinerShipping#GlobalTrade
🚢Контейнерная линия Yang Ming завершила 2025 год с прибылью $548 млн.
Тайваньский контейнерный перевозчик Yang Ming Marine Transport Corporation сообщил о чистой прибыли NT$17,1 млрд ($548 млн) по итогам 2025 финансового года. Компания демонстрирует шестой год подряд положительный финансовый результат, несмотря на волатильность рынка контейнерных перевозок.
Консолидированная выручка группы достигла NT$163,56 млрд, а прибыль на акцию составила NT$4,9. Совет директоров утвердил дивиденды в размере NT$2 на акцию.
Рынок контейнерных перевозок в течение года находился под давлением ряда факторов: усиление протекционизма и изменения торговой политики США, продолжающаяся перестройка глобальных цепочек поставок, а также геополитическая нестабильность на Ближнем Востоке и в Красном море.
Из-за угроз безопасности перевозчики продолжали обходить Суэцкий канал, направляя суда через мыс Доброй Надежды, что увеличило транзитное время и затраты на топливо.
Дополнительное давление на отрасль оказали перегруженность портов Европы и Азии, рост страховых премий и более сложные схемы перевалки грузов.
По оценке Alphaliner, рост мирового контейнерного флота в 2026 году может составить 3,8%, тогда как рост спроса оценивается примерно в 2,5%. При этом постепенное списание устаревшего тоннажа и ужесточение экологических требований могут сократить дисбаланс между спросом и предложением.
📌Yang Ming Marine Transport Corporation — одна из крупнейших контейнерных линий Азии, основана в 1972 году на Тайване. Компания управляет флотом контейнеровозов и обслуживает более 120 стран.
Крупнейшим акционером является государственная структура Taiwan International Ports Corporation, что делает компанию частично государственно контролируемой.
#YangMing#ContainerShipping#LinerShipping#MaritimeTrade#ShippingMarket