Очистить экран в оболочке
Просто быстрый вопрос:
Как вы очищаете экран в оболочке? Я видел такие способы:
Это просто открывает команду Windows, очищает экран и закрывает, но Я хочу очистить окно оболочки
(PS: я не знаю, помогает ли это, но я использую Python версии 3.3.2)
Спасибо 🙂
18 ответов
Для OS X вы можете использовать модуль подпроцесса и вызывать ‘cls’ из оболочки:
Чтобы предотвратить отображение «0» в верхней части окна, замените 2-ю строку на:
Для Linux вы должны заменить команду cls на clear
Как насчет ярлыка CTRL + L ?
Это работает для всех оболочек, например Python, Bash, MySQL, MATLAB и др.
Эта функция работает в любой ОС (Unix, Linux, macOS и Windows)
Python 2 и Python 3
В Windows команда cls , в Unix-подобных системах это команда clear .
platform.system() возвращает имя платформы. Ex . ‘Darwin’ для macOS.
subprocess.call() выполняет системный вызов. Ex . subprocess.call([‘ls’,’-l’])
Используя windows 10 и python3.5 , я протестировал много кодов, и ничто не помогает мне больше, чем это:
Сначала определите простую функцию, эта функция будет печатать 50 новых строк (число 50 будет зависеть от того, сколько строк вы видите на экране, поэтому вы можете изменить это число)
Затем просто позвоните столько раз, сколько вы хотите или нужно
Я использую класс, который просто использует один из вышеуказанных методов за кулисами . Я заметил, что он работает в Windows и Linux . Мне нравится использовать его, хотя, потому что легче набирать clear () вместо system (‘clear’) ) или os.system (‘очистить’)
А затем, когда вы хотите очистить оболочку:
Вот несколько вариантов, которые вы можете использовать в Windows
Третий вариант, если вы находитесь в окне Python REPL:
Если вы используете терминал Linux для доступа к Python, то cntrl + l — лучшее решение для очистки экрана.
Вот как можно создать собственную команду cls или clear , которая будет работать без явного вызова какой-либо функции!
Мы воспользуемся тем, что консоль python вызывает repr() для отображения объектов на экране. Это особенно полезно, если у вас есть собственная настраиваемая оболочка python (например, с параметром -i ) и у вас есть сценарий предварительной загрузки для него. Это то, что вам нужно:
Используйте clear вместо cls , если вы используете Linux (как в команде os , так и в имени переменной)!
Теперь, если вы просто напишите cls или clear в консоли — это очистит! Даже не cls() или clear() — просто необработанная переменная. Это потому, что python вызовет repr(cls) , чтобы распечатать его, что, в свою очередь, вызовет нашу __repr__ функцию.
Давайте проверим это:
Чтобы уточнить — приведенный выше код должен быть импортирован в консоли, как это
Как очистить консоль в python
Clearing the interpreter console is an easy task in Python and depending on the platform you are using, there are various commands you can use. You can also clear the interpreter programmatically.
Clear Console in Python
To clear the console in Python, use the system call. To clear the console programmatically, you need to use the os module and use the os.system() method.
System calls to clear the console:
- For the Linux system, use the clear command works.
- For the Windows system, use the cls command to clear the console.
The os is a built-in library that comes with Python3 installations.
I am using Mac, so I need to write Linux related command.
If you run the above command in your console then it will clear the screen.
For the Windows user, use the following code.
If you don’t want to use the full function then you can use the lambda function.
Как очистить консоль интерпретатора?
Как и большинство разработчиков Python, я обычно держу окно консоли открытым с интерпретатором Python, работающим для тестирования команд, dir (), help () и т. д.
Как и любая консоль, через некоторое время видимое отставание прошлых команд и отпечатков становится загроможденным, а иногда запутанным при повторном запуске одной и той же команды несколько раз. Мне интересно, если и как очистить консоль интерпретатора Python.
Я слышал о выполнении системного вызова и вызове cls на clear в Linux, но я надеялся, что есть что-то, что я мог бы приказать самому интерпретатору сделать.
Примечание: Я работаю в Windows, поэтому Ctrl+L не работает.
30 ответов
Как вы упомянули, Вы можете сделать системный вызов:
для Linux лямбда становится
вот что-то удобное, что немного более кросс-платформенное
Ну, вот быстрый Хак:
или для сохранения набора текста поместите этот файл в путь поиска python:
тогда вы можете сделать это из интерпретатора все, что вам нравится:)
хотя это более старый вопрос, я думал, что внесу что-то суммирующее то, что я считаю лучшим из других ответов, и добавлю свою собственную морщину, предложив вам поместить эти команды в файл и установить переменную среды PYTHONSTARTUP, чтобы указать на нее. Поскольку я сейчас на Windows, это немного предвзято, но может быть легко наклонено в другом направлении.
кстати, не ставьте кавычки вокруг пути к файлу, даже если в нем есть пробелы он.
в любом случае, вот мой взгляд на код для ввода (или добавления к существующему) скрипту запуска Python:
кстати, вы также можете использовать @триптих-это __repr__ трюк, чтобы изменить exit() на exit (и то же самое для его псевдонима quit ):
наконец, вот что-то еще, что изменяет основную подсказку интерпретатора от >>> to cwd+ >>> :