Új hozzászólás Aktív témák
-
cadtamas
tag
válasz kezdosql #1154 üzenetére
1. feladat:
Létre kell hozni 3 üres listát.
Utána létre kell hozni egy while ciklust, amiből csak akkor lehet kilépni ha elérte a lista a 3. elemet és az input mezőben csak üres string van, (if,elif,else)
Itt érdemes a try és except metódusokat használni, hogy kiszűrd a nem megfelelő inputot
ha eléri a 9. elemet automatikusan kilép és átugrik a következő listára, egészen a végéig ( break)
Ha megvan mindhárom lista for és print metódussal tudod kilistázni
A listák elemeit a len metódus számolja meg.Ha valamit kihagytam, a többiek majd kijavítanak.
[ Szerkesztve ]
-
sztanozs
veterán
válasz kezdosql #1154 üzenetére
A feladatokhoz:
mind a kettőhöz - hogy kell feltölteni az elemeket, mi határozza meg mennyi elem lesz?
(1) magyarán csak ki kell listázni három tömböt?
(2) ezekhez csak az alap tömb kezelési kulcsszavaknek kell utána nézni (és egy matekos kucsszó): list, dict, defaultdict, maxHa van programozásio tapasztalatod, akoor a fentieknek elégnekk kell lennie mankónak..
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz kezdosql #1159 üzenetére
majd minden intelligens nyelv ciklusából break-kel kell kilépni: wiki:break
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
nagyúr
válasz kezdosql #1168 üzenetére
megnyugodhatsz, elég sok minden változott. 1.5 óta meg pláne. ettől még nem kell kidobni a 2.7 tutorialt, ha konkrét problémád van, a python doksi elég részletes.
Tudod, mit jelent az, hogy nemezis? Az érintett, erősebb fél kinyilatkoztatása a méltó büntetés mértékét illetően. Az érintett fél jelen esetben egy szadista állat... én.
-
sztanozs
veterán
válasz kezdosql #1167 üzenetére
Nekem meg azt tanitottak, hogy ugy kell megirni a ciklust, hogy az vegigfusson.
Szerintem ez egetverő baromság, de nem vagyok egy professzor, hogy az oktatási anyagon vitatkozzam.
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
EQMontoya
veterán
válasz kezdosql #1172 üzenetére
argument: --...
handler (exeption-nel fordul elo): except:
List Comprehensions: [x for x in ... if ...]
prompt: ~
right-hand side expression: ami jobb oldalt van
sequence unpacking: for x in ...
shortcut operators: && illetve ||
slice notation: X[y:z]
string-literal: "..."
tuple: (..., ..., ...)Same rules apply!
-
EQMontoya
veterán
válasz kezdosql #1175 üzenetére
Trollkodtam alapvetően, ahhoz képest egész jó.
argument: argumentum, amit a paranccsorban átadunk. Pl. ilyen szokott lenni: --file joska.txt --force
prompt: parancssor.
sequence unpacking: egy szekvenciát tömörítesz ki, tehát egy változó segítségével végigiterálsz valamit, ami több elemet tartalmaz.
shortcut operators: rövidzárnak hívjuk magyarul. A logikai és (Pythonban: "and") és a logikai vagy (Pythonban: "or") úgy működnek, hogy ha az első kifejezés értékéből egyértelműen következik az eredmény, akkor nem értékeli ki a másikat. Itt írnak róla valamennyit.
slice notation: ez arra való, hogy egy kollekció X. és Y. elemei közötti részt tudod vele kiszedni. Pl. egy string 3.-tól 8. betűjéig tartó substringet.
string literal: egy szöveget tartalmazó konstans gyakorlatilag
tuple: több elemből álló kollekció, amely nem módosítható.
Same rules apply!
-
cousin333
addikt
válasz kezdosql #1178 üzenetére
A list comprehension-re találtam egy jónak tűnő fordítást: listaképző
Ez a funkció tulajdonképpen egy tipikus for ciklus alkalmazásnak a tömörebb megfogalmazására szolgál: amikor egy meglévő listán (pontosabban iterálható elemen) kell végigmenni, hogy elemről-elemre haladva az egyes elemeken végrehajtott műveletek segítségével egy új listát hozzunk létre.
Például ha minden elemhez hozzá akarunk adni 2-t, és ebből lesz az y.
x = [1, 2, 3, 4, 5]
y = []
for elem in x:
y.append(elem+2)Ezt leegyszerűsíthetjük egy (két) sorra, így nincs a felesleges értékadás az elején és nem kell egyesével hozzáadogatni az új elemeket sem.
x = [1, 2, 3, 4, 5]
y = [elem + 2 for elem in x]Ráadásul lehet megadni feltételt is, mindezt szintén egy sorban:
x = [1, 2, 3, 4, 5]
y = [elem+2 for elem in x if elem % 2 == 0]Ennek a "hagyományos" megfelelője:
x = [1, 2, 3, 4, 5]
y = []
for elem in x:
if elem % 2 == 0:
y.append(elem+2)Az első esetekben az eredményül kapott y hossza megegyezik az x-ével, az utóbbinál meg rövidebb, vagy egyenlő.
[ Szerkesztve ]
"We spared no expense"
-
zeix
senior tag
-
sztanozs
veterán
válasz kezdosql #1204 üzenetére
Pythonbol is tudsz gui alkalmazast fejleszteni. Python+listbox kifejezesre keress (TKinter az altalanos pythonos gui megoldas)
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
cadtamas
tag
válasz kezdosql #1204 üzenetére
Nem látom a konkrét feladatot, de ilyenkor jellemzően azt várják el, hogy simán ki iratod (for ciklus, print metódus) egyenként a 10 elemű lista elemeit sorszámokkal, utána pedig sima inputtal bekérsz 3 sorszámot ami segítségével feltöltesz (append) egy üres listát.
Lista indexelésnek olvass utána.[ Szerkesztve ]
-
justmemory
senior tag
válasz kezdosql #1363 üzenetére
Mire gondolsz...? Lehet, hogy egy példa sokat segítene a válaszadóknak... Mit jelent az, hogy "telefonra"...?
Netalán OS-re (Android, iOS, stb.) gondolsz...? A neten van pár tipp a web-es alkalmazásokkal kapcsolatosan, érdemes rákeresni...--- Imprisoned, inside this mind... --- Joined at the soul with a pair of headphones ---
-
justmemory
senior tag
válasz kezdosql #1370 üzenetére
Szia,
nem teljesen vagyok ebben otthon, de találtam egy ilyet. Ezek szerint lehet ilyet csinálni python-al is (plusz érdekesség esetleg). Illetve gondolom a neten lehet még találni bőséggel szakirodalmat/megoldásokat, ha tudod, hogy mit szeretnél; én magam sosem próbáltam még ilyesmit.
Egyébként az rendben van, hogy "láttam, hogy le lehetett tölteni telefonra", de milyen telefonra...? Mármint azért a telefonon csak futott valamilyen OS, és az gondolom nem Linux volt... Ha Androidos-at várnak el, arra azt olvastam, hogy a python nem igazán alkalmas komolyabb Androidos alkalmazások írására; az iOS kapcsán pedig végképp semmi tapasztalatom nincsen...
--- Imprisoned, inside this mind... --- Joined at the soul with a pair of headphones ---
-
nagyúr
válasz kezdosql #1373 üzenetére
mert pl. droidban nincs benne alapértelmezetten a python interpreter így egy relatíve kis tudású app (meghív egy böngészőt egy difólt honlappal) is baromi nagy méretű tud lenni;
mert kezelned kell a t. vezetőség összes óhaját, akik a kövér ujjaikkal nem találják el a megfelelő gombot/beviteli mezőt;
egyéb.egyébként megy pythonnal, én elsőre a kivyvel próbálkoznék. más kérdés, hogy másban (pl java) esetleg könnyebb dolgod lenne.
Tudod, mit jelent az, hogy nemezis? Az érintett, erősebb fél kinyilatkoztatása a méltó büntetés mértékét illetően. Az érintett fél jelen esetben egy szadista állat... én.
-
justmemory
senior tag
válasz kezdosql #1574 üzenetére
Szia,
én magamnak sqlite és mysql alapon írtam programot, illetve a telefon (nokia n900) alap naptára is az sqlite-ot használja; szerintem elég sok mindent meg lehet oldani ezekkel az adatbázisokkal... persze nem tudom mire is kéne igazán neked, mert sajnos azokat a programokat nem ismerem, amiket említettél.
--- Imprisoned, inside this mind... --- Joined at the soul with a pair of headphones ---
-
-
nagyúr
válasz kezdosql #1577 üzenetére
jó, akkor teradata.
neked fog a választott sql típusának megfelelő modul kelleni.
sql kezelés pythonból nem igazán nagy kihívás. be kell majd állítanod az elején egy megfelelő connection stringet, amivel kapcsolódsz.
magukat a parancsokat pedig stringekként fogod beküldeni, ezeket a stringeket pedig úgy fogod statikus és dinamikus részekből összelegózni.Tudod, mit jelent az, hogy nemezis? Az érintett, erősebb fél kinyilatkoztatása a méltó büntetés mértékét illetően. Az érintett fél jelen esetben egy szadista állat... én.
-
justmemory
senior tag
válasz kezdosql #1578 üzenetére
Az alapján amit írsz, szerintem meg lehet csinálni, mert magában az adatbázisban simán rá lehet keresni bármire; én is csináltam már ilyet. Illetve ráerősítenék arra, amit cain69 is írt - megfelelő modul kell (még jelszavas védelmet is csinálhatsz neki), aztán csak stringben a parancsok.
--- Imprisoned, inside this mind... --- Joined at the soul with a pair of headphones ---
-
justmemory
senior tag
válasz kezdosql #1589 üzenetére
Hmm... mivel nem vagyok képzett programozó, hanem ez számomra csak hobbi, lehet, hogy nem tudom egzakt módon leírni, de én mindenképpen sqlite vagy mysql modult néznék az adatbáziskezeléshez - a neten találsz hozzá mindent, ami kell; már ami a leírásokat illeti (csak hirtelen kettő, amit elsőre kidobott a kereső: 1, 2).
Ha gui-t is szeretnél, akkor rajtad áll, hogy miben szeretnéd az megírni; illetve ki kell találni, hogy pontosan milyen programot szeretnél és mindent aszerint felépíteni.[ Szerkesztve ]
--- Imprisoned, inside this mind... --- Joined at the soul with a pair of headphones ---
-
-
axioma
veterán
válasz kezdosql #1686 üzenetére
Na most nem a kerdesedre valaszolok, de:
1. Milyen forrasbol viszik be az adatokat? Marmint nyilvan az lesz a valasz hogy papirbol, de egyreszt tomeges bevitel vagy egyesevel fognak beesni a dolgok; masreszt meg milyen szervezesben (hogyan csoportositva) van meg a papiron?
(+ kieg. Kik fogjak bevinni, domain ismerettel rendelkezok vagy rogzito robotok?)
2. Mi az indok, amiert sajat programot akarsz irni, mar a bevitelre is?
3. Hogy kerult mindez pont a python topikba, mi az oka a valasztasnak, egyaltalan, ki valasztotta?[ Szerkesztve ]
-
nagyúr
válasz kezdosql #1686 üzenetére
gui: nem ajánlok erre pythont használni. guiban kifejezetten nem tartozik az erős nyelvek közé. de persze próbálkozni lehet. irányok: pyqt, tkinter. én nem írok gui-t a scriptjeimhez, amihez kell, ahhoz karakteres képernyőn csinálok menüt.
adatbáziskezelés: kifejezetten nem ajánlok python adatbázist. van n+1 kipróbált és bevált adatbáziskezelő, és kb. mindegyikhez van python modul, amin keresztül meg tudjátok hajtani. vagy ha nem, az odbc-vel össze tudjátok hozni a kapcsolatot. a gadfly-t tudtommal évtizede nem fejleszti senki. ha beleszaladtok valamibe ami nem működik, vagy csak ti nem tudjátok kitalálni, hogy működik, nem fog senki segíteni. egy oracle vagy mysql/mssql, postgressel a helyzet jóval egyszerűbb, beküldesz egy selectet stringként, és lefetcheled, ami jön, bevered egy listába vagy mapbe, és tovább játszol vele.
kicsit úgy látom, hogy volt egy szögetek, ami kiállt a falból. találtatok egy kalapácsot, amire a python felirat volt ráírva. megfogtátok, és bevertétek vele a szöget a falba. viszont azóta mindent szögnek néztek.
[ Szerkesztve ]
Tudod, mit jelent az, hogy nemezis? Az érintett, erősebb fél kinyilatkoztatása a méltó büntetés mértékét illetően. Az érintett fél jelen esetben egy szadista állat... én.
-
#82595328
törölt tag
-
sztanozs
veterán
-
sztanozs
veterán
-
sztanozs
veterán
válasz kezdosql #2272 üzenetére
Mármint a 15 listát egymástól függetlenül kell sorbarendezned? Vagy ez egy dict/list, amiben listák vannak? Vagy van valami különleges szempont, ami alapján rendezni kell?
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
axioma
veterán
válasz kezdosql #2274 üzenetére
Nekem ezt mondd el, hogy miert?
"A sorbarendezest ugy kell vegezni, hogy a legnagyobb elemet tartalmazonal megkeresni, melyek a reszlistai, es azokat sorrendbe rendezni, majd megnezni, hany fuggetlen lista van, es azoknal is reszlistakat keresni."Azt nem ertem, hogy most az a feladat, hogy fuggetlen listakat kell keresni, vagy az, hogy egy sorbarendezest megvalositani? Mi a vegso cel? A sorbarendezes mar a te megoldasod resze?
Amugy ha definialod ezt a sorbarendezest, akkor abban lehet segiteni. Elso tipp, amit versenyeken szoktam: uj lista kepzese ugy, hogy annak minden eleme egy tuple, amiben az elso, masodik, ... elemek a szempontok fontossagi sorrendben, a vegere meg vagy betolod magat az elemet, vagy csak egy indexet. Ezt a listat rendezed, majd kiolvasod az elemeket (instantice vagy az indexnel fogva).
Esetedben ha mar betukbol allo stringjeid vannak
strings=[s1,...,s15]
, akkor kepezni kell atoSort=[(len(strings[i]),strings[i]) for i in xrange(15)]
listat, meghivod ra a.sort()
-ot es a hossz szerinti majd azon belul lexikografikus rendezest megkapod asortedStrings=[toSort[i][1] for i in xrange(15)]
modszerrel. [A 15 most direkt hogy konnyebb legyen kovetni, de nyilvan nem magic number-ezunk.]Ja az elejen feltettem, hogy ha mar betukkel helyettesitettel, akkor a lista az egy karakterlista, amit nevezhetunk (hasznalhatunk) akar stringnek is... de egyebkent kb. hasonloan megoldhato ha a string helyett lista van, csak akkor mar nem tennem bele a tuple-be, hanem az indexszel visszakeresest hasznalnam (tehat a tuple elemei
(len(listOfLists[i]), i)
, mig a kiolvasasnal a futo elemlistOfLists[toSort[i][1]]
).Amugy valoszinuleg, hacsak nem nagyon titkos a sztori, az eredeti problema lenne a legkonnyebben megvalaszolhato. A fuggetlen halmazok meg az altalad emlitett kapcsolatok mar a grafelmelet iranyaba visznek el (ami neked nem feltetlen baj, mert kesz algok vannak csak megfelelo formara kell alakitani es meghivni).
[ Szerkesztve ]
-
axioma
veterán
válasz kezdosql #2285 üzenetére
Az a baj, hogy a reszletes leiras megmutatta, hogy mit csinaltal te eddig, hogyan gondolkodtal, de az eredeti feladatot (amit a megrendelo, fonok, akarki adott) me'g mindig nem latom.
Ezen a fix halmazon egyszer kell megcsinalni? Mar reg keszen lenne kezzel.
Ilyesmi inputok varhatoak de valtozoak? Ha igen, mi a CEL, az output? Ha tobbfele, akkor mindegyik pontosan megfogalmazva (a cel az valamilyen sorrend, a fuggetlen maximalis halmazok, a tartalmazasok listaja, a "hasonlosagok" kiertekelese valami heurisztikaval, vagy mi?)
Ha ezt meg tudod mondani, pikk-pakk lenne megoldas is hozza. Igen, valoszinuleg a python erre pont jo lenne. De egy biztos: barmilyen programot csak akkor tudsz erdemben megirni, ha tudod, hogy kezzel, vegtelen ido alatt, milyen modszerrel csinalnad meg. Ahhoz meg kell tudni hogy mit. En ezt most nem tudom, ezert nem tudok (es a csendbol itelve masok sem) valaszt adni. -
moseras
tag
válasz kezdosql #2285 üzenetére
Üdv,
Valami ilyenre gondoltál ?
import string
import random
def randString(size):
letters = 'ABCDEFGHIJKLMNOPQRSTUVWX'
rstring = ''
for c in letters:
if random.random() > 0.5: # random bool
rstring += c
if len(rstring) >= size:
break
return rstring
# eredeti
a = [randString(random.randint(1,22)) for _ in range(30)]
print(a)
print()
# hossz szerint rendezett
b = sorted(a, key=len, reverse=True)
print(b)
print()
# részhalmazok keresése a b[0]-ra
h0 = set(b[0])
rr = [b[0]]
for s in b[1:]:
htemp = set(s)
if htemp <= h0: # htemp.issubset(h0) ?
rr.append(s)
print(rr)Egy lehetséges eredmény:
['ABCDGHIKORST', 'ABDFGHIMNOPRS', 'ABEHLN', 'ABCDEFGHKMOPSTU', 'ABCEHK', 'ABCD', 'ACFJMRTV', 'ABCF', 'DE', 'BFJKLM', 'ABCEIKMQRSTUV', 'AGLMPS', 'BCDEHI', 'BEFGQRU', 'BCFHIJLMOSWX', 'ABCJM', 'DIJLRSTW', 'ABCDEGIJLTU', 'DIJKLMNQTVWX', 'AEGHJKLMRT', 'BCDE', 'ABEGIKMNOQTW', 'DEGHLNOTUVX', 'A', 'ABEL', 'ABCEHJOPS', 'BCEIJKMNOPQR', 'GKLMNOPRSUW', 'ABCD', 'ABCDFHLOSVX']
['ABCDEFGHKMOPSTU', 'ABDFGHIMNOPRS', 'ABCEIKMQRSTUV', 'ABCDGHIKORST', 'BCFHIJLMOSWX', 'DIJKLMNQTVWX', 'ABEGIKMNOQTW', 'BCEIJKMNOPQR', 'ABCDEGIJLTU', 'DEGHLNOTUVX', 'GKLMNOPRSUW', 'ABCDFHLOSVX', 'AEGHJKLMRT', 'ABCEHJOPS', 'ACFJMRTV', 'DIJLRSTW', 'BEFGQRU', 'ABEHLN', 'ABCEHK', 'BFJKLM', 'AGLMPS', 'BCDEHI', 'ABCJM', 'ABCD', 'ABCF', 'BCDE', 'ABEL', 'ABCD', 'DE', 'A']
['ABCDEFGHKMOPSTU', 'ABCEHK', 'ABCD', 'ABCF', 'BCDE', 'ABCD', 'DE', 'A'][ Szerkesztve ]
Új hozzászólás Aktív témák
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen
Cég: Ozeki Kft.
Város: Debrecen