2016-10-08 3 views
0

要件とデータ構造を構築:がPythonで特別な要件

  1. は、例えば、可変あり、related_to_dict = 10
  2. 構築キー値ペアのデータ、例えば、special_dict = {0: ref_related_to_dict}
  3. related_to_dictの変数が変更された場合、 special_dict [0]の値もrelated_to_dict の値に変更されました。 special_dict [0]のvalue_of、例えば、0。 ref_related_to_dictが変更された場合、 のrelated_to_dictの値も special_dict [0]の値に変更されました。

このタスクを達成する方法はありますか?

答えて

1

何らかの種類のコンテナに値をラップする必要があります。

class Ref: 
    def __init__(self, v): 
     self.val = v 

そして:

related_to_dict = Ref(10) 
special_dict = {0: related_to_dict} 

その後、必要に応じて、それが動作します:

related_to_dict.val = 40 
print(special_dict[0].val) # 40 
+0

しかしspecial_dictが[0]の、変更された場合は第四要件は、ある、満たされていませんそれに応じて変更する必要があります。だから、おそらく辞書のようなデータ構造はここに収まらない。 – soarinblue

+0

ラップされた値を変更するだけです: 'special_dict [0] .val = 653'。言い換えれば、 'ref_related_to_dict = special_dict [0]; ref_related_to_dict.val = 653' – Claudiu

+0

感謝します、ありがとう!しかし、PythonでCプログラミングのようなポインタがあれば、それはより簡単になります。 – soarinblue

関連する問題