第3章 函数

目录

  • [1. def 语句和参数](#1. def 语句和参数)
  • [2. 返回值和 return 语句](#2. 返回值和 return 语句)
  • [3. None 值](#3. None 值)
  • [4. 关键字参数和 print() 函数](#4. 关键字参数和 print() 函数)
  • [5. 局部和全局作用域](#5. 局部和全局作用域)
    • [5.1 局部变量不能在全局作用域内使用](#5.1 局部变量不能在全局作用域内使用)
    • [5.2 局部作用域不能使用其他局部作用域内的变量](#5.2 局部作用域不能使用其他局部作用域内的变量)
    • [5.3 全局变量可以在局部作用域中读取](#5.3 全局变量可以在局部作用域中读取)
    • [5.4 名称相同的局部变量和全局变量](#5.4 名称相同的局部变量和全局变量)
  • [6. global 语句](#6. global 语句)
  • [7. 异常处理](#7. 异常处理)

1. def 语句和参数

python 复制代码
def ABC(message):
    print(message)


ABC(123)
  • 形参:message
  • 实参:123

2. 返回值和 return 语句

python 复制代码
def ABC(message):
    return message


print(ABC(123))

3. None 值

  • None 值:空值
python 复制代码
print(print("ABC") is None)

4. 关键字参数和 print() 函数

  • end:以指定字符串结尾,默认为 "\n"
python 复制代码
print("A", end="")
print("B")
  • sep:每段字符串以指定字符串连接,默认为 ""
python 复制代码
print("A", "B", "C", sep=", ")

5. 局部和全局作用域

5.1 局部变量不能在全局作用域内使用

python 复制代码
def ABC():
    a = 1
    
    
ABC()
print(a)

5.2 局部作用域不能使用其他局部作用域内的变量

python 复制代码
def ABC():
    a = 1
    abc()
    print(a)


def abc():
    a = 2


ABC()

5.3 全局变量可以在局部作用域中读取

python 复制代码
def ABC():
    print(a)


a = 1
ABC()

5.4 名称相同的局部变量和全局变量

python 复制代码
def ABC():
    a = 1
    print(a)
    abc()
    print(a)


def abc():
    a = 2
    print(a)


a = 0
ABC()
print(a)

6. global 语句

  • global:声明该变量为全局变量
python 复制代码
def ABC():
    global a
    a = 1


def abc():
    a = 2
    print(a)
    ABC()
    print(a)


abc()
print(a)

7. 异常处理

  • try-except-else:相当于try-catch-else
python 复制代码
try:
    print(5/0)
except ZeroDivisionError:
    print("Error")
else:
    print("Finish")
  • try:尝试的代码块
  • except:出现相应异常时执行的代码块
    • 可将代码块设置成pass,进而跳过异常处理
  • else:无上述异常时执行的代码块
相关推荐
2301_822375446 分钟前
Python虚拟环境(venv)完全指南:隔离项目依赖
jvm·数据库·python
2301_790300967 分钟前
Python类型提示(Type Hints)详解
jvm·数据库·python
Eric.Lee202112 分钟前
SLAM 路径规划的安全走廊实现
python·机器人·ros·路径规划·避障·安全走廊
小W与影刀RPA19 分钟前
【影刀RPA】:智能过滤敏感词,高效输出表格
大数据·人工智能·python·低代码·自动化·rpa·影刀rpa
Yorlen_Zhang25 分钟前
python Tkinter Frame 深度解析与实战指南
开发语言·python
2401_8384725125 分钟前
Python多线程与多进程:如何选择?(GIL全局解释器锁详解)
jvm·数据库·python
2301_8223636042 分钟前
Python单元测试(unittest)实战指南
jvm·数据库·python
叫我辉哥e11 小时前
新手进阶Python:办公看板升级交互式可视化+移动端适配+多终端同步
开发语言·python
m0_561359671 小时前
Python面向对象编程(OOP)终极指南
jvm·数据库·python
zhangfeng11331 小时前
deepseek部署和训练的PyTorch CUDA Transformers Accelerate PEFT稳定版本呢推荐
人工智能·pytorch·python