Skip to Content
Python语言及其应用(第2版)
book

Python语言及其应用(第2版)

by Bill Lubanovic
March 2022
Intermediate to advanced content levelIntermediate to advanced
522 pages
13h 52m
Chinese
Posts & Telecom Press
Content preview from Python语言及其应用(第2版)
函数
137
9.10
名称空间和作用域
希求这人的才华横溢,那人的见多识广。
——
W
illiam Shakespeare
名称可以指代不同的事物,具体取决于在哪里使用。
Python
程序拥有各种
名称空间
——特
定的名称在其中是唯一的,与其他名称空间中的同名名称没有任何关系。
每个函数都定义了自己的名称空间。如果你在主程序中定义了变量
x
,在某个函数中定义
了另一个变量
x
,那么这两个变量指代的是不同的东西。但名称空间之间并不是密不透风
的:如果你需要,可以通过各种方式访问其他名称空间中的名称。
主程序部分定义了
全局
global
)名称空间,在其中定义的变量就是
全局变量
可以在函数内获取全局变量的值:
>>> animal = 'fruitbat'
>>> def print_global():
... print('inside print_global:', animal)
...
>>> print('at the top level:', animal)
at the top level: fruitbat
>>> print_global()
inside print_global: fruitbat
但如果你尝试在函数内获取全局变量的值并进行修改,则会产生错误:
>>> def change_and_print_global():
... print('inside change_and_print_global:', animal)
... animal = 'wombat'
... print('after ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Python编程入门与实战

Python编程入门与实战

Posts & Telecom Press, Fabrizio Romano
Python实用技能学习指南

Python实用技能学习指南

Posts & Telecom Press, Robert Smallshire, Austin Bingham
Python技术基础视频教程

Python技术基础视频教程

保罗·J·戴特尔
Python面向对象编程指南

Python面向对象编程指南

Posts & Telecom Press, Steven F. Lott

Publisher Resources

ISBN: 9787115586223