Keresés

Hirdetés

Új hozzászólás Aktív témák

  • cousin333

    addikt

    válasz XP NINJA #586 üzenetére

    Ez meg milyen leíró nyelv? :F

    Azt kérdezted, én hogyan írnám meg. A válasz: sehogy, mert minek újra feltalálni a kereket, amikor van erre jó kis gyári függvény. Pl:

    >>> szo1 = "Valami szöveg 123"
    >>> szo1.isdigit()
    False
    >>> szo2 = "536 25"
    >>> szo2.isdigit()
    False
    >>> szo3 = "53625"
    >>> szo3.isdigit()
    True

    Ha viszont hűek akarunk lenni a példához - a Python nyelv elvárásain belül - akkor ezt írnám:

    def szam_e(szo):
    valasz = True

    for betu in szo:
    if betu < '0' or betu > '9':
    valasz = False

    return valasz

    A for ciklust mondjuk így is írhatnád:

    for betu in szo:
    if not '0' < betu < '9':
    valasz = False

    Vagy esetleg így:

    import string

    for betu in szo:
    if betu not in string.digits:
    valasz = False

    Update! Egy kis adalék: a saját megoldások futtatási ideje sorrendben 1,41, 1,61 és 1,55 us (mikroszekundum), ellenben a gyári függvénnyel 53,9 ns (nanoszekundum). Utóbbi tehát úgy 26-szor gyorsabb... :)

    [ Szerkesztve ]

    "We spared no expense"

Új hozzászólás Aktív témák