10.lekce -úkol extra – Python – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

10.lekce -úkol extra – Python – Fórum – Programujte.com10.lekce -úkol extra – Python – Fórum – Programujte.com

 

aranes0
Newbie
1. 8. 2006   #1
-
0
-

Dobrý deň, prešiel som 10. lekciu a spravil som aj úlohu, ale keď som skůšal spraviť extra úlohu, tak som narazil na problém. Načítať údaje z telefonneho zoznamu som vedel aj rozdeliť ich na riadky, ale neviem ako mám od seba rozdeliť mena a čísla, kedže je to reťazec a nie zoznam :((
Tu je program:




# nacitanie udajov zo suboru - a tu je ten problem...
nazov="data.txt"
subor=file(nazov,"r")
for riadok in subor:
print riadok,
subor.close()
polozky.sort()

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

Mozna jsem to nepochopil (unava dela svoje ;o)), ale pokud ti jde o to, ze potrebujes z nacteneho radku v souboru dostat dva udaje (jmeno a cislo oddelene mezerou), tak muzes pouzit metodu split objektu string (cili riadok.split() ve tvem pripade), ktera ti retezec rozdeli na casti oddelene mezerou (nebo v pripade, ze zadas metode split nejaky argument, tak retezec rozdeli hodnotou tohoto argumentu). Pokud tedy mas v souboru na kazdem radku jednoslovne jmeno a cislo, pak plati:

meno, cislo = riadok.split()[0], riadok.split()[1] # split() vraci seznam, proto ty indexy
V pripade viceslovnych jmen (asi logictejsi vec) by, jestlize by se cisla vyskytovala na samotnem radku, platilo totez, jen by jmeno bylo v polozkach seznamu s indexy 0 az predposledni prvek seznamu.

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.
aranes0
Newbie
4. 8. 2006   #3
-
0
-

Problem bol v tom že ten reťazec sa mi ukladal v tvare:

"['meno','cislo']"

a ja som chcel aby sa mi vypisal iba
meno:cislo

ale uz som to spravil, napisal som aby sa ukladal v takom tvare:


nazov="data.txt"
subor=file(nazov,"a")
for spolu in polozky:
uloz=spolu[0]+" : "+spolu[1]
subor.write(uloz)
subor.write('n')
subor.close()

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

Kompletní úkoly nedávej sem (aby si ostatním nekazil radost z objevování), spíš jen úryvky kodu, co ti nefunguje. Celé úkoly pak, pokud chceš, odevzdávej přes http://programujte.com/kurzy.php?akce=odevzdej.

Pokud teda budeš mít čas, edituj svoje příspěvky a zkus to "zkrátit" ;-)

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
aranes0
Newbie
5. 8. 2006   #5
-
0
-

ok :)

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, 31 hostů

Podobná vlákna

MySQL - extra DELETE — založil Sakalik

2 divy inline-block extra margin-top — založil Codemaster

If else - lekce 3 — založil Ymemgirei

 

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