python 函数参数self_Python self 参数详解

1、概述

1.1 场景

我们在使用 Python 中的 方法 method 时,经常会看到 参数中带有 self,但是我们也没对这个参数进行赋值,那么这个参数到底是啥意思呢?

2、知识点

2.1 成员函数(m) 和 普通方法(f)

Python 中的 "类方法" 必须有一个额外的 第一个参数名称(名称任意,不过推荐 self),而 "普通方法"则不需要。

m、f、c 都是代码自动提示时的 左边字母(method、function、class)

# -*- coding: utf-8 -*-

class Test(object):

def add(self, a, b):

# 输出 a + b

print(a + b)

def show(self):

# 输出 "Hello World"

print("Hello World")

def display(a, b):

# 输出 a * b

print(a * b)

if __name__ == '__main__':

test = Test()

test.add(1, 2)

test.show()

display(1, 2)

2.2 类函数,静态函数

类函数一般用参数 cls

静态函数无法使用 self 或 cls

class Test(object):

def __init__(self):

print('我是构造函数。。。。')

def foo(self, str):

print(str)

@classmethod

def class_foo(cls, str):

print(str)

@staticmethod

def static_foo(str):

print(str)

def show(str):

print(str)

if __name__ == '__main__':

test = Test()

test.foo("成员函数")

Test.class_foo("类函数")

Test.static_foo("静态函数")

show("普通方法")

输出结果:

我是构造函数。。。。

成员函数

类函数

静态函数

普通方法

时间: 2019-08-27

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值