python中函数局部变量、全局变量、递归知识点的示例分析
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,小编给大家分享一下python中函数局部变量、全局变量、递归知识点的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
千家信息网最后更新 2025年11月07日python中函数局部变量、全局变量、递归知识点的示例分析
小编给大家分享一下python中函数局部变量、全局变量、递归知识点的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
函数局部变量 全局变量 及其作用域
#简单类型(int str等)变量的局部变量与全局变量及其作用域的关系name = "xxx" #第一级顶头定义的变量都称为全局变量,其作用域从变量定义的位置开始到此程序结束def Print_Name(): print("name before change:", name)#由于name在此函数之前已经被定义为全局变量,此处函数读取变量name是读取的全局变量name "xxx",函数内部就不能再定义其同名局部变量,否则无法区分变量为局部变量还是全局变量# name = "yyy" #此语句放开以后会报错:IndentationError: unindent does not match any outer indentation levelPrint_Name()def Change_Name(): name = "yyy" #函数内部首先定义全局变量的同名局部变量,则整个函数内部操作的为局部变量(一个与全局变量同名的临时变量) print("name after change is", name)Change_Name() # yyy实际输出的是局部变量的值print("global name is", name) # xxx此处访问的是全局变量,因为此print语句不是在Change_Name内部。#函数内部需要强制对全局变量进行修改,使用global关键字def Change_global_Name(): global name print("name before change is :", name) name = "yyy"Change_global_Name() # xxx 修改前的全局变量print("global name is :", name) # yyy此处由于函数内强制声明name为global变量,整个函数内部可以对global进行操作#复杂数据类型列表 集合 字典等复杂数据结构如果函数外部定义了函数里面是可以不用global声明也操作的是全局变量,没有局部变量一说了names = ['111', '222', '333']def Change_Names(): names[0] = "444" print("in function names :", names)Change_Names() #in function names : ['444', '222', '333']print("global names :", names) #in function names : ['444', '222', '333'] 对于复杂的数据类型,函数内直接操作全局变量,不会再生成局部变量递归
#函数内部可以调用其它函数,如果函数在内部调用自己就被称为递归函数def Half_fun(n): print(n) if n < 2: return n Half_fun(n/2)Half_fun(100)#递归特性:1、必须有一个明确的结束条件 2、每次递归调用问题复杂度需要相比上次简化 3、递归会占用大量内存
以上是"python中函数局部变量、全局变量、递归知识点的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
变量
函数
全局
局部
递归
复杂
知识
作用
数据
篇文章
类型
知识点
示例
分析
内容
语句
强制
不怎么
不用
位置
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
战锤3无法访问服务器怎么办
山西服务器机柜价格实惠
常州大学校园网服务器名称
小型聊天软件开发项目概述
我的世界找管理服务器
天津正规软件开发特征
查看服务器的目录
绍兴网络技术推荐咨询
杀手6无法连接服务器如何解决
搭建云存储视频服务器
软件开发的进度计划
西部高级知识型人才数据库
本地如何连接远程数据库
esminis php服务器
理光打印服务器软件
国家网络安全法2017年
重庆綦江果蔬软件开发
软件开发项目收入成本表
信息收集的内容网络安全
安装数据库提示密码强度不够
贵州生鲜专用软件开发
数据库系统哈工大mooc答案
postgis中导入数据库
北京朝阳网络安全大队电话
企业软件开发报价单
非结构化数据库规范
软件开发设计方案环境设计
半导体软件开发工程师
wps数据库的建立
北京高校网络安全专业