2020/09/03(木)Pythonへとっつけなかった理由

2020/09/03 25:33 itoy
Pythonへとっつけなかった理由はスライスにあります
Perlの場合
@list = ( 0 , 1 , 2 , 3 , 4 ) ;
print(join("|",@list[1..3])."\n"); # 1|2|3
Pythonの場合
list = [ 0 , 1 , 2 , 3 , 4 ]
list[ 1:3 ]
[1, 2]
ぼくはCやPascalがルーツなので、Pythonの結果は非常に奇異に思われました
正直バグと思いました
理解不能でした
というか、あの出力はPython特有のものです
今はPython方式のほうがしっくりきます
Pythonの場合はスライスの数値は要素の位置を示しているのではなくて、要素の間を示しているんです(たぶん)
スライスで『切る』わけですから、『間』のほうがしっくりきます

しかし、久しぶりにPerlを書いたら...
行末のセミコロンを忘れる
配列のシジル(@)を忘れる

この年齢でバイリンガルは厳しいか?