Como la mayoría de los desarrolladores de Python, normalmente mantengo una ventana de consola abierta con el intérprete de Python ejecutándose para probar comandos, dir()
cosas help() stuff
, etc.
Al igual que cualquier consola, después de un tiempo, la acumulación de comandos e impresiones anteriores se ve abarrotada y, a veces, es confusa cuando se vuelve a ejecutar el mismo comando varias veces. Me pregunto si, y cómo, limpiar la consola del intérprete de Python.
Escuché sobre hacer una llamada al sistema y llamar cls
a Windows o clear
Linux, pero esperaba que hubiera algo que pudiera ordenarle al intérprete que hiciera.
Nota: estoy ejecutando en Windows, por lo Ctrl+L
que no funciona.
Respuestas:
Como mencionó, puede hacer una llamada al sistema:
Para ventanas
Para Linux, la lambda se convierte
fuente
def
? ¿Por qué usar alambda
cuando adef
es más claro?clear = lambda: os.system('cls') or None
aquí algo práctico que es un poco más multiplataforma
fuente
import os
os.system('cls')
Bueno, aquí hay un truco rápido:
O para guardar algo de escritura, coloque este archivo en su ruta de búsqueda de Python:
Entonces puedes hacer esto desde el intérprete todo lo que quieras :)
fuente
"\x1B[H\x1B[J"
clear
ycls
hacer. Esta es la forma de hacerlo. (solo una impresión, o una función con la llamada de impresión, que no se asigna a una cadena "clara", por supuesto)clear
emite una directiva que borra la pantalla. Sin destruir el búfer de desplazamiento hacia atrás. En mi sistema, que da salida a esta secuencia de control:\33[3J\33[H\33[2J
. Es decir:[erase scrollback]
[reset cursor position]
[erase screen]
. Se[erase scrollback]
puede omitir usandoclear -x
.Aunque esta es una pregunta anterior, pensé que contribuiría con un resumen de lo que creo que era la mejor de las otras respuestas y agregaría una arruga propia al sugerir que coloque estos comandos en un archivo y configure su PYTHONSTARTUP variable de entorno para señalarlo. Dado que estoy en Windows en este momento, está ligeramente sesgado de esa manera, pero podría inclinarse fácilmente en otra dirección.
Aquí hay algunos artículos que encontré que describen cómo establecer variables de entorno en Windows:
cuándo usar sys.path.append y al modificar% PYTHONPATH% es suficiente
Cómo administrar las variables de entorno en Windows XP
Configurar el sistema y las variables de entorno del usuario
Cómo usar el sistema global Variables de entorno en Windows
Por cierto, no ponga comillas alrededor de la ruta del archivo, incluso si tiene espacios en él.
De todos modos, aquí está mi opinión sobre el código para poner (o agregar a su script de inicio de Python existente):
Por cierto, también puedes usar el
__repr__
truco de @ Triptych para cambiarexit()
a justexit
(y lo mismo para su aliasquit
):Por último, de aquí otra cosa que cambia el intérprete principal de la pronta
>>>
a cwd +>>>
:fuente
__repr__
y / o de__str__
esta manera es que si escribe>>> vars()
en la consola del intérprete, ejecutará todos los comandos así definidos. En mi sistema, por ejemplo, borró la pantalla y luego salió de la consola. Me tomó un tiempo para averiguar qué diablos estaba pasando ....locals()
yglobals()
. Un decorador simple alrededor de estas funciones que elimina el nombre y lo reasigna después de la invocación de la función es una posible solución ...Tiene varias formas de hacerlo en Windows:
1. Usando el atajo de teclado:
2. Usando el método de invocación del sistema:
3. Usando la nueva línea de impresión 100 veces:
fuente
cls
solo funcionará en Windows y dificultará que su programa sea multiplataforma, imprimir 100newlines
es solo ... ¿eww? Y un atajo de teclado no se usa en el programa.La forma más rápida y fácil sin duda es Ctrl+ L.
Esto es lo mismo para OS X en el terminal.
fuente
mi forma de hacerlo es escribir una función como esta:
luego llame
clear()
para borrar la pantalla. esto funciona en windows, osx, linux, bsd ... todos los sistemas operativos.fuente
os.name in ('linux','osx')
, y también podría querer agregar'posix'
también.os.name == 'posix'
en Python 2.7.9 y 3.4.3Aquí hay un fragmento de versión multiplataforma (Windows / Linux / Mac / Probablemente otros que puede agregar en el if check) que hice combinando la información encontrada en esta pregunta:
La misma idea pero con una cucharada de azúcar sintáctica:
fuente
El limpiador es genial, lo bueno es que no tengo que escribir '()' alrededor. Aquí hay una ligera variación
El uso es bastante simple:
fuente
class cls
.class Cls
sercls
.cls = Cls()
class cls
y luegocls=cls()
.Esto es lo más simple que puede hacer y no requiere ninguna biblioteca adicional. Borrará la pantalla y volverá
>>>
a la esquina superior izquierda.fuente
para el usuario mac dentro del tipo de consola python
para ventanas
fuente
Aquí está la solución definitiva que combina todas las demás respuestas . caracteristicas:
Puedes usarlo como quieras:
Puedes importarlo como un módulo:
Puedes llamarlo como un script:
Es verdaderamente multiplataforma ; si no puede reconocer a su sistema
(
ce
,nt
,dos
oposix
) va a caer de nuevo a la impresión de líneas en blanco.Puede descargar el archivo [completo] aquí: https://gist.github.com/3130325
O si solo está buscando el código:
fuente
No estoy seguro de si el "shell" de Windows lo admite, pero en Linux:
print "\033[2J"
https://en.wikipedia.org/wiki/ANSI_escape_code#CSI_codes
En mi opinión, llamar
cls
conos
es una mala idea en general. Imagínese si logro cambiar los cls o el comando clear en su sistema, y ejecuta su script como administrador o root.fuente
Uso iTerm y la aplicación de terminal nativa para Mac OS.
Solo presiono ⌘ + k
fuente
Usar inactivo. Tiene muchas funciones útiles. Ctrl+F6, por ejemplo, restablece la consola. Cerrar y abrir la consola son buenas maneras de limpiarla.
fuente
F6
embargo , no restablece la consola inactivaCTRL+F6
. Lamentablemente esto no borra la pantalla. D'oh! (Python Win32 Idle versiones 2.6.2, 2.7.1, 3.2).Estoy usando MINGW / BASH en Windows XP, SP3.
(pegue esto en .pythonstartup)
# Mi ctrl-l ya funcionaba, pero esto podría ayudar a alguien más
# deja un mensaje en la parte inferior de la ventana ...
import readline
readline.parse_and_bind ('\ Cl: clear-screen')
# Esto funciona en BASH porque también lo tengo en .inputrc, pero por alguna
# razón se cae cuando entro en Python
readline.parse_and_bind ('\ Cy: kill-whole-line')
No podía soportar escribir 'exit ()' más y estaba encantado con los trucos de martineau / Triptych:
Aunque lo modifiqué un poco (lo pegué en .pythonstartup)
fuente
El comando del sistema operativo
clear
en Linux ycls
en Windows genera una "cadena mágica" que puede imprimir. Para obtener la cadena, ejecute el comando con popen y guárdelo en una variable para su uso posterior:En mi máquina la cadena es
'\x1b[H\x1b[2J'
.fuente
\x1b[H
significa "mover el cursor a la esquina superior izquierda",\x1b[2J
significa "borrar toda la pantalla". 2) En Windows, ANSI no se reconoce, por lo que probablemente no haya ninguna cadena mágica.Aquí hay dos buenas maneras de hacerlo:
1)
2)
fuente
Si está en Mac, entonces un simple
cmd + k
debería hacer el truco.fuente
La forma más fácil es usar el módulo os
fuente
Esto debe ser multiplataforma, y también utiliza el preferido en
subprocess.call
lugar deos.system
según losos.system
documentos . Debería funcionar en Python> = 2.4.fuente
¿Qué tal esto para un claro
¡Eso es lo más corto posible!
fuente
Soy nuevo en Python (muy, muy nuevo) y en uno de los libros que estoy leyendo para familiarizarme con el lenguaje que enseñan cómo crear esta pequeña función para limpiar la consola de la cartera de pedidos visible y los comandos e impresiones anteriores:
Abrir shell / Crear nuevo documento / Crear función de la siguiente manera:
Guárdelo dentro de la carpeta lib en su directorio de python (el mío es C: \ Python33 \ Lib) La próxima vez que necesite borrar su consola, simplemente llame a la función con:
Eso es. PD: puedes nombrar tu función como quieras. Iv ha visto personas usando "limpiador", "borrado" y variaciones.
fuente
Estoy usando Spyder (Python 2.7) y para limpiar la consola del intérprete uso
%claro
eso obliga a la línea de comando a ir a la parte superior y no veré los comandos anteriores anteriores.
o hago clic en "opción" en el entorno de la Consola y selecciono "Reiniciar kernel" que elimina todo.
fuente
Puede que llegue tarde a la parte, pero aquí hay una manera muy fácil de hacerlo
Tipo:
Entonces, lo que quiera borrar de la pantalla simplemente escriba su código
La mejor manera posible! (Crédito: https://www.youtube.com/watch?annotation_id=annotation_3770292585&feature=iv&src_vid=bguKhMnvmb8&v=LtGEp9c6Z-U )
fuente
Solo ingresa
fuente
Si no necesita hacerlo a través del código, simplemente presione CTRL + L
fuente
Arch Linux (probado en
xfce4-terminal
Python 3):... añadido a
~/.pythonrc
clear()
borra la pantallawipe()
borra todo el búfer terminalfuente
EDITAR: Acabo de leer "Windows", esto es para usuarios de Linux, lo siento.
En bash:
Guárdelo como "whatyouwant.sh", chmod + x luego ejecute:
o algo diferente a python (inactivo, lo que sea). Esto le preguntará si realmente desea salir, de lo contrario, volverá a ejecutar python (o el comando que le dio como parámetro).
Esto borrará todo, la pantalla y todas las variables / objeto / cualquier cosa que haya creado / importado en Python.
En python, simplemente escriba exit () cuando desee salir.
fuente
De acuerdo, esta es una respuesta mucho menos técnica, pero estoy usando el complemento de Python para Notepad ++ y resulta que puedes borrar la consola manualmente haciendo clic derecho sobre ella y haciendo clic en "borrar". Espero que esto ayude a alguien por ahí!
fuente