自身を更新するタイプのfor文について -Python
はいまじでメモでーーす。
例えばぁ、Aっていう配列あるとするじゃん?
A=numpy.arange(10)みたいに適当にしてぇ、
forでAの値を変えちゃおう!って思うとき、あるよねぇ?
例えばAの値を一つづつ更新していきたい時。(にんじんしりしりを作りたい時)
バカで無知な自分は、最初こう書いたよ!!!
for i in A: i = i+1
うん、これでやったとしても変わらないね!
じゃあどうするかっていうと、
出来るだけ変えないようにすると
for i, e in enumerate(A): A[i] = e + 1
っていうのが一番かもね。
でも書くのにこれはぁ、長すぎますよね???
そんな時にはこれ!内包表記(ぴーらー)
このA(にんじん)を、内包表記(ぴーらー)で、ほらこの通り。
A = [i + 1 for i in A]
簡単ですねぇ。
え?なんだって?numpyだからA = A + 1で出来るだって?
あーあー聞こえなーい。