リストに含まれる変数の値をfor文で変更したい
変数をリストとしてまとめ、その要素となる変数の値を変更したいです。
(Python3.5.2)
以下コードを考えましたが想定通り機能しません。
import sys
aa = 10
bb = 10
cc = 10
dd = 10
attributes = [aa, bb, cc, dd]
for attribute in attributes:
print(attribute)
attribute = attribute - 1
print(attribute)
print(attributes)
が、実行したところ、for文のスコープ外では値がもとに戻ります。
10
9
10
9
10
9
10
9
[10, 10, 10, 10]
最後のprint(attributes)が返す値が[9, 9, 9, 9]となるようにしたいです。
おそらくグローバル等変数のスコープを見直せばよいとは考えておりますが、具体的にわかりません。
また、そもそもこの書き方が「Pythonらしい」書き方なのかどうかかもわかっておりません。
その点も合わせてご教示いただけると助かります。