Остановите копию — занимать одну и ту же команду каждый раз, когда вы запускаете Python. Это руководство будет научить практическим способам запуска сценариев Python независимо от того, какую операционную систему, редактор или автоматический планировщик вы используете.
Что такое «сценарий питона»?
Это любой простой текстовый файл с кодом Python внутри, обычно сохраняемый с расширением.py.
Для этого урока мы собираемся использовать скрипт генератора паролей. Этот сценарий также включает в себя случайный модуль Python. Модуль Python — это файл, содержащий код Python (функции, классы, переменные), который можно импортировать и использовать повторно в других программах Python. Модуль Python предназначен для импорта и повторного использования, в то время как сценарий предназначен для выполнения непосредственно для выполнения конкретной задачи.
Запустите скрипт из командной строки macOS и Linux
Откройте терминал и введите следующую команду для запуска скрипта генератора пароля:
Если вы хотите сделать его исполняемым файлом и запустить его как приложение, выполните следующие действия:
2. Запустите сценарий напрямую:
Windows 10/11
Python устанавливает пусковую установку под названием PY. Используйте его для запуска вашего сценария:
В качестве альтернативы, если Python установлен на вашем пути, вы можете запустить следующее:
Если вы получаете ошибки, такие как «Python», не распознаются, повторно установите установщик и проверьте «Добавить Python в путь», или просто используйте пусковую установку PY.
Проходящие аргументы командной строки
Передача аргументов командной строки позволяет пользователям предоставлять ввод без изменения исходного кода. Это продвигает несколько принципов Pythonic, делая ваш сценарий более гибким и модульным. Передача аргументов командной строки позволяет одному сценарию эффективно выполнять различные задачи или настройки.
Вам нужно будет обновить исходный файл кода генератора пароля, чтобы включить модуль Argparse. В дополнение к импорту Argparse, мы собираемся добавить функцию для анализа ввода и передать аргумент длины в generate_password () в блоке __main__.
Если вы запускаете скрипт на MacOS или Linux, вам также нужно добавить Shebang (например, #!/Usr/bin/env python3) в верхнюю часть вашего файла. Эта строка сообщает операционной системе, какой интерпретатор использовать при напряжении выполнения сценария.
Теперь мы готовы к работе!
Macos / linux
2. Запустите это с аргументом:
Окна
Windows не использует Shebang (#!/Usr/bin/env python3), как это делают системы Unix. Но вы все равно можете запустить сценарий из командной строки или PowerShell, используя Python или Python3.
Откройте командную строку (или PowerShell):
Нажмите Win + R, введите CMD или PowerShell и нажмите Enter.
2. Запустите скрипт сейчас с помощью пользовательской длины:
Запустите сценарий Python в IDE
Запуск сценария в IDE дает вам полезные инструменты, такие как автозаполнение, отладка и визуальная обратная связь. Это отлично подходит для развития. Это более полный вариант, чем использование командной строки, особенно для более сложных проектов.
Запуск Python в Pycharm
Pycharm — это мощный Python IDE с интеллектуальным редактированием, отладкой и инструментами проекта, которые оптимизируют разработку. Он превосходит завершение кода, отладку и интеграцию с управлением версиями и виртуальными средами.
Visual Studio Code
Код VS быстрее, легче и более гибкий, чем Pycharm — идеально подходит для многоязычных проектов и пользовательских настроек.
Jupytet novov / jupyterlab
Nopbook Jupyter — это не традиционный IDE, такой как VS -код или Pycharm. Он выделяется для интерактивного, на основе ячеек и визуализации в реальном времени, все в одном документе. Юпитер отлично подходит для анализа данных, но также запускает регулярные сценарии Python.
Тормы Jupyter — мой предпочтительный способ создания учебных пособий. Я использую VS -код, когда создаю приложения.
Есть много способов запустить Python в Юпитере, но вот один пример. Этот пример фокусируется на создании и заведении кода в ноутбуке Jupyter. Он не использует никаких файлов, которые сохраняются в другом месте.
Нам нужно изменить наш код password_generator.py, прежде чем он работает в Юпитере.
После нажатия кнопки «Запустить» (▶ в левом верхнем углу) сценарий запрашивает длину пароля. Введите номер, нажмите Enter, и он сгенерирует ваш пароль.
Запланируйте и запустите сценарии автоматически macOS и Linux: Cron
Крон отлично подходит для повторяющихся задач и для запуска сценариев в определенное время.
2. Добавьте строку, чтобы запустить свой сценарий ежедневно в 3:00:
Вы можете войти в систему вывода с помощью следующего кода:
Windows: планировщик задач
Linux Servers: Systemd Timers
Systemd — современная альтернатива Cron, которая гарантирует, что сценарии работают даже после перезагрузки. Следующее запускает сценарий ежедневно в 3 часа утра
Создайте новый файл таймера:
Давать возможность:
Быстрое устранение неполадок
Ошибки являются частью процесса. Если вы столкнетесь с ошибками при выполнении своего сценария Python, вот несколько быстрых советов по устранению неполадок, которые помогут вам вернуться в нужное русло.
Modulenotfounderror
Убедитесь, что ваша виртуальная среда активирована:
- Unix: Source Venv/Bin/Activate
- Windows :. \ venv \ Scripts \ Activate
Разрешение отказано (UNIX)
Сделайте исполняемый сценарий с помощью chmod +x script.py или запустите с помощью python3 script.py.
Путаница пута
Используйте абсолютные пути (/usr/bin/python3, c: \ projects \ phorswer_generator.py), чтобы избежать проблем с окружающей средой.
Лучшие практики, когда вам удобно
Вот несколько советов по лучшим практикам, которые вы можете реализовать, когда вы плавно запускаете сценарии.
Изолировать зависимости, используя виртуальную среду.
Заморозить зависимости, чтобы заблокировать версии.
Избегайте непреднамеренного исполнения при импорте путем охраны точки входа.
Скрипты пакета с Pyinstaller для систем без Python.
Заключение
Теперь, когда вы знаете, как запустить сценарии Python в MacOS, Windows и Linux, у вас есть все, что вам нужно, чтобы перенести ваши идеи от концепции до выполнения независимо от платформы.
Trending Stories youtube.com/thenewstack Tech движется быстро, не пропустите эпизод. Подпишитесь на наш канал YouTube, чтобы транслировать все наши подкасты, интервью, демонстрации и многое другое. Группа подпишитесь с эскизом. Джессика Вахтел — писатель по маркетингу разработчиков в InfluxData, где она создает контент, который помогает сделать данные о мире временных рядов более понятными и доступными. Джессика имеет опыт работы в разработке программного обеспечения и технической журналистике. Подробнее от Джессики Вахтел