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

TGINSIGHT SIMILAR POSTS

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

Изворен канал @pythonotes · Post #191 · 14 дек.

Как разделить строку с 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

Hashtags

Резултати

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

Пребарај: #travelupdate

当前筛选 #travelupdate清除筛选

🇻🇪Апдейт по ситуации в Венесуэле, если вы вдруг переживали.. Друзья, ну что… Пока в мире кипят страсти, Венесуэла как жила, так и живёт: музыка играет, мэрия ставит ёлки, народ закупает ингредиенты на аяки, и всем в целом… ну, вы поняли 😌 Да, новости вокруг громкие — кто-то что-то «размещает» в Карибском бассейне, кто-то кому-то «угрожает», кто-то делает заявления. Но если говорить про реальность для туристов: ✈️Аэропорт работает, рейсы летают: • Венесуэльские Laser / Avior в Колумбию — стабильно; • Национальные перевозчики продолжают летать по региону и на Кубу; • Conviasa недавно вообще спокойно прилетела из Санкт-Петербурга. То есть, жизнь идёт как обычно. Никаких закрытий, никаких «паниковать», никаких экстренных мер. А что же в самой Венесуэле? 🌴 Всё как всегда: люди радуются, готовятся к Рождеству, планируют каникулы, обсуждают подарки детям, и абсолютно не обращают внимания на мировой цирк. Типичная венесуэльская философия: “Если сегодня солнце светит — значит, день удался.” Да, обидно, что некоторые европейские авиакомпании всё ещё не вернулись. В общем — прорвёмся, как всегда. А если нужны билеты, маршруты или помощь с планированием поездки — мы рядом и всегда на связи 🤍 #Venezuela#travelupdate#latam