logo

Skriv inn en liste i Python

I denne artikkelen vil vi diskutere hvordan vi kan legge inn en liste i Python. Men før vi diskuterer metodene deres, må vi vite om listen i Python.

Hva er en liste?

EN liste er en innebygd datastruktur levert av Python, som muliggjør organisering og lagring av en samling av elementer. En liste over ting som kan endres er presentert i en logisk rekkefølge og er omsluttet av hakeparenteser. Hvert listeelement skilles fra de andre med kommaer.

Eksempel:

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

De liste 'sjåfører', som inkluderer elementene 'LEWIS', 'GEORGE', 'MAX', og 'SEBASTIAN', brukes i denne illustrasjonen. En liste kan ha oppføringer laget fra strenger, tall, Til og med tilleggslister.

I Python kan listedatastrukturen endres, slik at brukeren kan legge til, fjerne eller oppdatere elementene. Lister støtter tilfeldig tilgang til elementene deres. De indeks over en liste begynner med 0 , og alle nødvendige elementer kan nås gjennom indeksering.

Tar innspill

Det er mange måter å ta innspill på i Python. Noen av dem er nevnt nedenfor

1. Inndata():

Bruker Python's input() funksjon, du kan sende brukerinndata til en liste og lagre den som en streng. Etter det kan inndata behandles for å generere et listeformat.

js lastet ned

Eksempel:

 # 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) 

Produksjon:

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

I denne situasjonen blir brukeren provosert til å skrive inn en liste over ting som er isolert av mellomrom. Ved å bruke input() funksjon, en streng deles i sine deldeler ved å bruke split() teknikk. Resultatene endres fullstendig til tall ved å bruke listeforståelsen.

For eksempel hvis brukeren skriver '1 2 3 4 5', programmet vil konvertere innspillene deres til liste [1, 2, 3, 4, 5] og skrive den ut som et resultat.

len of array i java

Avhengig av hvilke typer komponenter du forventer i listen (som f.eks strenger, flyter, og så videre), kan du endre konverteringsteknikken eller innlemme feilhåndtering for å håndtere uriktige inndata.

2. Bruke split() og map():

Inndataene kan separeres som sendes til deg som en streng. Etter det kan elementene endres til ønsket datatype ved å gi hver enkelt en konverteringsfunksjon.

Eksempel:

unix opprette katalog
 # 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) 

Produksjon:

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

Dele() er en innebygd strengmetode i Python. Den deler opp en streng i en liste over understrenger ved å bruke et skilletegn som allerede er sendt som argument. De innebygd split() funksjon fungerer på en slik måte at den skiller inn teksten i en rekke segmenter hovedsakelig avhengig av mellomrom (som f.eks. tabulatorer, mellomrom, eller nylinjekarakter ) hvis en spesifikk skilletegn ikke er nevnt når den brukes i koden.

Inndatateksten i prøven er delt inn i sine komponentdeler ved hjelp av input_str.split(). De split() metode halverer inndatastrengen ved hvert mellomrom, noe som resulterer i en liste over understrenger. For eksempel, dele() vil dele seg ['1', '2', '3', '4', '5'] hvis brukeren kommer inn '1 2 3 4 5'.

Resultatene av å bruke en spesifisert funksjon på hvert element i en gjentakelig (som en liste ) til en iterator returneres av Python's innebygd map() metode. I eksempelet int() funksjon brukes på hver komponent i den delte inndatastrengen ved å bruke map(int, input_str.split()) metode.

De int() metode konverterer en streng som representerer en heltall til et reelt heltall. Vi kartlegger int() til hvert element i den delte inndatastrengen for å få en ny gjentakelig med samsvarende heltallsverdier. Uttalelsen map(int, ['1', '2', '3', '4', '5']) vil resultere i en iterator med heltall [1, 2, 3, 4, 5].

3. Bruke en sløyfe:

Du kan bruke en Løkke for gjentatte ganger å be brukeren om inndata og legge til hver angitte verdi i listen

Eksempel:

 # 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) 

Produksjon:

kjøre script shell
 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'] 

I dette eksemplet blir brukeren bedt om å angi antall elementer de vil legge inn. La oss si at de kommer inn 4 . Deretter går programmet inn i en Løkke som itererer 4 ganger ved hjelp av område(n). Under hver iterasjon blir brukeren bedt om å legge inn et element, med start fra Skriv inn element 1 : og øker for påfølgende iterasjoner.

Brukeren går inn 'TESLA', 'FORD', 'FERRARI', og 'MERCEDES' som de passende elementene i det foregående eksempelet. Hver komponent er vedlagt min_liste liste benytter attach()-teknikk.

    Inndatavalidering:Det er avgjørende å ta inndatavalidering ta hensyn til når du behandler en liste over innspill. For å sikre at brukeren gir nøyaktige input, kan det være lurt å implementere feilhåndtering. For eksempel kan du bestemme om inndata er innenfor ønsket format eller område og be brukeren gå inn på nytt hvis en ugyldig inndata blir funnet.Deling med egendefinert skilletegn:Når du deler en streng, split() metode som standard bruker mellomromstegn som skilletegn. De split() metode lar deg gi en egendefinert skilletegn som en argument, skjønt. Bruk for eksempel input_str.split(',') for å dele en kommaseparert inngang.Håndtering av ulike datatyper:Du må kanskje administrere flere datatyper i inndatalisten avhengig av dine behov. For å endre inngangskomponentenes datatyper, bruk passende konverteringsoperasjoner som int(), float() eller str(). Spør etter listelengde:Du kan i utgangspunktet spørre brukeren om antall elementer dersom du ønsker inndata på listens lengde. Etter det kan du tilordne de nødvendige ressursene og gjenta det nødvendige antallet ganger som et resultat.Inndataformatering:Ta hensyn til at brukeren får vite det tiltenkte inndataformatet i ledeteksten. Ved å gjøre det kan du forhindre misforståelser og sørge for at brukeren legger inn input på riktig måte.Feilhåndtering:For å unngå ytterligere misforståelser, er det å foretrekke å nevne inndataformatet riktig i brukerpromptmeldingen, slik at vi sørger for at brukeren legger inn input i ønsket format.Godta flerlinjeinngang:En sløyfe kan brukes for å få input-elementet for hver iterasjon hvis brukeren ønsker å gi input med flere linjer. Det er nyttig hvis inndataene har linjeskift.
 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) 

Produksjon:

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

Konklusjon

Til slutt kan vi konkludere med at dataene som skal tas som input, brukerpreferanser og krav, og metoden for å ta brukerinndata kan variere mellom teknikkene diskutert ovenfor.

Hvis brukeren ønsker å ta et input av en streng, de kan bruke bruken av split() og map() å dele den gitte strengen i ulike segmenter avhengig av skilletegnet som er gitt tilsvarende. Brukeren kan også utføre eksplisitte typekonverteringer for å konvertere datatypen til hvert opprettet segment. Denne tilnærmingen er nyttig når inndata er atskilt med mellomrom eller komma.

Videre, hvis det totale antallet inngangskomponenter er ukjent på forhånd, a Dynamisk inngang prosessen kan brukes til å minne brukeren etter hver iterasjon om å gi neste inngangselement, som legges til den aktuelle datastrukturen.