KwamfutocinShirye-shirye

Python shirye-shirye da harshen: madaukai

A Python shirye-shirye da harshen (as "Python" ko "Python") Akwai hanyoyi da dama don madauki wasu mataki. Babban kayayyakin aiki, don aiwatar da wani iteration a Python - yayin da madaukai kuma ga. A yayin da madauki ne mafi duniya fiye da na, don haka shi ne hankali. Duk da haka, wannan ba ya nufin cewa shi ne mafi alhẽri! A for madauki da ake amfani da mafi sau da yawa, saboda da shi gane mafi wuya ayyuka ga halittar Multi-matakin da mnogouslovnyh shirye-shirye.

Python: zagayowar tare da postcondition

Inji da postcondition - shi madaukai yayin da, da su ne mafi duniya ƙungiya Tsarin a cikin shirye-shirye da yanayi. A yayin da madauki aiki a kan manufa da "dai". Wannan yana nufin da wadannan: yayin da a wasu yanayin zai koma mai gaskiya darajar, shi zai aiki! Wannan zane yana da ake kira "zagayowar" saboda aikin management na cyclically maimaita, suka fara da farko darajar. Out a cikin zagayowar yayin da Python da za a aiwatar a lokacin da darajar zama ƙarya. A wannan lokaci, da fassara watsa shirin zuwa da wadannan aikin-na ginin jumla kashi, watau wani sabon layi, wanda aka located bayan da block da postcondition yayin.

A shirye-shirye harsuna, Python hawan keke yayin postcondition da wadannan ginin kalma:

1. Yayin (yanayin):

2. magana

Zancen iya zama ko dai wani bayani daya ko dama. A yanayin ne ko da yaushe a gaskiya muhimmancin wani maras sifili. Wannan zane yana aiki muddin kayyade yanayin gaskiya ne.

Amfani da zagayowar yayin da a cikin "Python" misali

Rassmotirim yayin da madauki. Python ne quite ban sha'awa Tsarin ta iterations:

mai = 0
yayin da a <7:
buga ( "A")
mai = wani + 1

Mun sanar da cewa, m "a" ya tambaye ta da sifili. Sa'an nan kuma saita yanayi "yayin wani <7", wato, yayin da m "a" yana kasa da lambar "7", sa'an nan mu madauki za a kashe kamar dai akwai shi ne ƙarya.

A ƙarya (cewa shi ne, zai fita daga zagayowar) zai kasance a lõkacin da m zai zama mafi girma daga lambar "7". Domin wannan ya faru, shi ne kowane lokaci incremented ta 1, cewa mun nuna a cikin "wani = wani + 1".

Idan ka gudu da wannan shiri, da harafin "A" za a nuna 7 sau a cikin wani shafi!

A
A
A
A
A
A
A

M madauki yayin da a Python

Yadda za a yi wani m madauki a Python yayin? Tsammani ba wuya, domin da sake zagayowar gudanar har sai da shi ya karbi wani ƙarya darajar, kuma idan wannan darajar ne kawai ba a can? A amsar wannan tambaya shi ne mai yiwuwa riga haka duk abin da sarari. A wasu lokuta, da tanƙwara mara iyaka ne da ake bukata don warware wata matsala? Wannan misali zai yi aiki a ganin irin wannan shirin, a matsayin "Agogon." A nan, ba shakka, kana bukatar ka yi amfani da wani iyaka madauki, wanda za a har abada sabunta da kuma nuna lokacin.

Iyaka madauki ne sau da yawa wani kuskure novice shirye-shirye wanda manta don ƙara wani canji sake zagayowar yanayi.

Bari mu dauki wani look at wadannan yanki na Python code. A hawan keke a cikin wannan harka iterated illa ma sha Allahu (bayan "#" harafin ne a comment):

lambar = 1 # bayyana a m lamba da kuma sanya shi a darajar 1

yayin da yawan <10: # haifar da postcondition, wanda lissafa kasa da 10

Buga 'Hello' # yanayin (print «Hello» sakon)

Irin wannan shirin ya kamata ba rush zuwa tara, domin shi zai gudu illa ma sha Allahu. Mun tambayi irin wannan yanayi da cewa ba zai zama ƙarya dabi'u yanayin «yawan <10" a wannan yanayin da kuma ko da yaushe gaskiya, don haka da iteration za a kullum kawo N-th yawan "Hello" saƙonni. Domin dakatar da aiwatar da Tattara bayanan da madawwami, ba za ka bukatar ka latsa key hade Ctrl + C a cikin kwasfa.

Python: cakude. Duk da yake, da kuma ga madaukai

Kamar yadda aka ambata a sama, a cikin harshen da "Python" shirye-shirye, akwai hanyoyi da dama don tsara wani repeat kungiyar maganganu. Ya zo ga ceto madauki ga, abin da yake a bit daban-daban daga takwaransa yayin, saboda ta zane ne kadan mafi rikitarwa fiye da kawai postcondition. bari ba magana game da universality na sake zagayowar, saboda shi kawai ba, duk da haka, za a lura da cewa, ga madauki ne da yawa fiye da lokacin da. A ta hanyoyi da dama don warware zane da kuma cika wannan kadan outperform sake zagayowar tare da postcondition, don haka shi ne yafi iya amfani da su yi yawa maras muhimmanci ayyuka.

Wane kalubale ta sake zagayowar for? Lalle, wannan a matsayin cewa daga cikin yayin da - iterate wani tafiyar matakai. A shirin rubutu sanya a kan "Python", an yi amfani da ko'ina madauki for, wanda yake iya aiwatar da traversal qaddara jam'i na abubuwa da ya yi a cikin daban-daban jiki iterating kan su. Features wannan zane za a iya amfani da aiki Lines ko lists kamar wani abu iterated.

Misali na yin amfani da sake zagayowar a Python

Bari mu ce muna da wasu jerin lambobi, kuma muna bukatar kowane rabi (watau. E. Number) ya karu da uku raka'a. Don aiwatar da irin wannan aiki da za mu iya ta hanyar da madauki, domin madauki hanyoyin.

Bari mu dubi wani mai sauri misali, inda za mu yi da ya dace mataki domin wannan (bayan "#" harafin ne a comment):

spisok_chisel = [5, 15, 25, 35, 45, 55, 65, 75, 85, 95] # ayyana tsararru dauke da 10 Figures

count = 0 # halitta counter tare da sifilin

domin abubuwa a spisok_chisel: # iterate kan tsararru da kuma rubuta shi a cikin abubuwa

spisok_chisel [ƙidaya] = abubuwa + # 3 lambar kara tsararru na uku

count = ƙidaya + 1 # zuwa gaba lamba a kan index

A sakamakon na sama yi zai zama:

spisok_chisel = [8, 18, 28, 38, 48, 58, 68, 78, 88, 98]

A cikin misali, akwai wani m count, wanda muke bukata domin bikin canza dabi'u a cikin tsararru «spisok_chisel». The m count an rubuta wani index darajar kowane kashi a cikin tsararru (kowane lambar a cikin jerin). M «abubuwa» haɗu da sakamakon darajar a cikin jerin. A for madauki, mu ga yadda za a yi aiki da kowane abu a lamba jerin. Ciki da madauki, kowane Tazarar abu da index «count» kara da adadin na yanzu iterated kashi da uku. Sa'an nan mu index «ƙidaya» karu da daya, kuma ya kwarara da aiwatar da shirin sake koma cikin farko na yi talla ga. Saboda haka, madauki zai gudu har sai da shi ya sarrafa kowane kashi a cikin tsararru, ba ta da yanayin. Idan wani kashi ne samarwar, amma da aka kafa ta da yanayin, da sake zagayowar ne duka. Mun jawo hankali ga wata abu: idan ba ka rubuta wani layin na «count = ƙidaya + 1", duk da cewa wani tsararru na abubuwa sarrafa samu nasarar, sakamakon zai ko da yaushe a kara wa farko na lissafi abu index sifili c.

Yanzu za mu iya tunani a game yayin da madauki aiki akida, da kuma gane bambanci (tuna cewa a cikin Python daga cikin zagayowar tare da postcondition ne da za'ayi a kan tushen da ma'ana sharudda - gaskiya (da sake zagayowar ci gaba) ko karya (da sake zagayowar tsaya a nan)).

Yadda za mu bi da wani kirtani a Python amfani da zane ga?

A kowane shirye-shirye da harshen akwai hawan keke, da suka yi aiki, yawanci a kan wannan manufa, da bambance-bambance a bayyane ne kawai a cakude. Duk da haka, da na madauki a cikin harshen "Python" ba talakawa da kuma maras muhimmanci, saboda manufa ta aiki ba a iyakance ga counter. Wannan zane enumerates kowane abu dabam. Duk wannan za a iya sauƙi bayyana ta da misali na aiki tare da kirtani, amma da farko bari mu magance tare da abun da ke ciki na sake zagayowar for:

ga m

An adana a wani m sake zagayowar aiki sakamakon

a peremennaya_2

key kalmar «a» - da shi ne kafin a lõkacin da aiki tare da «for» sake zagayowar. Daga peremennoy_2 mu ja da darajar da cewa za a iterated. Domin tsabta, da kuma tsabta, bari mu dubi wani kananan misali na yadda za a yi aiki da kuma warware kirtani a Python:

char = 'shirye-shirye' # bayyana a m da kuma sanya wani kirtani darajar

domin slovo a char: # Create a m slovo, wanda zai ci gaba da busting lambobin na m char

Buga (slovo, karshen = '^') # Output da slovo da kuma bayan kowane harafi, saka wata alama - wani tsuntsu.

A sakamakon rubutun:

P ^ p ^ o ^ r ^ r ^ a ^ m ^ m ^ ^ kuma p ^ o ^ a ^ a ^ n ^ da ^ e

ci gaba da bayani

sadarwarka ci gaba da aiwatar da sauyin da aiwatar da gaba sake zagayowar, ba ta da yanayin, ko da sikẽli da madauki. Yi amfani da ci gaba da bayani na iya zama a biyu hawan keke - domin kuma yayin da.

Ka yi la'akari da wannan misali:

domin count a 'maimaita kowane harafi, fãce ga'

idan count == 'o':

ci gaba

Buga (count * 2, karshen = '')

A sakamakon zai kasance da wadannan:

Ppvvttrriimm kkaazhzhdduuyuyu bbuukkvvuu ,, kkrrmmee

Lokacin da horo samu wata wasika "o" in da kirtani 'maimaita kowane harafi, fãce ga' da kisa da shirin da aka nan da nan gabãtar da layin bayan da kalmar '' ci gaba '', inda yanayin da aka kafa don kwafi kowane harafi.

hutu bayani

Keyword «hutu» saka a cikin wuri inda sake zagayowar ne da za a katse ba tare da jiran ta ƙarshe, wanda aka bai da yanayin. Wannan zane yana sukan yi amfani da lokacin rubuta shirye-shirye da yawa dabaru da kuma yanayi.

La'akari da kananan misali na aikin hutun bayani:

domin count a 'maimaita kowane harafi, fãce ga'

idan count == 'o':

hutu

Buga (count * 2, karshen = '')

A sakamakon zai kasance da wadannan:

nn

Lokacin da horo samu wata wasika "o" in da kirtani 'maimaita kowane harafi fãce' da kisa da shirin da aka tsayar nan da nan, duk da cewa na gaba line ƙunshi wasu daga cikin yanayi na sake zagayowar.

Kalmar sihiri kuma

A jerin wani irin iya amfani da sadarwarka kuma. Mẽne ne a gare? Ya kuma cak cewa tun dā aka yi daga cikin madauki yana nufin hutu ko saba hanya. Toshe tare da qaddara dokoki a aiwatar kuma fara kawai a lokacin da yanayin da cewa fitarwa na sake zagayowar aka za'ayi ba tare da yin amfani da hutu tsarin.

La'akari da kananan misali:

domin count a 'hello duniya':

idan count == 'I':

hutu

kuma:

Buga ( 'Your jumla yana da wani harafi' I '')

The fitarwa na rubutun:

Your jumla ba harafin "I"

Misalai na hawan keke a baya domin na Python shirye-shirye da harshen

Kamar yadda aiwatar a Python baya sake zagayowar? Bari mu kwatanta cewa rubutu wani shirin cewa yana bukatar gane hali layi da kuma buga shi a baya domin. Yadda za a aiwatar da wannan?

Ka yi la'akari da misalin kasa:

slovo = 'shirye-shirye'

new_slovo = []

domin count a zangon (Len (s), 0, -1):

new_slovo.append (s [i-1])

new_slovlo

[ 'P', 'p', 'o', 'g', 'p', 'a', 'm', 'm', 'u', 'p', 'o', 'a', ' wani ',' n ',' u ',' e ']

Buga (new_slovo)

[ 'P', 'p', 'o', 'g', 'p', 'a', 'm', 'm', 'u', 'p', 'o', 'a', ' wani ',' n ',' u ',' e ']

Buga ( ''. riskar (new_slovo))

A sakamakon rubutun:

einavorimmargorp

nested madaukai

A Python, akwai kuma hawan keke na shirye-shirye da kuma zuba jari, wanda aka sanya a cikin jikin wani. A kowane sake zagayowar iya zama wani nested madauki, kuma don haka yana yiwuwa ya gina wani tsãni a rashin iyaka. A farko iteration na cikin matsanancin madauki ne kõma da wani kira ga voyayyen madauki, wanda aka kashe kafin kammala da kansa, sa'an nan sarrafa duk juyar a cikin jiki na cikin matsanancin madauki. Kowane harshe yana da halaye na nested madaukai, bari mu dubi yadda suka yi aiki a cikin "Python" shirye-shirye da harshen.

Idan kana amfani da nested madaukai, Python yayi da wadannan ginin kalma:

ga m, a jerin canji:

ga m, a jerin masu canji

mataki (s)

mataki (s)

A musamman fasali na nested madaukai ne da cewa a cikin zagayowar daga wani irin za a iya amfani da wani irin zagayowar! Wannan yana nufin cewa a wani zagayowar yayin (ko don) za a iya saka domin a sake zagayowar ko kuma yayin da mataimakin versa.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ha.delachieve.com. Theme powered by WordPress.