有沒有辦法只存盤函式的第二個回傳值?我正在尋找這樣的東西:
def func(pos, times_clicked, cost):
if buy_image_rect.collidepoint(pos) and times_clicked >= cost:
times_clicked -= cost
cost = 5
return cost, times_clicked
# But I want to get the second return value for times_clicked. It doesn't work like this:
times_clicked = func(event.pos, times_clicked, cost)
我需要獲得不同事物的兩個回傳值。請幫忙!
uj5u.com熱心網友回復:
回傳值是一個包含兩個組件的元組。將結果分配給兩個單獨的變數:
cost, times_clicked = func(event.pos, times_clicked, cost)
uj5u.com熱心網友回復:
times_clicked實際上同時擁有這兩個值。
當您從函式回傳幾個值時,將回傳一個元組。
你的元組可以傳播成這樣的變數:
var_1, var_2 = (1, 2) # var_1 == 1, var_2 == 2
呼叫回傳兩個值的函式時也是如此:
cost, times_clicked = func(event.pos, times_clicked, cost)
uj5u.com熱心網友回復:
具有多個變數的函式的回傳值將在呼叫該函式時回傳一個包含值的元組。
要訪問這些值,通過參考與函式中分配的回傳值順序相對應的元組的索引號。
tup= func(event.pos, times_clicked, cost)
cost, times_clicked= tup #(var1,var2)
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/479233.html
