Python学习记录 变量的作用域

Python函数(个人学习记录) 使用关键字def确定函数名称、参数名称、参数个数、编写函数体(用于实现函数功能的代码) 阅读详情

2022.07.22 DAY22

1. 函数的用法和底层分析

1. 内存分析
  • Python中,一切皆是对象。

  • 实际上,执行def定义函数后,系统就创建了相应的函数对象。

      def print_star(n):
          print("*"*n)
    
      print(print_star)
      print(id(print_star))
      c = print_star
      c(10)
    
2. 变量的作用域(全局变量和局部变量)
  • 变量起作用的范围叫做变量的作用域,不同作用域同名变量之间互不影响。

  • 变量分为:全局变量、局部变量

  • 全局变量

    • 在函数和类定义之外声明的变量。作用域为定义的模块,从定义位置开始直到模块结束。
    • 全局变量降低了函数的通用性和可读性。应尽量避免全局变量的使用。
    • 全局变量一般做常量使用。
    • 函数内要改变全局变量的值,使用global声明一下。
  • 局部变量

    • 在函数体中(包含形式参数)声明的变量。

    • 局部变量的引用比全局变量快,优先考虑使用。

    • 如果局部变量和全局变量同名,则在函数内隐藏全局变量,只是用同名的局部变量。

        A = 100  # 全局变量
      
      
        def test():
            """变量的作用域"""
            global A  # 使用全局变量
            print(A)
            A = 300
            print(A)
      
            
            print(locals())  # 打印输出的局部变量
            print(globals())  # 打印输出的全局变量
      
      
        if __name__ == '__main__':
            test()
            print(A)
      
  • 在特别强调效率的地产或循环次数较多的地方,可以通过将全局变量转化成局部变量提高运行速度。

mysql 学习笔记(1):mysql 基本概念和 mysql workbench 的基本使用方法 … 阅读详情

相关推荐

DSSAD自动驾驶行车记录系统体系结构和应用

通过对其感知、决策、控制等模块的详细研究,以及对商业化和消费市场发展趋势的分析,为该领域的研究和实践提供有价值的参考。通过克服技术、安全与隐私、法规与政策等方面的挑战,并紧跟人工智能、云端服务、用户体验等发展趋势,DSSAD系统将更好地适应自动驾驶行业的发展,提供更安全、智能、便捷的驾驶辅助服务。DSSAD体系结构通过数据收集模块、加密链接和数据存储模块和数据读取模块等关键模块的协同作用,构建了一个强大而灵活的自动驾驶数据记录系统,为未来智能出行提供了坚实的技术基础。

一只老虎的专栏 2208

Python学习笔记:变量和数据类型

Python学习笔记:变量和数据类型

Rumou的博客 278

Arduino四足开源机器猫-Opencat(导航贴)

本内容由我和小伙伴共同编写,未经授权,谢绝转载! 1.项目介绍 2.组装调试教程 (一)Opencat-F (1)资料地址(包含程序代码&&3D打印图纸): 链接:https://pan.baidu.com/s/1AcVA5jSiOSzRKqEQAomrTA 提取码:szfx (2) (二)Opencat-B (1)组装调试 (2)组装调试注意事项 (3)添加新技能 3.编程 ...

qqliuzhitong的博客 4172

python 数据库变量_Python记录变量数据

python 数据库变量Sometimes you would want to include some dynamic information from your application in the logs. 有时,您可能希望在日志中包含来自应用程序的一些动态信息 。 As we have seen in examples till now, we print strings in lo...

cunfen6312的博客 494

数字IC后端设计实战:从floorplan到powerplan的优化策略

本文深入探讨了数字IC后端设计中从Floorplan到Powerplan的核心优化策略。文章强调了Floorplan作为布局基础的重要性,并详细解析了Powerplan规划,特别是针对低功耗设计中MTCMOS的应用与IR Drop分析。通过实战经验分享,提供了从模块摆放到电源网络构建、再到IR Drop问题层层递进的解决方案,旨在帮助后端工程师构建稳健高效的芯片物理设计。

weixin_28338005的博客 349

FFTW库安装与使用(3.3.5版本)

FFTW库安装与使用一、FFTW库介绍与下载二、FFTW库安装三、FFTW库测试 一、FFTW库介绍与下载   FFTW ( the Faster Fourier Transform in the West) 是一个快速计算离散傅里叶变换的标准C语言程序集,其由MIT的M.Frigo 和S. Johnson 开发。可计算一维或多维实和复数据以及任意规模的DFT,且运行速度比Eigen和opencv自带的FFT库函数快10倍以上。   下载链接:http://www.fftw.org/install/wind

Jhon_ranble的博客 2万+

python变量相关问题记录

一个变量名的空间中存储了哪些元素?  包含变量名,对象指针, 变量值的地址空间中有哪些元素? 包含值,值的属性,。。。。 通过一个PyObject结构体的指针,就能找到这个对象的一切信息:引用计数、长度、类型对象。比如通过PyIntObject结构的ob_type指针,就能找到对Python的整数对象的类型对象,这个类型对象里,能找到做加法、减法、乘法、除法、构造、

wind035的专栏 436

基于Spring Security 6的OAuth2 系列之二 - 客户端--非代码演示授权码模式

至此,我们就使用浏览器+postman工具演示了通过授权码模式去获取Gitee的用户信息。这过程中,我们只是遵循OAuth2的流程,就能够实现授权方法。那么接下来,我们采用代码方式来实现这个流程。

代码让AI扣 1813

PyCharm使用技巧记录(一)如何查看变量

【为了方便自己以后查阅,记录下使用PyCharm时的一些小技巧】 正在学习Python,在调试Python程序时,遇到了一个非常大的问题:如何能够方便地查看变量的取值呢? 由于使用matlab多年,深深地习惯了Matlab方便地参考变量取值的功能,所以,对于正在学习的python没办法实时查看变量取值感到很是郁闷 没想到,原来PyCharm具有这个功能,只不过之前没有发现而已 对于将要调试...

weixin_30480651的博客 8502

DDPM代码详细解读(2):Unet结构、正向和逆向过程、IS和FID测试、EMA优化

Diffusion Models专栏文章汇总:入门与实战 前言:大部分DDPM相关的论文代码都是基于《Denoising Diffusion Probabilistic Models》和《Diffusion Models Beat GANs on Image Synthesis》贡献代码基础上小改动的。官方的DDPM是tensorflow TPU版本,暂时没有GPU的版本。上一篇文章介绍了数据集加载,超参数的含义、关键参数的计算方法等,这一篇重点解读一下网络结构。 目录 EMA优化 训练目标.

沉迷单车的追风少年 1万+

7.5华为OD机试真题 新系统 - 省超足球比赛获胜队伍计算 (Java/Py/C/C++/Js/Go)

7.5华为OD机试真题 新系统 - 省超足球比赛获胜队伍计算 (Java/Py/C/C++/Js/Go)

算法大师! 822

【python学习记录篇】10.Python变量和作用域

这样一来,当特定函数调用中的代码修改变量时,该函数与程序其他部分的交互只能通过它的参数和返回值。当一个函数被调用时,就会创建一个局部作用域,这个函数内赋值的所有变量,存在于该局部作用域内。只有一个全局作用域,它是在程序开始时创建的,如果程序终止,全局作用域就被销毁,它的所有变量就被丢弃了。定义在全局作用域的变量我们称为全局变量,定义在局部作用域的变量我们称为局部变量。一个函数的局部作用域中的代码,不能使用其他局部作用域中的变量。函数被调用,又创建了一个新的局部作用域,在这个作用域中,

patty0216的博客 765

open3d将某一时间序列下的彩色图和深度图批量转换成点云(python)

必备条件需要3D相机生成的彩色图及深度图,注意要将深度图与彩色图对齐(一般3D相机自带对齐算子),以及3D相机的彩色图内参(相机自带内参获取功能)。有了此彩色图、对齐后的深度图以及相机内参就能使用open3d生成彩色点云了.

吾名招财的博客 315

马士兵Python学习笔记_P94_93.变量的作用域

Python变量的作用域

weixin_46883785的博客 60

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Python-100-Days学习记录 第六天

Python-100-Days学习记录 原项目地址:https://github.com/jackfrued/Python-100-Days Day6 练习 实现求最大公约数和最小公倍数的函数。 def gcd(x, y): if x > y: x, y = y, x # 第一个数小于第二个数 for factor in r...

partridge_h的博客 253

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

python23-函数返回值和参数处理,变量作用域

在调用函数时,指定的实际参数的数量必须与形式参数的数量一致,否则将抛出 TypeError 异常,提示缺少必要的位置参数 missing x required positional argument。

春风若有怜花意,可否许我再少年 1204

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Python自学记录-第7周

Python自学记录目录 Python自学记录-第1周 Python自学记录-第2周 Python自学记录-第3周 Python自学记录-第4周 Python自学记录-第5周 Python自学记录-第6周 文章目录Python自学记录目录前言一、变量的作用域二、递归函数三、BUG四、常见报错类型四、实例1.引入库2.读入数据总结 前言 本周继续跟着娟子姐学python,学习变量的作用域和如何写BUG(找BUG) 一、变量的作用域 局部变量,函数内定义,作用范围仅限于函数内; 全局变量,函数外定义的,函

荒诞的画家 1290

day07 学习笔记

函数的基本概念与操作,作用域,常用内置函数,值传递与引用传递,递归函数

2302_77067662的博客 2115

D43【python 接口自动化学习】- python基础之函数

变量作用域保证同名,但不同作用范围不会出现引用错误...

tian_nx的博客 885

2025-05-22 学习记录--Python-函数

Python-函数

weixin_48850734的博客 395

每日学习记录

递归算法通常把一个复杂的问题层层转化为一个或多个与原问题相似的规模较小的问题来求解,会减少代码量。对象存储的是实例化后的地址。类的构造函数是通过__init__方法定义的,该方法用于在创建类的实例时进行初始化操作。类方法是用于描述类的行为的方法,类方法属于类,不属于此类创建的对象。类方法不能访问此类创建的对象的实例属性。类是对象的抽象,对象是类的具体实例。类属性是类的属性,此属性属于类,不属于此类的实例。类属性可以通过类和类的实例进行访问。实例属性,每个实例有自己的变量,称为实例变量(也叫属性)。

ztyyellow的博客 313

学习记录2021年9月2日

学习记录 日期:2021年9月2日 上午主要是复习总结,下午学习新知识 下午学习内容python变量的作用域python中的递归函数python中bug的常见类型python中异常处理机制python的常见异常类型 python变量的作用域 函数内部的没有声明外部不能使用,外部的都可以使用 def func(a,b): #global c c = a+b print(c) #print(c) name = 'james' print(name) def func1(): p

weixin_44578760的博客 124

夏暮客的Python之路Day1

这是我第一天学习Python,目的是为了能够自己编写脚本来帮助我进行日后的工作 今天大概会学习关于:注释、数字和运算、变量和命名的相关知识

qq_73770041的博客 1042

谈谈《python编程:从入门到基础》,我遇到的问题

python小白,刚学python两三天,没有看视频,看了一本书《Python 编程:从基础到入门》 在看到这段的时候,程序开始报错 然后我就在csdn上搜索各位大佬的如何解决的,看见了,大佬的问题都是全局变量在函数中访问修改的时候才会报错,根据书上的这个函数,range变量是局部的,(另外声明一点,range变量这个名字是python中的关键字,pyc

Fiona_Xu5的博客 478

从C#6天学会Python:速通基础语法(第一天)

本文记录了我作为一名C#开发者转学Python的第一天学习心得。通过对比两种语言的语法差异,快速掌握Python核心特性。

www376422613的博客 1305
上一篇: Python学习记录 函数的返回值
下一篇: ESP32学习记录 OLED & u8g2库
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值