Saate Pythonis loendi komplektiks teisendada.
Pildi krediit: Poike/iStock/GettyImages
Pythoni loendid ja komplektid sisaldavad mõlemad üksuste rühmi, kuid nende kahe vahel on olulisi erinevusi. Eelkõige on komplektid kasulikud paljude toimingute tegemiseks, nagu liitumised ja ristmikud, samas kui loenditel on vähem matemaatilisi tehteid, kuid on kasulikud konkreetsete üksuste otsimiseks – eriti duplikaatide puhul – ja korraldamiseks andmeid. Paljudel põhjustel peate võib-olla teisendama loendi Pythonis komplektiks ja selleks saate kasutada lihtsat funktsiooni.
Pythoni loendite ja komplektide selgitus
Kõige olulisem erinevus loendi ja komplekti vahel Pythonis on see, et loend võib sisaldada dubleerivaid elemente, samas kui komplekt sisaldab ainult unikaalseid elemente. Näiteks kui teil on testide skooride loend, mis on määratletud kui "skoorid=[14, 20, 13, 20, 15]", kuvatakse loend ütleb teile kõik väärtused, kuid kui teisendate selle komplektiks, eemaldab see duplikaadi ja jätab {14, 20, 13, 15}.
Päeva video
Teine erinevus seisneb selles, et loendite jaoks kasutatakse nurksulgusid, komplektide jaoks aga lokkis sulgusid. Asja teeb veidi keeruliseks see, et Pythoni sõnastik kasutab ka lokkis sulgusid, kuid seal koosneb iga üksus väärtusest endast ja kooloniga eraldatud "võtmest".
Oluline on meeles pidada, et saate komplekti või loendi osana kasutada stringe, täisarve, ujukit või muid objekte ning neid saab ka segada samas komplektis või loendis. Nii nagu Pythonis võib olla arvude komplekt, saate koostada ka Pythoni stringide komplekti.
Teisendage loend komplektiks
Pythonis loendi komplektiks teisendamine on lihtne. Esiteks määratlete loendi viisil, mis on selles sisalduva teabe jaoks mõistlik. Näiteks öelge, et soovite määratleda nimede loendi, võite kirjutada names=['Lee', 'Mike', 'Jamie', 'Mike', 'Sarah'] märkides ära nurksulud, stringide (nimede) ümber olevad jutumärgid ja iga kirjet eraldavad komad.
Selle loendi teisendamiseks komplektiks kasutage käsku set(), kus paned sulgudesse teisendatava loendi nime. Nii et sel juhul võite kirjutada komplekt (nimed) loendis olevad nimed hulgaks teisendamiseks ja saate määrata sellele muutuja, näiteks "unikaalsed nimed" ja kuvada tulemuse kasutades print (unikaalsed nimed), mis on funktsionaalselt samaväärne print (komplekt (nimed)) aga korralikum. Kinnitate, et seda tehti õigesti, märkides, et tulemuses on kasutatud lokkis sulgusid ja "Mike" on kaasatud ainult üks kord.
Kogu kood näeb välja selline:
names=['Lee', 'Mike','Jamie','Mike','Sarah']
unikaalsed nimed = komplekt (nimed)
print('Unikaalsed nimed:', kordumatud nimed)
Sel juhul on esitluse eesmärgil väljundisse lisatud "Unikaalsed nimed:".
Python: määrake loendi teisendamine
Saate sama teisenduse käivitada ka vastupidises suunas ja protsess on põhimõtteliselt sama, välja arvatud juhul, kui kasutate nimekiri() käsk komplektis, mitte vastupidi. See tähendab, et alustamiseks on vaja komplekti, mida saate hõlpsalt määratleda, valides muutuja, näiteks "big_set" ja seejärel lisades sisu, eraldades need komadega ja sulgudes. Sa võiksid kirjutada big_set={1, 3, 4, 5, 7, 8, 9, 11, 12, 14, 15, 17} täisarvude või muude väärtuste komplekti määratlemiseks.
Selle loendiks teisendamiseks määratlege muutuja (näiteks "suur_loend") ja kasutage nimekiri() käsk, nii et sisestate midagi sarnast big_list=loend (suur_komplekt) ja siis print (suur_loend) tulemuse kuvamiseks. Nii et täielik kood on:
big_set={1, 3, 4, 5, 7, 8, 9, 11, 12, 14, 15, 17}
big_list=loend (suur_komplekt)
print (suur_loend)
See juhtum ei anna loendile nime, seega tagastab see ainult loendi. Pange tähele, et kui teisendate loendi komplektiks ja seejärel uuesti tagasi, kaotate kõik korduvad väärtused esimese teisenduse käigus ja need ei tule tagasi.