@talks · Post #135 · 02.02.2017 г., 11:40
#Dostoevsky@talks
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
Пребарај: #dostoevsky
@talks · Post #135 · 02.02.2017 г., 11:40
#Dostoevsky@talks
Hashtags
@stickerhut · Post #123 · 23.02.2022 г., 10:45
✨@stickerhut 文豪ストレイドッグス Bungo Stray Dogs Проза бродячих псов #bungostraydogs #dostoevsky
Hashtags
@aseanrussia · Post #238 · 25.01.2023 г., 10:02
❓️Always wanted to speak the language of #Pushkin and #Dostoevsky and read masterpieces of Russian classics in the original Russian but didn't know where to begin? Dear friends! 🎓We invite you to have an exciting journey into the world of Russian language with the series of free video lessons of the #DiplomaticAcademy of the Russian MFA🇷🇺. Video course “Russian language lessons with the Diplomatic Academy” will help you to get the first communicative skills in Russian and basic knowledge of grammar what will be useful for further studying of the Russian language. 🕑Lessons are available on the website of the Diplomatic Academy. It won´t take you much time: each lesson lasts for not more than 15 minutes. The first 100 lessons of the Russian language are provided with subtitles in Russian and English for ease of study. Hope you will enjoy the course!😉 👇 🔗https://rldipacademy.ru/