[python] Zacatecnik prosi o nalezeni a vysvetleni chyby

Michal Molhanec mol-python na seznam.cz
Pátek Listopad 29 20:41:23 CET 2013


Dne 29.11.2013 20:07, pythoncaha napsal(a):
> Dobry den vsem v konferenci, jsem zde novy a dovolil bych si obcas
> nejaky zacatecnicky dotaz.
> Doufam, ze nikoho neurazim opravdu zakladnimi otazkami, ale verte, ze
> nez se zeptam, tak ztratim nekolik hodin pokusy...
>  
>  
> V souboru seznam.txt je kombinace cisel a jmen. Cislo je v souboru vzdy
> unikatni. Chtel jsem programem najit pozici cisla a pak si nacist
> nasledujici jmeno, ale hledani se mi nedari. Dale je asi problem pokud
> cislo zacina nulou, je pak povazovano za HEX hodnotu?

Pouzivej raw_input, ne input v Pythonu 2 (v Pythonu 3 se raw_input
prejmenoval na input).

V pripade, ze soubor obsahuje dvojice cislo a slovo oddelene napr.
mezerou a navzajem napr. koncem radku:

cislo = raw_input("Zadej hledane cislo: ")
print cislo

# bylo zadano cislo?
if cislo.isdigit():
    # nacti soubor a rozdel ho do pole po jednotlivych slovech
    with open('seznam.txt', 'rt') as soubor:
        seznam = soubor.read().split()
    # v i bude index prvku v poli seznam
    for i, prvek in enumerate(seznam):
        if prvek == cislo:
            print seznam[i + 1]
            break
    # else u for se vykona v pripade, ze se v cyklu for nevykonalo break
    else:
        print 'Nenalezeno'
else:
    print 'Neni zadano cislo'


Zdraví,
Michal Molhanec


Další informace o konferenci Python