Enige manier om het IDLE-venster van Python te wissen?

Ik weet dat er een soortgelijk onderwerp is over de python-console, maar ik weet niet of ze hetzelfde zijn. Ik heb system(“clear”) geprobeerd en het werkte hier niet.

Hoe wis ik het IDLE-venster van Python?


Antwoord 1, autoriteit 100%

De “cls” en “clear” zijn commando’s die een terminal wissen (dwz een DOS-prompt of terminalvenster). Vanaf je screenshot gebruik je de shell binnen IDLE, die niet door dergelijke dingen wordt beïnvloed. Helaas denk ik niet dat er een manier is om het scherm in IDLE te wissen. Het beste wat u kunt doen, is door het scherm een groot aantal regels naar beneden te scrollen, bijvoorbeeld:

print ("\n" * 100)

Hoewel je dit in een functie zou kunnen zetten:

def cls(): print ("\n" * 100)

En noem het dan indien nodig als cls()


Antwoord 2, autoriteit 92%

os.system('clear')werkt op linux. Als je Windows gebruikt, probeer dan in plaats daarvan os.system('CLS').

U moet os eerst als volgt importeren:

import os

Antwoord 3, autoriteit 45%

De meeste antwoorden, hier is het wissen van het DOS-promptscherm, met opruimcommando’s, wat niet de vraag is. Andere antwoorden hier waren het afdrukken van blanco regels om een zuiverend effect van het scherm te tonen.

Het eenvoudigste antwoord op deze vraag is

Het is niet mogelijk om de IDLE-shell van Python te wissen zonder enige externe module-integratie. Als je echt een lege pure verse shell wilt hebben, sluit dan gewoon de vorige shell en voer het opnieuw uit


Antwoord 4, autoriteit 43%

ctrl+ Lwist het scherm op Ubuntu Linux.


Antwoord 5, autoriteit 22%

Een extensie voor het wissen van de shell is te vinden in Issue6143als een “functieverzoek”. Deze extensie is inbegrepen bij IdleX.


Antwoord 6, autoriteit 17%

>>> import os
>>>def cls():
...    os.system("clear")
...
>>>cls()

Dat is perfect. Ook geen ‘0’ afgedrukt.


Antwoord 7, autoriteit 10%

Er lijkt geen manier te zijn om de IDLE ‘shell’-buffer te wissen.


Antwoord 8, autoriteit 6%

De manier om commando’s uit te voeren in Python 2.4+ is door de subprocess-module te gebruiken. Je kunt het op dezelfde manier gebruiken als os.system.

import subprocess
subprocess.call("clear") # linux/mac
subprocess.call("cls", shell=True) # windows

Als je dit in de python-console uitvoert, moet je iets doen om de retourwaarde te verbergen (voor os.systemof subprocess.call), zoals het toewijzen aan een variabele:

cls = subprocess.call("cls", shell=True)

Antwoord 9, autoriteit 5%

Bestand -> Nieuw venster

In het nieuwe venster**

Voer -> Python-shell

Het probleem met deze methode is dat alle dingen die je hebt gedefinieerd, zoals variabelen, worden gewist.

U kunt ook gewoon de opdrachtprompt gebruiken.

open de opdrachtprompt

typ “cd c:\python27”

typ “python example.py” , je moet dit bewerken met IDLE als het niet in de interactieve modus is. Als je in de python-shell zit, file -> nieuw venster.

Houd er rekening mee dat voorbeeld.py zich in dezelfde map moet bevinden als C:\python27, of welke map dan ook waarop python is geïnstalleerd.

Vervolgens druk je vanaf hier gewoon op de pijl-omhoog-toets op je toetsenbord. Je bewerkt gewoon example.py, gebruikt CTRL + S, gaat dan terug naar de opdrachtprompt, drukt op de pijl-omhoog en drukt op enter.

Als de opdrachtprompt te druk wordt, typt u gewoon “clr”

Het “clr”-commando werkt alleen met de opdrachtprompt, het werkt niet met IDLE.


Antwoord 10, autoriteit 5%

Ik gebruik graag:

import os
clear = lambda : os.system('cls') # or clear for Linux
clear()

Antwoord 11, autoriteit 5%

command + L” voor MAC OS X.

control + L” voor Ubuntu

Wis de laatste regel van de interactieve sessie


Antwoord 12, autoriteit 5%

Het lijkt erop dat er geen directe manier is om de IDLE-console te wissen.

Een manier waarop ik dit doe, is het gebruik van exit() als het laatste commando in mijn python-script (.py). Wanneer ik het script uitvoer, opent het altijd een nieuwe console en vraagt het me voordat ik het afsluit.

Upside: Console wordt elke keer dat het script wordt uitgevoerd vers gestart.
Nadeel: de console wordt elke keer dat het script wordt uitgevoerd opnieuw gestart.


Antwoord 13, autoriteit 3%

Zoals mark.ribau al zei, lijkt het erop dat er geen manier is om de Tekst-widget in inactiviteit te wissen. Men moet de module EditorWindow.pybewerken en een methode en een menu-item toevoegen aan de klasse EditorWindow die zoiets doet als:

self.text.tag_remove("sel", "1.0", "end")
self.text.delete("1.0", "end")

En misschien wat meer tagmanagement waarvan ik me niet bewust ben.


Antwoord 14, Autoriteit 3%

Het lijkt erop dat het onmogelijk is om het te doen zonder externe bibliotheek.

Een alternatieve manier als u Windows gebruikt en niet wilt openen en sluit de schaal telkens wanneer u het wilt wissen door Windows-opdrachtprompt te gebruiken.

  • Type pythonen druk op ENTER om Windows-opdrachtprompt naar Python-inactief te draaien (zorg ervoor dat Python is geïnstalleerd).

  • TYPE quit()en druk op ENTER om het terug te keren naar de Windows-opdrachtprompt.

  • Type clsen druk op Enter om de opdrachtprompt / Windows Shell te wissen.


Antwoord 15, Autoriteit 2%

Geen van deze oplossingen werkte voor mij op Windows 7 en binnen inactief. Opgewonden met PowerShell, met Python binnen het en het verlaten om “CLS” in Powershell te bellen om het raam te wissen.

Nadelen: veronderstelt Python bevindt zich al in het padvariabele. Ook maakt dit je Python-variabelen leeg (hoewel dit dus opnieuw wordt opgestart).

PROS: Behoudt elke aangepaste raam die u hebt gedaan (kleur, lettergrootte).


Antwoord 16

De beste manier om het op Windows te doen, gebruikt de opdrachtprompt ‘CMD’ en Access Python-directory De opdrachtprompt is te vinden op het startmenu & GT; RUN & GT; CMD

C:\>cd Python27
C:\Python27>python.exe
Python 2.7.3 (default, Apr 10 2012, 23:24:47) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>>import os
>>>os.system('cls')  #This will clear the screen and return the value 0

Antwoord 17

U kunt een autohotkey script maken.

Om Ctrl-R in te stellen op een sneltoets om de schaal te wissen:

^r::SendInput print '\n' * 50 {Enter}

Installeer gewoon AutoHotKey, plaats het bovenstaande in een bestand met de naam idle_clear.ahk, voer het bestand uit en uw sneltoets is actief.


Antwoord 18

Ik zou je aanraden om Thonny IDEvoor Python te gebruiken. De shell heeft de optie “Clear Shell” en u kunt ook variabelen volgen die in een aparte lijst zijn gemaakt. Het debuggen is erg goed, zelfs in vergelijking met moderne IDE’s. Je kunt ook code in een python-bestand schrijven, samen met toegang tot shell op dezelfde plaats.

En het is licht van gewicht!


Antwoord 19

gebruik dit

for num in range(1,100):
    print("\n")

Antwoord 20

voor Linux:
Maak een functie als zodanig…

def clear():
    os.system('clear')

en als je dan de onderkant van de Python IDLE hebt bereikt, kun je gewoon

clear()

🙂

voor vensters:

Maak een functie als zodanig…

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

en als je dan de onderkant van de Python IDLE hebt bereikt, kun je gewoon

cls()

🙂


Antwoord 21

Dit werkt voor mij in Windows:

print chr(12)


Antwoord 22

Als je de terminal gebruikt (ik gebruik ubuntu), gebruik dan gewoon de combinatie van CTRL+lvan het toetsenbord om het python-script te wissen, zelfs als het wordt gewist het terminalscript…


Antwoord 23

Het is niet nodig om uw eigen functie te schrijven om dit te doen! Python heeft een ingebouwde duidelijke functie.

Typ het volgende in de opdrachtprompt:

shell.clear()

Als u IPythonvoor Windows gebruikt, is het

cls()

Other episodes