第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:无上述异常时执行的代码块
相关推荐
严谨的麻辣烫6 小时前
静态代理 IP 的出口一致性如何验证?Python 请求检测与异常排查
开发语言·python·http·网络安全
我命由我123456 小时前
5-1.Python 编码进阶 - 函数进阶(参数、返回值、递归、函数作为参数传递、lambda 匿名函数)
java·服务器·数据库·后端·python·java-ee·python3.11
FITA阿泽要努力6 小时前
Fork Agent:共享上下文的艺术
开发语言·python·agent
DeeGLMath6 小时前
optimtool最新版研究梯度优化
python·optimtool·梯度优化
坐吃山猪7 小时前
Python-Hermite基函数
开发语言·python
空~自由7 小时前
Python 正则 . * ? .* .*? (.*?) 通俗讲解
开发语言·python
Web3&Basketball7 小时前
DeepSeek V4.1 Flash 实测:Token 砍半、Search API 跑通
数据库·人工智能·python·大模型·api调用·deepseek·推理优化
墨子夕7 小时前
设计模式——Java × Python 双语言精讲 · 23 个经典模式 + 现代演进(第一篇)
java·python·设计模式
Linux实战笔记7 小时前
凌晨 3 点接口超时,排查发现 asyncio 协程里混用了同步 requests 库
python·asyncio·aiohttp·事件循环阻塞·协程调试
weixin_BYSJ19877 小时前
【计算机毕设】房屋租赁系统02647
java·vue.js·spring boot·python·django·课程设计