Chcę, aby program zatrzymał się i poczekał, aż naciśniesz dowolny klawisz, aby kontynuować, ale tryb raw_input() odchodzi, a input() zastępuje go. Tak więc mam
var = input ("Naciśnij klawisz Enter, aby kontynuować") i czeka, aż naciśniesz enter, ale następnie nie powiedzie się z SyntaxError: unexpected EOF while Parsing
. Działa to dobrze w systemie z Pythonem 3, ale jest to linux Python 2.6 i nie znoszę kodować w raw_input(), ponieważ odchodzi. Jakieś sugestie?jest sposób użycia danych wejściowych ("Naciśnij dowolny klawisz, aby kontynuować") w wersji 2.6
Odpowiedz
Użyj tego
try:
input= raw_input
except NameError:
pass
Jeśli raw_input
istnieje, to zostanie wykorzystane do wejścia. Jeśli nie istnieje, nadal istnieje input
.
Podoba mi się ten. Pracował świetnie. i jest prosty – Dag
+1 Chociaż myślę, że byłoby lepiej, gdyby istniał import "__future__" do tego, nie ma go, więc jest to najlepszy sposób –
można zrobić coś na linii ...
def myinput(prompt):
try:
return raw_input(prompt)
except NameError:
return input(prompt)
... ale NIE.
Zamiast tego po prostu użyj raw_input()
w swoim programie, a następnie użyj 2to3, aby przekonwertować plik na python 3.x. To spowoduje konwersję wszystkich raw_input()
dla Ciebie i innych rzeczy, których możesz nie zauważyć.
To jest zalecany sposób, aby zachować oprogramowanie działające zarówno na pythonie 2, jak i python 3, a także zachować zdrowie psychiczne.
, ale jeśli po prostu przenoszę plik między dwoma polami, nie znoszę mieć przekonwertować cały czas – Dag
, więc nie ma sposobu w 2.6, aby input() działał? – Dag
Nie, wykonuje on eval wejścia. Musisz zmienić sposób definiowania danych wejściowych. http://docs.python.org/library/functions.html?highlight=input#input – dcolish
import os
os.sys('pause')
Możesz używać tego modułu w systemie Windows.
- 1. Ukryj "naciśnij dowolny klawisz, aby kontynuować" w skrypcie wsadowym
- 2. "Naciśnij dowolny klawisz, aby kontynuować" wstrzymuje mój program
- 3. W jaki sposób VS kompiluje aplikacje konsoli, aby wyświetlić "Naciśnij dowolny klawisz, aby kontynuować"?
- 4. Naciśnij klawisz Enter, aby kontynuować w C
- 5. Python, naciśnij dowolny klawisz, aby wyjść
- 6. Błąd pobierania: Brak skryptu symulacji. Sprawdź, czy twoje skrypty znajdują się w plikach użytkownika/symulacjach. Naciśnij dowolny klawisz, aby kontynuować. .
- 7. Naciśnij klawisz z Java
- 8. Wywołanie zdarzenia Escape naciśnij klawisz przez jquery
- 9. Greasemonkey Javascript Naciśnij klawisz Pomoc
- 10. Naciśnij enter lub poczekaj 10 sekund, aby kontynuować.
- 11. Jak pułapkę naciśnij dwukrotnie klawisz w javascript?
- 12. Silverlight obsługi naciśnij klawisz wiele kombinacji
- 13. Programowo naciśnij klawisz "Lewo" w polu tekstowym
- 14. Naciśnij klawisz TAB, a następnie klawisz ENTER w Selenium WebDriver z Ruby
- 15. Jak czekać 20 sekund, aby użytkownik nacisnął dowolny klawisz?
- 16. Szybki sposób porównywania danych wejściowych
- 17. Zezwalaj tylko na jedną wartość na jeden klawisz naciśnij
- 18. ipython używa wersji 2.6 zamiast 2.7
- 19. Zdarzenie Fire na klawisz Enter naciśnij pole tekstowe
- 20. Wykryj, czy w C# zostanie naciśnięty dowolny klawisz (nie A, B, ale dowolny)
- 21. Jquery wybierz pole tekstowe NEXT na klawisz Enter Naciśnij przycisk
- 22. Wybierz pozycję WinForm ListView, naciśnij klawisz Delete: Kod wyzwalania
- 23. Jak dodać użytkownika administratora do Mongo w wersji 2.6?
- 24. Jak wykryć klawisz Esc Naciśnij klawisz React i jak sobie z nim radzić
- 25. sposób migracji z 2.6 do 3.1.1 opensaml
- 26. Testowanie danych wejściowych w PHPUnit
- 27. Co to jest NSFaceIDUsageDescription - Identyfikator użycia twarzy Opis Klawisz Info.plist?
- 28. Wiele danych wejściowych w JOptionPane.showInputDialog
- 29. Android - Czy możliwy jest dostęp do surowych pojemnościowych danych wejściowych?
- 30. Globalny klucz Windows Naciśnij
Proszę zaksięgować ** aktualny ** kod i ** rzeczywisty ** komunikaty o błędach, które ** faktycznie ** otrzymujesz. –
Nie powinien to być błąd składniowy - Python 2.6 obsługuje funkcję 'input'. Czy możesz nam pokazać resztę kodu? – Smashery
@masha: nadal będzie powodować błąd składni, jeśli wprowadzone wyrażenie zawiera błąd składni, na przykład po prostu naciśnij Enter – recursive