Čitatelia ako vy pomáhajú podporovať MUO. Keď uskutočníte nákup pomocou odkazov na našej stránke, môžeme získať pridruženú províziu. Čítaj viac.

Písanie pracovného kódu nie vždy stačí; mali by ste sa pokúsiť napísať dobre štruktúrovaný kód, ktorý je tiež ľahko pochopiteľný. Čistý kód vám a ostatným uľahčí údržbu vášho softvéru.

Python má mnoho funkcií a funkcií, ktoré vám môžu pomôcť napísať čistejší kód. Tu sú niektoré z najlepších.

1. Automatizujte zatváranie zdrojov pomocou kontextového správcu

Ručné zatváranie zdrojov môže byť nepohodlné, keď váš kód interaguje s množstvom zdrojov. Možno ste zabudli zatvoriť zdroj. V dôsledku toho váš program využíva systémové prostriedky neefektívne, čo môže viesť k a únik pamäte.

Tento kód otvorí súbor a potom ho manuálne zatvorí:

súbor = otvoriť('test.txt', 'r')
file_contents = file.read()
file.close()
slová = file_contents.split(' ')
počet_slov = len (slová)
vytlačiť (počet_slov)

Uzavretie súboru môžete automatizovať pomocou kontextového manažéra. Kontextoví manažéri spravujú zdroje za vás, takže si ich nemusíte pamätať manuálne. Použi

instagram viewer
s príkaz na vytvorenie kontextu na spravovanie zdroja:

s OTVORENÉ('test.txt', 'r') ako súbor:
file_contents = file.read()
slová = file_contents.split(' ')
počet_slov = len (slová)
vytlačiť (počet_slov)

Kód v tomto bloku beží v kontexte objektu súboru, ktorý OTVORENÉ sa vracia. Python automaticky zatvorí tento súbor, keď kód opustí tento kontext, aj keď sa vyskytne výnimka.

2. Písanie čistejších podmienených vyhlásení

Pri riešení sa vám môže stať, že napíšete veľa zbytočného kódu if-others vyhlásenia. Python má ternárne operátory, ktoré vám pomôžu písať kompaktnejšie príkazy. Nižšie uvedený blok kódu zobrazuje normálny príkaz if-else.

podmienka = Pravda

ak podmienka:
x = 1
inak:
x = 0

tlačiť (x)

Tento kód môžete prepísať pomocou ternárneho operátora, ktorý vám umožní zapísať podmienku do jedného riadku kódu.

podmienka = Pravda
x = 1ak stave inak0
tlačiť (x)

Je dôležité poznamenať, že pri implementácii jednoduchej logiky by ste mali používať ternárne operátory. V zložitejšej logike a vnorených podmienených príkazoch môže byť ternárny operátor ťažko pochopiteľný.

3. Sledovanie položiek pomocou funkcie Enumerate

Pri iterácii cez zoznam Python môžete pristupovať k indexu aktuálnej položky dvoma spôsobmi. Jedným zo spôsobov je použitie tradičného cyklu for. Funguje to dobre, ale kód nie je taký čistý, ako by mohol byť. Vyžaduje si to aj manuálnu inicializáciu indexu.

autá = ['bugatti', 'Mercedes', 'toyota']
index = 0

pre auto v autá:
tlač (index, auto)
index += 1

Ďalším spôsobom je použitie funkcie enumerate vstavanej v Pythone. To vám umožní prístup k indexu a zodpovedajúcej hodnote v zozname počas cyklu.

autá = ['bugatti', 'Mercedes', 'toyota']

pre index, auto v vymenovať (autá):
tlač (index, auto)

Teraz už nemusíte ručne sledovať index.

4. Slučovanie cez niekoľko zoznamov pomocou funkcie Zip

Môžete tiež použiť funkciu enumerate na opakovanie niekoľkých zoznamov naraz. Získajte index prvého zoznamu a potom ho použite na prístup k zodpovedajúcim hodnotám v ďalších zoznamoch.

english_names = ['jedlo', 'voda', 'auto']
španielske_mená = ['alimento', 'agua', 'auto']

pre index, meno v enumerate (anglicky_names):
španielčina = španielske_mená [index]
vytlačiť (f' {názov} v španielčine je {španielčina}')

Funguje to dobre, ale ak sa počet zoznamov zvýši, budete musieť napísať veľa zbytočného kódu. Ak chcete napísať kód čističa, môžete použiť funkciu zip a odovzdať mu názvy svojho zoznamu.

english_names = ['jedlo', 'voda', 'auto']
španielske_mená = ['alimento', 'agua', 'auto']

pre anglicky, španielsky v zip (english_names, spanish_names):
vytlačiť (f' {Angličtina} v španielčine je {španielčina}')

Mali by ste pokračovať v používaní funkcie enumerate slučka cez jeden zoznam. Ak však prechádzate cez niekoľko zoznamov spolu, zvážte použitie funkcie zip.

Pri zadávaní citlivých informácií by vstup nemal byť na obrazovke viditeľný ako obyčajný text. Zvyčajný spôsob prijímania vstupu v Pythone je použitie funkcie vstupu:

užívateľské meno = vstup('Používateľské meno:')
heslo = vstup('Heslo:')
vytlačiť ('Prihlasovanie...')

Funkcia vstupu však zviditeľní heslo ako obyčajný text na obrazovke počas písania. Aby ste sa uistili, že sa heslo nezobrazuje na obrazovke, mali by ste namiesto toho použiť funkciu getpass:

od getpass importovať getpass
užívateľské meno = vstup('Používateľské meno:')
heslo = getpass('Heslo:')
vytlačiť ('Prihlasovanie...')

Modul getpass je súčasťou štandardnej knižnice Pythonu, takže ho nemusíte inštalovať.

6. Čitateľnosť veľkých čísel pomocou zástupných symbolov podčiarknutia

Keď vo svojom programe pracujete s veľkými číslami, môžu byť veľmi ťažko čitateľné na prvý pohľad. Priradenie nesprávnych čísel k premenným vedie k chybnému programu a odhalenie tejto chyby môže byť veľmi ťažké.

číslo1 = 10000000000
číslo2 = 100000000
celkom = číslo1 + číslo2
vytlačiť (celkom)

Vyššie uvedený kód môžete prepísať pomocou podčiarkovníkov na oddelenie skupín tisícov, čo je bežný spôsob, ako zvýšiť čitateľnosť veľkých čísel.

číslo1 = 10_000_000_000
číslo2 = 100_000_000
celkom = číslo1 + číslo2
vytlačiť (f'{Celkom:,}')

Reťazec f vo funkcii print oddeľuje výstup pomocou oddeľovača tisícov.

7. Pomocou funkcie Pomocník sa dozviete viac o module

Pomocná funkcia je v Pythone veľmi dôležitá. Dá vám vedieť, ako používať modul, ktorý ste nainštalovali. Ak ho chcete použiť, nainštalujte modul, potom spustite interpret Pythonu v termináli a ukážte na cestu, do ktorej ste modul nainštalovali. Importujte modul a nakoniec zadajte názov modulu do funkcie pomocníka.

Ak chcete zistiť, ktoré metódy a atribúty môžete použiť, nahraďte funkciu pomocníka funkciou dir.

Funkcia dir vracia metódy a atribúty, ktoré modul podporuje, nie celú dokumentáciu. To je užitočné, keď chcete mať prehľad o tom, čo modul robí.

Písanie Cleaner Python kódu

Python je veľmi rôznorodý jazyk. Rovnako ako v každom inom jazyku sa časom zlepšíte v písaní čistejšieho kódu Pythonu.

Python má veľa vstavaných modulov a funkcií. V niektorých prípadoch môžete napísať ťažko čitateľný kód, pretože vám chýbajú znalosti o existencii určitej funkcie. Aby ste boli informovanejší, mali by ste si prečítať viac článkov o tom, ako napísať lepší kód.