[python] Vyjmy text a skoc na dalsi radek
Dobry den, zacinam byt trosku zoufali. Chci udelat pro me zdanlive jednoduchou vec, ale uz se s tim trapim docela dlouho. Mam soubor s textem. V nem slova uvozena uvozovkami "'". Potrebuji tuto slovo z uvozovek dostat a skocit na dalsi radek. A tohle opakovat. Udelal sem to pro jeden radek, ale dokazu se pomoci cyklu dostat na dalsi a opakovat to. Predem dekuji za pomoc pomocnej = open('pomocnej.lst','r') dotaz = pomocnej.readline() dotaz = dotaz.split("'") dotaz=dotaz[1] print dotaz ___ Python mailing list python@py.cz http://www.py.cz/mailman/listinfo/python Visit: http://www.py.cz
Re: [python] Vyjmy text a skoc na dalsi radek
On 14 Lis, 15:44, la...@tiscali.cz wrote: > Dobry den, > zacinam byt trosku zoufali. Chci udelat pro me zdanlive jednoduchou vec, > ale uz se s tim trapim docela dlouho. > Mam soubor s textem. V nem slova uvozena uvozovkami "'". Potrebuji tuto > slovo z uvozovek dostat a skocit na dalsi radek. A tohle opakovat. Udelal > sem to pro jeden radek, ale dokazu se pomoci cyklu dostat na dalsi a > opakovat to. > Predem dekuji za pomoc > > pomocnej = open('pomocnej.lst','r') > dotaz = pomocnej.readline() > dotaz = dotaz.split("'") > dotaz=dotaz[1] > print dotaz radky = pomocnej.readlines() for r in radky: r.split .. ___ Python mailing list python@py.cz http://www.py.cz/mailman/listinfo/python Visit: http://www.py.cz
Re: [python] Vyjmy text a skoc na dalsi radek
Ahoj, nekolik komentaru na zacatek: - readlines() nepouzivat, pokud nevime jak ten zdrojovy soubor bude velky (muzeme zabrat celou pamet) - na takhle jednoduche veci nepouzivat ani regularni vyrazy (pomale, zbytecne slozite) - A:\ ??? Myslel jsem, ze diskety uz vymrely ;-) - uz jsme definitivne prestali pouzivat podpisy v emailu? Skoda, ja docela rad vim kdo mi pise :( - langi: nic ve zlem, ale stalo by za to krome Pythonu zapracovat i na cestine (vim ze tohle je konference o Pythonu, ale trochu z toho boli oci) Abych jenom zbytecne neplacal, tak tady je verze ktera si poradi s libovolne velkymi soubory a taky se situacemi kdy je na jednom radku vice slov (obecne stringu) v uvozovkach (vim, ze to kopirovani listu neni uplne idealni, i kdyz tady nedoporucuju re ;-) soubor = open('texty.txt', 'r') for radek in soubor: nalezen_text = False radek_list = radek.split('') # to je uvozovka mezi dvema apostrofy while len(radek_list) 2: nalezen_text = True print radek_list[1], radek_list = radek_list[2:] if nalezen_text: # musime odradkovat print soubor.close() - docela by mne zajimalo, ktery ucitel to bude hodnotit ;-) Pythonu zdar Jirka Vejrazka ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] Vyjmy text a skoc na dalsi radek
Neni nad to opravovat vlastni kod :) Tady je lepsi verze: soubor = open('texty.txt', 'r') for radek in soubor: nalezen_text = False radek_list = radek.split('') # to je uvozovka mezi dvema apostrofy idx = 1 posledni_mozny = len(radek_list) - 2 # 2 protoze index je od nuly # a string za poslednimi uvozovkami # nas nezajima while idx = posledni_mozny: nalezen_text = True print radek_list[idx], idx += 2 if nalezen_text: # musime odradkovat print soubor.close() Ahoj Jirka Vejrazka ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] Vyjmy text a skoc na dalsi radek
Mam soubor s textem. V nem slova uvozena uvozovkami '. Potrebuji tuto slovo z uvozovek dostat a skocit na dalsi radek. A tohle opakovat. [...] pomocnej = open('pomocnej.lst','r') dotaz = pomocnej.readline() dotaz = dotaz.split(') dotaz=dotaz[1] print dotaz radky = pomocnej.readlines() for r in radky: r.split .. Takhle to je skoro dobré, ale místo provedení readlines() by se měl použít tento obrat: f = open('pomocnej.lst','r') for line in f: dotaz = line.split(') dotaz = dotaz[1] print dotaz f.close() pepr P.S. Chtělo by to trochu přidat v češtině. Je to taky dost zoufali ;) ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python