Jifunze Mtiririko wa Udhibiti wa Python na Mizunguko ya Kuandika na Kurekebisha Hati za Shell - Sehemu ya 2


Katika nakala iliyotangulia ya safu hii ya Python tulishiriki utangulizi mfupi wa Python, ganda lake la safu ya amri, na IDLE. Pia tulionyesha jinsi ya kufanya hesabu za hesabu, jinsi ya kuhifadhi thamani katika vigezo, na jinsi ya kuchapisha tena thamani hizo kwenye skrini. Hatimaye, tulielezea dhana za mbinu na mali katika muktadha wa Upangaji wa Malengo ya Kitu kupitia mfano wa vitendo.

Katika mwongozo huu tutajadili mtiririko wa udhibiti (kuchagua kozi tofauti za hatua kulingana na habari iliyoingizwa na mtumiaji, matokeo ya hesabu, au thamani ya sasa ya kigezo) na vitanzi (kurekebisha kazi zinazorudiwa otomatiki) na kisha kutumia kile tunachofanya. wamejifunza kufikia sasa kuandika hati rahisi ya ganda ambayo itaonyesha aina ya mfumo wa uendeshaji, jina la mpangishaji, toleo la kernel, toleo na jina la maunzi ya mashine.

Mfano huu, ingawa ni wa msingi, utatusaidia kuonyesha jinsi tunaweza kuongeza uwezo wa Python OOP kuandika hati za ganda kwa urahisi kuliko kutumia zana za kawaida za bash.

Kwa maneno mengine, tunataka kutoka

# uname -snrvm

kwa

au

Inaonekana nzuri, sivyo? Hebu tukunja mikono yetu na tufanye hivyo.

Kudhibiti mtiririko katika Python

Kama tulivyosema hapo awali, mtiririko wa udhibiti huturuhusu kuchagua matokeo tofauti kulingana na hali fulani. Utekelezaji wake rahisi zaidi katika Python ni if/else kifungu.

Syntax ya msingi ni:

if condition:
    # action 1
else:
    # action 2

  1. Masharti yanapotathminiwa kuwa kweli, kizuizi cha msimbo hapa chini kitatekelezwa (inawakilishwa na kitendo # 1. Vinginevyo, nambari iliyo hapa chini itatekelezwa.
  2. Sharti linaweza kuwa taarifa yoyote inayoweza kutathminiwa kuwa kweli au si kweli. Kwa mfano:

1 < 3 # true
firstName == "Gabriel" # true for me, false for anyone not named Gabriel

  1. Katika mfano wa kwanza tulilinganisha thamani mbili ili kubainisha kama moja ni kubwa kuliko nyingine.
  2. Katika mfano wa pili tulilinganisha firstName (kigeu) ili kubaini kama, katika hatua ya sasa ya utekelezaji, thamani yake inafanana na \Gabriel
  3. Hali na kauli nyingine lazima ifuatwe na koloni (:)
  4. Ujongezaji ni muhimu katika Chatu. Mistari yenye ujongezaji unaofanana inachukuliwa kuwa katika sehemu moja ya msimbo.

Tafadhali kumbuka kuwa taarifa ya if/else ni moja tu ya zana nyingi za udhibiti zinazopatikana kwenye Python. Tuliikagua hapa kwani tutaitumia kwenye hati yetu baadaye. Unaweza kupata maelezo zaidi kuhusu zana zingine kwenye hati rasmi.

Loops katika Python

Kwa ufupi, kitanzi ni mlolongo wa maagizo au taarifa ambazo hutekelezwa ili mradi tu hali ni ya kweli, au mara moja kwa kila kitu kwenye orodha.

Kitanzi rahisi zaidi katika Python kinawakilishwa na kwa kitanzi kinarudia juu ya vitu vya orodha au mfuatano uliopeanwa unaoanza na kitu cha kwanza na kuishia na cha mwisho.

Sintaksia ya msingi:

for x in example:
	# do this

Hapa mfano unaweza kuwa orodha au mfuatano. Ikiwa ya kwanza, kigezo kinachoitwa x kinawakilisha kila kitu kwenye orodha; ikiwa ya mwisho, x inawakilisha kila mhusika kwenye kamba:

>>> rockBands = []
>>> rockBands.append("Roxette")
>>> rockBands.append("Guns N' Roses")
>>> rockBands.append("U2")
>>> for x in rockBands:
    	print(x)
or
>>> firstName = "Gabriel"
>>> for x in firstName:
    	print(x)

Matokeo ya mifano hapo juu yanaonyeshwa kwenye picha ifuatayo:

Moduli za Python

Kwa sababu za wazi, lazima kuwe na njia ya kuhifadhi mlolongo wa maagizo na taarifa za Python kwenye faili ambayo inaweza kuombwa inapohitajika.

Hiyo ndiyo hasa moduli ni. Hasa, moduli ya os hutoa kiolesura cha mfumo endeshi wa msingi na huturuhusu kutekeleza shughuli nyingi ambazo kwa kawaida tunafanya kwa kidokezo cha mstari wa amri.

Kwa hivyo, inajumuisha njia na mali kadhaa ambazo zinaweza kuitwa kama tulivyoelezea katika makala iliyotangulia. Walakini, tunahitaji kuiingiza (au kuijumuisha) katika mazingira yetu kwa kutumia neno kuu la kuagiza:

>>> import os

Wacha tuchapishe saraka ya sasa ya kufanya kazi:

>>> os.getcwd()

Hebu sasa tuweke yote haya pamoja (pamoja na dhana zilizojadiliwa katika makala iliyotangulia) ili kuandika script inayotaka.