Я также понял все примеры приведены в книге в главе о функциях. Однако меня смутила следующая программа:
Код: Выделить всё
def k():
print(h)
def l():
h=1
k()
l()
Код: Выделить всё
NameError: name 'h' is not definedТеперь, изучая этот код, я выдвинул гипотезу, что переменная, если она определена внутри функции, будет строго запоминаться только в этой же функции, а не даже в функции, вызываемой внутри нее.
Но это так. ошибочность доказана следующей программой:
Код: Выделить всё
def k(h):
print(h)
def l():
h=1
k(h)
l()
Пожалуйста, объясните с точки зрения того, что делает Python, никаких упрощений не требуется!
Подробнее здесь: https://stackoverflow.com/questions/790 ... ction-call