Komunikace o úkolu z kurzu – Python – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Komunikace o úkolu z kurzu – Python – Fórum – Programujte.comKomunikace o úkolu z kurzu – Python – Fórum – Programujte.com

 

nestor0
Newbie
17. 8. 2006   #1
-
0
-

Jak se nech? komentovat hodnocen? na mnou vypracovan? úkol z kurzu???
Nev?m, tak jsem kv?li tomu musel zalo?it t?ma.
Jde o m?j zat?m jedin? úkol z 2.lekce.
a) bez maz?n? prom?nn?ch po ka?d?m vyhodnocen? v?sledku se mi na??t? st?le stejn? p??klad. Tak?e random.randint jen jednou nesta??. Zkou??m to jako vzteklej, ale zat?m mi to vych?z? jako ?patn? rada :((
b) Nepot?ebuji spojit k vyti?t?n? printem dva textov? ?et?zce, ale textov? ?et?zce z prom?nn?mi. J? tedy um?m jen php, ale vlo?it prom?nnou do prost?ed textu je jednoduch?.

D?ky za odpov??. A pros?m o zamy?len? nad mo?nost? p?idat mo?nost obousm?rn?ho koment??e nad vy?e?en?m ?kolem. Diskuzi s u?itelem nad probl?mem, k jeho? ?e?en? se ??k aktivn? sna?? doj?t, ne ?e jen ?kemr? o naps?n? skriptu, pova?uji za velmi d?le?itou, nebo se myl?m? Kdy? mi u?itel ?ekne, ?e n?co d?l?m ?patn? a j? jeho vysv?tlen? napoprv? nepochop?m, t?m se mysl? jako?e ber nebo jdi od toho?

D?kuji za odpov??(i) .

Nahlásit jako SPAM
IP: ...–
geon0
Grafoman
17. 8. 2006   #2
-
0
-

[i]Jak se nechá komentovat hodnocení na mnou vypracovaný úkol z kurzu???
Nevím, tak jsem kvůli tomu musel založit téma.[/i]
myslím, že zde je to nejlepší, protože takto se mohou z mé odpovědi poučit i ostatní, nebo i někdo ostatní může přispět svojí radou. Příště jen sem pls vlož link na tvůj ukol, at to nemusíme hledat.

[i]Jde o můj zatím jediný úkol z 2.lekce.
a) bez mazání proměnných po každým vyhodnocení výsledku se mi načítá stále stejný příklad. Takže random.randint jen jednou nestačí. Zkouším to jako vzteklej, ale zatím mi to vychází jako špatně rada [/i]
zkus udělat nějakou demo/zkrácenou verzi toho, jak ti to připadá, že to nefunguje

[i]b) Nepotřebuji spojit k vytištěné printem dva textové řetězce, ale textové řetězce z proměnnými. Já tedy umím jen php, ale vložit proměnnou do prostřed textu je jednoduché.[/i]
ty jsi měl v textových řetězcích proměnné? to snad ne ;-) opět - ukaž ukázku

[i]Díky za odpověď. A prosím o zamyšlení nad možností přidat možnost obousměrného komentáře nad vyřešeným úkolem. Diskuzi s užitelem nad problémem, k jehož řešení se žák aktivně snaží dojít, ne že jen škemrá o napsání skriptu, považuji za velmi důležitou, nebo se mylím? Když mi užitel řekne, že něco dělám špatně a já jeho vysvětlení napoprvé nepochopím, tím se myslí jakože ber nebo jdi od toho?[/i]
jj, myslím, že jsem odpověděl úplně nahoře. Dotazy jsou dobře.

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
nestor0
Newbie
17. 8. 2006   #3
-
0
-

Tak u? jsem to pochopil podle tv?ho n?vodu. P?vodn? jsem t? ch?pal tak, ?e sma?u ty dyl?tka prom?nn?ch a znovu na??t?n? random.randint. To tedy nefungovalo.
Po pochopen?:
#################
import random
odpoved = 1
while odpoved != 0:
a = random.randint (1,10)
b = random.randint (1,10)
c = a * b
print "Kolik je ", a, "x", b,"?"
odpoved = int (raw_input ("Tvoje odpov?? = : "))
if odpoved == c:
print "ano"
else:
print "ne"
#################
V [url]tom m?m dom?c?m ?kolu[/url] se mi to zd? ovšem pro za??te?n?ka logi?t?j?? jako p??klad na pochopen? :)) . Nemusela se nap?. inicializovat prom?nn? dop?edu.
???Te? u? to m? jen jednu funk?n? chybku na konci, kdy? zad?m 0, jako?e konec. Skon?? to sice, ale je?t? to vytiskne z?pornou odpov??.

No a k tomu spojov?n? ?et?zce a prom?nn? v php nap??klad:
<?php
$a = 43;
$b = "No a co?";
print "Je mi ".$a."! ".$b. " Nikdy nen? pozd? za??t!";
?>
Napsal jsem to to do souboru sem http://www.fippo.cz/a.php , kdyby se to snad zd?lo n?komu nefunk?n?.

Nahlásit jako SPAM
IP: ...–
nestor0
Newbie
17. 8. 2006   #4
-
0
-
Nahlásit jako SPAM
IP: ...–
nestor0
Newbie
17. 8. 2006   #5
-
0
-

Nechci tady ucpat f?rum :)) , ale k t? moj? cause by bylo dobr? v?d?t pro dal?? nov??ky, ?e jsem musel p?i m?m ?e?en? n?sobilky mazat prom?nn? proto, ?e jejich p?i?azen? jsem nechal prov?d?t je?t? p?ed za??tkem cyklu, ??m? potom uvnit? cyklu se pracovalo u? se jen statickou hodnotou.
T?m, ?e se p?i?azen? posunulo dovnit? smy?ky while se za?aly prom?nn? ka?d?m opakov?n?m plnit znovu a znovu nov? vygenerovan?m ??slem.
Vysv?tlil jsem to spr?vn?? M??u se m?lit a t?eba logika zm?ny ?e?en? spo??v? v n??em, co jsem nepochopil. Ale pokud je to tak, tak takhle si mysl?m, ?e bych to vysv?tloval blbcovi, jak? jsem v Pythonu, a je?t? n?jak? p?tek budu, j? :skunk:

Nahlásit jako SPAM
IP: ...–
geon0
Grafoman
17. 8. 2006   #6
-
0
-

heh, je toho moc, zkus?m nic neopomenout :-)

[i]P?vodn? jsem t? ch?pal tak, ?e sma?u ty dyl?tka prom?nn?ch a znovu na??t?n? random.randint. To tedy nefungovalo.[/i]
Kdybys smazal jen ty dyl?tka prom?nn?ch, v?e muselo fungovat OK. del se pou??v? velmi, velmi m?lo. Hlavn? snad jen v OOP.

[i]V tom m?m dom?c?m ?kolu se mi to zd? ovšem pro za??te?n?ka logi?t?j?? jako p??klad na pochopen? . Nemusela se nap?. inicializovat prom?nn? dop?edu.[/i]
Ale ona se iniciovala!!! T?m p?edchoz?m a=random.randint (...). TO je taky inicializace.

[i]No a k tomu spojov?n? ?et?zce a prom?nn? v php nap??klad:[/i]
Spojov?n? ?et?zc? v Pythonu je hez??, he?:

a="ahoj"

b="nestor"
print a + " " + b


[i]??m? potom uvnit? cyklu se pracovalo u? se jen statickou hodnotou.[/i]
v pythonu statick? hodnoty neexistuj?, jsme toti? dynami?t? :-) Toto je validn? kod:



a=5
a="ahoj"
a=["no nazdar"]


Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
Farundel0
Super člen
17. 8. 2006   #7
-
0
-

Toto je validní kod:



a=5
a="ahoj"
a=["no nazdar"]




Vseho s mirou, chlape! ;o)))

Videt nekoho, jak takhle prasi v mem milovanem Pythonu jako by se rochnil v PHP, tak ho asi uskrtim ;o)))

Nahlásit jako SPAM
IP: ...–
To follow the path:
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.
geon0
Grafoman
17. 8. 2006   #8
-
0
-

Farundel napsal:

Vseho s mirou, chlape! ;o)))



Já radsi s Mirkou. Demo není produkcní kod, že? :-)

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
geon0
Grafoman
17. 8. 2006   #9
-
0
-

[i]???Te? u? to m? jen jednu funk?n? chybku na konci, kdy? zad?m 0, jako?e konec. Skon?? to sice, ale je?t? to vytiskne z?pornou odpov??.[/i]
na to jsem zapomn?l. Jo to je fakt. Sta?? tedy p?ed odpov?? vlo?it:

if c==0:

break


nebo

id c==0:

continue


V tomto p??pad? to vyjde nastejno. Jen u prvn? uk?zky pak sta?? dokonce m?t:


while True:
....


break prost? smy?ku p?eru??. continue p?eru?? pouze zbylou ??st kodu ve smy?ce a vr?t? se na za??tek, kde zjist?, ?e ....

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
nestor0
Newbie
17. 8. 2006   #10
-
0
-

geon napsal:

heh, je toho moc, zkusím nic neopomenout :-)

[i]Původně jsem tě chápal tak, že smažu ty dylítka proměnných a znovu načítání random.randint. To tedy nefungovalo.[/i]
Kdybys smazal jen ty dylítka proměnných, vše muselo fungovat OK. del se používá velmi, velmi málo. Hlavně snad jen v OOP.
[color=green]To je pravda i když původní výtka byla hlavně k těm zbytečným randomům[/color]

[i]V tom mém domácím úkolu se mi to zdá ovšem pro začátečníka logičtější jako příklad na pochopení. Nemusela se např. inicializovat proměnná dopředu.[/i]
Ale ona se iniciovala!!! Tím předchozím a=random.randint (...). TO je taky inicializace.
[color=green]Měl jsem na mysli incializaci proměnné "odpoved" /color]
[i]No a k tomu spojování řetězce a proměnné v php například:[/i]
Spojování řetězců v Pythonu je hezčí, heč:

a="ahoj"

b="nestor"
print a + " " + b

[color=green]Tak to mi funguje, pokud nehodím do proměnné číslo. Hlásí mi to
[color=red]TypeError: cannot concatenate 'str' and 'int' objects[/color]
Vypadá to tedy, že stejný příklad, jako jsem ukázal v tom php, Python nezvládne. To snad ne? [/color]
[i]Čímž potom uvnitř cyklu se pracovalo už se jen statickou hodnotou.[/i]
v pythonu statické hodnoty neexistují, jsme totiž dynamičtí :-) Toto je validní kod:



a=5
a="ahoj"
a=["no nazdar"]

[color=green]Hmmm...[/color]


Nahlásit jako SPAM
IP: ...–
Farundel0
Super člen
17. 8. 2006   #11
-
0
-

geon napsal:

Já radsi s Mirkou.


Ja zas radsi s Lenkou. :o)

Ja vim, ze jsi to myslel jenom jako priklad... mne to jenom trochu vydesilo ;o) Predstavil jsem si nekoho, jak to z vesela pouziva v nejakym svym programu... brrrr... ;o)

Nahlásit jako SPAM
IP: ...–
To follow the path:
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.
geon0
Grafoman
17. 8. 2006   #12
-
0
-

python chápe, že součet čísla a řetězce je nesmysl (čti error) :-). Je třeba z čísla vyrobit řetězec

>>> a=1

>>> print "tohle je jednička " + str(a)
tohle je jednička 1
>>> print "tohle je jednička ", str(a)
tohle je jednička 1
>>> c1= "tohle je jednička " + str(a)
>>> c2 ="tohle je jednička ", str(a)
>>> print c1
tohle je jednička 1
>>> print c2
('tohle je jednička ', '1')


U print čárka (,) znamená, aby se to tisklo za sebou (a nechalo mezi sebou jednu mezru), kdežto v přiřazení, je toto
c2 ="tohle je jednička ", str(a)
zkrácenou formou pro toto:
c2 =("tohle je jednička ", str(a))
tedy výroba tuple, ale to jen tak na okraj, kdybysis s tím hrál :-)

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
nestor0
Newbie
17. 8. 2006   #13
-
0
-

Užiteli, pomóc! Myslel jsem, že ten brejk by měl fungovat takhle:



import random
odpoved = 1
while odpoved != 0:
a = random.randint (1,10)
b = random.randint (1,10)
c = a * b
print "Kolik je ", a, "x", b,"?"
odpoved = int (raw_input ("Tvoje odpověď = : "))
if odpoved == c:
print "ano"
elif odpoved != c:
print "ne"
else:
break

Já tomu nerozumím :helpme: :helpme: :helpme:

Nahlásit jako SPAM
IP: ...–
geon0
Grafoman
17. 8. 2006   #14
-
0
-

Takto se ti nula zachytí přeci již u elif, nebo ne? Musíš na to, příteli, jinak .... :mno:

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
nestor0
Newbie
17. 8. 2006   #15
-
0
-

Aha. Takže alespoň v tomhle je to "blbé php" podstatně jednodušší. No to bude asi špatně přiznatelné Farundelovi. Zdál se mi na php dost nabroušenej :D , ale v téhle maličkosti Python asi opravdu nevede. Stejně ho asi budu milovat :))

Nahlásit jako SPAM
IP: ...–
nestor0
Newbie
17. 8. 2006   #16
-
0
-

nestor napsal:

Aha. Tak?e alespo? v tomhle je to "blb? php" podstatn? jednodu???. No to bude asi ?patn? p?iznateln? Farundelovi. Zd?l se mi na php dost nabrou?enej :D , ale v t?hle mali?kosti Python asi opravdu nevede. Stejn? ho asi budu milovat :))



[color=blue]?lov??e, j? v tom f?ru je?t? n?jak neum?m nar?ba?. V??e uveden? v?ty byly reakcemi na slo?it? spojov?n? prom?nn?ch pln?ch string? s prom?nn?mi pln?n?mi ??sly.
[/color]

Nahlásit jako SPAM
IP: ...–
geon0
Grafoman
17. 8. 2006   #17
-
0
-

no jak se to veme. M? to p?ide logi?t?j??, p?esto, ?e "nenadb?h?m" u?ivateli a ned?l?m konverzi za n?j.

5+5=10 to je jasn?
"5"+"5"="55" tady je plus ve ve v?znamu spojovat, slu?ovat, ale d?v? to smysl taky
"5"+5= "55" nebo 10? To se m? rozhodnout stroj, jestli z ?et?zce ud?lat ??slo nebo naopak? To mus? v?d?t program?tor!

Rozhodn? je z?ejm?j?? co d?l? "a"+"b" ne? "a"."b" ;-), mysl?m laikovi, co nikdy ani jeden jazyk nevid?l.

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
geon0
Grafoman
18. 8. 2006   #18
-
0
-

až na to, že mi to nefunguje, je to docela dobré. :-) Žádný 3x random, žádný del. Jen myslím, že na začátku chybí jeden či dva řádky, aby to fungovalo. Jestli chceš, klidně to odevzdej znovu. A tady to pls edituj a smaž kod . Nemusíme kazit začinajícím radost z objevovování ukázáním hotového že ne?. Kdo bude chtít najít, vždycky najde, ale proč jim to usnadňovat, že? ;-)

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
nestor0
Newbie
18. 8. 2006   #19
-
0
-

No jo, nějak si ty dva řádky nevzal do copy. Su to ale pako.

Nahlásit jako SPAM
IP: ...–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 6 hostů

Podobná vlákna

Lektor ke kurzu Delphi — založil Daniel Muška

Problém s kódem v kurzu C++ — založil Brejlounek

Základy Python pomocou kurzu — založil vankojan

Známkování úkolů. — založil geon

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý