動かざることバグの如し

3分経てば忘れそうなことをメモします

pythonで配列操作

1〜10までの配列をつくりたい

array = list(range(1,10))
>> [1, 2, 3, 4, 5, 6, 7, 8, 9]

rubyでいうeachをしたい

for num in array:
    print(num)

rubyでいうeach_with_Indexがしたい

array = list(range(1,10))
for i,num in enumerate(array):
    print(i, num)

以下のように表示される

0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9

rubyでいうmapがしたい

例えば配列の全要素に1を足したい場合

非常に汚いやり方だと以下

array = list(range(1,10))
for i,num in enumerate(array):
    print(i,num)
    array[i] = num + 1

pythonにもmap関数はあってそれを使うと以下 phpと一緒でメソッドを先に用意しなくてはいけない

array = list(range(1,10))

def plus(num):
    return num + 1

array = list(map(plus, range(1, 10)))

今回のタスクでは内包記法?ってやつが一番スマートに見えた

array = list(range(1,10))
a = [num+1 for num in array]