Python

Vse o programiranju na in za PC

Moderatorji: Kroko, tilz0R

Python

OdgovorNapisal/-a s54mtb » 29 Jul 2019, 09:40

Zanimivo, da tako popularen piton ostaja skoraj neomenjen na tem forumu.
Namesto "Zahvali se" sprejemam tudi šalco kofeta: https://www.buymeacoffee.com/s54mtb
Uporabniški avatar
s54mtb
 
Prispevkov: 10173
Pridružen: 15 Jan 2015, 01:10
Zahvalil se je: 1412 krat
Prejel zahvalo: 3488 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 234

Re: Python

OdgovorNapisal/-a VolkD » 29 Jul 2019, 09:49

Mogoče zato, ker nihče ne pove nič o njem in potem ostali ne vemo njegovih prednosti.
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 36140
Pridružen: 29 Dec 2014, 20:49
Kraj: Kačiče (Divača)
Zahvalil se je: 7253 krat
Prejel zahvalo: 4423 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: Python

OdgovorNapisal/-a bluel » 29 Jul 2019, 14:27

Če pa bi kdo kaj konkretno vprašal, bi lahko dobil tudi odgovor....

Ker pa je tako popularen se itak že povsod piše o njem in tudi rešitev je polno če to vprašaš na google.
bluel
 
Prispevkov: 81
Pridružen: 22 Jan 2015, 10:50
Kraj: Kreplje JN65WR
Zahvalil se je: 50 krat
Prejel zahvalo: 18 krat
Uporabnika povabil: sYsop
Število neizkoriščenih povabil: 4

Re: Python

OdgovorNapisal/-a s54mtb » 29 Jul 2019, 14:52

Eno konkretno vprašanje: katera knjižnica za GUI je najenostavnejša in hitra tudi na podhranjenem sistemu (r.pi) ?
Namesto "Zahvali se" sprejemam tudi šalco kofeta: https://www.buymeacoffee.com/s54mtb
Uporabniški avatar
s54mtb
 
Prispevkov: 10173
Pridružen: 15 Jan 2015, 01:10
Zahvalil se je: 1412 krat
Prejel zahvalo: 3488 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 234

Re: Python

OdgovorNapisal/-a peterp » 29 Jul 2019, 14:58

peterp
 
Prispevkov: 581
Pridružen: 23 Feb 2015, 14:52
Kraj: Maribor
Zahvalil se je: 134 krat
Prejel zahvalo: 90 krat
Uporabnika povabil: gumby
Število neizkoriščenih povabil: 92

Re: Python

OdgovorNapisal/-a MitjaN » 29 Jul 2019, 16:48

s54mtb je napisal/-a:Eno konkretno vprašanje: katera knjižnica za GUI je najenostavnejša in hitra tudi na podhranjenem sistemu (r.pi) ?


Jaz bi šel z pyQt oz. pyside2 če imaš težave z licenco. Sicer je tkinter del standardne knjižnice, ki jo imaš skoraj vedno v celoti poleg interpreterja, ampak mi je pyQt bolj všeč, predvsem ker lahko GUI sestaviš grafično z "Qt designerjem" in potem generiraš python kodo, ki jo vključiš v svoj projekt. Potem pa sam ooverloadaš potrebne funkcije oz metode. Pa za prikaz grafov lahko uporabiš pyqtgraph, ki je bistveno hitrejši kot matplotlib.

Kar pa se razširjenosti pythona tiče pa je moja (popolnoma subjektivna) razlaga to da so računalničarji v glavnem drgnli javo, C++, C#, ... štromarji in ostali pa C#. Na windows sistemih je C# fajn, ker ko instaliraš Visual Studio imaš vse kar rabiš. Python na Windowsih pa je malce okoren za začetnika. V redu namestiš Python. Potem si rabiš zrihtat IDE (saj res da pride IDLE zraven pythona ampak je neuporaben). Tu priporočam pycharm. Potem je tu še python2/python3 situacija kjer je za začetnika odbijajoče ker vzameš python3, splet pa je še vedno poln python2 primerov kode. Saj v večini primerov vse štima ampak ko kdaj ne ti ni jasno kako in zakaj. Ampak ko enkrat prideš čez to potem vidiš, da je python res drugi najboljši jezik za večino stvari. In za štromarje, strojnike in ostale, ki nismo študirali računalništva se mi zdi najlažji za učiti, saj te od začetka ne forsira z objekti kot to počneta Java in C#. Lahko štarta s proceduralno paradigmo in potem postopoma osvajaš objekte. In ko ti je to domače začneš vključevati dele funkcionalne paradigme
MitjaN
 
Prispevkov: 77
Pridružen: 24 Feb 2015, 12:45
Zahvalil se je: 3 krat
Prejel zahvalo: 33 krat
Uporabnika povabil: aly
Število neizkoriščenih povabil: 6

Re: Python

OdgovorNapisal/-a VolkD » 29 Jul 2019, 16:56

MitjaN je napisal/-a:Kar pa se razširjenosti pythona tiče pa je moja (popolnoma subjektivna) razlaga to da so računalničarji v glavnem drgnli javo, C++, C#, ... štromarji in ostali pa C#. Na windows sistemih je C# fajn, ker ko instaliraš Visual Studio imaš vse kar rabiš. Python na Windowsih pa je malce okoren za začetnika. V redu namestiš Python. Potem si rabiš zrihtat IDE (saj res da pride IDLE zraven pythona ampak je neuporaben). Tu priporočam pycharm. Potem je tu še python2/python3 situacija kjer je za začetnika odbijajoče ker vzameš python3, splet pa je še vedno poln python2 primerov kode. Saj v večini primerov vse štima ampak ko kdaj ne ti ni jasno kako in zakaj. Ampak ko enkrat prideš čez to potem vidiš, da je python res drugi najboljši jezik za večino stvari. In za štromarje, strojnike in ostale, ki nismo študirali računalništva se mi zdi najlažji za učiti, saj te od začetka ne forsira z objekti kot to počneta Java in C#. Lahko štarta s proceduralno paradigmo in potem postopoma osvajaš objekte. In ko ti je to domače začneš vključevati dele funkcionalne paradigme

EEEjjjjjjjjjjjjjjj!!

Počasi, počasi!
Od vsega tu napisanega vem samo, da moram naredit marsikaj, ne vem pa kaj in kako.
MitjaN, lepo prosim, če odpreš eno temo z naslovom "Prvi koraki Python-a"
Potem pa prosim step by step - za take, ki nikoli nismo nič naredili na tem področju.
in sicer od tega kaj instalirati, kako instalirati (vrstni red, pa to).
pa do tega kako pyton potem vključiti v svoj projekt.
Vmes pa seveda debugiranje in podobne stvari.

Upam, da nisem preveč zahteven.
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 36140
Pridružen: 29 Dec 2014, 20:49
Kraj: Kačiče (Divača)
Zahvalil se je: 7253 krat
Prejel zahvalo: 4423 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: Python

OdgovorNapisal/-a zanka » 29 Jul 2019, 17:30

Zame je python arduino — dober za hitro nekaj sestaviti.

Za Windows se namestitvena datoteka nahaja na https://www.python.org/downloads/windows/ in vsebuje tudi grafični urejevalnik IDLE, za katerega še po desetih letih niso dojeli, da je poden. Ipython je kar nuja. Spletni vmesnik za tega je tudi Jupyter, ampak v python svetu je anarhija. Obstaja veliko stvari, zato je najbolje, da se preizkusi čimveč in ostane na tistem, kar je blizu, dokler izbran projekt ne propade.

Včasih sem ga vsakodnevno koristil in lahko rečem, da sem ga osvojil, vendar sem ga do danes popolnoma pozabil in, odkar imam C# na Linuxu, pišem C#. Preveri vsaj tipe spremenjivk.
Uporabniški avatar
zanka
 
Prispevkov: 2345
Pridružen: 17 Mar 2016, 01:16
Kraj: Krško
Zahvalil se je: 105 krat
Prejel zahvalo: 215 krat
Uporabnika povabil: DusanK
Število neizkoriščenih povabil: 42

Re: Python

OdgovorNapisal/-a s54mtb » 29 Jul 2019, 18:10

Naj omenim, da se da python uporabljati tudi v VS, tako da ni treba "privajanja" na pycharm.
Namesto "Zahvali se" sprejemam tudi šalco kofeta: https://www.buymeacoffee.com/s54mtb
Uporabniški avatar
s54mtb
 
Prispevkov: 10173
Pridružen: 15 Jan 2015, 01:10
Zahvalil se je: 1412 krat
Prejel zahvalo: 3488 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 234

Re: Python

OdgovorNapisal/-a bpavsic » 29 Jul 2019, 19:36

Tudi sam sem že večkrat uporabil python (predvsem na rPi). Na splošno ni slab, ampak daleč najbolj zgrešena in odbijajoča zadeva (vsaj meni) v pythonu je, da je scope definiran z odmiki... (to kar je v drugih jezikih poznano kot "begin, end", "{, }",... je v pythonu število predsledkov/tabov na začetku vrstice).

Tutorialov je pa po internetu ogromno (ne vem, če ima smisel, da nekdo toplo vodo izumlja in sestavlja posebej za forum)... npr.: https://www.w3schools.com/python/
My brain has too many windows open.
bpavsic
 
Prispevkov: 622
Pridružen: 22 Jan 2015, 15:46
Kraj: MB / MS
Zahvalil se je: 183 krat
Prejel zahvalo: 195 krat
Uporabnika povabil: gumby
Število neizkoriščenih povabil: 198

Re: Python

OdgovorNapisal/-a zanka » 29 Jul 2019, 20:34

bpavsic je napisal/-a:Tudi sam sem že večkrat uporabil python (predvsem na rPi). Na splošno ni slab, ampak daleč najbolj zgrešena in odbijajoča zadeva (vsaj meni) v pythonu je, da je scope definiran z odmiki... (to kar je v drugih jezikih poznano kot "begin, end", "{, }",... je v pythonu število predsledkov/tabov na začetku vrstice).

... in da mara bodisi tabulatorje bodisi presledke, kar naredi malo zgage, kadar se določeni deli prekopirajo iz tega ali onega.
Uporabniški avatar
zanka
 
Prispevkov: 2345
Pridružen: 17 Mar 2016, 01:16
Kraj: Krško
Zahvalil se je: 105 krat
Prejel zahvalo: 215 krat
Uporabnika povabil: DusanK
Število neizkoriščenih povabil: 42

Re: Python

OdgovorNapisal/-a Kroko » 29 Jul 2019, 22:02

Sem sem se s Pythonom resno "spopadel" pred pol leta. Na njega ne gledam kot na samostojni programski jezik temveč kot "lepilo" med različnimi aplikacijami. Z njim se preprosto dostopa do vse periferije, podprte so vse baze podatkov, vsi matematični in statistični programi, umetna inteligenca,... Da ne omenjam, da ima vsak spodoben multimeter, osciloskop ali kak drug inštrument dostop do meritev preko Pythona.

Zato se da z njegovo pomočjo preprosto rešit probleme kateri bi bili drugače povsem prezapleteni. Na primer povezava spletne kamere, umetne inteligence za prepoznavo predmetov, točno lociranje predmeta v prostoru, nato matematična analiza v Octave in krmiljenje robotske roke. Seveda vse skupaj logirano v bazo podatkov in online nadzor preko spleta.

Ja, odmiki so na začetku malce tečni ampak se hitro navadiš. Python ima v "črevih" nekaj hudih bugov, ki pa niso enostavno rešljivi saj bi se jim vse podrlo, verzija 4 pa sem prepričan, da ne bi zaživela. Ampak normalni uporabniki tega ne bi smeli opaziti.
http://www.planet-cnc.com poskakuješ na eni nogi in žvižgaš alpske podoknice Kroko was here!
Uporabniški avatar
Kroko
 
Prispevkov: 4465
Pridružen: 14 Jan 2015, 12:12
Kraj: Ljubljana
Zahvalil se je: 646 krat
Prejel zahvalo: 1467 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: Python

OdgovorNapisal/-a MitjaN » 29 Jul 2019, 22:21

VolkD je napisal/-a:MitjaN, lepo prosim, če odpreš eno temo z naslovom "Prvi koraki Python-a"

Moj prispevek smatram samo kot odgovor na povpraševanje s54mtb, tako da z vsem spoštovanjem, hvala ampak ne hvala. Eno je bežno ukvarjanje z jezikom, drugo pa poučevanje.

Sem pa vedno pripravljen pomagati z odgovori v kolikor mi je rešitev znana (je pa res moj reakcijski čas več razredov počasnejši kot pa povpraševanje googla/duckduckgo in branje prvih dveh prispevkov s stackoverflow spletne strani).

Če koga zanima lahko priporočam "Python za programerje" Janeza Demšarja https://ucilnica.fri.uni-lj.si/file.php/166/Python%20za%20programerje.pdf.
MitjaN
 
Prispevkov: 77
Pridružen: 24 Feb 2015, 12:45
Zahvalil se je: 3 krat
Prejel zahvalo: 33 krat
Uporabnika povabil: aly
Število neizkoriščenih povabil: 6

Re: Python

OdgovorNapisal/-a MitjaN » 29 Jul 2019, 22:25

s54mtb je napisal/-a:Naj omenim, da se da python uporabljati tudi v VS, tako da ni treba "privajanja" na pycharm.


pycharm mi je simpatičen, ker ima prednastavitve za tipkovnico, tako da je lahko združljiv z eclipse (tisti ki ste na CCS in predvidevam da enake uporablja STM32CubeIDE), netbeans (MPLAB X) in VS. To pogrešam v ostalih razvojnih okoljih saj je muka na roko spreminjati vse bližnjice.
MitjaN
 
Prispevkov: 77
Pridružen: 24 Feb 2015, 12:45
Zahvalil se je: 3 krat
Prejel zahvalo: 33 krat
Uporabnika povabil: aly
Število neizkoriščenih povabil: 6

Re: Python

OdgovorNapisal/-a s54mtb » 29 Jul 2019, 22:29

Kroko je napisal/-a:Python ima v "črevih" nekaj hudih bugov, ki pa niso enostavno rešljivi saj bi se jim vse podrlo, verzija 4 pa sem prepričan, da ne bi zaživela. Ampak normalni uporabniki tega ne bi smeli opaziti.


A recimotale "very difficult problem" ? (Nekaj ozadja tega buga, ki so ga BTW poštimali)... Tole da misliti, da res ni kaj velko več kot "lepilo", kar si lepo zapisal zgoraj.
Namesto "Zahvali se" sprejemam tudi šalco kofeta: https://www.buymeacoffee.com/s54mtb
Uporabniški avatar
s54mtb
 
Prispevkov: 10173
Pridružen: 15 Jan 2015, 01:10
Zahvalil se je: 1412 krat
Prejel zahvalo: 3488 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 234

Re: Python

OdgovorNapisal/-a Kroko » 29 Jul 2019, 23:03

Ja, multithreading je potrebno delati v rokavicah.
Tako na primer tkinter teče v ozadju in edini način, da program zapremo je sys.exit. Ta pa sproži SystemExit exception. Kaj če zaganjaš program samostojno ni problema. Ampak kaj pa mi, ki ga uporabljamo v embeeded načinu?
Ali pa upravljanje s knjižnicami. Unload enostavno ni mogoč. V embeeded načinu izredno neprijetno.
TNG tako vsebuje pohekan Python interpreter, ki te težave reši in hkrati deluje kot "master". Tako lahko istočasno zaganja python skripte tako v svojih threadih kot v glavnem threadu, pa tudi unload je nekako porihtan tako da ni potreben reštart programa vsakič ko v skripti kaj popravimo. Ampak to so težave nas, ki Python integriramo in ne končnih uporabnikov.
http://www.planet-cnc.com poskakuješ na eni nogi in žvižgaš alpske podoknice Kroko was here!
Uporabniški avatar
Kroko
 
Prispevkov: 4465
Pridružen: 14 Jan 2015, 12:12
Kraj: Ljubljana
Zahvalil se je: 646 krat
Prejel zahvalo: 1467 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: Python

OdgovorNapisal/-a bluel » 30 Jul 2019, 07:45

Jaz za večprocesna opravila uporabljam multiprocessing, ta kar dobro porazdeli opravila po procesih.
Za GUI je pa več izbir jaz narišem v wxFormBuilder in to uporabim.
Za enostavne zadeve pa TkInter ali pa se kaj podobnega.
Editor uporabljam text - vim.
Delam pa s paythonom že kakih 5 let - večino testi ali skripte za pretvarjanje podatkov ali prikaze.
bluel
 
Prispevkov: 81
Pridružen: 22 Jan 2015, 10:50
Kraj: Kreplje JN65WR
Zahvalil se je: 50 krat
Prejel zahvalo: 18 krat
Uporabnika povabil: sYsop
Število neizkoriščenih povabil: 4

Re: Python

OdgovorNapisal/-a bluel » 30 Jul 2019, 07:51

Večinom kar programiram je v konzoli. Pa še testi, ki se poganjajo in rabijo vmestnik je ta narejen večino preko web-a v flask-u.
Zahtevnejša zadeva pa v django-tu.
Za dostop do baz podatkov uporabljam sqlalchemy, ker tako lahko enostavno zamenjam DB v ozadju.
bluel
 
Prispevkov: 81
Pridružen: 22 Jan 2015, 10:50
Kraj: Kreplje JN65WR
Zahvalil se je: 50 krat
Prejel zahvalo: 18 krat
Uporabnika povabil: sYsop
Število neizkoriščenih povabil: 4

Re: Python

OdgovorNapisal/-a tilz0R » 31 Jul 2019, 13:09

Jaz pa vso kodo napišem VSCode ali SublimeText. Nobenih extravagantnih editorjev, ker oba podpirata "run" direktno iz embedded konzole.
Knowledge sharing is people' caring., T. MAJERLE
Uporabniški avatar
tilz0R
 
Prispevkov: 1714
Pridružen: 18 Jan 2015, 00:12
Kraj: Črnomelj
Zahvalil se je: 223 krat
Prejel zahvalo: 447 krat
Uporabnika povabil: s56rga
Število neizkoriščenih povabil: 255


Vrni se na Programski jeziki

Kdo je na strani

Po forumu brska: 0 registriranih uporabnikov in 1 gost