Početak rada s Python programiranjem u Linuxu - 1. dio


Rečeno je (i često traženo od strane agencija za zapošljavanje) da administratori sistema moraju biti vešti skript jezikom. Iako većina nas može biti ugodna da koristi Bash (ili druge Linux ljuske po našem izboru) za pokretanje skripti komandne linije, moćan jezik kao što je Python može dodati nekoliko prednosti.

Za početak, Python nam omogućava pristup alatima okruženja komandne linije i korištenje funkcija Objektno orijentiranog programiranja (više o tome kasnije u ovom članku).

Povrh svega, učenje Pythona može unaprijediti vašu karijeru u oblasti kreiranja desktop aplikacija i učenja nauke o podacima.

Budući da je tako jednostavan za učenje, toliko se koristi i da ima mnoštvo modula spremnih za korištenje (eksterne datoteke koje sadrže Python izjave), nije ni čudo što je Python preferirani jezik za učenje programiranja za prve- godine studenti informatike u Sjedinjenim Državama.

U ovoj seriji 2 članka, pregledat ćemo osnove Pythona u nadi da će vam biti od koristi kao odskočna daska za početak programiranja i kao brzi referentni vodič nakon toga.

Ipak, hajde da počnemo.

Instalirajte Python na Linux

Verzije Python-a 2.x i 3.x su obično dostupne u većini modernih Linux distribucija. Možete ući u Python ljusku upisivanjem python ili python3 u svoj terminalski emulator i izaći sa quit():

which python
which python3
python -v
python3 -v
python
>>> quit()
python3
>>> quit()

Ako želite da odbacite Python 2.x i koristite 3.x umjesto toga kada kucate python, možete modificirati odgovarajuće simboličke veze na sljedeći način :

sudo rm /usr/bin/python 
cd /usr/bin
ln -s python3.2 python # Choose the Python 3.x binary here

Usput, važno je napomenuti da iako se verzije 2.x još uvijek koriste, one se aktivno ne održavaju. Iz tog razloga, možda biste trebali razmisliti o prelasku na 3.x kao što je gore navedeno. Pošto postoje neke sintaksičke razlike između 2.x i 3.x, fokusiraćemo se na potonje u ovoj seriji.

Da instalirate Python 3.x na svoje Linux distribucije, pokrenite:

sudo apt install python3         [On Debian, Ubuntu and Mint]
sudo yum install python3         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a dev-lang/python   [On Gentoo Linux]
sudo apk add python3             [On Alpine Linux]
sudo pacman -S python3           [On Arch Linux]
sudo zypper install python3      [On OpenSUSE]    

Instalirajte Python IDLE na Linux

Drugi način na koji možete koristiti Python u Linuxu je kroz IDLE (Python Integrated Development Environment), grafički korisnički interfejs za pisanje Python koda.

sudo apt install idle         [On Debian, Ubuntu and Mint]
sudo yum install idle         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo apk add idle             [On Alpine Linux]
sudo pacman -S idle           [On Arch Linux]
sudo zypper install idle      [On OpenSUSE]    

Jednom instaliran, vidjet ćete sljedeći ekran nakon pokretanja IDLE. Iako liči na Python ljusku, možete učiniti više sa IDLE nego sa ljuskom.

Na primjer, možete:

1. lako otvarajte vanjske fajlove (Datoteka → Otvori).

2) kopirajte (Ctrl + C) i zalijepite (Ctrl + V) tekst, 3) pronađite i zamijenite tekst, 4) prikaži moguće dovršetke (funkcija poznata kao Intellisense ili Automatsko dovršavanje u drugim IDE-ovima), 5) promijeniti vrstu i veličinu fonta i još mnogo toga.

Povrh svega, možete koristiti IDLE za kreiranje desktop aplikacija.

Budući da nećemo razvijati desktop aplikaciju u ovoj seriji od 2 članka, slobodno birajte između IDLE i Python shell kako biste slijedili primjere.

Radite osnovne operacije s Pythonom na Linuxu

Kao što se i očekivalo, možete izvoditi aritmetičke operacije (slobodno koristite onoliko zagrada koliko je potrebno da izvršite sve operacije koje želite!) i vrlo lako manipulirati tekstualnim nizovima pomoću Pythona.

Također možete dodijeliti rezultate operacija varijablama i prikazati ih na ekranu. Zgodna karakteristika u Pythonu je konkatenacija – samo dostavite vrijednosti varijabli i/ili nizova u listi razdvojenoj zarezima (unutar zagrada) funkciji print i ona će vratiti rečenicu sastavljenu od stavki u redoslijed:

>>> a = 5
>>> b = 8
>>> x = b / a
>>> x
1.6
>>> print(b, "divided by", a, "equals", x)

Imajte na umu da možete miješati varijable različitih tipova (brojeva, nizova, logičkih vrijednosti, itd.) i kada jednom dodijelite vrijednost varijabli, možete kasnije bez problema promijeniti tip podataka (zbog toga se za Python kaže da je dinamički kucani jezik ).

Ako to pokušate da uradite u statički otkucanom jeziku (kao što je Java ili C#), pojaviće se greška.

Kratak komentar o objektno orijentiranom programiranju

U Objektno orijentiranom programiranju (OOP), svi entiteti u programu su predstavljeni kao objekti i stoga mogu komunicirati s drugima. Kao takvi, oni imaju svojstva i većina njih može izvoditi radnje (poznate kao metode).

Na primjer, pretpostavimo da želimo kreirati objekat pas. Neka od mogućih svojstava su boja, pasmina, dob, itd, dok neke od radnji koje pas može obavljaju se bark(), eat(), sleep() i mnogi drugi.

Imena metoda, kao što vidite, praćena su skupom zagrada koje mogu (a ne moraju) sadržavati jedan (ili više) argumenata (vrijednosti koje se prosljeđuju metodi).

Ilustrujmo ove koncepte jednim od osnovnih tipova objekata u Pythonu: listama.

Ilustriranje metoda i svojstava objekata: liste u Pythonu

Lista je uređena grupa stavki, koje ne moraju nužno biti iste vrste podataka. Da kreirate praznu listu pod nazivom rockBands, koristite par uglastih zagrada na sljedeći način:

Da biste dodali stavku na kraj liste, proslijedite je metodi append() na sljedeći način:

>>> rockBands = []
>>> rockBands.append("The Beatles")
>>> rockBands.append("Pink Floyd")
>>> rockBands.append("The Rolling Stones")

Da uklonimo stavku sa liste, možemo proslediti određeni element metodi remove(), ili poziciju elementa (broj počinje od nule) na listi u pop() .

Drugim riječima, možemo koristiti bilo koju od sljedećih opcija da uklonimo “The Beatles” sa liste:

>>> rockBands.remove("The Beatles")
or
>>> rockBands.pop(0)

Možete prikazati listu dostupnih metoda za objekat pritiskom na Ctrl + Space nakon što unesete ime praćeno tačkom:

Svojstvo objekta liste je broj stavki koje sadrži. Zove se zapravo dužina i poziva se prosljeđivanjem liste kao argumenta ugrađenoj funkciji len (usput rečeno, naredba print, koju smo ranije prikazali - je još jedan ugrađeni Python funkcija).

Ako upišete len praćeno otvaranjem zagrada u IDLE, vidjet ćete zadanu sintaksu funkcije:

Šta je sa pojedinačnim stavkama na listi? Imaju li i one metode i svojstva? Odgovor je da. Na primjer, možete pretvoriti stavku niza u velika slova i dobiti broj znakova koji sadrži na sljedeći način:

>>> rockBands[0].upper()
'THE BEATLES'
>>> len(rockBands[0])
11
Sažetak

U ovom članku dali smo kratak uvod u Python, njegovu ljusku komandne linije i IDLE i pokazali kako izvoditi aritmetička izračunavanja, kako pohranjivati vrijednosti u varijable, kako ispisati te vrijednosti nazad na ekran (bilo samostalno ili kao dio konkatenacije), i objasnio kroz praktičan primjer koje su metode i svojstva objekta.

U sljedećem članku ćemo raspravljati o kontroli toka s uvjetom i petljama. Također ćemo pokazati kako koristiti ono što smo naučili za pisanje skripte da nam pomogne u našim zadacima sysadmina.

Da li Python zvuči kao nešto o čemu biste željeli naučiti više? Pratite drugi dio u ovoj seriji (gdje ćemo između ostalog kombinirati blagodati Pythona i alata komandne linije u skripti), a također razmislite o kupovini najboljih udemy python kurseva kako biste nadogradili svoje znanje.

Kao i uvijek, možete računati na nas ako imate bilo kakvih pitanja o ovom članku. Samo nam pošaljite poruku koristeći kontakt formu ispod i mi ćemo Vam se javiti u najkraćem mogućem roku.