问答详情

Python中的函数与方法该怎么区分?

232次观看
标签: 该怎么 函数 方法
老师回答

一、什么是函数方法?

实例化出来的去调用,叫做方法.

直接使用类名去调用,叫做函数.

二、函数和方法的区别

1、定义位置

函数:Python的函数是直接写在Python模块中的,即在.py文件中直接定义。

方法:只能定义在class类中

2、定义方式

函数:函数定义的方式 def关键字  然后接函数名 再是括号 括号里面写形参也可以省略不写形参

def functionName():
    """这里是函数的注释"""
    print("这一块写函数的内容")

方法:方法定义的方式, 首先方法是定义在类中的,其他大体和函数定义差不多,这里需要注意的一点就是方法必须带一个默认参数

self(静态方法除外)
class className(super):
    
    def methodName(self):
        """这里是方法的注释
        self相当于this;
        """
        print("这里是方法的内容")

3、调用方式

函数:直接使用函数名(参数1,参数2,....)调用

def functionName():
    print("这是一个函数")
#调用
functionName()

方法:方法是通过对象点方法调用的(这里是指对象方法)

class className:
    
    def method(self):
        print("这是一个方法")
 
#调用---------------------
#实例化对象
c=className()
c.method()

注意:静态方法除外,可以不传递第一个self参数

class A:
    @staticmethod
    def func():
        print('这是一个静态方法')
#不用实例化调用
A.func()
#实例化后和其他类方法一样方式调用
a = A()
a.func()
-----输出-----
这是一个静态方法
这是一个静态方法

免费直播

    精选课程
    相关推荐
    python中append()和extend()有什么区别?
    刘老师 Python编程

    python列表中,append()和extend()都可以在在原有列表上增加对象,但是使用起来有很大区别。append()用于在列表末尾添加新的对象,任意对象都是可以的,列表只占一个索引位,会修改原来的列表。extend()向列表尾部追加一个列表,对象必须是一个可以迭代的序列,将列表中的每个元素都追加进来,会在已存在的列表中添加新的列表内容。详情请看本文。

    一、append()

    用于在列表末尾添加新的对象,列表只占一个索引位,在原有列表上增加。

    1、语法

    list.append(obj)

    2、参数obj 

    向列表中添加一个对象obj ,即添加到列表末尾的对象;

    任意对象都是可以的;

    直接将整个obj放入列表末尾。

    3、返回值

    无返回值,但是会修改原来的列表。

    4、使用实例

     lia.append(lib)
     lia>>   ['aa', 1, 'bb', None, ['cc', 2, {'dd': 3}]]

    二、extend() 

    向列表尾部追加一个列表,将列表中的每个元素都追加进来,在原有列表上增加。

    1、语法

    list.extend(seq)

    2、参数seq 

    把一个序列seq的内容添加到列表中,即元素列表;

    对象必须是一个可以迭代的序列;

    将seq打散后依次放入列表末尾。

    3、返回值

    无返回值,但会在已存在的列表中添加新的列表内容。

    4、使用实例

    lia.extend(lib)      不能用变量接收
    
    lia>>  ['aa', 1, 'bb', None, 'cc', 2, {'dd': 3}]

    以上就是python中append()和extend()的对比分析,希望能对你有所帮助哦~

    注册电脑版

    版权所有 2003-2020 广州环球青藤科技发展有限公司