logo

Wprowadź listę w Pythonie

W tym artykule omówimy, jak wprowadzić listę w Pythonie. Zanim jednak omówimy ich metody, musimy poznać listę w Pythonie.

Co to jest lista?

A lista to wbudowana struktura danych dostarczana przez Pythona, która umożliwia organizację i przechowywanie kolekcji elementów. Lista rzeczy, które można modyfikować, jest przedstawiona w logicznej kolejności i ujęta w nawiasy kwadratowe. Każdy element listy jest oddzielony od pozostałych przecinkami.

Przykład:

 drivers = ['LEWIS', 'GEORGE', 'MAX', 'SEBASTIAN'] 

The lista „kierowcy”, który zawiera elementy „LEWIS”, „GEORGE”, „MAX”, I „SEBASTIAN”, jest użyte na tej ilustracji. Lista może zawierać wpisy z ciągi znaków, liczby, i nawet dodatkowe listy.

W Pythonie struktura danych Listy jest modyfikowalna, co pozwala użytkownikowi dodawać, usuwać lub aktualizować jej elementy. Listy umożliwiają losowy dostęp do swoich elementów. The indeks listy zaczynać z 0 , a dostęp do wszystkich wymaganych elementów można uzyskać poprzez indeksowanie.

Przyjmowanie danych wejściowych

Istnieje wiele sposobów wprowadzania danych wejściowych w Pythonie. Niektóre z nich są wymienione poniżej

1. Wejście():

Korzystanie z Pythona funkcja wejściowa(), możesz wysłać dane wejściowe użytkownika na listę i zapisać je jako ciąg znaków. Następnie dane wejściowe można przetworzyć w celu wygenerowania formatu listy.

teoria automatów

Przykład:

 # Taking input as a string using input function input_str = input('Enter elements of the list separated by space: ') # Converting input string to a list of integers my_list = input_str.split() my_list = [int(num) for num in my_list] # Printing the list print('List:', my_list) 

Wyjście:

Nick Pulos Czarna błyskawica
 Enter elements of the list separated by space: 1 2 3 4 5 List: [1, 2, 3, 4, 5] 

W tej sytuacji użytkownik jest proszony o wprowadzenie listy rzeczy oddzielonych spacjami. Korzystając z funkcja wejściowa(), ciąg jest dzielony na części za pomocą technika podziału(). Elementy wyników są całkowicie zamieniane na liczby przy użyciu rozumienia listowego.

Na przykład, jeśli użytkownik napisze „1 2 3 4 5”, program przekonwertuje wprowadzone dane na format lista [1, 2, 3, 4, 5] i w efekcie wydrukuj.

W zależności od typów komponentów, które przewidujesz na liście (np sznurki, pływaki, itd.), możesz zmodyfikować technikę konwersji lub włączyć obsługę błędów, aby poradzić sobie z nieprawidłowymi danymi wejściowymi.

2. Używanie funkcji split() i map():

Dane wejściowe można oddzielić od wysłanych do Ciebie jako ciąg znaków. Następnie elementy można zmienić na żądany typ danych, nadając każdemu z nich funkcję konwersji.

Przykład:

 # Taking input as a string and converting it to a list of integers using split and map input_str = input('Enter elements of the list separated by space: ') my_list = list(map(int, input_str.split())) # Printing the list print('List:', my_list) 

Wyjście:

 Enter elements of the list separated by space: 1 2 3 4 5 List: [1, 2, 3, 4, 5] 

Podział() to wbudowana metoda łańcuchowa w Pythonie. Dzieli ciąg na listę podciągów, używając ogranicznika już przekazanego jako argument. The wbudowana funkcja split(). działa w ten sposób, że dzieli tekst wejściowy na kilka segmentów zależnych głównie od białych znaków (np tabulatory, spacje, Lub znak nowej linii ), jeśli w kodzie nie wspomniano o konkretnym ograniczniku.

Tekst wejściowy w próbce jest dzielony na części składowe za pomocą input_str.split(). The metoda podziału(). dzieli ciąg wejściowy na połowę w każdym odstępie, co daje listę podciągów. Na przykład, podział() podzieli ['1', '2', '3', '4', '5'] jeśli użytkownik wejdzie „1 2 3 4 5”.

listy lateksowe

Wyniki zastosowania określonej funkcji do każdego elementu w pliku iterowalne (jak lista ) do iteratora są zwracane przez Pythona wbudowana metoda map(). W przykładzie funkcja int(). jest stosowany do każdego składnika podzielonego ciągu wejściowego za pomocą map(int, input_str.split()) metoda.

The metoda int(). konwertuje ciąg znaków reprezentujący liczba całkowita na liczbę całkowitą. Mapujemy int() do każdego elementu podzielonego ciągu wejściowego, aby uzyskać nowy iterowalne z pasującymi wartościami całkowitymi. Twierdzenie mapa(int, ['1', '2', '3', '4', '5']) spowoduje wygenerowanie iteratora z liczby całkowite [1, 2, 3, 4, 5].

3. Korzystanie z pętli:

Możesz użyć A pętla aby wielokrotnie pytać użytkownika o wprowadzenie danych i dołączać każdą wprowadzoną wartość do listy

Zastępowanie metody w Javie

Przykład:

 # input using a loop n = int(input('Enter the number of elements: ')) my_list = [] for i in range(n): element = input('Enter element {}: '.format(i+1)) my_list.append(element) # Printing the list print('List:', my_list) 

Wyjście:

 Enter the number of elements: 4 Enter element 1: TESLA Enter element 2: FORD Enter element 3: FERRARI Enter element 4: MERCEDES List: ['TESLA','FORD','FERRARI', 'MERCEDES'] 

W tym przykładzie użytkownik jest proszony o podanie liczby elementów, które chce wprowadzić. Powiedzmy, że wchodzą 4 . Następnie program wprowadza a pętla to powtarza 4 razy za pomocą zakres(n). Podczas każdej iteracji użytkownik jest proszony o wprowadzenie elementu, zaczynając od Wprowadź Element 1 : i zwiększanie dla kolejnych iteracji.

Użytkownik wchodzi „TESLA”, „FORD”, „FERRARI”, I „MERCEDES” jako odpowiednie elementy w poprzednim przykładzie. Każdy element jest dołączony do lista moja_lista korzystając z technika dołączania().

    Walidacja danych wejściowych:Ważne jest, aby to wziąć walidacja danych wejściowych pod uwagę podczas przetwarzania listy danych wejściowych. Aby mieć pewność, że użytkownik wprowadzi dokładne dane wejściowe, warto zaimplementować obsługę błędów. Można na przykład określić, czy dane wejściowe mają żądany format lub zakres i poproś użytkownika o ponowne wprowadzenie, jeśli znaleziono nieprawidłowe dane wejściowe.Dzielenie z niestandardowym ogranicznikiem:Podczas dzielenia ciągu znaków metoda podziału(). domyślnie używa białych znaków jako ograniczników. The metoda podziału(). pozwala na podanie niestandardowego ogranicznika jako jednak argument. Na przykład użyj input_str.split(',') aby podzielić dane wejściowe oddzielone przecinkami.Obsługa różnych typów danych:W zależności od potrzeb może być konieczne zarządzanie kilkoma typami danych na liście wejściowej. Aby zmienić typy danych komponentów wejściowych, użyj odpowiednich operacji konwersji, takich jak int(), float() lub str(). Monitowanie o długość listy:Możesz początkowo zapytać użytkownika o liczbę elementów, jeśli chcesz wprowadzić dane dotyczące długości listy. Następnie możesz przypisać wymagane zasoby i w rezultacie wykonać wymaganą liczbę iteracji.Formatowanie wejściowe:W komunikacie zachęty pamiętaj o poinformowaniu użytkownika o zamierzonym formacie wejściowym. W ten sposób możesz zapobiec nieporozumieniom i mieć pewność, że użytkownik wprowadza dane w prawidłowy sposób.Obsługa błędów:Aby uniknąć dalszych nieporozumień, zaleca się prawidłowe podanie formatu danych wejściowych w komunikacie zachęty użytkownika, dzięki czemu będziemy mieć pewność, że użytkownik wprowadzi dane wejściowe w wymaganym formacie.Akceptowanie wejścia wieloliniowego:Pętli można użyć do pobrania elementu wejściowego dla każdej iteracji, jeśli użytkownik chce wprowadzić dane wejściowe w wielu wierszach. Jest to przydatne, jeśli dane wejściowe mają podziały wierszy.
 my_list = [] print('Enter elements of the list my_list(press 'x' to finish):') while True: element = input() if element == 'x': break my_list.append(element) # Printing the list print('List:', my_list) 

Wyjście:

 Enter elements of the listmy_list (press 'x' to finish): LAMBORGHINI FERRARI MERCEDES AMG X The list will be :['LAMBORGHINI', 'FERRARI', 'MERCEDES AMG']. 

Wniosek

Na koniec możemy stwierdzić, że dane, które należy uwzględnić jako dane wejściowe, preferencje i wymagania użytkownika oraz metoda pozyskiwania danych wejściowych od użytkownika mogą się różnić w zależności od technik omówionych powyżej.

Jeśli użytkownik chce pobrać dane wejściowe a strunowy, mogą z nich skorzystać podział() i mapa() aby podzielić dany ciąg na różne segmenty w zależności od odpowiednio dostarczonego ogranicznika. Użytkownik może również wykonać jawne konwersje typów, aby przekonwertować typ danych każdego utworzonego segmentu. To podejście jest przydatne, gdy dane wejściowe są oddzielone spacjami lub przecinkami.

Menedżer zadań dla Linuksa

Ponadto, jeśli całkowita liczba komponentów wejściowych nie jest znana z góry, a Wejście dynamiczne Proces ten można wykorzystać do przypomnienia użytkownikowi po każdej iteracji o konieczności dostarczenia pliku następny element wejściowy, który jest dodawany do odpowiedniej struktury danych.