分享一點對return的理解,其返回型別是什麼?

2021-08-20 10:58:34 字數 884 閱讀 7465

我們知道在python乙個函式模組中,執行完在最後通常需要使用return才算乙個完整的函式,否則這個函式就沒有結果,或者再呼叫這個函式可能會出錯。

def add_two():

a = 1

b = 2

print(a+b)

>>> type(add_two())

3

如上**,返回函式執行返回結果就是nonetype.

接下來是返回引數問題,有時候我們只返回乙個引數,那麼返回型別就是根據引數型別是什麼,返回型別相應的也就是什麼

>>> def add_result():

a = 1

b = 2

c = a+b

return c

>>> type(add_result())

我們看到,返回c是乙個整數,那麼函式返回結果型別也就是整數型別。

如果return後含有兩個或以上呢?

>>> def add_two():

a = 1

b = 2

c = a+b

d = b-a

return c,d

>>> type(add_two())

如上**,我們看到是元組型別,它是不可改變的型別,但和列表一樣是有序的,可以進行索引,比如我們要獲得c值,可以add_two()[0],獲得d值可以add_two()[1],

當然在這個**中沒必要這麼複雜,可能可以直接使用c,d的值,但有些複雜的函式可能需要使用以上的索引方式。

以上就是我對return的一些理解.

對 threadfence的一點理解

一直沒搞清楚,cuda 2.2版增加的 threadfence到底有何作用,直到今天看到sdk 3.0手冊 中的下面例子才恍然大悟.中文為我的理解,嘿嘿 乙個求和的例子 device unsigned int count 0 統計有幾個block結束的變數 shared bool islastblo...

對GBDT的一點理解

gbdt由一系列的回歸樹組成,如下圖所示 樹的深度未必都要一樣,下圖僅為示意圖 gbdt原理 針對每乙個類別訓練一系列的回歸樹,再累加每個類別回歸樹的 值得到針對每個類別的最終的 值。單獨拿乙個類別來說,訓練的過程中假設需要 的值為f xi 實際的值為yi 有loss function l yi,f...

對block的一點理解

對block的理解 block宣告的寫法 property strong,nonatomic void block void property copy,nonatomic void block void block的本質 就是oc的物件,內部也有isa指標,block是封裝了函式呼叫以及函式呼叫環...