Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Zadaci za wannabe pythoniste

[es] :: Python :: Zadaci za wannabe pythoniste

Strane: << < .. 24 25 26 27 28 29 30 31 32

[ Pregleda: 50988 | Odgovora: 629 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4901
*.dynamic.sbb.rs.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Zadaci za wannabe pythoniste04.05.2020. u 20:31 - pre 47 meseci
Slazem se sa djoka_i, poslusaj ga.
 
Odgovor na temu

a1234567

Član broj: 46801
Poruke: 297
65.18.117.*



+3 Profil

icon Re: Zadaci za wannabe pythoniste05.05.2020. u 10:40 - pre 47 meseci
Mislim da sam pisanje fiunkcija utrenirao, jer na ovom jednom sajtu rešenja su isključivo u formi funkcija.
Neki od zadataka koje sam rešio do sad su ovde .
Mada još toliko nisam ni stavljao na Github.

Da, u pravu si, trebalo bi da oživim projekat rečnika.
Do sada sam od funkcija napravio pretraživanje, dodavanje nove reči i ispravljanje postojećih.
No, to je još uvek skript, ako se to tako zove. Probaću da napravim aplikaciju tako da pretraživanje ide na komandnoj liniji.
Tako da funkcioniše:

> python recnik --prevedi room

> soba, prostorija


Probaću takođe da napravim da ide u oba smera pretraživanje i prevod.
Ako me posluži sreća junačka da sve to isplivam, onda u sledećoj fazi da pravim grafički interfejs.

Đoko, šta misliš o planu? To taman do kraja godine da slistim
 
Odgovor na temu

djoka_l
Beograd

Član broj: 56075
Poruke: 3445

Jabber: djoka_l


+1462 Profil

icon Re: Zadaci za wannabe pythoniste05.05.2020. u 11:11 - pre 47 meseci
Grafički interfejs ostavi za nikad. Suviše je komplikovano za tebe, koji si još uvek na prvom programskom jeziku u životu, da se baviš Windows GUI programiranjem.

Koncentriši se na rad iz komandne linije.
Ako želiš nekakvo grafičko okruženje, bolje da to bude web, pretraživač će ti odraditi gomilu stvari, koje ti za sada ne znaš.

Za web ti treba da naučiš, ili obnoviš, znanje HTML, CSS, a onda ide Django.
Naravno, ako ne želiš da ti Django radi kao web server moraćeš da naučiš kako da napraviš WAMP okruženje i nešto malo Apache konfiguracije. Osim ako ne odlučiš da umesto Apache stavih nginx, onda moraš da naučiš kako da ga instaliraš i konfigurišeš. Neizostavno, treba da naučiš SQL i da instaliraš i postaviš MySQL bazu.

Ako misliš da je sve to komplikovano, pa Windows GUI je još komplikovaniji...

Uzgred, ja kao profesionalac, koristim Excel kada treba da napravim nešto na brzinu, a da ima grafiku, da se ne bih zamarao sa GUI na Windowsu.
Kada sam prvi put morao da napravim nešto za Windows okruženje u C++, bilo je tako zamorno, da sam sve svoje module napravio na SCOUnixu, a na windowsu ih samo kompajlirao. Toliko je bilo zamorno da postavim okruženje za rad u VisualStudio IDE, da sam lepo, ko čovek, sve odradio samo pomoću vi editora, pa onda liferovao svoje fajlove na integracioni server.
 
Odgovor na temu

a1234567

Član broj: 46801
Poruke: 297
65.18.117.*



+3 Profil

icon Re: Zadaci za wannabe pythoniste05.05.2020. u 12:46 - pre 47 meseci
Pa ćemu onda služi tkinter?

Da, jedna od narednih faza bi bilo da taj rečnik stavim i na neki sajt, da bude online.
Za sada znam malo HTML. I to je nešto :)
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
109.72.51.23



+1064 Profil

icon Re: Zadaci za wannabe pythoniste05.05.2020. u 12:59 - pre 47 meseci
Pa dobro ne mora da se zeza sa win32 api u pythonu. Verujem da i pygtk vrsi posao dobro.
 
Odgovor na temu

mjanjic
Šikagou

Član broj: 187539
Poruke: 2679



+690 Profil

icon Re: Zadaci za wannabe pythoniste06.05.2020. u 09:58 - pre 47 meseci
Generalno, mnogo će lakše naći postao ako razvija neki Web GUI (neki od framework-a ili čist JS), a ako solidno nauči programiranje, neki backend nije toliki problem. U nekoliko firmi u kojima znam programere, kažu da su Java i .NET tu negde, s tim što raste broj poslova za .NET Core, ali se traže i nodeJS, php, itd.

Uglavnom se ide na odvajanje front/back, retki su oni koji znaju i jedno i drugo na istom nivou...

HTML, CSS, JS mora da nauči osnove za Web, ali ako nije cilj rad sa implementacijom dizajna, onda neki od FW-a (react, vue, angular...).
Blessed are those who can laugh at themselves, for they shall never cease to be amused.
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
82.117.201.26



+1064 Profil

icon Re: Zadaci za wannabe pythoniste06.05.2020. u 11:15 - pre 47 meseci
Cek da prvo nauci da programira, onda ce lako naci posao.... pisanje GUI programa je deo tog procesa.
To sto vecina firmi radi web, i poznatu kombinaciju jezika, ne mora da znaci da bas mora da se koncentrise
na to sada. Nije krenuo ni sa JS, ni sa .NET, ni sa Java, ni PHP, nego sa Pythonom.
 
Odgovor na temu

mjanjic
Šikagou

Član broj: 187539
Poruke: 2679



+690 Profil

icon Re: Zadaci za wannabe pythoniste07.05.2020. u 07:43 - pre 47 meseci
Da, nego to je reakcija da mu Python nije baš dobar izbor ako hoće da radi GUI. OK ako neko odlično zna Python pa mu je lakše tako.
Python je ipak pogodniji za neke druge stvari, pa ako je nekome primarno to u čemu je Python relativno dominantan, onda OK.
Blessed are those who can laugh at themselves, for they shall never cease to be amused.
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
82.117.201.26



+1064 Profil

icon Re: Zadaci za wannabe pythoniste07.05.2020. u 08:03 - pre 47 meseci
Pa ima ovo recimo https://github.com/Nicotine-Plus/nicotine-plus
To koristim :P
Nek prouci kako su uradili, app je 100+ GUI Python
 
Odgovor na temu

a1234567

Član broj: 46801
Poruke: 297
65.18.117.*



+3 Profil

icon Re: Zadaci za wannabe pythoniste07.05.2020. u 09:14 - pre 47 meseci
Đoko, u skladu sa tvojom sugestijom,
nova verzija rečnika je na temi "Pravljenje englesko-srpskog rečnika".
Pogledaj, molim te, pa javi kako dalje.
Hvala unapred.

A ovde novi zadatak broj 37:

# You have a text and a list of words. You need to check if the words in a list appear in the
# same order as in the given text.

# Cases you should expect while solving this challenge:

# word from the list is not in the text - your function should return False;
# any word can appear more than once in a text - use only the first one;
# two words are the same - your function should return False;
# the condition is case sensitive, which means 'hi' and 'Hi' are two different words.
# text includes only English letters and spaces

# Input: Two arguments. The first one is a given text, the second is a list of words.
# Output: A bool.

def words_order(text: str, words: list) -> bool:
# your code here
return False

if __name__ == '__main__':
print("Example:")
print(words_order('hi world im here', ['world', 'here']))

# These "asserts" are used for self-checking and not for an auto-testing
assert words_order('hi world im here', ['world', 'here']) == True
assert words_order('hi world im here', ['here', 'world']) == False
assert words_order('hi world im here', ['world']) == True
assert words_order('hi world im here', ['world', 'here', 'hi']) == False
assert words_order('hi world im here', ['world', 'im', 'here']) == True
assert words_order('hi world im here', ['world', 'hi', 'here']) == False
assert words_order('hi world im here', ['world', 'world']) == False
assert words_order('hi world im here', ['country', 'world']) == False
assert words_order('hi world im here', ['wo', 'rld']) == False
assert words_order('', ['world', 'here']) == False

Ja sam uradio nešto ovako:

Code:
import collections

def words_order(text: str, words: list) -> bool:
    reci = text.split()
    dic_text = dict(enumerate(reci))
    dic_words = dict(enumerate(words))
    indexi = []

    for i in collections.Counter(words).values():
        if i > 1:
            return False

    for i in dic_words.values():
        for ind, rec in dic_text.items():
            if i in rec:
                indexi.append(ind)

    indexi1 = sorted(indexi) 
    
    if indexi == indexi1:
        return True
    else:
        return False

if __name__ == '__main__':
    print("Example:")
    print(words_order('hi world im here', ['world']))


ali mi javlja grešku na proveri
assert words_order('hi world im here', ['country', 'world']) == False

Nije mi jasno zašto to treba da bude False.
Kod mene je True, jer je jedina reč koja se javlja u tekstu, pa je time automatski redosled OK.

 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
82.117.201.26



+1064 Profil

icon Re: Zadaci za wannabe pythoniste07.05.2020. u 09:21 - pre 47 meseci
"Nije mi jasno zašto to treba da bude False."

Pa ocigledno lista reci mora u tom redosledu da se pojavi u stringu.
 
Odgovor na temu

a1234567

Član broj: 46801
Poruke: 297
65.18.117.*



+3 Profil

icon Re: Zadaci za wannabe pythoniste07.05.2020. u 09:33 - pre 47 meseci
U tome je stvar što ne mora.
U listi mogu biti reči koje se ne pojavljuju u stringu.
Ali ako u listi ima više reči koje se pojavljuju, treba proveriti da li je njihov redosed isti kao u stringu.
Mene ovaj slučaj buni zato što ima samo jedna reč koja se pojavljuje, te je otuda redosled OK, pošto je jedina.
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
82.117.201.26



+1064 Profil

icon Re: Zadaci za wannabe pythoniste07.05.2020. u 09:39 - pre 47 meseci
"U listi mogu biti reči koje se ne pojavljuju u stringu."

Mislim da to nisi dobro shvatio. Proveri primere ulaza i sta vraca.
 
Odgovor na temu

a1234567

Član broj: 46801
Poruke: 297
65.18.117.*



+3 Profil

icon Re: Zadaci za wannabe pythoniste07.05.2020. u 09:46 - pre 47 meseci
Da, moguće je da nisam dobro ovo razumeo:
# word from the list is not in the text - your function should return False;

ako znači da svaka reč iz liste mora biti u stringu i da ako jedna nije, automatski je false
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
82.117.201.26



+1064 Profil

icon Re: Zadaci za wannabe pythoniste07.05.2020. u 10:11 - pre 47 meseci
Pise lepo ako jedna rec iz liste nije u tekstu, onda false.
 
Odgovor na temu

a1234567

Član broj: 46801
Poruke: 297
65.18.117.*



+3 Profil

icon Re: Zadaci za wannabe pythoniste07.05.2020. u 10:26 - pre 47 meseci
Doradio i evo ova verzija je prošla.

( ͡° ͜ʖ ͡°)
 
Odgovor na temu

Panta_
Aleksandar Pantić
Kragujevac

Član broj: 214959
Poruke: 790



+162 Profil

icon Re: Zadaci za wannabe pythoniste07.05.2020. u 10:34 - pre 47 meseci
Citat:
Generalno, mnogo će lakše naći postao ako razvija neki Web GUI (neki od framework-a ili čist JS), a ako solidno nauči programiranje, neki backend nije toliki problem. U nekoliko firmi u kojima znam programere, kažu da su Java i .NET tu negde, s tim što raste broj poslova za .NET Core, ali se traže i nodeJS, php, itd.


Šta fali Pythonu? Ima veliki izbor Python web frameworka, najpoznatiji su svakako Django i Flask, ali ima i dosta drugih. Isto tako i za razvoj GUI aplikacija.

Za razvoj Web aplikacija mu danas nije potrebno neko veliko znanje HTMLa i CSSa, ima i za tu namenu dosta frameworkova, npr. Bootstrap pa je dovoljno neko osnovno znanje. Za web server, Django i Flask dolaze podrazumevano sa istim tako da ni tu nije potrebno neko podešavanje, dovoljno je pokrenuti run server komandu, ili na primer sa gunicorn koji je lakši za podešavanje od Nginxa ili Apachea. Za bazu podataka, Django podrazumevano dolazi sa ORM podrškom za različite baze (SQLite, PostgreSQL, MariaDB, MySQL, Oracle), dok je za Flask potrebno instalirati npr. Flask-SQLAlchemy, tako da nije potrebno poznavanje SQL jezika za rad sa bazama.

Evo kao primer, ja sm onaj covid19 python skript jednostavno konvertovao u Web app uz pomoć navedenih tehnologija.

https://covid19inf.herokuapp.com/

Takođe, kome treba api, neka pogleda API dropdown menu. ;) Na primer:

Code:
curl https://covid19inf.herokuapp.com/api/latest/

curl https://covid19inf.herokuapp.com/api/\?date\=05-02-2020
 
Odgovor na temu

djoka_l
Beograd

Član broj: 56075
Poruke: 3445

Jabber: djoka_l


+1462 Profil

icon Re: Zadaci za wannabe pythoniste07.05.2020. u 11:14 - pre 47 meseci
Pogledaj ovu stranicu:
https://thispointer.com/python...here-are-duplicates-in-a-list/

U svom rešenju upotrebio si najgori algoritam za pronalaženje duplikata.
U tvom konkretnom slučaju to i nije toliko bitno, u pitanju su kratke liste i efikasnost ne igra neku veliku ulogu.
Međutim, potrebno je da, zbog učenja, pišeš EFIKASNE programe. Kao što je jedan moj profestor sa ETF-a govorio "Program mora da se završi za života programera". Uvek je voleo da spominje programere sa Matematičkog fakulteta koji pišu programe koji se završavaju posle konačnog broja koraka, a ne brzo...
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
82.117.201.26



+1064 Profil

icon Re: Zadaci za wannabe pythoniste07.05.2020. u 11:49 - pre 47 meseci
Kolko vidim koristi hash tabelu, sto je efikacnije od sorta u svakom slucaju. Mozda
jedino sto tu efikasnije moze da se uradi je da ne formira komplet, nego umesto counter,
da koristi obicnu, pa izadje odmah na pojavu prvog duplikata. Koliko kapiram
fora je da se vrati False ukoliko ima duplikata u listi?

edit:
no ovo trazenje reci u redosledu ima mesta za improvement svakako.
 
Odgovor na temu

a1234567

Član broj: 46801
Poruke: 297
65.18.117.*



+3 Profil

icon Re: Zadaci za wannabe pythoniste08.05.2020. u 03:21 - pre 47 meseci
Zadatak broj 38, za koji nemam ideju kako ga rešiti, a da pohvata sve ove mavedene slučajeve.
Ako neko ima, eto prilike da nešto naučim.

# You are given a list of files. You need to sort this list by file extension. The files with the same extestion should be sorted by name.
#
# Some possible cases:
# Filename cannot be an empty string;
# Files without extensions should go before the files with extensions;
# Filename ".config" has an empty extenstion and name ".config";
# Filename "config." has an empty extenstion and name "config.";
# Filename "table.imp.xls" has an extesntion "xls" and name "table.imp";
# Filename ".imp.xls" has extension "xls" and name ".imp".
#
# Input: A list of filenames.
# Output: A list of filenames.

Code:
from typing import List

def sort_by_ext(files: List[str]) -> List[str]:
    # your code here
    return files


if __name__ == '__main__':
    print("Example:")
    print(sort_by_ext(['1.cad', '1.bat', '1.aa']))

    # These "asserts" are used for self-checking and not for an auto-testing
    assert sort_by_ext(['1.cad', '1.bat', '1.aa']) == ['1.aa', '1.bat', '1.cad']
    assert sort_by_ext(['1.cad', '1.bat', '1.aa', '2.bat']) == ['1.aa', '1.bat', '2.bat', '1.cad']
    assert sort_by_ext(['1.cad', '1.bat', '1.aa', '.bat']) == ['.bat', '1.aa', '1.bat', '1.cad']
    assert sort_by_ext(['1.cad', '1.bat', '.aa', '.bat']) == ['.aa', '.bat', '1.bat', '1.cad']
    assert sort_by_ext(['1.cad', '1.', '1.aa']) == ['1.', '1.aa', '1.cad']
    assert sort_by_ext(['1.cad', '1.bat', '1.aa', '1.aa.doc']) == ['1.aa', '1.bat', '1.cad', '1.aa.doc']
    assert sort_by_ext(['1.cad', '1.bat', '1.aa', '.aa.doc']) == ['1.aa', '1.bat', '1.cad', '.aa.doc']
 
Odgovor na temu

[es] :: Python :: Zadaci za wannabe pythoniste

Strane: << < .. 24 25 26 27 28 29 30 31 32

[ Pregleda: 50988 | Odgovora: 629 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.