python第十六课——外部函数and内部函数
时间:2022-07-25
本文章向大家介绍python第十六课——外部函数and内部函数,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1.外部函数&内部函数 内部函数: 定义在某个函数的内部,就是内部函数; 【注意事项】: 1).内部函数可以随意使用它外部函数中的内容 2).外部函数不能使用内部函数中的内容 3).内部函数不能直接在外界被调用(与作用域有关) 4).内部函数的执行需要依赖于外部函数 nonlocal关键字: 如果想要在内部函数中修改其外部函数中变量的值, 可以先使用nonlocal定位到某个变量,然后重新赋值即可--> 例如:nonlocal aa = 30 演示外部函数和内部函数的结构关系, 演示他们的调用执行过程
#定义外部函数outer()
def outer():
#外部函数的变量a,赋值为10
a=10
print('outer1....')
#定义内部函数inner()
def inner():
'''
思考:内部函数可不可以使用外部函数的变量a?
可以的
'''
print('inner:%d' % a)
print('inner...')
#定义内部函数变量b,赋值为20
b=20
#在当前的外部函数中启动内部函数
inner()
print('outer2...')
'''
思考:外部函数可不可以使用内部函数的变量b?
不可以
'''
# print(b)
def inner1():
'''
思考:内部函数可不可以修改外部函数中的变量a的值为20?
可以的,使用nonlocal关键字来实现,原理和golbal一致
'''
nonlocal a
a=20
print(a)
inner1()
print('outer:%d' %a)
#调用外部函数,间接也执行内部函数
outer()
内部函数不能直接在外界被调用,一定是需要在它所作用的外部函数中被调用, 执行也是要外部函数的执行 强化内部函数和外部函数的知识点:
a=100
def outer():
a=10
def inner():
a=20
print('我是inner...')
print('a=%d' % a)
def litter():
a=30
print('我是litter...')
print('a=%d' % a)
litter()
inner()
print('我是outer...')
print('a=%d' % a)
#执行外部函数outer()
outer()
- 数据结构之串
- 生信宝典之傻瓜式 (一) 如何提取指定位置的基因组序列
- 注意map<> 的[]
- 生信宝典之傻瓜式 (二) 如何快速查找指定基因的调控网络
- React Native组件只Image
- 数据结构之线性表
- 生信宝典之傻瓜式 (三) 我的基因在哪里发光 - 如何查找基因在发表研究中的表达
- 谈谈 char *num="123";和char num[4]="123";的区别
- 未越狱的iPhone/iPad也中招:走近强大的间谍软件XAgent与MadCap
- 【年末收藏】17个新手常见Python运行时错误
- C++ STL之priority_queue
- 链表的相关操作
- 《笨办法学Python》 第0课手记
- Python黑客学习笔记:从HelloWorld到编写PoC(上)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 网站被恶意镜像怎么办 php一段代码轻松搞定(全面版)
- 如何基于Python爬取隐秘的角落评论
- PHP微信网页授权的配置文件操作分析
- php微信公众号开发之关键词回复
- Python 抓取数据存储到Redis中的操作
- PHP常见字符串操作函数与用法总结
- 利用python对excel中一列的时间数据更改格式操作
- Python 私有属性和私有方法应用场景分析
- django 模型字段设置默认值代码
- Python局部变量与全局变量区别原理解析
- 为什么是 Python -m
- Python csv文件记录流程代码解析
- 简单的Python人脸识别系统
- PHP实现的微信公众号扫码模拟登录功能示例
- PHP获取数据库表中的数据插入新的表再原删除数据方法