Python学习之路-函数-作用域

简介: 开发者学堂课程,了解Python语言的基本特性、编程环境的搭建、语法基础、算法基础等,了解Python的基本数据结构,对Python的网络编程与Web开发技术具备初步的知识,了解常用开发框架的基本特性,以及Python爬虫的基础知识。课程地址:https://developer.aliyun.com/learning/course/601/detail/8730

作用域:指的是变量生效的区域

a定义在了函数内部,所以他的作用域就是函数内部,函数外部无法访问

deffn():
a=10# a定义在了函数内部,所以他的作用域就是函数内部,函数外部无法访问print('函数内部:','a=',a)
fn()
print('函数外部:','a=',a)

image.png

试试把b定义在函数外部

b=10deffn():
a=10print('函数内部:','b=',b)
fn()
print('函数外部:','b=',b)

image.png

得到的结论是:在 Python 中一共有两种作用域,全局作用域和函数作用域


全局作用域

全局作用域是在程序执行时创建,在程序执行结束时销毁

所有函数以外的区域都是全局作用域

在全局作用域中定义的变量都是全局变量,全局变量可以在程序的任意位置被访问到。

函数作用域

1.函数作用域在函数调用时创建,在调用结束时销毁

2.函数每调用一次就会产生一个新的函数作用域

3.在函数作用域中定义的变量,都是局部变量,它只能在函数内部被访问

4.当使用变量时,会优先在当前作用域中寻找该变量,如果有则使用,如果没有则继续去上一级作用域中寻找,如果有则使用,

没有则继续去上一级作用域中寻找,以此类推,

直到找到全局作用域,依然没找到,则抛出异常

Name Error: name ‘a’ is not defined


5.内部函数能看到外部函数,外部函数能看到全局函数;外部函数不能看到内部函数)

6.在函数中为变量赋值时,默认都是局部变量赋值

7.如果希望在函数内部修改全局变量,则需要使用 global 关键字,来声明变量

global a # 声明在函数内部的使用a是全局变量,此时再去修改 a 时,就是在修改全局的 a

a=20deffn():
globalaa=10print('函数内部:a=',a)
fn()
print('函数外部:a=',a)

image.png

相关文章
|
7天前
|
设计模式 缓存 监控
Python装饰器:优雅增强函数功能
Python装饰器:优雅增强函数功能
194 101
|
14天前
|
缓存 测试技术 Python
Python装饰器:优雅地增强函数功能
Python装饰器:优雅地增强函数功能
163 99
|
14天前
|
存储 缓存 测试技术
Python装饰器:优雅地增强函数功能
Python装饰器:优雅地增强函数功能
143 98
|
18天前
|
缓存 Python
Python中的装饰器:优雅地增强函数功能
Python中的装饰器:优雅地增强函数功能
|
3月前
|
PHP Python
Python format()函数高级字符串格式化详解
在 Python 中,字符串格式化是一个重要的主题,format() 函数作为一种灵活且强大的字符串格式化方法,被广泛应用。format() 函数不仅能实现基本的插入变量,还支持更多高级的格式化功能,包括数字格式、对齐、填充、日期时间格式、嵌套字段等。 今天我们将深入解析 format() 函数的高级用法,帮助你在实际编程中更高效地处理字符串格式化。
275 0
|
8天前
|
JavaScript Java 大数据
基于python的网络课程在线学习交流系统
本研究聚焦网络课程在线学习交流系统,从社会、技术、教育三方面探讨其发展背景与意义。系统借助Java、Spring Boot、MySQL、Vue等技术实现,融合云计算、大数据与人工智能,推动教育公平与教学模式创新,具有重要理论价值与实践意义。
|
2月前
|
Python
Python 函数定义
Python 函数定义
113 1
|
3月前
|
算法 IDE 测试技术
python学习需要注意的事项
python学习需要注意的事项
200 57
|
26天前
|
算法 安全 数据安全/隐私保护
Python随机数函数全解析:5个核心工具的实战指南
Python的random模块不仅包含基础的随机数生成函数,还提供了如randint()、choice()、shuffle()和sample()等实用工具,适用于游戏开发、密码学、统计模拟等多个领域。本文深入解析这些函数的用法、底层原理及最佳实践,帮助开发者高效利用随机数,提升代码质量与安全性。
127 0
|
2月前
|
数据挖掘 数据处理 C++
Python Lambda:从入门到实战的轻量级函数指南
本文通过10个典型场景,详解Python中Lambda匿名函数的用法。Lambda适用于数据处理、排序、条件筛选、事件绑定等简洁逻辑,能提升代码简洁性和开发效率。同时提醒避免在复杂逻辑中过度使用。掌握Lambda,助你写出更高效的Python代码。
123 0

热门文章

最新文章

推荐镜像

更多