Hvad er forskellen mellem lister og sæt i Python?


Bedste svar

Der er nogle signifikante forskelle:

  • Indeksering – en liste kan indekseres med heltal (startende fra 0); et sæt kan ikke indekseres (der er intet koncept for det første element i et sæt, undtagen når det gentages).
  • Udskæring – en liste kan opdeles (ved hjælp af [a: b] notation); et Pythonsæt kan ikke opdeles.
  • Indhold – en liste kan indeholde enhver blanding af dataelementer; et sæt kan kun indeholde de dataelementer, der er hashable (dvs. funktionen hash () returnerer en værdi).
  • Duplikater – en liste kan indeholde duplikatdataelementer – der er ingen grænse for, hvor mange gange elementer af lige værdi vises på listen; et sæt kan ikke indeholde dubletter.
  • Bestilling – lister bestilles, hvilket betyder at de bevarer rækkefølgen som bestemt af programmet ved hjælp af listen; sæt bestilles ikke – der er intet begreb om første, andet osv. – og der er ingen måde, hvorpå en programmør kan kontrollere den rækkefølge, som et sæt gentages, vises eller præsenteres på anden måde. (Bemærk rækkefølge er ikke det samme som at blive sorteret – men sæt kan heller ikke sorteres).
  • medlemskab – en medlemskabstest (in operatoren) på en liste er en lineær søgning fra første til sidste; en medlemskabstest på et sæt er først baseret på hash () af den værdi, der søges efter. Søgning efter et sæt er betydeligt mere effektivt sammenlignet med en lignende størrelse liste.
  • Andre muligheder – lister har ikke adfærd til at oprette nye lister baseret på overlapninger eller forskelle mellem lister. sæt på den anden side har et utal af operationer (og metoder) til at identificere forskelle og overalps mellem sæt.

Svar

Sæt er datastrukturer, der ligner lister eller ordbøger. De oprettes ved hjælp af krøllede seler eller sæt -funktionen. De deler nogle funktioner med lister, f.eks. Brugen af ​​ i for at kontrollere, om de indeholder et bestemt element.

num\_set = {1, 2,3,4,5}

word\_set = set ([“spam”, “æg”, “pølse”])

print (3 i num\_set)

print (“spam” ikke i word\_set)

>> Sandt

>>> Falsk

Bemærk: For at oprette et tomt sæt skal du bruge set (), som {} opret en tom ordbog.

Sæt adskiller sig fra lister på flere måder, men deler flere lister som len . De er ikke ordnet, hvilket betyder, at de ikke kan indekseres. De kan ikke indeholde duplikatelementer. På grund af den måde, de “er gemt på, er det” s hurtigere for at kontrollere, om et element er en del af et sæt i stedet for en del af en liste. I stedet for at bruge tilføj for at føje til et sæt, brug tilføj . Metoden fjern fjerner en bestemt element fra et sæt; pop fjerner et vilkårligt element.

Sæt kan kombineres ved hjælp af matematiske operationer. union operatør | kombinerer to sæt for at danne et nyt, der indeholder elementer i begge. kryds operatør & får kun varer i begge dele. forskellen operator henter varer ind det første sæt, men ikke i det andet. symmetrisk forskel operatør ^ får emner i begge sæt, men ikke begge.

Hvornår skal man bruge en ordbog: – Når du har brug for en logisk sammenhæng mellem en nøgle: værdi par. – Når du har brug for hurtig opslag efter dine data, baseret på en brugerdefineret nøgle. – Når dine data konstant ændres. Husk, ordbøger kan ændres. Hvornår skal du bruge de andre typer: – Brug lister , hvis du har en samling data, der behøver ikke tilfældig adgang. Prøv at vælge lister, når du har brug for en enkel, iterabel samling, der ofte ændres. – Brug et sæt , hvis du har brug for unikhed for elementerne. – Brug tuples når dine data ikke kan ændres.

Jeg håber, det hjælper dig.

Happy Coding.

En sidste ting, hvis du kan lide dette, så opvote det, vil motivere mig.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *