Hierdie lesing gaan alles oor 'n ander noodsaaklike struktuur in Python, wat 'n tupel genoem word.
Tupels
Tupels is soortgelyk aan lyste, so ons kan dit gebruik om 'n lys items te stoor. Maar anders as lyste, kan ons dit nie verander, nuwe items byvoeg of bestaande items verwyder nie. Ons kan sê dat die tupels onveranderlik is.
Laat ek jou wys. Tupels word deur hakies in plaas van die vierkantige hakies in lyste geïdentifiseer.
numbers = (4, 1, 7, 5, 0, 9)
Nou, as ons die metodelys vir tupels uithaal, kan jy sien dat ons nie die byvoeg- of invoegmetodes het nie, so nuwe items kan nie by hierdie tupel gevoeg word nie. Ons het net twee metodes: tel en indeks.
Ons gebruik "tel" om die aantal gevalle van 'n item te tel. Die "indeks" word gebruik om die indeks van die eerste voorkoms van 'n item te vind. So, ons kan net inligting oor 'n tupel kry, en ons kan dit nie verander nie. Terloops, hierdie ander metodes wat jy hier sien, begin met twee onderstrepe.
Ons verwys daarna as magiese metodes. Hulle is meer 'n gevorderde onderwerp, en ons sal dit in ons toekomstige reeks aanraak.
Behalwe dat dit onveranderlik is, deel tupels die meeste van die kenmerke van 'n lys.
Prakties gesproke sal jy die meeste van die tyd lyste gebruik, maar tupels is ook nuttig. As jy 'n lys items wil skep en seker maak dat jy nêrens in jou program daardie lys per ongeluk verander nie, dan is dit beter om 'n tupel te gebruik.
pak
In hierdie afdeling gaan ek jou 'n kragtige kenmerk wys wat ons in luislang het genaamd uitpak.
Kom ons definieer 'n tupel "koördinaat"
coordinate = (1, 2, 3)
Stel jou nou voor dit is die koördinate vir 'x', 'y' en 'z'. Kom ons sê nou, ons wil hierdie waardes kry en dit in 'n paar komplekse uitdrukkings in ons program gebruik. Miskien wil ons dit insluit as deel van 'n groot komplekse formule.
So, saam sal ons kode soos volg moet skryf:
coordinate[0] * coordinate[1] * coordinate[2]
Hierdie reël kode sal al die koördinate vermenigvuldig, maar dit is ondoeltreffend om ons kode so te skryf. Kom ons gebruik eers 'n beter benadering en stoor hierdie koördinate in afsonderlike veranderlikes.
x = coordinate[0]
y = coordinate[1]
z = coordinate[2]
Dit is beter. Reg? So tot dusver niks nuuts nie. Nou, laat ek jou 'n kragtige funksie genaamd uitpak wys en daarmee kan ons dieselfde resultaat bereik met baie minder kode.
x, y, z, = coordinate
Nou, hierdie enkele reël kode is presies gelykstaande aan die drie reëls kode wat hierbo geskryf is. Kom ek verduidelik vir jou hoe dit werk.
Wanneer die Python-tolk hierdie stelling sien, sal dit die eerste item in hierdie tupel kry en dit aan die veranderlike toewys. Net so sal tweede en derde items aan die veranderlikes toegeken word. Deur dit te doen, pak ons hierdie tupel uit in 3 veranderlikes. Kom ons kyk na ons uitset.
Uitpak kan ook met lyste gedoen word.
Woordeboeke
Ons gaan leer oor woordeboeke in Python. Ons gebruik woordeboeke in situasies waar ons inligting wil stoor wat as sleutel-waarde-pare kom.
Hier is 'n voorbeeld. Dink aan 'n kliënt met 'n klomp eienskappe soos naam, e-pos, telefoonnommer, adres, ensovoorts. Nou het elkeen van hierdie eienskappe 'n waarde. Byvoorbeeld:
name = Jay
email = [email protected]
In hierdie voorbeeld is ons sleutels naam, e-pos en telefoon. Elke sleutel word met 'n waarde geassosieer, so dit is waar ons 'n woordeboek gebruik. Met 'n woordeboek kan ons 'n klomp sleutel-waarde-pare stoor. Kom ek wys jou hoe om 'n woordeboek in python te definieer.
customer = {
"name": "Jay",
"email": "[email protected]",
"age": 30,
"is_verified": True
}
Die sleutel kan gestel word op snare, syfers, boolean of enigiets. Die sleutels is uniek en kan net een keer gedefinieer word, maw ek kan nie weer “ouderdom” met 'n ander nommer definieer nie. Hulle is ook hooflettersensitief.
Nou, as ek tik customer["name"],
dit sal die kliënt se naam noem. Kom ons druk dit op die terminale:
Ons kan ook die metodes met woordeboeke gebruik. Dieselfde funksie wat hierbo gedemonstreer is, kan herhaal word deur die "get"-metode te gebruik.
Daar is een besondere verskil tussen die bogenoemde twee metodes. Laat ek dit demonstreer.
Jy kan sien dat wanneer ons bloot 'n nie-bestaande sleutel gedruk het, dit 'n fout tot gevolg gehad het. Aan die ander kant, die gebruik van die metode om nie-bestaande sleutel uit te roep lei tot 'n "geen" resultaat wat die afwesigheid van 'n waarde verteenwoordig. Wanneer ons die "kry"-metode gebruik, kan ons ook 'n verstekwaarde verskaf.
Byvoorbeeld, as hierdie woordeboek nie 'n "geboortedatum"-sleutel het nie, kan ons dit soos volg verskaf:
customer.get("birthdate", "Jan 01, 1994")
Ons kan ook enige sleutel in die woordeboek opdateer, soortgelyk aan 'n lys. Kom ons sê ons wil die naamsleutel in ons woordeboek opdateer. Hier is hoe ons dit sal doen.
customer["name"] = "Shahbaz"
'n Soortgelyke sintaksis kan ook gebruik word om 'n nuwe sleutel in ons woordeboek by te voeg. Kom ons voeg die sleutel "geboortedatum" op 'n soortgelyke manier by.
customer["birthdate"] = "Jan 01, 1994"
So, dit is die basiese beginsels van die gebruik van woordeboeke in Python. Hulle is uiters belangrik en hulle het baie toepassings in die regte wêreld.
Oefening
Jy gaan 'n program skryf wat syfers in woorde omskakel soos hierdie:
Oplossing
Hier is die oplossing vir julle.
phone = input("Phone: ")
digits_mapping = {
"1": "One",
"2": "Two",
"3": "Three",
"4": "Four",
"5": "Five",
"6": "Six",
"7": "Seven",
"8": "Eight",
"9": "Nine",
"0": "Zero"
}
output = " "
for ch in phone:
output += digits_mapping.get(ch, "!") + " "
print(output)
Net so kan jy ander prettige programme bou soos 'n "emoji-omskakelaar" Om pret te hê PYTHONERS!
Afsluit!
Ek hoop jy het hierdie lesing geniet. Vervolgens gaan ons in 'n belangrike aspek van Python-programmering, die funksies en parameters duik.
Lewer Kommentaar