Rubyの基礎から学びなおす。

Rubyの基礎「ハッシュまで」のおさらい

ruby 基礎1 ruby 基礎2

Rubyでは全てがオブジェクト?

rubyは全てオブジェクトである。という言葉におじけづいてしまっていましたが、どうもなんでもメソッドが使えるよということかもしれない。そういう意味では、pythonと似ているような気もしなくもない。

Rubyの配列のスライスの仕方

  • pythonでは → [ 1: ] こんなかんじで配列をスライスするが
  • Rubyでは [0 . . 2]というふうにするようである。直前を指定するには[0 . . . 2]

pythonでももしかしたらできたかもしれないが、color[1 . . 2] = [“white”, “black”]というふうな感じで代入できるようだ。

Rubyのハッシュ(pythonでいう辞書)

Rubyのハッシュの書き方は2とおり

矢印マークで記述する方法 scores = {“taguti” => 300}
コロンを使って記述する方法 {taguti: 300}

Rubyのハッシュはダブルクォートをつけないというのがかなりややこしい。Rubyではシンボルという概念がある。

Ruby {taguti: 300}
python {‘taguti’: 300}

Rubyでハッシュの値へのアクセスする方法

Rubyのハッシュの値へのアクセスの仕方はpythonとはことなる。

Ruby scores[:taguti]
python scores[‘taguti’]

しかしここに罠がある値へのアクセスの仕方はscores[“taguti”]もしくはscores[:taguti]でもよいが、仮に

scores = {“taguchi” => 300, “norisuke” => 200}というハッシュがあったとする。そこにscores[:taguchi] = 400と値を代入する。

結果はこのようになる #{“taguchi”=>300, “norisuke”=>200, :taguchi=>400}