私が書いているプログラムは、バイナリ演算を適用して整数を操作します(例えば>>
,、|
)。操作の多くは、関数の内部で適用され、操作の結果は、私が変更された変数のコピーを返すよ、一度関数リターンを持続させるために。Pythonでの整数のビット単位の変更
ような何か:
updated = applyOp(original, amnt)
def applyOp(original, amnt):
return original >> amnt
私は整数のコピーを返すようにしたいし、代わりに、関数の外を永続化する関数内original
に加えられた変更を望んでいなかった場合、私は私が作成することができたとしに何らかのラッパークラス。他のオプションはありますか?おそらくビット賢明な整数操作を容易にするものでしょうか? Pythonで
私は "同じクラスのアプローチ"に興味があります。私はそれが問題を解決する方法を確認しようとしています - 整数メンバ変数を持つクラスを作成し、その変数をクラス関数に渡した場合でも、メンバ変数への参照のコピーを作成しています。それは私がそれを再割り当てすることができないことを意味します(私が現在直面している同じ問題)。 – Adam
@Adamこれがどのように機能するかの例を追加するために編集しました。 – bytesized