Python入门篇【函数】

Python函数


文章目录


提示:以下是本篇文章正文内容,下面案例可供参考

一、定义语法

函数是组织好的且可以重复使用,用于实现特定功能的代码段。

★提高代码的复用性,减少重复性代码,提高开发效率。

python 复制代码
def 函数名称(传入参数):
	函数体
	return 返回值

# 函数调用
函数名(参数)

1.1 注意项

  • 参数不需要可以省略
  • 返回值不需要可以省略
  • 使用函数必须先声明后调用

二、参数

函数内定义的参数成为形参(形式参数) ,其作用域旨在函数之内,函数外不可以使用。

调用函数时传入的参数成为实参(实际参数) ,其作用域在全局可以使用。

传入的时候要按照顺序传入。

传入参数的数量不受限制。

python 复制代码
# 两数相加
def add(num1, num2):
    return num1 + num2


result = add(7, 4)
print(result)

三、返回值

在程序中函数完成事情之后,最后给调用者的结果,结果用变量来进行接收!。

函数体在遇到return后就算完成了,,同缩进下的代码不再执行。

3.1 None类型

函数在不使用return进行返回值的时候,实际上返回了一个None类型,此类型说明此函数没返回内容,表示空。

  • None类型的应用场景
  • 用在函数无返回值上。
  • 用在if判断上,在if中,None代表False。
  • 用于声明无内容的变量上,定义变量,但暂时不需要此变量有值,用None代替。

四、函数的说明文档

通过给函数添加说明文档,提高代码的整体阅读性。

  • param:变量的解释
  • return:返回值的解释
python 复制代码
def say(X,Y):
    """
    :param X:变量X
    :param Y: 变量Y
    :return:返回
    """
    print("hello")

五、函数的嵌套调用

在一个函数内调用其他函数。

python 复制代码
def say_hello():
    print("请进行调用")


def add(num1, num2):
    """
    
    :param num1: 传入数字1
    :param num2: 传入数字2
    :return: 返回数字1和数字2的和
    """
    say_hello()
    return num1 + num2


result = add(7, 4)
print(result)

五、变量在函数中的作用域

指的是变量的作用范围。

5.1 局部变量

定义在函数内部的变量,其只在函数体内部生效。

在函数体内部,临时保存数据的,当函数调用完成后,则销毁局部变量。

5.2 全局变量

函数内外都可以生效。


5.3 global关键字

在函数内声明变量为全局变量

python 复制代码
nums = 1000


def test_a():
    nums = 2000
    print(f"{nums}")


def test_b():
    global nums
    print(f"{nums}")


test_a()
test_b()
print(f"{nums}")

相关推荐
小静AI工程实验室6 小时前
Claude Code 实用教程:Windows、macOS、Linux 从安装到项目调试与验收
人工智能·python·开发工具·claude code
beijixinghe6 小时前
第15节 指针作为函数参数的工程实战用法
开发语言·c++·c++基础·c++入门·几何引擎c++
SEO_juper6 小时前
2026年用Python分析网站访问日志:看清Googlebot和AI爬虫怎么爬你的站(附完整代码)
开发语言·前端·seo·独立站·谷歌优化
OKkankan6 小时前
Python常用容器与导入语法详解(二)
数据结构·python
维基框架6 小时前
坊间传闻 OpenAI 将要发布GPT-6 Sol 模型
人工智能·pytorch·python
读研的武6 小时前
Python异步编程
python
宸津-代码粉碎机6 小时前
Java面试核心:JVM三大GC垃圾回收算法原理与生产场景落地分析
java·大数据·人工智能·python·spring
小静AI工程实验室6 小时前
Codex 实用教程:Windows、macOS、Linux 安装配置到首个可验收项目
人工智能·python·开发工具·codex
邪修king6 小时前
Re:Linux 系统篇(二十九):动静态库Chapter2:动态库深度辨析 —— 核心本质、制作流程、双阶段查找模型与排错指南
android·java·linux·开发语言
黑马水牛7 小时前
Carla仿真系列:17_利用Carla仿真环境跑通3DGS——从采集360张图到高斯泼溅建模
python·ros·colmap·3dgs·新视角合成·carla仿真·三维建图