Odczyt N wierszy i przypadki brzegowe
Iterowanie po wierszach i obsługa końcowych białych znaków
Odczyt N wierszy i przypadki brzegowe to bezpłatna lekcja Coding Interview Prep na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Coding Interview Prep, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Coding Interview Prep zawiera 4 lekcji w sumie.
Wzorzec: najpierw N, potem wiersze
Klasyczny format danych wejściowych podaje najpierw liczbę N, a następnie N wierszy danych. Należy odczytać tę liczbę, a potem wykonać pętlę dokładnie N razy.
Najpierw odczytaj liczbę
Należy pobrać pierwszy wiersz i zamienić go na liczbę całkowitą za pomocą int(). Ta liczba określa, ile kolejnych wierszy trzeba odczytać.
n = int(input())Wykonaj pętlę dokładnie N razy
Należy użyć range(n), aby odczytać dokładnie tyle wierszy, ile obiecuje treść zadania — ani więcej, ani mniej.
for _ in range(n):
line = input()Zbieraj wiersze na liście
Wiersze należy gromadzić na bieżąco, aby można je było przetworzyć później. Wyrażenie listowe pozwala zrobić to w jednym uporządkowanym wierszu.
rows = [input() for _ in range(n)]Usuń końcowe białe znaki
Ukryte spacje lub znaki nowego wiersza mogą powodować niezgodność podczas porównań. Przed użyciem każdej linii należy wywołać .strip(), aby ją oczyścić.
line = input().strip()Zwracaj uwagę na puste wiersze
Pusta linia po usunięciu białych znaków staje się wartością "". Należy zdecydować, czy ją pominąć, czy traktować jako istotne dane.
Czytaj do EOF
Niektóre zadania nie podają liczby elementów. Należy bezpośrednio iterować po sys.stdin, aby odczytać każdą linię aż do końca wejścia.
for line in sys.stdin:
process(line)Obsłuż przypadek zerowy
Gdy N wynosi zero, pętla powinna po prostu nic nie robić. Należy upewnić się, że pozostała część kodu nadal wypisuje prawidłową odpowiedź.
Unikaj odczytów off-by-one
Odczytanie o jednej linii za mało lub za dużo to częsta pułapka. Liczbę iteracji należy dopasować do N dokładnie, aby zachować synchronizację.
Tokeny mogą zajmować wiele wierszy
Jeśli wszystkie dane zostaną wczytane za pomocą read().split(), podziały wierszy znikną. Należy traktować wejście jako płaski strumień tokenów.
it = iter(sys.stdin.read().split())Pobieraj tokeny pojedynczo
Za pomocą iteratora można pobierać następny token na żądanie, niezależnie od tego, jak wartości zostały rozłożone w wierszach.
n = int(next(it))Szybki test
Odczytując dokładnie N wierszy, na jakie ryzyko należy uważać?
Podsumowanie: N wierszy i przypadki brzegowe
Można już odczytać liczbę, wykonać pętlę N razy, usunąć białe znaki, obsłużyć N=0 i EOF oraz uniknąć odczytów off-by-one. 🧹
Ucz się Coding Interview Prep dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 90
- Lekcje
- 360
Często zadawane pytania
Czy lekcja „Odczyt N wierszy i przypadki brzegowe” jest bezpłatna?
Tak — pełny tekst „Odczyt N wierszy i przypadki brzegowe” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Coding Interview Prep, przejdź na CoddyKit PRO. Kurs Coding Interview Prep zawiera 4 lekcji w sumie.
Co nauczysz się w „Odczyt N wierszy i przypadki brzegowe”?
Iterowanie po wierszach i obsługa końcowych białych znaków Ćwiczysz Coding Interview Prep z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Coding Interview Prep?
Nie wymagamy żadnego doświadczenia. Coding Interview Prep w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Odczyt N wierszy i przypadki brzegowe”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Coding Interview Prep?
Tak. Każda lekcja Coding Interview Prep zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- input() kontra sys.stdin
- Parsowanie wielu liczb w jednym wierszu
- Właściwy sposób buforowania wyjścia
- Odczyt N wierszy i przypadki brzegowe