H

自身を更新するタイプの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で出来るだって?

あーあー聞こえなーい。