python中函式形式為a b()還是b(a)有何規律?

時間 2021-06-06 17:04:16

1樓:阿晨

a.b()和b(a)是函式的兩種表達方式,要搞清楚它們的區別,請揣摩「方法是類中的函式」這句話所表達的含義。

同一類可以建立多個例項,這些不同的例項依據各自的需求在呼叫類中同一函式時,是不是需要指明是哪個例項在呼叫該函式。這就需要一種區分「類中的函式誰在呼叫,或作用於誰」的問題,而a.(b)的形式就是一種明確區分上述問題的最佳表示式。

如此就應運而生了這種表達函式的方式。

2樓:shallow

第一種是: a是某乙個類的乙個例項化物件, b是那個類中定義的方法(函式);

比如 t=123

a=str(t)

l=a.split('2')

print(l)

第二種是: 匯入乙個模組,使用模組中的函式;比如import time

a = time.time()

print(a)

比如a=3

print(a)

from time import timeb = time()

print(b)

3樓:

class

Main

:def

__init__

(self

):pass

deffoobar

(self

,args

):print

('Hello, world!'

)def

test_method

(main

,args

):main

.foobar

(args

)def

test_function

(main

,args

):Main

.foobar

(main

,args

)def

test_reflect

(main

,args

):type

(main).

foobar

(main

,args)if

__name__

=='__main__'

:main

=Main

()args

=None

test_method

(main

,args

)test_function

(main

,args

)test_reflect

(main

,args

)Disassembly

of

object

test_method

at0x000001D62A0B8F60

,file

"main.py"

,line

6>:7

0LOAD_FAST0(

main)2

LOAD_METHOD0(

foobar)4

LOAD_FAST1(

args)6

CALL_METHOD18

POP_TOP

10LOAD_CONST0(

None)12

RETURN_VALUE

Disassembly

of

object

test_function

at0x000001D62A0BD0C0

,file

"main.py"

,line

8>:9

0LOAD_GLOBAL0(

Main)2

LOAD_METHOD1(

foobar)4

LOAD_FAST0(

main)6

LOAD_FAST1(

args)8

CALL_METHOD210

POP_TOP

12LOAD_CONST0(

None)14

RETURN_VALUE

Disassembly

of

object

test_reflect

at0x000001D62A0BD1E0

,file

"main.py"

,line

10>:11

0LOAD_GLOBAL0(

type)2

LOAD_FAST0(

main)4

CALL_FUNCTION16

LOAD_METHOD1(

foobar)8

LOAD_FAST0(

main)10

LOAD_FAST1(

args)12

CALL_METHOD214

POP_TOP

16LOAD_CONST0(

None)18

RETURN_VALUE

什麼是工廠函式?Python 中工廠函式怎麼理解?

lalaland python class mq object def init self,string c self.config str string cdef print str self print self.config str def crete factory method confi...

在python中的randrange函式和uniform函式的區別是什麼?

無關風月 函式簽名說的已經比較清楚了啊 In 7 random.randrange?Signature random.randrange start,stop None,step 1,int maxwidth 9007199254740992L Docstring Choose a random i...

Python中reshape函式引數 1的意思?

西紅柿雞蛋湯 首先要明白shape的含義,shape代表了乙個矩陣的行和列。比如這個矩陣,m np.array 1,2 3 5,6,7 m.shape 它的shape是 3,2 reshape就是對矩陣的shape重新排列。比如m.reshape 3,2 1 2 3 5 6 7 我們就將矩陣重新排列...