Python 变量范围

1、本地变量,全局变量

  Python 中有2种变量作用范围本地变量,全局变量。

  变量搜索路径是:本地变量->全局变量

  它们简而言之就是本地变量的值只在本地作用范围有效。而全局变量的作用范围是全局的。

  例如:

  

a = 3      

def px():
    a = 4
    print (a)

print (a)
px()

print (a)

上段代码的结果为 3 4 3,px函数中的a只是本地变量,它只在它所在代码块中有效。不能改变外面a的值

但是加上global后,我们再来看:

a = 3

def px():
    global a
    a = 4
    print (a)

print (a)
px()

print (a)

加上global 后,该变量 a 就是变成了全局变量,它的作用范围是全局的。 对它的修改,在全局范围内生效

时间: 2024-12-16 23:02:40

Python 变量范围的相关文章

Python/Numpy大数据编程经验

Python/Numpy大数据编程经验 1.边处理边保存数据,不要处理完了一次性保存.不然程序跑了几小时甚至几天后挂了,就啥也没有了.即使部分结果不能实用,也可以分析程序流程的问题或者数据的特点. 2. 及时用 del 释放大块内存.Python缺省是在变量范围(variablescope)之外才释放一个变量,哪怕这个变量在后面的代码没有再被用到,所以需要手动释放大的array. 注意所有对数组的引用都del之后,数组才会被del.这些引用包括A[2:]这样的view,即使np.split也只是

Python-12:Python语法基础-函数

1.函数 function,通俗来讲函数就是功能,函数是用来封装功能的,函数分为两种类型,一种是系统自带的不用我们编写就可以使用的.另一种函数是自定义的,需要我们编写其功能,这种函数自由度高,叫做自定义函数. #encoding:utf-8 #系统自带的函数 #实现取字符串长度的功能 a="hello,jiyongxin" print len(a) #15 #实现字符串的切割 a="student" b=a.split("u") print b

Python闭包的学习

Python闭包的学习 什么是闭包? 借用维基上解释:在计算机科学中,闭包(Closure)是词法闭包(Lexical Closure)的简称,是引用了自由变量的函数.这个被引用的自由变量将和这个函数一同存在,即使已经离开了创造它的环境也不例外.所以,有另一种说法认为闭包是由函数和与其相关的引用环境组合而成的实体.闭包在运行时可以有多个实例,不同的引用环境和相同的函数组合可以产生不同的实例. 好吧,看了这段定义的确不是还不能立即理解闭包到底是什么.不过,闭包并不是很难理解,往下看几个小例子就能明

(转)通天塔导游讲述C,C++,Lisp,Java,Perl,(我们在亚马逊用到的所有语言),Ruby (我就是喜欢),和Python

https://code.google.com/archive/p/windows-config/wikis/TourDeBabel.wiki 通天塔导游 (译注:圣经记载:在远古的时候,人类都使用一种语言,全世界的人决定一起造一座通天的塔,就是巴别塔,后来被上帝知道了,上帝就让人们使用不同的语言,这个塔就没能造起来. 巴别塔不建自毁,与其说上帝的分化将人类的语言复杂化,不如说是人类自身心灵和谐不再的分崩离析.之所以后来有了翻译,不仅是为了加强人类之间的交流,更寄达了一种愿望,希望能以此消除人际

在Python中,val、exec和 compile 有什么区别?

基本上 eval 上用来评估一个动态生成的 Python 表达式:exec 额外的用于执行动态生成的 python 代码. eval 和 exec 有以下两个差异 eval 只接受一个表达式,exec 可以接受一个包含了 python 语句的代码块: loops, try: except:, class 以及定义的函数和方法 Python 中的表达式是任何可以作为变量赋值中的值的表达式: a_variable = (任何你可以放在这个括号内的都是一个表达式) evale 返回表达式的值,而 ex

回顾Python装饰器

函数装饰器(function decorator)可以对函数进行“标注”,给函数提供更多的特性. 在理解装饰器之前需要理解闭包(closure).Python3.0 引入了保留关键字 nonlocal,使用闭包同样也离不开 nonlocal.顺便说一句,闭包除了用在装饰器上,对于异步编程也是很重要的概念. 装饰器(decorator)是一个可调用的装饰函数,它接收另一个函数作为参数. 假设已经定义好了一个装饰器 decorate(decorate 实际上是一个接收函数并且返回函数的函数),那么以

7个Python小坑,给新手党的福利

Python语言简单易用,但容易给新入门的朋友造成一些微妙的,难以捕捉的错误,稍不注意就入坑了.因此,今天给大家总结一些易犯的小错误,让你轻松进行不踩坑的Python学习. 1.缩进,符号和空格不正确 写代码时大家会使用缩进.对齐.空格等,其目的是为了提高代码的可读性.但在python语言中,许多功能都依赖于缩进. 比如在创建一个新类时,该类中的所有内容都在声明下缩进,决策.循环还有其它结构语句也会出现类似的情况, 如果你在代码执行时发现问题,可以查看一下是否使用了正确的缩进. 来看看下面的例子

PEP 484 类型提示 -- Python官方文档译文 [原创]

英文原文:https://www.python.org/dev/peps/pep-0484/ 采集日期:2019-12-27 PEP 484 -- 类型提示(Type Hints) PEP: 484 Title: Type Hints Author: Guido van Rossum <guido at python.org>, Jukka Lehtosalo <jukka.lehtosalo at iki.fi>, ?ukasz Langa <lukasz at pytho

Python学习1-Python和Pycharm的下载与安装

本文主要介绍Python的下载安装和Python编辑器Pycharm的下载与安装. 一.Python的下载与安装 1.下载 到Python官网上下载Python的安装文件,进入网站后显示如下图: 网速访问慢的话可直接在这里下载:python-2.7.11.amd64 在Downloads中有对应的支持的平台,这里我们是在Windows平台下运行,所以点击Windows,出现如下: 在这里显示了Python更新的所有版本,其中最上面两行分别是Python2.X和Python3.X对应的最后更新版本