Verovatno
se svi posetioci moga bloga pitaju, šta je sad ovo; pa ti si C# programer; otkud
baš sad da se interesuješ za Python programski jezik. Izgleda da u poslovnom svetu poznavanje
jednog programskog jezika nije odavno dovoljno. Ako pogledate autore mnogih informatičkih
knjiga, uočićete da iza njih stoji poznavanje mnogih programski jezika. Prvo je
krenulo od toga da sam se zainteresovao za Visual Studio Code i .Net Core, ali
to je probudilo neka moja prijatna sećanja kad sam se bavio hakerisanjem i Linux
operativnim sistemima. Zato sam izbrisao celi hard disk sa svog novog laptopa
koji je imao instaliran Windows 10 Professional operativan sistem i umesto
njega instalirao Kali Linux. Tada mi se otvorio celi novi svet radoznalosti i
novi mogućnosti. Naravno, to ne znači da se odričem C# programskog jezika, ostalo
je još mnogo toga da se nauči i odradi na ovom blogu, ali vreme je i da se okrenemo drugim
programskim jezicima. Ali zašto baš Python programski jezik? Bavićemo se mi i
drugim programskim jezicima; ali na Python sam naleteo tražeći programski jezik
koji se najčešće koristi na Linux operativnim sistemima. Onda sam otkrio nešto
o čemu nisam ni sanjao. Sintaksa i lakoća učenja Python programskog jezika; čak
i na spram C# programskog jezika je neverovatna. Python programski jezik se najviše
uči u mnogim američkim školama, često je proglašavan omiljenim programskim
jezikom godine, koriste ga mnoge svetske kompanije poput Facebook, Samsung, Google,
YouTube, Yahoo i druge. Sa Python programskim jezikom jednostavno možete
automatizovati mnoge poslove, koristi se i za desktop i za Internet aplikacije
dok snjime možete programirati i robote ili ga koristiti zajedno sa drugim
programskim jezicima. Bitno je navesti da je on besplatan i da za ovaj
programski jezik nisu potrebne nikakve licence.
Prva
stvar, čestitamo ukoliko ste doneli odluku da se upustite u učenje Python programskog jezika. Ukoliko ste u mogućnosti, najbolje bi bilo da koristite Linux operativni sistem; međutim ukoliko nemate nameru da se bavite i Linux operativnim sistemom, onda je instalacija Python programskog jezika za Windows
operativni sistem jednostavnija. Jednostavno posetite zvaničnu prezentaciju Python programskog jezika ovde; skinite instalacioni fajl i instalirajte Python 3.7 za Windows operativni sistem. Jednostavna
instalacija će odraditi sve za vas. Posle jednostavno možete koristiti IDLE ( Python
3.7 32-bit) ili isti za 64-bit; ili jednostavno otvorite Command Prompt i
ukucajte Python; i spremni ste za programiranje.
( Naziv Python programskog jezika je nastao od Monty Python aktera )
Za
razliku od C# programskog jezika, Python programski jezik je programski jezik
visokog nivoa koji se interpretira. To u prevodu znači da se ne pretvara u mašinski
kod i zbog toga radi nešto sporije i ne sakriva vaš kod. Međutim, postoje alati
koji mogu vaš program pisan u Python programskom jeziku kompajlirati u bitove i
otkloniti ove nedostatke ako vam je baš to neophodno. Autor ovog programskog
jezika je Gvido van Rosum iz Holandije koji ga je kreirao još krajem 80-tih. Python programski jezik podržava imperativni, objektno orjentisani stil programiranja
i isporučuje se interpretatorom i veoma razvijenom standardnom bibliotekom
modula. Podržava skoro sve operativne sisteme; u većini Linux operativni
sistema dolazi instaliran, možete odmah da programirate u terminalu i trenutno
aktuelna verzija je 3.7. Velika je razlika i nekompatibilnost između verzije
3.7 i 2.7 i zato se potrudite da uvek imate instaliranu 3.x verziju. Za učenje Python programskog jezika možete da koristite mnogo programskih okruženja jer je
izuzetno podržan dok vaše programe možete pisati i u bilo kojem tekstualnom
editoru. Izbor je samo na vama. Naziv Python za ovaj programski jezik ne potiče
od naziva zmije, već od grupe Monty Python; aktere istoimene britanske humorističke
serije. Zato Python programere često nazivaju Pythonistas.
Šta
da instaliram da bi programirao u Python programskom jeziku?
( IDLE (Python 3.7 32-bit) instaliran na Windows 10 Professional )
Međutim,
ukoliko ste se odlučili da koristite i Linux operativni sistem, onda su tu
stvari nešto komplikovanije. U zavisnosti koju distribuciju Linux operativnog
sistema koristite, prvo proverite šta već imate instalirano. Najbolje pogledajte
sledeći video. Ja koristim Kali Linux distribuciju, ali postupak je verovatno
sličan i za druge Linux distribucije. Ukoliko i vi želite da instalirate hakersku Kali Linux distribuciju na vaš laptop; pogledajte prvo ovaj video; zatim sledeći.
( Linux - 6. How to Install PyCharm Community Edition to Kali Linux )
Mogu
li ja kao C# programer da programiram sa Python programskim jezikom u VS ili VSC?
Razumljivo
je da kao C# programer ste vezani za Microsoft Visual Studio .Net programsko
okruženje. I meni je teško i zamisliti neko drugo. Ali moja želja za promenama
i radoznalost smatraju da je PyCharm i Kali Linux jako interesantno okruženje
za Python programiranje. Naravno, najlakše je podesiti Python za Microsoft Visual Studio .Net programsko okruženje. Jednostavno, otvorite Control Panel, zatim Programs and
Features, kliknete desnim tasterom miša na Microsoft Visual Studio Community 2017; ili već koju ediciju posedujete. Kliknite u padajućem meniju Change i pokrenete Visual Studio Instaler. Da bi se isti pokrenuo,
tražiće od vas da uradite Update. Kliknite na dugme Update; čekirajte Python
development i sa vaše desne strane izaberite opcije koje želite da uključite u Python programski jezik. Kliknite na dugme Modify i sačekajte da se sve instalira i možete
koristiti Microsoft Visual Studio .Net da programirate u Python programskom
jeziku. Prilikom kreiranja Python aplikacija, Microsoft Visual Studio .Net će vam ponuditi mnoge Python šablone.
( Instalacija Python-a u Microsoft Visual Studio .Net okruženju )
Što
se tiče Visual Studio Code-a, instalacija je malo komplikovanija.
Pretpostavljam ako koristite Visual Studio Code da ga imate instaliranog na
vašem Linux operativnom sistemu. Ukoliko ga još niste instalirali, da bi ste
sebe poštedeli velikih problema i vremena najbolje pogledajte ovaj video.
Ukoliko imate instaliran Visual Studio Code, možete pogledati sledeći video
kako se podešava Python u Visual Studio Code programskom okruženju.
( Linux - 8. How to Set up Python in Visual Studio Code )
Pravimo
naš prvi program u Python-u
Ukoliko
ste doneli odluku u kom programskom okruženju ćete učiti Python programski
jezik i ukoliko ste instalirali i podesili sve što vam je potrebno za programiranje
možemo početi. Imajte u vidu da ja koristim PyCharm i Kali Linux distribuciju i nadam se da
će te se prilagoditi drugačijem okruženju od vašeg, iako bi ja voleo da
koristite isto. Sve u svemu kod je isti. Vi možete odmah i u terminalu ili
Command Prompt-u pisati i izvršavati Python komande, na primer:
Python 3.7.0
(v3.7.0:1bf9cc5093, Jun 27 2018, 04:06:47) [MSC v.1914 32 bit (Intel)] on win32
Type "help",
"copyright", "credits" or "license" for more
information.
>>> 3 + 7 * 12
87
>>>
Međutim,
ja želim da sačuvate vaše programe, da možete uvek da se podsetite nekog
primera kad vam je potreban ili jednostavno da pronađete ovaj post na blogu
kada vaši primeri vam nisu pri ruci. Zato kreirajte novi fajl sa egzistencijom
*.py i nazovite ga first_program.py. Uobičajena je praksa kada pravite Python programe da napišete naziv vašeg programa, autora i datum kad ste započeli
projekat. Ponekad programeri ostavljaju i svoju email adresu u slučaju da je potrebno
kontaktirati autora. Zato naš program započinjemo multi-linijskim komentarom.
""" first_program
Manuel
Radovanovic
26-avg-2018
"""
Naravno
ovde treba da bude vaše ime i posebno obratite pažnju da u datumu koristite
slova u mesecu da nebi dolazilo do zabune. Ovakav datum 08/05/18 bi mogao zbuniti
programere koji će posle vas održavati vašu aplikaciju jer se ne zna da li je
ovo 8 maj 2018 ili 5 avgust 2018. Često možete videti da programeri sve više
pišu datume i na ovakav način 2018-08-05. Možete vi pogledati i vaš fajl kad je
kreiran i od koga i kako se zove u terminalu, kao što možete i automatizovati
da se ovakav komentar uvek sam ispiše prilikom kreiranja svakog novog *.py fajla. Ali zato stvarno nema
potrebe, već sledite praksu. Napišite sledeći multi-linijski komentar:
''' This is multi-line comment.
Python developers use rarely multi-line
comments.
Python always ignore space and the comment
lines. '''
Na
osnovu ovog komentara možete zaključiti da se multi-linijski komentari prave sa
tri navodnika “““ i sa istim se završavaju. Python u svakom slučaju ignoriše
komentare ali i sav prazan prostor između komandi. Komentar možete da napišete
i ovako:
' this can use for comment but I do not recommend it. '
ili
" this can use for comment but I don't recommend it too.
"
U
svakom slučaju ovo vam ne preporučujem jer i pored toga što će Python ignorisati ovakav red, komentarisanje na ovakav način će definitivno zbuniti
programere jer asociraju na string vrednost. Možete pomisliti, pa šta to je
samo neki mali bez veze programčić, ali treba da se učite disciplini od početka
jer možete imati velike komplikacije kada budete radili sa hiljadama linija
koda. Sticanje odličnih navika je velika propozicija za uspeh. Ovo je pravilan
način da pišete komentar i njega će te najčešće susretati:
# this is the
most used way to comment
Sad
kad ste naučili kako se pišu komentari u Python programskom jeziku, možete
videti kako se nešto štampa na konzoli ili terminalu. Otkucajte sledeći izraz:
# print some
strings
print('This is my
first application in Python.')
Znači
za ispis stringova na konzoli ili terminalu se koristi naredba print sa
zagradama i polunavodnicima ’. U ranijim verzijama Python programskog jezika
vam nisu bile potrebne male zagrade ali sada je to obavezno. Takođe za ispis na
konzolu ili terminal stringova možete koristiti i navodnike “.
# you can use
and "" instead of '' too
print("I'm so
excited to learn a new programming language.")
Možete
pokrenuti vaš program i videti kako to izgleda:
This is my first application in Python.
I'm so excited to learn a new programming language.
Da
bi vaši programi bili pregledni morate se pobrinuti za njihovu čitljivost. To
se postiže umetanjem praznog reda gde ima logike da prazan red stoji. Unesite
sledeći kod:
# make empty
line
print()
Videli
smo kako se stringovi ispisuju na ekran, ali pogledajmo sada kako se uzima neki
unos od korisnika tipa string:
# take some
string input from user
print('What is your
first name?')
fname = input() # you don't
declare variables in Python, but only defined it
Kao
što vidite komentar može da stoji i sa desne strane nekog izraza. Ali ono što
je ovde još interesantno mi uopšte nismo ni deklarisali promenjivu, što ne
biste mogli uraditi u C# i mnogim drugim programskim jezicima. Znači u Python programskom jeziku se promenjive ne deklarišu ali se moraju definisati, što
znači uvek se mora dodeliti neka vrednost promenjivoj ili će izazvati grešku. Unesite
sledeće izraze takođe:
print('What is your
last name?')
lname = input() # Python is case-sensitive
language
Ovde
obratite pažnju da je Python case-sensitive programski jezik što znači da fname ili fName ili FNAME ili FName ili Fname nisu ista promenjiva. Sve su različite jer Python razlikuje
mala i velika slova.
Pogledajmo
sada kako se spajaju dve string promenjive:
# tie two
strings together
name = fname + ' ' + lname
# print the
string variable
print()
print('Nice to meet
you ' + name + '.')
Pokrenite
sada aplikaciju da vidite kako izgleda. Vaši rezultati će zavisiti od vašeg
unosa podataka.
This is my
first application in Python.
I'm so
excited to learn a new programming language.
What is your
first name?
Manuel
What is your
last name?
Radovanovic
Nice to meet
you Manuel Radovanovic.
Kao
što možete pretpostaviti, string promenjiva ima svoje string metode i za
razliku od C# programskog jezika; ima ih mnogo više. Otkucajte sledeći kod i
obratite pažnju na string metodu len koja je tipa integer i vraća broj karaktera
u stringu. Druga metoda str pretvara bilo koji broj u string. U Python programskom jeziku nije
potrebno da broj pretvarate u string da bi se ispisao na ekranu izuzev ako
nameravate da mu dodajete druge string karaktere kao što je ovde slučaj:
# use some
string method in Python
print()
print('Your first
name has ' + str(len(fname)) + ' characters.')
print('Your last name
has ' + str(len(lname))
+ ' characters.')
# adds integer
values
characters = len(fname) + len(lname)
# print integer
value
print('Your full name
has ' + str(characters) + ' charaters.')
Pokrenite
ponovo program i proverite kako ovo sabiranje funkcioniše.
This is my
first application in Python.
I'm so
excited to learn a new programming language.
What is your
first name?
Manuel
What is your
last name?
Radovanovic
Nice to meet
you Manuel Radovanovic.
Your first
name has 6 characters.
Your last
name has 11 characters.
Your full
name has 17 charaters.
Završimo
ovaj program sa još jednom bitnom karakteristikom, a to je kako da pretvorimo
string u integer ili pogledajte kako se uzima podatak od korisnika da umesto
string bude integer koji se kasnije koristi u računskim operacijama. Upišite sledeći kod i
završite program.
# take some
integer from user
print()
byear = int(input('What year you were born? '))
# count ages
byear = 2018 - byear
# print integer
value
print()
print('You had about
' + str(byear) + ' years when you wrote this
program.')
Kao
što vidite string se pretvara u integer funkcijom int. Ovo su najosnovnije stvari
u Python programskom jeziku. Samo sa jednim malim programom naučili ste mnogo
stvari u Python-u . Pokušajte ovaj isti kod ispisati u C# programskom jeziku i
videćete sami koja je razlika. Pokrenite vaš program i rezultati bi trebali
biti slični zbog različitog unosa podataka.
This is my
first application in Python.
I'm so
excited to learn a new programming language.
What is your
first name?
Manuel
What is your
last name?
Radovanovic
Nice to meet
you Manuel Radovanovic.
Your first
name has 6 characters.
Your last
name has 11 characters.
Your full
name has 17 charaters.
What year
you were born? 1975
You had
about 43 years when you wrote this program.
Kako
se ovaj mali program kreirao možete pogledati i na video.
( Python - 1. Create Your First Program in Python )
Nema komentara:
Objavi komentar