[解決済み] Rubyの自動カウンタ?
2022-06-11 12:33:37
質問
for-eachとカウンタを使いたいのですが、どうすればいいですか?
i=0
for blah in blahs
puts i.to_s + " " + blah
i+=1
end
もっと良い方法はないのでしょうか?
注意してください。
私は
blahs
が配列なのかハッシュなのか分かりませんが、このように
blahs[i]
をしなければならないのは、あまりセクシーではありません。あと、以下のような書き方も知りたいです。
i++
をRubyで書く方法を知りたいです。
技術的には、MattとSqueegyの回答が最初に来たのですが、私はparadojaにベストアンサーを与えているので、SOで少しポイントを分散しています。また、彼の回答にはバージョンについての注記がありましたが、これはまだ関連しています (私の Ubuntu 8.04 が Ruby 1.8.6 を使用している限りにおいて)。
使用すべきは
puts "#{i} #{blah}"
を使うべきでした。
どのように解決するのですか?
みんなが言っているように
each_with_index
を使うことができますが、もし "each" とは異なるイテレータでインデックスが欲しい場合(例えばインデックスでマップしたい場合など)、each_with_indexメソッドで列挙子を連結するか、単にwith_indexを使うことができます。
blahs.each_with_index.map { |blah, index| something(blah, index)}
blahs.map.with_index { |blah, index| something(blah, index) }
これは、ruby 1.8.7や1.9からできることです。
関連
-
[解決済み】Ruby: 特定のバージョンのruby gemをインストールする方法は?
-
[解決済み] パラメータに**(ダブルスター/アスタリスク)、*(スター/アスタリスク)がありますが、これはどういう意味ですか?
-
[解決済み] Rubyのswitch文の書き方
-
[解決済み] Rubyで配列に値が存在するかどうかを確認する方法
-
[解決済み] Rubyからシェルコマンドを呼び出す方法
-
[解決済み] Rubyでnilとemptyとblankを理解する方法
-
[解決済み] Rubyで文字列を小文字・大文字に変換する方法
-
[解決済み] Rubyのattr_accessorとは何ですか?
-
[解決済み] Ruby on Railsで現在の絶対URLを取得するにはどうすればよいですか?
-
[解決済み] Rubyのclass << selfイディオム
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Ruby:kind_of? vs. instance_of? vs. is_a?
-
[解決済み] Rubyでファイルをあるディレクトリから別のディレクトリにコピーする
-
[解決済み] Ruby プログラムに一定時間待つように指示する
-
[解決済み] ルビー階乗関数
-
[解決済み] あなたが提供した認証メカニズムはサポートされていません。AWS4-HMAC-SHA256を使用してください。
-
[解決済み] Rubyでリモートホストの到達可能性をpingで確認する方法
-
[解決済み] gemのインストール中に "permission denied "エラーが発生するのはなぜですか?
-
[解決済み] Rubyでファイルを移動するにはどうしたらいいですか?
-
[解決済み】Railsのeachループのインデックスを取得する【重複あり
-
[解決済み] EACHループの現在のインデックスを調べる (Ruby) [duplicate]