Python 编程深入浅出:第 6 章238
## 变量作用域
在 Python 中,作用域决定了变量的生存期和可访问性。变量的作用域是由代码块(如函数、循环或类)定义的,变量只能在定义它的代码块内访问和使用。
局部变量
局部变量在函数或其他代码块内定义,仅在该代码块内可用。当代码块执行完毕,局部变量就会被销毁。
```python
def my_function():
x = 10 # 局部变量
my_function()
# 访问局部变量 x 会导致错误
```
全局变量
全局变量在函数或其他代码块之外定义,可以在整个程序中使用。全局变量通常用于存储在程序执行期间需要访问的持久数据。
```python
x = 10 # 全局变量
def my_function():
print(x) # 访问全局变量 x
```
局部变量和全局变量的冲突
当局部变量和全局变量具有相同名称时,局部变量将覆盖全局变量,并且在局部变量的作用域内,全局变量将不可访问。
```python
x = 10 # 全局变量
def my_function():
x = 20 # 局部变量,覆盖全局变量
print(x) # 打印局部变量 x
my_function()
# 打印 20,局部变量 x 覆盖了全局变量 x
```
## 函数
函数是一组可在程序中重用的代码块。函数允许我们对复杂或重复的任务进行模块化,从而提高代码的可读性和可维护性。
定义函数
```python
def my_function(arg1, arg2):
"""函数文档字符串"""
# 函数体
```
* my_function:函数名称
* arg1, arg2:函数参数
* """函数文档字符串""":函数文档字符串,描述函数的目的和用法
调用函数
```python
my_function(1, 2)
```
* my_function:要调用的函数名称
* 1, 2:传递给函数的参数
返回值
函数可以通过 `return` 语句返回一个值。如果函数没有显式返回一个值,它将返回 `None`。
```python
def my_function():
return 10
```
## 模块
模块是一组相关函数、类和变量,它们被组织在一个文件中。模块允许我们将代码组织成不同部分,并根据需要在不同的程序中重用它们。
创建模块
```python
#
def my_function():
# 函数体
```
导入模块
```python
import my_module
my_module.my_function() # 调用模块中的函数
```
* import my_module:导入名为 `my_module` 的模块
* my_module.my_function():调用模块中的 `my_function` 函数
模块的搜索路径
Python 在特定目录中搜索模块,称为 模块搜索路径。搜索路径包含当前工作目录、标准库目录以及任何其他已添加到搜索路径中的目录。
## 包
包是一组相关的模块,它们被组织在一个文件夹中。与模块类似,包允许我们将代码组织成更细粒度的部分。
创建包
```python
# my_package/
```
* :一个空文件,指示文件夹是一个包
* 和 :包中的模块
导入包
```python
import my_package # 导入包
my_package.my_module1.my_function() # 调用包中模块的函数
```
* import my_package:导入名为 `my_package` 的包
* my_package.my_module1.my_function():调用包中 `my_module1` 模块的 `my_function` 函数
包的搜索路径
Python 在特定的目录中搜索包,称为 包搜索路径。包搜索路径包含当前工作目录、标准库目录以及任何其他已添加到搜索路径中的目录。
2025-02-04
最新文章 2分钟前 5分钟前 8分钟前 10分钟前 13分钟前
热门文章 01-10 17:00 01-10 14:16 01-06 17:29 01-03 15:31 12-03 05:01
南昌Python编程学习指南
https://jb123.cn/python/33379.html
AI 脚本编程教程:构建智能自动化
https://jb123.cn/jiaobenbiancheng/33378.html
Python 编程日志:深入理解数据结构和算法
https://jb123.cn/python/33377.html
编程入门脚本教程:从零开始编写脚本
https://jb123.cn/jiaobenbiancheng/33376.html
廖雪峰的 JavaScript 教程:现代 JavaScript 语言指南
https://jb123.cn/javascript/33375.html
热门文章
Python 编程解密:从谜团到清晰
https://jb123.cn/python/24279.html
Python编程深圳:初学者入门指南
https://jb123.cn/python/24225.html
Python 编程终端:让开发者畅所欲为的指令中心
https://jb123.cn/python/22225.html
Python 编程专业指南:踏上编程之路的全面指南
https://jb123.cn/python/20671.html
Python 面向对象编程学习宝典,PDF 免费下载
https://jb123.cn/python/3929.html