鱼C论坛

 找回密码
 立即注册
查看: 1266|回复: 18

[技术交流] 01 - 秒懂「函数」与「方法」|学姐的高分笔记

[复制链接]
发表于 2024-2-1 14:53:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 鱼C-小师妹 于 2024-2-2 11:21 编辑

在线学习:




1.png


在Python中,函数(function)和方法(method)是两个类似但不同的概念。

函数是独立的代码块,可以通过名称调用并执行,而方法是与对象关联的函数。

区分它们的一个重要标志是:

方法必须通过一个对象来调用,而函数则没有这个限制。

上代码:
# 示例1:函数
def greet():
    print("Hello!")

greet()  # 调用函数

# 示例2:方法
class Person:
    def greet(self):
        print("Hello!")

person = Person()
person.greet()  # 调用对象的方法
好了,下课~




预知更多Python小秘籍请看:


如果喜欢,别忘了评分


                               
登录/注册后可看大图

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-2-1 14:55:44 | 显示全部楼层
你好!函数和方法是编程中很重要的概念,它们用于封装一段可重复使用的代码。

首先,我们先来说说函数。函数是一段定义好的代码块,用来完成特定的任务。当我们需要执行这段代码时,只需要调用函数即可。函数通常会有输入(称为参数)和输出(称为返回值)。你可以把函数想象成一个黑盒子,你只需要知道如何调用它和它的输入输出规则,而不需要关心它内部的具体实现细节。

下面是一个计算两个数之和的简单函数的例子:
def add(a, b):
    return a + b

result = add(3, 5)
print(result)  # 输出8

在上面的例子中,`add`函数接受两个参数a和b,并返回它们的和。在调用函数时,我们把参数传递给函数,并将返回值赋给变量`result`,然后打印出来。

接下来,我们说说方法。方法与函数类似,也是一段封装好的代码块,用来完成特定的任务。不同的是,方法是属于某个对象的,只能通过该对象调用。

举个例子,我们可以创建一个名为`Person`的类,其中包含一个`say_hello`方法,用来打印出人的姓名:
class Person:
    def __init__(self, name):
        self.name = name
        
    def say_hello(self):
        print("Hello, my name is", self.name)

p = Person("Tom")
p.say_hello()  # 输出: Hello, my name is Tom

在上面的例子中,`Person`类有一个`say_hello`方法,可以打印出人的姓名。我们通过创建一个`Person`对象p,并调用`p.say_hello()`来执行这个方法。

希望以上解答能够帮到你!如果还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-1 15:02:40 | 显示全部楼层
谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2024-2-1 15:07:28 | 显示全部楼层
FishC 发表于 2024-2-1 14:55
你好!函数和方法是编程中很重要的概念,它们用于封装一段可重复使用的代码。

首先,我们先来说说函数。 ...

好复杂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-1 15:08:07 | 显示全部楼层


哈哈,是有点儿复杂,但是慢慢理解就好啦!我来再给你解释一下。其实函数和方法都是用来封装代码的,方便我们重复使用。就像是一个工具箱里的不同工具一样,你需要什么工具就拿什么出来用。

首先,函数就像是一个独立的工具。你可以把它想象成一个特殊的盒子,你只需要给它一些数据,它就会返回给你处理好的结果。比如,你可以写一个函数来计算两个数的和:
def add(a, b):
    return a + b

result = add(3, 5)
print(result)  # 输出8

在这个例子中,`add`函数接收两个参数`a`和`b`,然后返回它们的和。我们调用函数时,给它传递了参数`3`和`5`,然后它计算出结果`8`并返回给我们。

其次,方法和对象相关联。你可以把它想象成是一个对象的功能。比如,你可以创建一个名为`Person`的类,其中包含一个叫做`say_hello`的方法:
class Person:
    def __init__(self, name):
        self.name = name
        
    def say_hello(self):
        print("Hello, my name is", self.name)

p = Person("Tom")
p.say_hello()  # 输出: Hello, my name is Tom

在这个例子中,我们创建了一个`Person`类,它有一个`say_hello`方法来打招呼。我们通过创建一个`Person`对象`p`,然后调用`p.say_hello()`来执行这个方法。

希望这次解释更加清楚啦!如果还有其他问题,随时提问哦~

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-2 09:19:38 | 显示全部楼层

回帖奖励 +3 鱼币

学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-2-2 21:27:11 | 显示全部楼层
学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-2-2 22:40:20 | 显示全部楼层

回帖奖励 +3 鱼币

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-2-3 21:00:18 | 显示全部楼层

回帖奖励 +3 鱼币

学习了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-3 22:42:21 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-2-3 22:43:17 | 显示全部楼层

回帖奖励 +3 鱼币

谢谢学姐
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-3 23:36:28 | 显示全部楼层

回帖奖励 +3 鱼币

感谢分享!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-4 15:41:26 | 显示全部楼层

回帖奖励 +3 鱼币

函数和方法都是编程中的基本概念,但它们在使用、定义和特性上有一些重要的区别。

函数:函数是一段代码,通过名字来进行调用。它能够将一些数据(参数)传递进去进行处理,然后返回一些数据(返回值),也可以没有返回值。所有传递给函数的数据都是显式传递的。
方法:方法也是一段代码,通过名字进行调用,但它与一个对象相关联。方法中的数据是隐式传递的,因为它们是作为对象的属性或状态的一部分进行传递的。方法可以操作类内部的数据(对象是类的实例化,类定义了一个数据类型,而对象是该数据类型的一个实例化)。
使用场景:

函数:通常用于执行独立的任务或计算,不依赖于特定的对象状态。例如,数学计算、字符串处理等。
方法:通常用于操作对象的状态或实现对象的行为。例如,在面向对象编程中,对象的方法用于改变对象的状态或实现对象的行为。
区别:

位置:函数属于整个文件,而方法只属于某个类,如果离开了类就失去了作用。
定义方式:函数的定义方式是使用def关键字,然后接函数名和括号,括号里面写形参(也可以省略不写形参)。方法的定义方式首先是在类中,其定义方式与函数大致相同,但必须带一个默认参数(相当于this),静态方法除外。
调用方式:函数的调用是直接写函数名(函数参数1,函数参数2等)。而方法是通过对象点方法调用的(这里是指对象方法)。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-5 11:28:12 | 显示全部楼层

回帖奖励 +3 鱼币

育碧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-2-20 14:27:27 | 显示全部楼层

回帖奖励 +3 鱼币

懂了,感谢学姐
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-20 17:26:40 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-2-20 17:27:04 | 显示全部楼层
有实力
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-8-18 09:51:42 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-8-18 09:52:20 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 19:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表