Jak czytać ze Stdina w Pythonie

Jak czytać ze Stdina w Pythonie

Przyjęcie danych wejściowych od użytkownika jest ważną częścią każdego języka programowania. Wyjście wielu programów zależy od standardowego wejścia. Sposób przyjmowania danych wejściowych od użytkownika jest inny dla różnych języków programowania. W Pythonie istnieje wiele sposobów czytania ze standardowego wejścia. Funkcja wejściowa () jest najczęstszym sposobem odczytania ze standardowego wejścia, który jest wbudowaną funkcją. Sys.stdin to kolejny sposób, aby odczytać ze standardowego wprowadzania połączeń Funkcja wejściowa () wewnętrznie. Python ma inny moduł o nazwie FileInput do odczytania standardowego wejścia. Funkcja wejściowa () tego modułu można użyć do odczytania standardowej zawartości wejściowej lub odczytu z jednego lub więcej plików. Różne sposoby czytania ze standardowego wkładu w Python zostały wyjaśnione w tym samouczku.

EXAMPE-1: Odczytaj dane ze stdin za pomocą funkcji input ()

Funkcja wejściowa () jest najczęściej używaną funkcją do przyjmowania danych wejściowych od użytkownika. Utwórz plik Python z następującym skryptem, aby pobrać wejście od użytkownika, aż do naciśnięcia klawisza „N '. Tutaj powstaje nieskończona pętla za pomocą pętli While. Pierwsza funkcja wejściowa () służy do przyjmowania danych od użytkownika, a funkcja print () służy do drukowania wartości wejściowej. Następnie funkcja skryptu jest używana do poproszenia użytkownika o ponowne kontynuowanie zadania lub wyjście ze skryptu. Jeśli użytkownik naciśnie „n” lub „n”, iteracja pętli zostanie zatrzymana przez instrukcję Break; W przeciwnym razie pętla ponownie się iteruje i przyjmie kolejny wkład od użytkownika. Funkcja Upper () jest używana w skrypcie do kapitalizacji wartości podanej przez użytkownika.

# Zdefiniuj nieskończoną pętlę
Choć prawda:
# Weź dane wejściowe od użytkownika
inputval = input („wpisz dowolny tekst: \ n”)
# Wydrukuj wartość wejściową
Drukuj („Wartość wejściowa to %s” %(inputVal))
# Poproś o następną iterację
NextInput = wejście ("Czy chcesz kontynuować? (Y/n) ”)
# Zakończyć z pętli, jeśli „n” jest naciskane
Jeśli NextInput.Upper () == 'n':
przerwa
# Wydrukuj wiadomość o zakończeniu
Drukuj („Program zakończony.")

Wyjście:

Poniższe podobne dane wyjściowe pojawi się po wykonaniu powyższego skryptu. Tutaj, 'Linuxhint„dał jako pierwszą wartość wejściową i zakończyła się skryptem w celu naciśnięcia postaci„ n ”.

Przykład-2: Odczytaj dane ze stdin za pomocą SYS.stdin

Sys.stdin to kolejna opcja Pythona do przyjęcia standardowych danych wejściowych od użytkowników z terminalu. Wywołuje funkcję input () i dodaje '\N„Po przyjęciu danych wejściowych. Utwórz plik Python z następującym skryptem, aby sprawdzić użycie Sys.stdin Aby przyjąć standardowe dane wejściowe. Tutaj pętla „for-in” służy do przejęcia danych wejściowych od użytkownika nieskończone czasy, dopóki użytkownik chce zakończyć skrypt. Po wydrukowaniu wartości wejściowej, Funkcja wejściowa () służy do proszenia użytkownika o zatrzymanie skryptu lub nie. Skrypt zostanie zakończony, jeśli użytkownik naciśniey' Lub 'Y'. funkcja wyższej () jest tu również używany do kapitalizacji wartości wejściowej.

# Importuj moduł SYS
Import Sys
wydrukuj („wpisz dowolny tekst:”)
# Weź wejście za pomocą stdina
Dla wejścia w sys.stdin:
# Wydrukuj wartość wejściową
Drukuj („Wartość wejściowa to: % s ' % wejście)
# Poproś o następną iterację
NextInput = wejście („Czy chcesz zakończyć? (Y/n) ”)
# Zakończ z pętli, jeśli „y/y” jest naciskane
Jeśli NextInput.rozebrać się().Upper () == „y”:
przerwa
w przeciwnym razie:
wydrukuj („wpisz dowolny tekst:”)

Wyjście:

Poniższe podobne dane wyjściowe pojawi się po wykonaniu powyższego skryptu. Tutaj, 'Programowanie Pythona„Dał jako pierwsza wartość wejściowa i zakończyła się skryptem do naciśnięcia postaci„ y ”.

Przykład-3: Odczytaj dane ze stdin za pomocą pliku

FileInput to kolejny moduł Pythona, aby przyjąć standardowe dane wejściowe. Linie tekstu można pobrać z terminala lub pliku za pomocą FileInput.wejście(). Jeśli w tej funkcji nie zostanie dostarczona wartość argumentu, przyjmie wejście z terminalu i jeśli nazwa istniejącego pliku zostanie podana jako wartość argumentu, przyjmie wejście z pliku. Utwórz plik Pythona z następującym skryptem, aby uzyskać standardowe dane wejściowe z terminalu. Tutaj pętla „for-in” jest używana jako poprzedni przykład do przyjęcia danych wejściowych dla nieskończonych czasów, dopóki użytkownik chce zakończyć skrypt. Następnie funkcja wejściowa () służy do proszenia użytkownika o zatrzymanie skryptu lub nie. Skrypt zostanie zakończony, jeśli typy użytkowników „Zostaw” lub „rzucić” lub „rzucić”. funkcja wyższej () jest tu również używany do kapitalizacji wartości wejściowej. Funkcja paska () służy do usunięcia dodatkowych przestrzeni z obu stron wartości wejściowej.

# Importuj moduł plik FileInput
Importuj FileInput
wydrukuj („Wprowadź tekst:”)
"
Weź wejście za pomocą pliku.funkcja wejściowa () i
Naciśnij Ctrl+D, aby zakończyć przyjmowanie wartości wejściowej
"
dla InputVal w pliku.wejście():
# Zakończ z pętli, jeśli wpisano „rzucenie”
Jeśli wejście.rozebrać się().Upper () == „rzucić”:
przerwa
# Wydrukuj wartość wejściową
drukuj („Wartość wejściowa to:”, InputVal)
wydrukuj („Wprowadź tekst:”)

Wyjście:

Poniższe podobne dane wyjściowe pojawi się po wykonaniu powyższego skryptu. Tutaj „Naucz Pythona z Linuxhint.com 'dał jako pierwszą wartość wejściową i zakończyła się skryptem do wpisywania słowa: „zrezygnuj”. Musisz pamiętać jedną rzecz, przyjmując dane wejściowe z terminala za pomocą FileInput moduł. To znaczy, musisz nacisnąć ctrl+d po przyjęciu wejścia.

Musisz podać nazwę pliku jako wartość argumentu FileInput.wejście() funkcja, jeśli chcesz pobrać dane z pliku zamiast terminala.

Wniosek:

W tym samouczku pokazano trzy różne sposoby przyjmowania wkładu z terminalu, używając trzech prostych przykładów. Nie jest wymagany moduł do korzystania z Funkcja wejściowa () do przyjmowania danych wejściowych. Moduł SYS jest wymagany do importowania do użytku Sys.stdin, i moduł plik FileInput jest wymagane do importu do użycia FileInput.wejście() w skrypcie, aby przyjąć standardowe dane wejściowe. Mam nadzieję, że użytkownicy Python przyjmą standardowe dane wejściowe na podstawie ich wymagań po przeczytaniu tego samouczka.