Python Community
12.9K subscribers
1.26K photos
37 videos
15 files
740 links
Python Community RU - СНГ сообщество Python-разработчиков

Чат канала: @python_community_chat

Сотрудничество: @cyberJohnny и @Sergey_bzd

РКН реестр:
https://knd.gov.ru/license?id=67847dd98e552d6b54a511ed&registryType=bloggersPermission
Download Telegram
⚡️ Безопасно выполняем команды

Модуль shlex хранит в себе функционал для синтаксического анализа текста оболочки, которая напоминает unix.

split(s) — принимает в себя строку и «делит» её на аргументы. Также принимает необязательный параметр comments, который отвечает, обрабатывать ли комментарии.

join(arr) — выполняет обратное действие для split — соединяет все строки.

quote(s) — возвращает безопасную версию строки, позволяя избежать инъекций.

Это далеко не полный функционал библиотеки — с полным руководством вы, как обычно, можете ознакомиться на сайте документации.

#миниурок #shlex
⚡️ Безопасность превыше всего

Пользователи — главный страх программиста. И чтобы они ничего не сломали при вводе команд в терминал, воспользуйтесь shlex.

split(s) — разделяет строку на основе командного синтаксиса.

join(commands) — объединяет команды в одну строку.

quote(s) — возвращает экранированную строку s.

На самом деле, это лексический анализатор sh, поэтому предназначение его чуть шире, чем просто забота о безопасности (подробнее).

#миниурок #shlex