Как очистить консоль переводчика? - PullRequest
277 голосов
/ 06 февраля 2009

Как и большинство разработчиков Python, я обычно держу консольное окно открытым с запущенным интерпретатором Python для проверки команд, dir() вещи, help() stuff и т. Д.

Как и любая консоль, через некоторое время видимое отставание прошлых команд и распечаток становится загроможденным, и иногда возникает путаница при повторном запуске одной и той же команды несколько раз. Мне интересно, если и как очистить консоль интерпретатора Python.

Я слышал о выполнении системного вызова и о вызове cls в Windows или clear в Linux, но я надеялся, что есть что-то, что я мог бы заставить самого интерпретатора сделать.

Примечание: Я работаю в Windows, поэтому Ctrl+L не работает.

Ответы [ 34 ]

1 голос
/ 03 ноября 2011

Как насчет этого для ясного

- os.system('cls')

Это как можно меньше!

1 голос
/ 26 июля 2015

Если это на Mac, то простой cmd + k должен добиться цели.

1 голос
/ 25 марта 2013

Я новичок в python (действительно действительно новый) и в одной из книг, которые я читаю, знакомлюсь с языком, который они учат, как создать эту маленькую функцию, чтобы очистить консоль от видимого отставания и прошлых команд и печатает:

Открыть оболочку / Создать новый документ / Создать функцию следующим образом:

def clear():
    print('\n' * 50)

Сохраните его в папке lib в вашем каталоге python (у меня C: \ Python33 \ Lib) В следующий раз, когда вам нужно очистить консоль, просто вызовите функцию с помощью:

clear()

вот и все. PS: вы можете назвать свою функцию так, как хотите. Я видел людей, использующих «wiper», «wipe» и их варианты.

1 голос
/ 17 сентября 2013

Я нашел самый простой способ - просто закрыть окно и запустить модуль / скрипт, чтобы снова открыть оболочку.

1 голос
/ 17 августа 2016

Я могу опоздать на часть, но вот очень простой способ сделать это

Тип:

def cls():
    os.system("cls")

Чтобы очистить экран, просто введите свой код

cls()

Лучший способ возможен! (Кредит: https://www.youtube.com/watch?annotation_id=annotation_3770292585&feature=iv&src_vid=bguKhMnvmb8&v=LtGEp9c6Z-U)

0 голосов
/ 28 февраля 2019

Простой вкладыш будет:

# for windows name is nt

clear = lambda : os.system('cls' if os.name=='nt' else 'clear')

clear()

0 голосов
/ 06 февраля 2009

РЕДАКТИРОВАТЬ: я только что прочитал "windows", это для пользователей Linux, извините.


В Баш:

#!/bin/bash

while [ "0" == "0" ]; do
    clear
    $@
    while [ "$input" == "" ]; do
        read -p "Do you want to quit? (y/n): " -n 1 -e input
        if [ "$input" == "y" ]; then
            exit 1
        elif [ "$input" == "n" ]; then
            echo "Ok, keep working ;)"
        fi
    done
    input=""
done

Сохраните его как "whatyouwant.sh", chmod + x, затем запустите:

./whatyouwant.sh python

или что-то отличное от python (без дела, как угодно). Вам будет задан вопрос, действительно ли вы хотите выйти, если нет, повторно запустите python (или команду, которую вы указали в качестве параметра).

Это очистит все, экран и все переменные / объект / все, что вы создали / импортировали в python.

В python просто введите exit (), когда хотите выйти.

0 голосов
/ 19 июля 2018

Самый простой способ `>>> импорт ОС

clear = lambda: os.system ('clear') ясно () `

0 голосов
/ 20 марта 2011

Это должно быть кроссплатформенным, а также использует предпочтительный subprocess.call вместо os.system согласно os.system документы . Должно работать в Python> = 2.4.

import subprocess
import os

if os.name == 'nt':
    def clearscreen():
        subprocess.call("cls", shell=True)
        return
else:
    def clearscreen():
        subprocess.call("clear", shell=True)
        return
0 голосов
/ 17 марта 2012
>>> ' '*80*25

ОБНОВЛЕНИЕ : 80x25 вряд ли будет размером с окнами консоли, поэтому для получения реальных размеров консоли используйте функции из модуля pager . Python не предоставляет ничего похожего из основного дистрибутива.

>>> from pager import getheight
>>> '\n' * getheight()
...