@incophotos · Post #405 · 30.11.2024 г., 17:09
«вот и осень уходит куда-то вдаль. всему надлежит уйти, чтобы переродиться» #composition
Hashtags
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
Пребарај: #composition
@incophotos · Post #405 · 30.11.2024 г., 17:09
«вот и осень уходит куда-то вдаль. всему надлежит уйти, чтобы переродиться» #composition
Hashtags
@incophotos · Post #377 · 10.10.2024 г., 15:09
«осень— не время умирания природы и всего сущего... это время погружения мира в золото, по существу, в драгоценный оклад» #composition
Hashtags
@incophotos · Post #376 · 06.10.2024 г., 15:09
«богатыри, воинство русское...» Санкт-Петербург #composition
Hashtags
@incophotos · Post #344 · 26.09.2024 г., 15:09
«Любите и изучайте великое искусство музыки: оно откроет вам целый мир высоких чувств, страстей, мыслей... Вы увидите жизнь в новых тонах и красках» Дм. Шостакович #composition
Hashtags
@incophotos · Post #299 · 26.08.2024 г., 16:09
«моменты уходящего лета» #composition
Hashtags
@incophotos · Post #276 · 22.08.2024 г., 15:09
«Никогда и ни в чем так не проявляется человеческий характер, как за бильярдным столом» #composition
Hashtags
@incophotos · Post #245 · 14.08.2024 г., 18:09
«цветы сами по себе прекрасны. сколько мы помним людей, которые увидев цветы, вдруг сами расцветают? однозначно, что красота— большая загадка...» #composition
Hashtags
@incophotos · Post #242 · 13.08.2024 г., 18:09
«Кошки выбирают вас, вы никогда не владеете ими» Гэри Смит #composition
Hashtags
@incophotos · Post #197 · 04.08.2024 г., 16:09
«мир духовного прекрасен, в нём, человек обретает самого себя» #composition
Hashtags
@incophotos · Post #188 · 02.08.2024 г., 17:09
«цветы прекрасны, все мы это знаем» #composition
Hashtags
@incophotos · Post #164 · 28.07.2024 г., 18:09
«два времени— одно место» #composition
Hashtags
@incophotos · Post #139 · 23.07.2024 г., 20:09
«Почему некрасивых не любят. Кто-то должен любить некрасивых...» Иосиф Бродский #composition
Hashtags