python3 類中方法的呼叫

2021-09-24 23:56:20 字數 1084 閱讀 3986

一 python3 中類的靜態方法、普通方法、類方法

靜態方法: 用 @staticmethod 裝飾的不帶 self 引數的方法叫做靜態方法,類的靜態方法可以沒有引數,可以直接使用類名呼叫。

普通方法: 預設有個self引數,且只能被物件呼叫。

類方法: 預設有個 cls 引數,可以被類和物件呼叫,需要加上 @classmethod 裝飾器。

class classname:

@staticmethod

def fun():

print('靜態方法')

@classmethod

def a(cls):

print('類方法')

# 普通方法

def b(self):

print('普通方法')

classname.fun()

classname.a()

c = classname()

c.fun()

c.a()

c.b()

二 不同類種方法的呼叫

1 二者在同乙個資料夾下

a.py和b.py在同乙個資料夾下面,可以通過from 檔名 import *或者 import a來互相呼叫。

from a import a

a = a()

a.afunc("123456")

a.bfunc("123456")

2 而這不在同乙個資料夾下

a.py檔案的檔案路徑:e:\pythonproject\winycg

b.py檔案:

import sys

'''python import模組時, 是在sys.path裡按順序查詢的。

sys.path是乙個列表,裡面以字串的形式儲存了許多路徑。

使用a.py檔案中的函式需要先將他的檔案路徑放到sys.path中'''

import a

a=a.a(2,3)

Python3 在子類中呼叫父類的方法

在子類派生出的新方法中,往往需要重用父類的方法,有兩種方式實現。方式一 指名道姓,即父類名.父類方法 方式二 super class vehicle 定義交通工具類 country china def init self,name,speed,load,power self.name name se...

Python 類中方法的總結

python類 class 中方法的總結 1 例項方法 物件方法 定義格式 def 例項方法名 self pass 呼叫格式 物件名.例項方法名 使用場景 在方法中需要self 物件 2 類方法 定義格式 classmethod def 類方法名 cls pass 呼叫格式 類名.類方法名 或者 物...

SpringBoot 類中方法呼叫方法事務失效問題

sevice public class test transactional public void b 此時事務時不生效的,因為 transactional註解事務是通過 來控制的,方法呼叫本類方法,事務不會生效。解決方法 增加該註解開啟 enableaspectjautoproxy proxyt...