Alterna · учебный материал

本地变量和挑战堆堆

39.2: 本地变量和调用堆叠。短理论,一个例子和Python梯子。

Что в этом материале

Содержание и основные понятия

每个呼叫都接收一个单独的书架框架, 包括参数和本地变量。 返回后, 框架将被删除 。
内容和实践
11年级
EGE 第16号
01
如何运作。
每个函数调用得到自己的框架:参数和本地变量在返回前存在,然后框架消失。
本地名称。
它是在特定呼唤中创建的,返回后无法见。
全球名称。
它是在模块一级;阅读是可以接受的,改变需要全球范围。
是信号传输
Python 通过任务传输对象引用:函数为同一对象获得新的本地名称。
堆叠。
已经提出的最后一个挑战将首先结束。
02
执行中的一个例子
启动短程序, 跳过线条。 可视化仪只显示代码、 当前行、 变量和输出 。
如果在职能内部有任务
x = ...
Python认为
x
如果您尝试先读取全局 x 然后将其指定为本地 x,
UnboundLocalError
I. 接线员
global
这是罕见的: 首选参数和返回。 列表中的更改从外部可见, 因为两个名称都指同一列表; 本地名称的重新油漆不是 。
算数映图
从左到右读取,然后运行代码。
1
开始
2
将 x 传输到函数
3
创建本地值
4
返回新值
5
删除 x 和 Y
03
记住
不要把它称为“逐项传输” :通过任务传输物体更准确。
区分对象的更改并重新油漆本地名称 。
调用时检查调用文件的堆栈:每个都有自己的同名参数。
本页的语法
local variable
在正文中指定函数的名称属于此调用的框架。
global name
模块的级别名称; 允许从函数中指定全局名称 。
global x
声明函数内 x 是一个全球名称;仅在有明确需要时才使用。
list.append
修改列表主题,使列表上的所有名字都能看到效果。
return
关闭框架并发送消息。
print
它使得可以比较全球和返回的含义。

教科书结构图