Запуск Python и python-скрипт на компьютере
Код, написанный на языке Python, может храниться в редакторе кода, IDE или файле. И он не будет работать, если не знать, как его правильно запускать.
В этом материале рассмотрим 7 способов запуска кода, написанного на Python. Они будут работать вне зависимости от операционной системы, среды Python или местоположения кода.
Установка PyAutoGUI в Python
Процесс установки PyAutoGUI довольно прост для всех операционных систем. Однако существует несколько зависимостей для Mac и Linux, которые необходимо установить перед установкой и использованием библиотеки PyAutoGUI в программах.
Windows
Для Windows PyAutoGUI не имеет зависимостей. Просто запустите следующую команду в командной строке, и установка будет завершена.
Для Mac сначала необходимо последовательно установить модули pyobjc-core и pyobjc. Ниже приведены команды, которые необходимо последовательно запустить в терминале для успешной установки:
Linux
Для Linux единственная зависимость – это python3-xlib (для Python 3). Чтобы установить его, а затем pyautogui, запустите в своем терминале две указанные ниже команды:
Начало
Мы разберём следующие вещи, которые вы можете сделать используя PyAutoGUI.
- Предохранители
- Мышь
- Клавиатура
- Окно с сообщением
- Скриншот
- Другие возможности
Shutdown & Restart based on User’s Choice
Here is the combined version of both programs, that is shutdown and restart program in python.
This python program asks from user to enter the choice to perform the desired action. That is, choices are given to perform the things such as shutdown immediately, shutdown in given time, and so on as shown in the program given below:
Here is the snapshot of the above python program, giving user, five options to proceed, what he/she wants to do. That is, either shutdown, restart or exit from the program:
If user enters 1 or 3 as choice, then the computer gets shutdown/restart just after pressing the ENTER key. And when user enters 2 as choice, then the program further asks to enter the number of seconds to shutdown the system:
Now enter the input say 180 to shutdown the system after 180 seconds or 3 minutes.
Батник для автоматического выключения компьютера
В статье Пакетные файлы (bat, батники) Windows мы подробно рассматривали основные правила создания бат-файлов и их синтаксис. Чтобы не повторяться лишний раз, в данной публикации будем описывать только те команды и параметры, которые будем применять для создания файлов, позволяющих запланировать автоматическое выключение компьютера.
Возьмём команду, приведённую в главе выше, и сделаем из неё простенький бат-файл для выключения компьютера через 10 минут. Его содержимое будет следующим:
- echo off — скрывает вывод системных сообщений при выполнении процедуры;
- chcp 1251 — задаёт кодировку для корректного отображения кириллицы;
- echo — выводит сообщение в консоли о выключении;
- shutdown -s -f -t 600 — задаёт время выключения — 600 секунд, то есть 10 минут;
- pause — останавливает выполнение батника до нажатия любой кнопки клавиатуры.
Это очень легко, добавим функционала нашему bat-файлу. Для этого воспользуемся командой set, которая позволяет задавать пользовательские переменные. То есть, при запуске батника консоль будет спрашивать нас примерно следующее: «Через сколько секунд выключить компьютер?», а мы каждый раз можем вводить нужное значение и жать клавишу Enter . Вот как будет выглядеть код нашего батника:
- set /p sec_off= — задаём значение переменной sec_off;
- echo — выводим в уведомление заданное значение секунд;
- shutdown -s -f -t %sec_off% — выключаем компьютер спустя заданное в начале количество секунд.
Уже лучше, но можно усовершенствовать. Задавать время выключения в секундах не очень удобно. Мы будем использовать минуты (можно по аналогии настроить и часы). Однако, консоль Windows не поймёт нашего значения в минутах, поэтому для неё мы будем осуществлять перевод в секунды.
Вот как это будет выглядеть:
- set /p min_off= задаём значение переменной min_off;
- set /A sec_off= задаём значение переменной sec_off, умножая количество минут на 60, чтобы получить для консоли секунды;
- echo — выводим в уведомлениях заданные минуты;
- shutdown -s -f -t %sec_off% подставляем полученное значение в секундах.
В принципе, на этом можно остановиться. Готовые батники выключения, перезагрузки и отмены завершения работы с приведённым кодом можно скачать из прикреплённого к статье архива: auto-shutdown-reboot-bat.
Но можно ещё немного улучшить бат-файлы и сделать из трёх один, преобразовав его в крошечную программу. Этим и займёмся ниже.
С помощью программы «Выполнить»
Достаточно удобный способ выключения, чтобы открыть программу «Выполнить», вам необходимо одновременно нажать клавиши «Windows» и «R». Вводим команду «shutdown /s» и нажмите «ОК».
После этого ваш системный блок начнет выключаться.
Если к вышеописанной команде добавить параметр /t и указать промежуток времени в секундах, то компьютер начнет выключаться через указанное количество секунд.
- shutdown /s /t 0 — операционная система начнет завершать работу без задержек, моментально.
- shutdown /s /t 3600 — выключение начнется ровно через 1 час.
Помогите, я случайно выключил свой Linux компьютер или сервер!
Мы видели, как отменить команду выключения или перезапуска. Однако бывают ситуации, что вы запускаете команду выключения, когда выполняется жизненно важный процесс, особенно на удаленном сервере. Обойти это можно, установив molly-guard, который может отменить отключение, проверив определенные параметры.
Например, есть скрипт, который проверяет наличие сессий SSH. Если вы отправите команду перезагрузки, остановки или выключения molly-guard потребует имя хоста, который вы собираетесь закрыть.
Для этого установите molly-guard в терминал:
sudo apt-get install molly-guard
Поскольку molly-guard работает в фоновом режиме, он обнаружит такую команду, как poweroff, и сообщит, что был обнаружен сеанс SSH. Затем вы можете ввести имя хоста сервера для подтверждения выключения или нажать Ctrl + C для отмены. Полезно!
Эти пять способов выключения компьютера Linux из командной строки особенно полезны, поскольку их можно использовать на самом компьютере или через удаленный SSH. Поскольку эти команды очень лаконичны, они пригодны для быстрого использования — что может привести к случайной перезагрузке время от времени! К счастью, утилиты molly-guard достаточно, чтобы этого избежать.
Чтобы узнать больше о командах Linux, ознакомьтесь с нашей справочной таблицей.
Cовет: избегайте вложенных циклов
Но на деле, если не существует действительно удобных решений для выхода из вложенных циклов, тогда почему бы не постараться избегать их? Применяя вспомогательную функцию, можно избежать вложенных циклов:
Этот пример показывает, как с помощью функции itertools.product() можно обойтись без вложенности. Это простой способ вычисления декартова произведения на основе входных итераций. К несчастью, этим методом не получится избежать любых вложенных циклов. К примеру, он не сработает, если вам необходимо будет обработать бесконечные потоки данных в циклах.
Перед тем как функция itertools.product() начнет свою работу, ей необходимо получить на вход все переменные, сохраняя в памяти массивы значений для генерации результата. Таким образом, функция полезна только при конечном количестве входных данных. И всё же лучше следовать совету не прибегать к вложенным циклам, ведь это улучшает читаемость кода.