假設我們有一個對象a
,我們要修改的數據是這樣的Python化的方式,以避免指針
a.substructure1.subsubstructure1.name_of_the_data1
這
a.substructure2.subsubstructure2.name_of_the_data2
結構要訪問這個結構我們稱之爲一個外部方法get_the_data_shortcut(a)
,它被大量參數化(例如參數subsstructure
指定要返回哪個子結構)。這看起來非常冗餘,但對於所有這些參數都有一個非常好的默認設置,這是合理的。此外,如果默認分支不可用,此函數將返回另一個數據分支。
如何修改get_the_data_shortcut(a)
?
b = get_the_data_shortcut(a)
b = b + 1
然後,get_the_data_shortcut(a)
不變,因爲還有Python是不是Java。
我需要一個setter嗎?大多數情況下,這不是我的代碼,並且是由編寫pythonic代碼的人編寫的,我試圖跟上這些標準。
通常Python的辦法是做類似'B = A .substructure1.subsubstructure1; b.name_of_the_data1 + = 1'。但是,也許你應該寫一個[mcve],這樣我們就可以有更多的實際討論。 –