python, funkcje z input

0

Mam napisać funkcję która pobiera od użytkownika 2 argumenty; 1 str, 2 float
Czy jeśli zrobię tak:

a = str(input('podaj a'))
b = float(input('podaj b')

a potem:

def funkcja(a, b)

to będzie to błąd? Chodzi mi o to czy to powinno być już jakoś zamontowane w funkcji?
Potem mam jeszcze zamieścić testujący użycie funkcji fragment programu--o co chodzi?

0

Funkcja input() automatycznie wykrywa rodzaj zmiennej więc nie trzeba dodawać str() an float(), a jeżeli koniecznie chcesz używać tego to zmień input() na raw_input().

0

Zależy czy to python 2 czy 3. Jeśli 2 to jest tak jak pisze Pijany Kaczor, jeśli python 3 to w nim input działa jak raw_input z pythona 2, więc dobrze pobierasz wartości.

0

@creatingembla, moim zdaniem będzie źle. Powinno być raczej coś takiego:

def pobierz():
    a = int(input("podaj liczbe calkowita "))
    b = float(input("podaj dowolna liczbe "))
    return a,b

def test():    
    c,d = pobierz()
    print(type(c) is int)
    print(type(d) is int)
    print(type(d) is float)

1 użytkowników online, w tym zalogowanych: 0, gości: 1