我是編程新手,我正在嘗試自學。我從 python 開始,我正在努力弄清楚我是否以正確的方式解決這個問題。我想弄清楚如何從該函式之外的函式內部訪問特定變數。
weight = input('Enter Amount: ')
def quantity():
p_total = weight / 454
print(f'Amount: {p_total}')
hp_total = weight / 227
print(f'Amount HP: {hp_total}')
qp_total = weight / 114
print(f'Amount QP: {qp_total}')
return p_total, hp_total, qp_total
print(qp_total)
然后我希望能夠根據需要訪問在那里創建的各個變數。例如只能呼叫 qp_total 或 p_total。或者這不會很好地使用函式嗎?同樣,我對編碼仍然非常陌生。
uj5u.com熱心網友回復:
由于您的結果是一個元組,您可以提供一個索引來從該元組中檢索您想要的專案:
def quantity(weight):
p_total = weight / 454
hp_total = weight / 227
qp_total = weight / 114
return p_total, hp_total, qp_total
print(quantity(50)[2]) # 0.43859649122807015
如果您想要多個專案,但不是整個結果,那么您可以使用_“空”輸出(盡管技術上不是真正的“空”):
p_total, _, qp_total = quantity(50)
print(p_total, qp_total) # 0.11013215859030837 0.43859649122807015
像“從外部訪問內部變數”這樣的概念聽起來更像是與“類”有關:
class Quantity():
def __init__(self, weight):
self.p_total = weight / 454
self.hp_total = weight / 227
self.qp_total = weight / 114
q = Quantity(50)
print(q.qp_total) # 0.43859649122807015
但在我看來,在這種情況下,它過于復雜了。
uj5u.com熱心網友回復:
你從來沒有真正呼叫過你的數量函式。另外,您應該真正將 weight 變數傳遞給:
def quantity(weight):
p_total = weight / 454
print(f'Amount: {p_total}')
hp_total = weight / 227
print(f'Amount HP: {hp_total}')
qp_total = weight / 114
print(f'Amount QP: {qp_total}')
return p_total, hp_total, qp_total
weight = input('Enter Amount: ')
p_total, hp_total, qp_total = quantity(weight)
print(qp_total)
uj5u.com熱心網友回復:
def quantity(weight):
p_total = weight / 454
hp_total = weight / 227
qp_total = weight / 114
return p_total, hp_total, qp_total
weight = int(input('Enter Amount: '))
p_total = quantity(weight)[0]
hp_total = quantity(weight)[1]
qp_total = quantity(weight)[2]
print(qp_total)
重量輸入必須轉換為整數,因為在 python 中輸入作為字串傳遞。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/335668.html
上一篇:AttributeError:'Function'物件沒有屬性。不能呼叫另一個函式的屬性
下一篇:無遞回轉置
