Форум сайта python.su
Romissevd
Romissevd
def f1(b):
c = 4
a = b + 3 + c
return a
e = f1(3)
Офлайн
Пример:
Есть задача №1 - вывести длину строки, для этого пишем:
def print_lenght(str): lenght = len(str) print(lenght) print_lenght("some string")
#решение задачи №1 def get_string_lenght(str): lenght = len(str) return lenght print(get_string_lenght("some string")) #Решение задачи №2 total_lenght = 0 for s in ("some string", "another string"): total_lenght = total_lenght + get_string_lenght(s)
Офлайн
Но почему я не могу использовать эти (бывшие аргументы и уже переменные) в дальнейшей части программы? Или я неправильно понял?
def zod(m,z): return m,z # m и z - это локальные переменные, т.е. видны только в теле функции # функцимя zod, в данном случае, возвращает(возвращает с английского return) кортеж, # т.е. переменная fas, которой присваивается результат выполнения функции zod - это кортеж из двух значений. # соответственно print(m+z) выведет ошибку по двум причинам: # 1. m и z - это локальные переменные функции zod # 2. правильно не print(m+z) а print(fas[0]+fas[1]) fas=zod(40,50) print(m+z)
Офлайн