python, funkcje z input

python, funkcje z input
CR
  • Rejestracja:około 9 lat
  • Ostatnio:ponad 7 lat
  • Postów:9
0

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

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

a potem:

Kopiuj
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?

edytowany 1x, ostatnio: bogdans
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().

Wizzie
  • Rejestracja:prawie 11 lat
  • Ostatnio:prawie 8 lat
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.

bogdans
Moderator
  • Rejestracja:prawie 17 lat
  • Ostatnio:prawie 5 lat
0

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

Kopiuj
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)

To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.