Python-pauze voor gebruikersinvoer

Python Pause User Input



invoer() methode wordt gebruikt in python 3 voor gegevensopname van de gebruiker. Soms moet de invoertaak voor een bepaalde tijd worden gewacht of gepauzeerd voor programmeerdoeleinden. Als er bijvoorbeeld een oneindige lus in het script zit die wordt beëindigd op basis van specifieke gebruikersinvoer, wacht het in elke iteratie van de lus op de invoer van de gebruiker. Tijdmodule bevat slaap() methode die kan worden gebruikt om een ​​bepaalde tijd in python te wachten voordat invoer wordt genomen. Python bevat veel andere modules om het script te beëindigen op basis van een toetsaanslag of om de uitvoering van het script te pauzeren. Hoe python-pauze voor invoer kan worden toegepast in python-script, wordt in dit artikel getoond.

Pauzeer het script voor gebruikersinvoer om te beëindigen:

Als u wilt wachten tot de gebruiker op een toets drukt voordat u het script beëindigt, kunt u bellen met invoer() methode met een bericht aan het einde van het script. Het volgende script laat zien hoe u de beëindiging van het script kunt pauzeren en kunt wachten op de invoer van de gebruiker. De invoer() methode zal stringgegevens nemen en opslaan in de variabele, naam . Als de variabele niet leeg is, wordt er een welkomstbericht afgedrukt, anders wordt er een foutbericht afgedrukt. Vervolgens wordt een instructiebericht afgedrukt om de gebruiker te informeren dat hij op een willekeurige toets moet drukken. Er wordt een beëindigingsbericht afgedrukt wanneer de gebruiker op een toets drukt.







#!/usr/bin/env python3

# Voer een gebruikersinvoer uit
naam= invoer('Wat is jouw naam? ')
# Controleer de invoerwaarde

indien(naam! = ''):
# Print welkomstbericht als de waarde niet leeg is
afdrukken('Hallo %s, welkom op onze site'%naam)
anders:
# Leeg bericht afdrukken
afdrukken('De naam mag niet leeg zijn.')

# Wacht tot de gebruikersinvoer het programma beëindigt
invoer('Druk op een willekeurige toets om het programma te beëindigen')
# Print bye bericht
afdrukken('Tot ziens.')

Uitgang:



Nadat het script is uitgevoerd, wacht het op een tekenreeksinvoer. Hier wordt 'Fahmida' getypt als een tekenreekswaarde. Er wordt een welkomstbericht afgedrukt met de waarde en gewacht op een toetsaanslag. Na het indrukken van een willekeurige toets wordt een afscheidsbericht afgedrukt.







Pauzeer de invoer voor een bepaalde tijd

slaap() methode kan worden gebruikt om de gebruikersinvoer voor een bepaalde periode te pauzeren. In het volgende script wordt een eenvoudige toevoegingstaak gegeven voor de gebruiker. sleep() methode wordt hier gebruikt om 5 seconden op de gebruiker te wachten voordat het antwoord wordt getypt. Vervolgens, als de voorwaarde wordt gebruikt om te controleren of het antwoord goed of fout is.

#!/usr/bin/env python3

# Tijdmodule importeren
importeren tijd

# Druk het bericht af
afdrukken ('Los het probleem op om te bewijzen dat je een mens bent.')

# Print de vraag
afdrukken('Wat is de som van 10 en 40? ')

# Print wachtbericht
afdrukken('Vijf seconden wachten op berekening...')
# Wacht 2 seconden
tijd.slaap(5)

# Neem input van de gebruiker
antwoord geven= invoer('Uw antwoord: ')

# Controleer het antwoord
indien(int(antwoord geven) == vijftig):
afdrukken('Je antwoord is juist. Goed gedaan.')
anders:

afdrukken('Je hebt gefaald om te bewijzen.')

Uitgang:



Er wordt een vraag afgedrukt nadat het script is uitgevoerd en de gebruiker wordt geïnformeerd om 5 seconden te wachten om het antwoord te vinden. Hier wordt het script twee keer uitgevoerd met een goed antwoord en een fout antwoord.

Pauzeer het script met de invoer om de instructieberichten weer te geven

Soms is het nodig om het script meerdere keren te pauzeren met invoer() methode voor verschillende doeleinden. Het proces van het verstrekken van informatie aan de gebruiker met behulp van meerdere berichten wordt weergegeven in het volgende script. De stappen om een ​​python-script uit te voeren worden hier getoond door meerdere te gebruiken invoer() methode. De gebruiker moet op een willekeurige toets drukken om de volgende stappen weer te geven. De eerste invoer() methode wordt gebruikt om het bericht te laten zien en de laatste invoer() methode wordt gebruikt om het beëindigingsbericht weer te geven.

#!/usr/bin/env python3

# Druk het startbericht af
afdrukken('De stappen om een ​​pythonscript uit te voeren:')
# Wacht op een toetsaanslag
invoer('Druk op een willekeurige toets om door te gaan')
# Wacht op een toetsaanslag
invoer('Schrijf het script in een willekeurige editor.')
# Wacht op een toetsaanslag
invoer('Open de terminal door op Alt+Ctrl+T te drukken.')
# Wacht op een toetsaanslag
invoer('Type: 'python scriptnaam.py'.')
# Wacht op een toetsaanslag
invoer('Je krijgt je output als het script foutloos is.')
# Wacht op een toetsaanslag
invoer('Druk op een willekeurige toets om te beëindigen.')
# Druk het beëindigingsbericht af
afdrukken('NTot ziens.')

Uitgang:

De volgende uitvoer verschijnt na het uitvoeren van het script. De gebruiker moet vijf keer op een willekeurige toets drukken om de uitvoering van het script te voltooien.

Pauzeer het script voor de specifieke invoerwaarde

Als u sommige scripts continu wilt uitvoeren totdat de gebruiker op een specifieke toets drukt, moet u dat script binnen een oneindige lus definiëren. Deze taak wordt weergegeven in dit voorbeeld. Hier wordt een oneindige while-lus gedeclareerd die naar verwachting twee getallen nodig heeft en de optelling van die getallen in elke iteratie afdrukt. Aan het einde van de lus wacht het totdat de gebruiker op ' en ’ om de lus voort te zetten en het script opnieuw te herhalen.

#!/usr/bin/env python3

# Definieer een oneindige lus
terwijl(Waar):

# Neem twee gehele getallen
x= int(invoer('Voer een nummer in: '))
en= int(invoer('Voer een nummer in: '))

# Voeg twee nummers toe
resultaat=x + y
# Druk het sommatieresultaat af
afdrukken('De som van %d en %d is: %d'%(x,en,resultaat))

# Wacht tot de gebruikersinvoer doorgaat of de lus beëindigt
jaar= invoer('Wil je nog een keer doen? (j/n)')
# Beëindig het script als de invoerwaarde 'n' is
indien (jaar.lager() == 'N'):
pauze

Uitgang:

Het script in de while-lus wordt hier twee keer uitgevoerd. De eerste keer, na het berekenen van de sommatie, 'en' wordt ingedrukt en het script van de lus wordt opnieuw herhaald. Toen de gebruiker op . drukte 'N' dan wordt de lus beëindigd.

Conclusie:

Pauze voor de gebruikersinvoer is een veel voorkomende vereiste van elke programmeertaal. Verschillende doeleinden van pauze voor de invoer worden in dit artikel getoond met behulp van zeer eenvoudige python-voorbeelden. Ik hoop dat dit artikel de lezer zal helpen om het gebruik van pauze voor de invoer te leren kennen en indien nodig in het script toe te passen.