Clár ábhair
Цikl le haghaidh python i timthriall agus – ráitis bogearraí teanga, eadhon: oibreoirí atriallta, lighairle cód athrá uimhir tugtha am.
Цикл Le haghaidh — сintacs
Mar a míníodh cheana, cáireamh le haghaidh in Python is iterator based onй in aghaidh an timthriallaféiniúlacht. an bhfuil sé gníomhartha ag eilimintí tuple и liosta, stór focal eochracha agus eile rudaí itriallach.
Tosaíonn lúb i Python leis an eochairfhocal, agus ina dhiaidh sin ainm athróg treallach a stórálann luach an chéad ruda eile sa seicheamh tugtha. Breathnaíonn an chomhréir ghinearálta le haghaidh…in in python mar seo:
le haghaidh in: eile:
Comhpháirteanna “seichimh” liostaithe ceann i ndiaidh a chéile athróg timthriall. Nó in áit, pointí athraitheacha go den sórt sin eilimintí. Do chách acu déantar “gníomh”.
Simplí le haghaidh lúb i Python le sampla ar leith:
>>> teangacha = ["C", "C++", "Perl", "Python"] >>> le haghaidh x i dteangacha: ... print(x) ... C C++ Perl Python >>>
Tá an bloc eile speisialtaú. Má tá a Ríomhchláraitheoirыag obair с Perl eolachы leis, Go dóibh siúd a idirghníomhaíonn с C agus C++ — is nuálaíocht é seo. Semantach é feidhmeanna тcomhionann agus lúb.
Ní dhéantar é a fhorghníomhú ach amháin nuair nach mbíonn an lúb “stoptha” ag an ráiteas sosa. Is é sin, ní dhéantar é a fhorghníomhú ach amháin tar éis do na heilimintí go léir dul tríd an seicheamh sonraithe.
Sos oibreoir i python - sos
Má tá lúb le haghaidh an chláir gá Idirbhriseadhan ráiteas briste, he chríochnútéann séagus clár sreabhadh Beidh áireamha bheith gan gníomhachtaithe ó eile.
Níos minice frásaí a bhriseadh i pythonuacht le ráitis choinníollacha.
edibles = ["chops", "dumplings", "uibheacha", "cnónna"] le haghaidh bia in edibles: más bia == "dumplings": print ("Ní itheann mé dumplings!") break print ("Ar fheabhas, delicious " + bia) else: print ("Tá sé go maith nach raibh aon dumplings!") print ("Tá an dinnéar thart.")
Má ritheann tú an cód seo, gheobhaidh tú an toradh seo a leanas:
Go hiontach, chops delicious. Ní ithim dumplings! Tá an dinnéar thart.
Bainimid “dumplings” den liosta sonraí atá ann cheana agus faighimid:
Sár chops delicious Den scoth, uibheacha delicious Den scoth, cnónna delicious Rud maith nach raibh aon dumplings! Tá an dinnéar thart.
oibreoir scipeála python - lean ar aghaidh
Ligean le rá nach bhfuil an t-úsáideoir antipathy do tháirgí den sórt sin chomh mór a thréigean go hiomlán a n-ídiú. Mar thoradh air sin, leanann an lúb leis an oibreoir continue
. Úsáideann an script seo a leanas an ráiteas continue
, chun leanúint ar aghaidh ag atriall tríd an liosta ar “teagmháil dumpling”.
edibles = ["chops", "dumplings", "uibheacha", "cnónna"] le haghaidh bia in ite: más bia == "dumplings": print ("Ní itheann mé dumplings!") Lean ar aghaidh ag cló ("Great, delicious " + bia) # d'fhéadfadh gur cód é seo chun taitneamh a bhaint as bia :-) else: print("Is fuath liom dumplings!") print("Tá an dinnéar thart.")
An bunlíne:
Go hiontach, chops delicious. Ní ithim dumplings! Uibheacha iontacha, blasta Cnónna iontacha blasta is fuath liom dumplings! Tá an dinnéar thart.
Ag atriall liostaí leis an bhfeidhm raon().
Más mian leat rochtain a fháil ar innéacsanna liosta, níl sé soiléir conas lúb le haghaidh a úsáid chun na críche seo. Is féidir rochtain a fháil ar na heilimintí go léir, ach fanfaidh innéacs na n-eilimintí dorochtana. Mar sin féin, tá modh ann chun innéacs na heiliminte agus an eilimint féin a rochtain. Chun na críche seo, úsáidtear an fheidhm range()
in éineacht leis an bhfeidhm fad len()
:
Fibonacci = [0,1,1,2,3,5,8,13,21] do mé sa raon (len(fibonacci)): print(i,fibonacci[i])
Faigh:
0 0 1 1 2 1 3 2 4 3 5 5 6 8 7 13 8 21 XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX
Aird! Nuair a chuirtear i bhfeidhm é
len()
кlist
ortuple
, faightear líon comhfhreagrach na n-eilimintí den seicheamh tugtha.
Deacrachtaí atriallta thar liostaí
Nuair a dhéantar atriall thar liosta, moltar dinimic liosta a sheachaint sa chorp lúb. Ar mhaithe le soiléireacht, is féidir linn an rogha seo a leanas a thairiscint:
dathanna = ["dearg"] le haghaidh i i dathanna: más rud é i == "dearg": dathanna += ["dubh"] más rud é i == "dubh": dathanna += ["bán"] cló (dathanna)
Cad a tharlaíonn nuair a dhéantar iarratas print(colours)
?
['dearg', 'dubh', 'bán']
Chun é seo a sheachaint, moltar idirghníomhú leis an gcóip le slisní, mar atá sa sampla thíos:
dathanna = ["dearg"] le haghaidh i i dathanna[:]: más rud é i == "dearg": dathanna += ["dubh"] más i == "dubh": dathanna += ["bán"] cló (dathanna )
Toradh:
['Dubh Dearg']
Athraíodh an liosta colours
, ach níor chuir an gníomh seo isteach ar an lúb. Níor tháinig aon athrú ar na sonraí ar ghá iad a atriall le linn an lúb a chur i gcrích.
Íosluchtaigh python 3
Is feidhm Python ionsuite é Enumerate. Níl an chuid is mó de thosaitheoirí, chomh maith le roinnt ríomhchláraitheoirí a bhfuil taithí acu, ar an eolas go bhfuil sé ann. Ligeann sé duit atriallta na lúibe a chomhaireamh go huathoibríoch. Mar shampla:
le haghaidh cuntar, luach san áireamh(some_list): print(cuntar, luach)
Feidhm enumerate
Bíonn argóint roghnach freisin (luach an tionscnaimh, glactha de réir réamhshocraithe le haghaidh 0
). Rud a fhágann go bhfuil sé níos éifeachtaí.
my_list = [ 'úll', 'banana', 'silíní', 'peach'] le haghaidh c, luach san áireamh (my_list, 1): print(c, luach) # Toradh: # 1 úll # 2 banana # 3 silíní # 4 phéitseog