Mitä eroa on luettelossa ja joukossa Pythonissa?


Paras vastaus

Joitakin merkittäviä eroja on:

  • Indeksointi – luettelo voidaan indeksoida kokonaisluvulla (alkaen 0); joukkoa ei voida indeksoida (sarjan ensimmäisestä tuotteesta ei ole käsitteitä paitsi silloin, kun se on iteroitu).
  • Viipalointi – luettelo voidaan leikata (käyttämällä [a: b] -merkintää); Python-joukkoa ei voi leikata.
  • Sisältö – luettelo voi sisältää minkä tahansa seoksen tieto-osia Joukko voi sisältää vain hajautettavia tietoalkioita (ts. hash () -funktio palauttaa arvon).
  • Kopiot – luettelo voi sisältää päällekkäisiä tietoalkioita – ei ole rajoitusta sille, kuinka monta kertaa sama arvo näkyy luettelossa; joukko ei voi sisältää kaksoiskappaleita.
  • Järjestys – luettelot järjestetään, mikä tarkoittaa, että ne säilyttävät järjestyksen, jonka ohjelma on määritellyt luettelon avulla; sarjoja ei ole järjestetty – ei ole käsitystä ensimmäisestä, toisesta jne. – eikä ohjelmoija voi millään tavalla hallita järjestystä, jossa sarja iteroidaan, näytetään tai muuten esitetään. (Muistiinpanojen järjestys ei ole sama kuin lajittelu – mutta myöskään sarjoja ei voi lajitella).
  • jäsenyys – jäsenyystesti (in -operaattori) luettelossa on lineaarinen haku alusta toiseen viimeinen; joukon jäsenyystesti perustuu ensin etsittävän arvon hashiin (). Joukon haku on huomattavasti tehokkaampaa verrattuna vastaavan kokoiseen luetteloon.
  • Muut ominaisuudet – luetteloilla ei ole käyttäytymistapaa luoda uusia luetteloita päällekkäisyyksien tai luetteloiden välisten erojen perusteella; sarjoilla on toisaalta lukemattomia operaatioita (ja menetelmiä) erojen ja ylialppien tunnistamiseksi joukoiden välillä.

Vastaa

Sarjat ovat luetteloita tai sanakirjoja muistuttavia tietorakenteita. Ne luodaan kiharoilla aaltosulkeilla tai funktiolla set . He jakavat joitain toimintoja luetteloiden kanssa, kuten käyttö -palvelussa tarkistamaan, sisältävätkö ne tietyn kohteen.

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

word\_set = set ([”roskaposti”, ”munat”, ”makkara”])

tulosta (3 in num\_set)

tulosta (”spam” ei sanassa word\_set)

>> Tosi

>>> Väärin

Huomaa: Tyhjän sarjan luomiseen u on käytettävä set (), kuten {} luo tyhjä sanakirja.

Sarjat eroavat luetteloista useilla tavoilla, mutta jakavat useita luettelotoimintoja, kuten len . Ne ovat järjestämättömiä, mikä tarkoittaa, että niitä ei voida indeksoida. Ne eivät voi sisältää päällekkäisiä elementtejä. Niiden tavan takia, että ne ”tallennetaan uudelleen, ne” nopeammin tarkistaaksesi, onko kohde osa joukkoa, ei luettelon osa. Sen sijaan, että käytettäisi liitä lisätäksesi joukkoon, käytä lisää . Menetelmä poista poistaa tietyn elementti joukosta; pop poistaa mielivaltaisen elementin.

Sarjoja voidaan yhdistää matemaattisten operaatioiden avulla. unioni operaattori | yhdistää kaksi sarjaa muodostaakseen uuden joukon, joka sisältää kohteita kummassakin. risteys -operaattori & saa kohteet vain molemmista. ero operaattori saa kohteita sisään ensimmäinen sarja, mutta ei toisessa. symmetrinen ero -operaattori ^ saa kohteita kumpaankin sarjaan, mutta ei molempiin.

Milloin sanakirjaa käytetään: – kun tarvitset loogista yhteyttä -avaimen välillä: arvo pari. – Kun tarvitset tietoja nopeasti, mukautetun avaimen perusteella. – Kun tietojasi muokataan jatkuvasti. Muista, että sanakirjat ovat muutettavissa. Milloin muita tyyppejä käytetään: – Käytä luetteloita , jos sinulla on kokoelma tietoja, jotka ei tarvitse satunnaista käyttöä. Yritä valita luetteloita, kun tarvitset yksinkertaista, toistettavaa kokoelmaa, jota muunnetaan usein. – Käytä -sarjaa , jos tarvitset elementtien ainutlaatuisuutta. – Käytä sarjoja , kun tietosi eivät voi muuttua.

Toivottavasti tämä auttaa sinua.

Hyvää koodausta.

Viimeinen asia, jos pidät tästä, äänestä sitä ”motivoi minua.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *