Mae'r ddarlith hon yn ymwneud â strwythur hanfodol arall yn Python, a elwir yn tuple.
Tuples
Mae Tuples yn debyg i restrau, felly gallwn eu defnyddio i storio rhestr o eitemau. Ond yn wahanol i restrau, ni allwn eu haddasu, ychwanegu eitemau newydd na dileu eitemau sy'n bodoli eisoes. Gallwn ddweud bod y tuples yn ddigyfnewid.
Gadewch i mi ddangos i chi. Mae tuples yn cael eu hadnabod yn ôl cromfachau yn lle'r cromfachau sgwâr mewn rhestrau.
numbers = (4, 1, 7, 5, 0, 9)
Nawr, os ydym yn tynnu allan y rhestr dulliau ar gyfer tuples, gallwch weld nad oes gennym yr atodiad neu mewnosod dulliau felly ni ellir ychwanegu eitemau newydd at y tuple hwn. Dim ond dau ddull sydd gennym: cyfrif a mynegai.
Rydym yn defnyddio “cyfrif” i gyfrif nifer yr eitemau sy'n digwydd. Defnyddir y “mynegai” i ddod o hyd i fynegai digwyddiad cyntaf eitem. Felly, dim ond gwybodaeth am tuple y gallwn ei chael, ac ni allwn ei newid. Gyda llaw, mae'r dulliau eraill hyn a welwch yma, yn dechrau gyda dau danlinellu.
Rydym yn cyfeirio at y rhain fel dulliau hud. Maen nhw'n bwnc mwy datblygedig, a byddwn yn cyffwrdd â nhw yn ein cyfres yn y dyfodol.
Heblaw am fod yn ddigyfnewid, mae tuples yn rhannu'r rhan fwyaf o nodweddion rhestr.
Yn ymarferol, byddwch chi'n defnyddio rhestrau y rhan fwyaf o'r amser, ond mae tuples hefyd yn ddefnyddiol. Os ydych chi am greu rhestr o eitemau a gwnewch yn siŵr nad ydych chi'n addasu'r rhestr honno'n ddamweiniol yn unman yn eich rhaglen, yna mae'n well defnyddio tuple.
Dadbacio
Yn yr adran hon, rydw i'n mynd i ddangos nodwedd bwerus i chi, mae gennym ni mewn python o'r enw dadbacio.
Gadewch i ni ddiffinio "cyfesuryn" tuple
coordinate = (1, 2, 3)
Nawr, dychmygwch mai dyma'r cyfesurynnau ar gyfer 'x', 'y' ac 'z'. Nawr, gadewch i ni ddweud, rydym am gael y gwerthoedd hyn a'u defnyddio mewn ychydig o ymadroddion cymhleth yn ein rhaglen. Efallai, rydym am eu cynnwys fel rhan o fformiwla fawr gymhleth.
Felly, gyda'n gilydd bydd yn rhaid i ni ysgrifennu cod fel hyn:
coordinate[0] * coordinate[1] * coordinate[2]
Bydd y llinell hon o god yn lluosi'r holl gyfesurynnau ond mae'n aneffeithlon ysgrifennu ein cod fel hyn. Yn gyntaf, gadewch i ni ddefnyddio dull gwell a storio'r cyfesurynnau hyn mewn newidynnau ar wahân.
x = coordinate[0]
y = coordinate[1]
z = coordinate[2]
Mae hynny'n well. Reit? Felly dim byd newydd hyd yn hyn. Nawr, gadewch imi ddangos nodwedd bwerus i chi o'r enw dadbacio a chyda hynny, gallwn gyflawni'r un canlyniad gyda llawer llai o god.
x, y, z, = coordinate
Nawr, mae'r llinell sengl hon o god yn cyfateb yn union i'r tair llinell o god a ysgrifennwyd uchod. Gadewch imi egluro i chi sut mae'n gweithio.
Pan fydd y dehonglydd Python yn gweld y datganiad hwn, bydd yn cael yr eitem gyntaf yn y tuple hwn ac yn ei aseinio i'r newidyn. Yn yr un modd, bydd ail a thrydydd eitem yn cael eu neilltuo i'r newidynnau. Wrth wneud hyn, rydym yn dadbacio'r tuple hwn yn 3 newidyn. Gadewch i ni wirio ein hallbwn.
Gellir dadbacio hefyd gyda rhestrau.
Geiriaduron
Rydyn ni'n mynd i ddysgu am eiriaduron yn Python. Rydym yn defnyddio geiriaduron mewn sefyllfaoedd lle rydym am storio gwybodaeth a ddaw fel parau gwerth allweddol.
Dyma enghraifft. Meddyliwch am gwsmer sydd â llawer o rinweddau fel enw, e-bost, rhif ffôn, cyfeiriad, ac ati. Nawr mae gan bob un o'r nodweddion hyn werth. Er enghraifft:
name = Jay
email = [email protected]
Yn yr enghraifft hon, ein allweddi yw enw, e-bost, a ffôn. Mae pob allwedd yn gysylltiedig â gwerth felly dyma lle rydyn ni'n defnyddio geiriadur. Gyda geiriadur, gallwn storio criw o barau gwerth allweddol. Gadewch imi ddangos i chi sut i ddiffinio geiriadur mewn python.
customer = {
"name": "Jay",
"email": "[email protected]",
"age": 30,
"is_verified": True
}
Gellir gosod yr allwedd i linynnau, rhifau, boolean, neu unrhyw beth. Mae'r allweddi yn unigryw a dim ond unwaith y gellir eu diffinio, hy ni allaf ddiffinio “oedran” eto gyda rhyw rif arall. Maent hefyd yn sensitif i achosion.
Nawr, os byddaf yn teipio customer["name"],
bydd yn galw enw'r cwsmer. Gadewch i ni ei argraffu ar y derfynell:
Gallwn hefyd ddefnyddio'r dulliau gyda geiriaduron. Gellir ailadrodd yr un swyddogaeth a ddangosir uchod trwy ddefnyddio'r dull “get”.
Mae un gwahaniaeth penodol rhwng y ddau ddull uchod. Gadewch imi ddangos hynny.
Gallwch weld, pan wnaethom argraffu allwedd nad oedd yn bodoli, ei fod wedi arwain at wall. Ar y llaw arall, mae defnyddio'r dull i alw allan nad ydynt yn bodoli yn arwain at ganlyniad “dim” sy'n cynrychioli absenoldeb gwerth. Wrth ddefnyddio'r dull “get”, gallwn hefyd gyflenwi gwerth diofyn.
Er enghraifft, os nad oes gan y geiriadur hwn allwedd “penblwyddi”, gallwn ei gyflenwi fel hyn:
customer.get("birthdate", "Jan 01, 1994")
Gallwn hefyd ddiweddaru unrhyw allwedd yn y geiriadur, yn debyg i restr. Gadewch i ni ddweud ein bod am ddiweddaru'r allwedd enw yn ein geiriadur. Dyma sut y byddwn yn ei wneud.
customer["name"] = "Shahbaz"
Gellir defnyddio cystrawen debyg i ychwanegu allwedd newydd yn ein geiriadur hefyd. Gadewch i ni ychwanegu'r “dyddiad geni” allweddol mewn modd tebyg.
customer["birthdate"] = "Jan 01, 1994"
Felly, dyma hanfodion defnyddio geiriaduron yn Python. Maen nhw'n hynod o bwysig ac mae ganddyn nhw lawer o gymwysiadau yn y byd go iawn.
Ymarfer
Rydych chi'n mynd i ysgrifennu rhaglen sy'n trosi digidau i eiriau fel hyn:
Ateb
Dyma'r ateb i chi guys.
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)
Yn yr un modd, gallwch chi adeiladu rhaglenni hwyliog eraill fel “trawsnewidydd emoji” Cael hwyl PYTHONERS!
Amlapio!
Gobeithio eich bod wedi mwynhau'r ddarlith hon. Nesaf, rydyn ni'n mynd i blymio i agwedd sylweddol ar raglennu Python, y swyddogaethau, a'r paramedrau.
Gadael ymateb