Airson lùb ann am python

Tha cuid de fheartan eadar-dhealaichte aig an For loop ann am Python seach cànanan prògramaidh eile. Bidh mi a’ fàgail na tha mi ag ionnsachadh dhut airson a’ chuid as fheàrr fhaighinn à aon de na lùban as motha a chleachdar.

Ann am Python thathar an dùil a bhith ag aithris tro nì a ghabhas a dhèanamh, biodh e na liosta, na nì, no na eileamaid eile.

Tha an structar a leanas

h2=[ 'Valencia', 'Castellón', 'Alicante']

for j in h2:
   instructions

An seo tha h2 na eileamaid a ghabhas atharrachadh mar eisimpleir liosta h2 = [ 'Valencia', 'Castellón', 'Alicante']. Bidh 3 iterations aig an lùb, anns a’ chiad j = Valencia anns an dàrna fear an caochladair j = Castellón.

Agus le seo is urrainn dhuinn an stiùireadh a tha sinn ag iarraidh a mhìneachadh, an-còmhnaidh a’ cuimhneachadh an indentation, rudeigin riatanach ann am Python agus a bhios mòran dhaoine a’ seachnadh, a’ faighinn mhearachdan sa chòd.

Dèan aithris airson lùb àireamh cheart de thursan.

Ma tha sinn airson gun dèan e ath-aithris grunn thursan mar as urrainn dhuinn a dhèanamh ann an C ++ feumaidh sinn raon () a chleachdadh. Airson aithris 10 tursan bhiodh sinn a’ cleachdadh a

for element in Range(9):
    instructions

Chuir sinn 9 agus chan e 10 oir tha Raon a’ tòiseachadh bho 0, agus mar sin bho 0 gu 9 tha 10 tionndadh no tionndadh den lùb.

Tha Knowing Range () a’ leigeil leinn, an àite a bhith a’ cur àireamh a-staigh, caochladair a chuir, leis am bi tòrr a bharrachd smachd againn.

var = 10
for element in Range(var):
    instructions

Tha mòran roghainnean aig gnìomh Raon, bruidhnidh mi mu dheidhinn ann am post eile, gus nach bi thu a’ measgachadh an t-susbaint agus ga leasachadh cho mòr ‘s as urrainn.

Faodar tòrr a bharrachd a dhèanamh gus smachd a chumail air sruthadh an airson lùb.

Briseadh agus Lean air adhart Aithrisean

Tha 2 fheart glè fheumail ann a leigeas leinn lùb a dhèanamh gu math obrachail, fon bhriseadh agus leantainn air adhart. Mar as trice bidh iad air an cleachdadh le cumhachan, ma tha, a’ sgrùdadh a bheil rudeigin fìor.

Bidh iad ag obair ann an lùban eile, agus tha aithris inntinneach eile ann a tha pas, a tha na aithris a thèid a chuir gu bàs ach nach dèan dad agus a tha air leth freagarrach airson nuair a tha sinn airson structar a mhìneachadh a dh’ fheumas òrdughan ach tha sinn airson an cur nas fhaide air adhart (tha beachdan chan eil e feumail airson seo)

Break

Le briseadh is urrainn dhuinn an lùb fhàgail aig àm sam bith. Mar a shaoileadh tu gu math feumail. Tha e fìor gu bheil structaran eile ann leithid Fhad,

numeros = [1, 2, 4, 3, 5, 8, 6]
for n in numeros:
    if n == 3:
        break
else:
    print('No se encontró el número 3')

Lean air adhart

Bheir e oirnn a dhol chun ath eileamaid sa lùb.

numeros = [1, 2, 4, 3, 5, 8, 6]
for n in numeros:
    if n == 3:
        continue
else:
    print('No se encontró el número 3')

https://j2logo.com/bucle-for-en-python/

Airson … eile

Tha structar ann a thàinig bho For, a tha airson ... eile

datos = [1, 2, 3, 4, 5]
for n in datos:
    if n == 2:
        break
else:
    print('No hay 2')

Dh'èirich an structar seo an dèidh dhaibh faicinn gu robh feum air agus gun robh mòran dhaoine a' cleachdadh dhòighean eile airson seo a choileanadh. Mar sin, bidh iad a’ cuideachadh dhaoine agus a’ faighinn còd nas leughaidh

airson _ gu leir

Tha mi air seo fhaicinn ann an cuid de phrògraman ged nach do chleachd mi a-riamh e.

Nuair a bhios sinn ag ath-aithris nì, liosta, faclair, msaa, ach nach eil susbaint nan eileamaidean sin inntinneach dhuinn, is urrainn dhuinn a chomharrachadh le _

Eisimpleir:

Tha sinn airson na h-eileamaidean de liosta a chunntadh ach chan eil dragh againn dè a th’ ann, tha sinn dìreach ag iarraidh a fhad.

h2=[ 'Valencia', 'Castellón', 'Alicante']
count = 0
for _ in h2:
    cont += 1

Ann am mòran làraich tha iad a’ moladh gun a bhith a’ dèanamh ana-cleachdadh air a’ chleachdadh seo. Chan eil fios agam dè na buannachdan a tha an cois seo, a bheil e nas luaithe?

a' lùbadh air ais

air ais airson lùb. Gus ath-aithris bho thoiseach gu deireadh

Bidh e a’ cleachdadh a’ ghnìomh air ais () a chaidh a thoirt a-steach ann am python 3

h2=[ 'Valencia', 'Castellón', 'Alicante']

for j in reversed(h2):
    print (j)

A 'lùbadh le dà chlàr-amais, luach an ath-aithris agus clàr-amais

Le àireamhachd() is urrainn dhuinn obrachadh le clàran-amais cruinneachadh. Oir iomadh uair, a bharrachd air luach an nì ite fhèin, tha ùidh againn anns a’ chlàr-amais aige.

h2=[ 'Valencia', 'Castellón', 'Alicante']

for j, h in enumerate(h2):
    print j, '-->', h2[i] 

Ag ath-aithris thairis air 2 liosta

Is e roghainn inntinneach eile zip() a nì ar n-obair nas fhasa agus a nì ar còd nas sìmplidhe agus nas leughaidh.

h2=[ 'Valencia', 'Castellón', 'Alicante']
cod=[100, 200, 300]

for j, h in zip(h2, cod):
    print h2, '-->', cod 

Ann am Python 2.x chaidh izip() a chleachdadh gus an gnìomh seo a neartachadh, ach ann am Python 3 tha izip zip()

A 'lùbadh ann an òrdugh òrdaichte

Dèan aithris ann an òrdugh le luach an nì an àite a chlàr-amais. air a sheòrsachadh () air a chleachdadh

colors = ['rojo', 'amarillo', 'verde']

for color in sorted(colors):
    print color

Agus ma tha sinn airson a dhèanamh air ais

colors = ['rojo', 'amarillo', 'verde']

for color in sorted(colors, reverse=True):
    print color

Òrdugh seòrsachaidh gnàthaichte

colors = ['rojo', 'amarillo', 'verde']

for color in sorted(colors, key=len):
    print color

Sentinel Luach a-steach airson lùb

Is e luach sentinel luach a bheir air an lùb crìochnachadh. Mar as trice tha e air a thaisbeanadh ann an lùb ùine, ach tha Raymond Hettinger a 'sealltainn dhuinn mar a chleachdas tu e le airson, a tha nas luaithe

blocks = []
for block in iter(partial(f.read, 32), ''):
    blocks.append(block)
    print (block)

Traverse faclairean le airson

Tha faclairean nan innealan riatanach airson dàimhean a chur an cèill agus buidhnean a dhèanamh.

Faodaidh tu a dhol tron ​​fhaclair ann an dòigh thraidiseanta le airson, ach cha till sin am fiosrachadh gu lèir, cha bhith e comasach dhuinn obrachadh le luachan agus clàran-amais mar sin, mura tòisich sinn air cunntairean is eile a chur ris. eileamaidean.

d = {'casa': 'azul', 'coche': 'rojo', 'hombre': 'verde'}

for k in d.keys():
    if k.startswith('r'):
        del d[k]

San dòigh seo, a bharrachd air na h-eileamaidean fhaicinn, is urrainn dhuinn am faclair atharrachadh le bhith ag atharrachadh eileamaidean no gan sguabadh às, aig an aon àm gu bheil an airson lùb air ath-aithris.

d.keys() a’ gairm nan argamaidean agus a’ dèanamh leth-bhreac a bhios e a’ stòradh ann an liosta as urrainn dhuinn atharrachadh.

Gus clàran-amais agus luachan fhaighinn an àite rudeigin traidiseanta agus sin a’ chiad rud a thig gu inntinn an fheadhainn againn a thòisicheas prògramadh

for k in d:
    print k, '-->', d[k]

Cleachdaidh sinn an roghainn seo fada nas luaithe

for k, v in d.items():
    print k, '-->', v

iteritems() na nithean()

Bruidhinn mu dheidhinn Loops in Python le Raymond Hettinger

Is e seann bhidio ach fìor dhealbhach a th’ ann, far a bheil Raymond Hettinger anns a’ chiad 20 mionaid a’ teagasg dhuinn na diofar chothroman a th’ ann an lùban ann am Python agus a’ toirt dhuinn eisimpleirean air mar a dh’atharraicheas iad structaran a bhios daoine a’ cleachdadh gu farsaing gu gnìomhan, gus an lùb a dhèanamh nas leughaidh agus nas sìmplidh. .còd.

Fàg beachd