Как и большинство разработчиков Python, я обычно держу консольное окно открытым с запущенным интерпретатором Python для проверки команд, dir()
вещей help() stuff
и т. Д.
Как и любая консоль, через некоторое время видимое отставание прошлых команд и отпечатков становится загроможденным, и иногда возникает путаница при повторном запуске одной и той же команды несколько раз. Мне интересно, если и как очистить консоль интерпретатора Python.
Я слышал о выполнении системного вызова и либо о вызове cls
в Windows или clear
в Linux, но я надеялся, что есть что-то, что я мог бы заставить интерпретатора сделать сам.
Примечание: я работаю на Windows, поэтому Ctrl+L
не работает.
Ответы:
Как вы упомянули, вы можете сделать системный вызов:
Для Windows
Для Linux лямбда становится
источник
def
? Зачем использовать,lambda
когдаdef
яснее?clear = lambda: os.system('cls') or None
здесь что-то удобное, немного более кроссплатформенное
источник
import os
os.system('cls')
Ну, вот быстрый взлом:
Или, чтобы сохранить набор текста, поместите этот файл в путь поиска Python:
Тогда вы можете сделать это из переводчика все, что вам нравится :)
источник
"\x1B[H\x1B[J"
clear
иcls
делают. Это является способ сделать это. (просто print или функция с вызовом print, конечно же, без привязки к «чистой» строке)clear
выводит директиву, которая очищает экран. Без уничтожения буфера прокрутки. В моей системе, она выводит эту управляющую последовательность:\33[3J\33[H\33[2J
. То есть:[erase scrollback]
[reset cursor position]
[erase screen]
.[erase scrollback]
Может быть опущен с помощьюclear -x
.Хотя это более старый вопрос, я подумал, что я хотел бы добавить что-то, суммирующее, как мне кажется, лучшие из других ответов, и добавить свою собственную морщинку, предложив поместить эти команды в файл и настроить PYTHONSTARTUP. переменная окружения, чтобы указать на него. Поскольку я сейчас нахожусь на Windows, это слегка предвзято, но может быть легко изменено в другом направлении.
Вот некоторые статьи, которые я нашел и которые описывают, как устанавливать переменные среды в Windows:
когда достаточно использовать sys.path.append и при изменении% PYTHONPATH%
Как управлять переменными среды в Windows XP
Настройка системных переменных и переменных среды пользователя
Как использовать глобальную систему Переменные среды в Windows
Кстати, не ставьте кавычки вокруг пути к файлу, даже если в нем есть пробелы.
В любом случае, вот мой взгляд на код для вставки (или добавления в существующий) сценарий запуска Python:
Кстати, вы также можете использовать трюк @ Triptych,
__repr__
чтобы изменить егоexit()
на justexit
(и то же самое для его псевдонимаquit
):И, наконец, здесь что - то другое , что изменяет основной интерпретатор быстрого от
>>>
до УХА +>>>
:источник
__repr__
и / или__str__
этого способа заключается в том, что если вы печатаете>>> vars()
на консоли переводчика, он выполнит все команды, определенные таким образом. Например, в моей системе он очистил экран и вышел из консоли. Мнеlocals()
иglobals()
. Простой декоратор вокруг этих функций, который удаляет имя и переназначает его после вызова функции, является возможным решением ...У вас есть несколько способов сделать это в Windows:
1. Использование сочетания клавиш:
2. Используя метод системного вызова:
3. Используя новую строку, напечатайте 100 раз:
источник
cls
будет работать только на Windows и сделает вашу программу трудной для кроссплатформенности, печать 100newlines
- это просто ... eww? И сочетание клавиш не используется в программе.Самый быстрый и простой способ, без сомнения, Ctrl+ L.
Это то же самое для OS X на терминале.
источник
Мой способ сделать это - написать такую функцию:
затем позвоните,
clear()
чтобы очистить экран. это работает на Windows, OSX, Linux, BSD ... все операционные системы.источник
os.name in ('linux','osx')
, а также, возможно, захотите добавить'posix'
.os.name == 'posix'
в обоих Python 2.7.9 и 3.4.3Вот кроссплатформенный (Windows / Linux / Mac /, вероятно, другие, которые вы можете добавить в проверке if) фрагмент кода, который я сделал, объединяя информацию, найденную в этом вопросе:
Та же идея, но с ложкой синтаксического сахара:
источник
Wiper - это круто, хорошо, что мне не нужно вводить '()' вокруг него. Вот небольшое изменение к этому
Использование довольно просто:
источник
class cls
.class Cls
чтобы бытьcls
.cls = Cls()
class cls
и тогдаcls=cls()
.Это самая простая вещь, которую вы можете сделать, и она не требует дополнительных библиотек. Он очистит экран и вернется
>>>
в верхний левый угол.источник
для пользователя Mac внутри консоли типа Python
для окон
источник
Вот окончательное решение, которое объединяет все остальные ответы . Особенности:
Вы можете использовать его как хотите:
Вы можете импортировать его как модуль:
Вы можете назвать это как скрипт:
Это действительно мультиплатформенный ; если он не может распознать вашу систему
(
ce
,nt
,dos
илиposix
) он будет падать обратно на печать пустых строк.Вы можете скачать [полный] файл здесь: https://gist.github.com/3130325
Или, если вы просто ищете код:
источник
Я не уверен, поддерживает ли это «оболочка» Windows, но в Linux:
print "\033[2J"
https://en.wikipedia.org/wiki/ANSI_escape_code#CSI_codes
На мой взгляд , призывающей
cls
сos
плохой идеей вообще. Представьте себе, если мне удастся изменить команду cls или clear в вашей системе, и вы запустите свой скрипт с правами администратора или root.источник
Я использую iTerm и родное терминальное приложение для Mac OS.
Я просто нажимаю ⌘ + k
источник
Используйте вхолостую. У него много удобных функций. Ctrl+F6, например, сбрасывает консоль. Закрытие и открытие консоли - хороший способ ее очистить.
источник
F6
не сбрасывает консоль холостого хода, однакоCTRL+F6
делает. К сожалению, это не очищает экран. D'о! (Python Win32 Idle версии 2.6.2, 2.7.1, 3.2).Я использую MINGW / BASH в Windows XP, SP3.
(вставьте это в .pythonstartup)
# Мой ctrl-l уже работал, но это может помочь кому-то еще
# оставляет подсказку в нижней части окна, хотя ...
import readline
readline.parse_and_bind ('\ Cl: clear-screen')
# Это работает в BASH, потому что у меня это тоже есть в .inputrc, но по какой-то
причине # оно сбрасывается, когда я захожу в Python
readline.parse_and_bind ('\ Cy: kill-whole-line')
Я больше не мог набирать 'exit ()' и был в восторге от трюков Мартино / Триптиха:
Я немного подправил его (воткнул в .pythonstartup)
источник
Команда ОС
clear
в Linux иcls
в Windows выводит «волшебную строку», которую вы можете просто напечатать. Чтобы получить строку, выполните команду с помощью popen и сохраните ее в переменной для дальнейшего использования:На моей машине строка есть
'\x1b[H\x1b[2J'
.источник
\x1b[H
означает «переместить курсор в верхний левый угол»,\x1b[2J
означает «очистить весь экран». 2) В Windows ANSI не распознается, поэтому, вероятно, нет какой-либо волшебной строки.Вот два хороших способа сделать это:
1.
2.
источник
Если это на Mac, то простой
cmd + k
должен сделать свое дело.источник
Самый простой способ - использовать модуль os
источник
Это должно быть кроссплатформенным, а также использовать предпочтительный,
subprocess.call
а неos.system
в соответствии сos.system
документами . Должно работать в Python> = 2.4.источник
Как насчет этого для ясного
Это так коротко, как могло бы быть!
источник
Я новичок в python (действительно действительно новый) и в одной из книг, которые я читаю, чтобы познакомиться с языком, которому они учат, как создать эту маленькую функцию, чтобы очистить консоль от видимого отставания и прошлых команд и печатных изданий:
Открыть оболочку / Создать новый документ / Создать функцию следующим образом:
Сохраните его в папке lib в вашем каталоге python (у меня C: \ Python33 \ Lib). В следующий раз, когда вам понадобится очистить консоль, просто вызовите функцию с помощью:
Это оно. PS: вы можете назвать свою функцию так, как хотите. Я видел людей, использующих «wiper», «wipe» и вариации.
источник
Я использую Spyder (Python 2.7) и для очистки консоли переводчика я использую либо
%Чисто
это заставляет командную строку идти наверх, и я не буду видеть предыдущие старые команды.
или я нажимаю «опция» в среде консоли и выбираю «Перезапустить ядро», которое удаляет все.
источник
Я мог бы опоздать на часть, но вот очень простой способ сделать это
Тип:
Так что когда вы хотите очистить экран, просто введите свой код
Лучший способ возможен! (Предоставлено: https://www.youtube.com/watch?annotation_id=annotation_3770292585&feature=iv&src_vid=bguKhMnvmb8&v=LtGEp9c6Z-U ).
источник
Просто введите
источник
Если вам не нужно делать это с помощью кода, просто нажмите CTRL + L
источник
Arch Linux (протестирован
xfce4-terminal
с Python 3):... добавлен к
~/.pythonrc
clear()
очищает экранwipe()
стирает весь терминальный буферисточник
РЕДАКТИРОВАТЬ: Я только что прочитал «Windows», это для пользователей Linux, извините.
В Баш:
Сохраните его как "whatyouwant.sh", затем выполните chmod + x:
или что-то иное, чем Python (без дела, что угодно). Это спросит вас, действительно ли вы хотите выйти, если нет, повторно запустите python (или команду, которую вы указали в качестве параметра).
Это очистит все, экран и все переменные / объект / все, что вы создали / импортировали в python.
В python просто введите exit (), когда вы хотите выйти.
источник
Хорошо, так что это гораздо менее технический ответ, но я использую плагин Python для Notepad ++, и оказывается, что вы можете просто очистить консоль вручную, щелкнув правой кнопкой мыши по ней и нажав «очистить». Надеюсь, это поможет кому-то там!
источник