與問題的問題,因爲它是目前寫的是,有沒有辦法一個函數知道密鑰名稱pair1
,因爲這對於每個字典都是不同的。
你可以使用一個一致的鍵名狀pair
每一個字典:
p1 = {'pair': ([2, 3, 4], [5, 6, 7])}
p2 = {'pair': ([9, 10, 11], [12, 13, 14])}
p3 = {'pair': ([12, 20, 30], [17, 8, 30])}
def find_and_set_mean(a_dictionary):
a_dictionary['mean']=np.mean(a_dictionary['pair'])
find_and_set_mean(p1)
find_and_set_mean(p2)
find_and_set_mean(p3)
這給:
{'pair': ([2, 3, 4], [5, 6, 7]), 'mean': 4.5}
{'pair': ([9, 10, 11], [12, 13, 14]), 'mean': 11.5}
{'pair': ([12, 20, 30], [17, 8, 30]), 'mean': 19.5}
但是一個更好的解決方案可能是組織這次作爲一個對象:
class PairObject(object):
def __init__(self, _part1, _part2):
self.part1 = _part1
self.part2 = _part2
def pair(self):
return (self.part1, self.part2)
def mean(self):
return np.mean((self.part1, self.part2))
# Then use it like this:
p1 = PairObject([2, 3, 4], [5, 6, 7])
p1.pair() # returns ([2, 3, 4], [5, 6, 7])
p1.mean() # returns 4.5
還有,你試過這麼遠嗎?它是如何工作的?它做了什麼呢?你有錯誤嗎?發佈*完整*追蹤。 –
*嘗試了幾個小時,從未工作* ...幾個小時?真?奇怪它不工作...(對不起,你要求它;)) –