Ruby 初心者スレッド Part 67

1デフォルトの名無しさん (ワッチョイ b72c-yePO)
垢版 |
2020/12/25(金) 04:24:27.68ID:aa9Khe9z0
プログラミング言語 Rubyについての、初心者向けスレです。質問・要望・雑談などをどうぞ

質問するときは、OSやRubyのバージョン、エラーメッセージを書いて下さい。
Ruby on Rails については、WEBプログラミング板で

前スレ
Ruby 初心者スレッド Part 66
https://mevius.5ch.net/test/read.cgi/tech/1578068134/

るりまサーチ (リファレンス検索)
http://rurema.clear-code.com/

Rubyist Magazine - るびま
http://jp.rubyist.net/magazine/

逆引きRuby
http://www.namaraii.com/rubytips/

Ruby コミュニティ公式
https://www.ruby-lang.org/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2021/09/21(火) 22:56:27.09ID:0Go6zndF0
>>311
バッファ無効にするのにsyncなんてメソッドがあるのですね
テストみたいなもんなんでこれ使ってやってみます!
ありがとうございました
2021/09/22(水) 12:23:29.69ID:wRl+SBDi0
>>312
もっかい言うけど、バッファ無効はほどほどにな。
ストレージがすり減るぞ。
314デフォルトの名無しさん (エムゾネ FFbf-hED7)
垢版 |
2021/09/23(木) 12:52:09.43ID:7tGJmFKPF
rubyのglobってなんでこの名前なんですか?語源というか理由は?
315デフォルトの名無しさん (エムゾネ FFbf-hED7)
垢版 |
2021/09/23(木) 12:53:36.67ID:7tGJmFKPF
>>313
SSDの方が寿命速い説?
2021/09/23(木) 13:39:57.36ID:sOtSHC530
>>314
書き込む前にググれ!

https://ja.wikipedia.org/wiki/%E3%82%B0%E3%83%AD%E3%83%96
2021/09/23(木) 14:17:52.01ID:FwYHDvYwF
xargs にすれば良かった
318デフォルトの名無しさん (ワッチョイ b2cb-zD50)
垢版 |
2021/09/26(日) 02:01:31.29ID:a7XkizLe0
人に迷惑をかけるのはしょうがない
でも
自分のことを棚にあげたら
地獄だよ
2021/09/26(日) 22:14:40.89ID:5RNiLxHe0
>>310
基本的に、読み込み用ファイルに書き込まないようにすべき。
io.seek で使う、ファイルポインターがずれる

例えば、配列でも同じ。
読み込み用配列を読み込みながら、
読み込み要素の前後に、要素を追加・削除すると、要素がずれるのでバグる

基本、同一ファイルじゃなく、入力用・出力用の2つが必要。
それか、データベースでやるとか

シェルスクリプトとか、関数型のElixir のパイプラインみたいに、
元のファイルを更新せずに、次々と出力ファイルを新規作成していくべき

処理A | B | C

他には、処理を分けられるなら、分けた方がよい

普通、バッファリング無しのモードは、
ユーザーの入力を待つような場合に、端末で使うもの。
こういうバックグラウンド処理では使わない

例えば、1回のシステムコールで、1000バイトの読み書きできるのに、
バッファリング無しなら、1000回もシステムコールを呼ぶから、処理時間が千倍になる

バッファリングとは、システムコールする回数を減らすために、
ある程度データが溜まるのを待ってから、処理を行うものだから
2021/09/26(日) 23:33:39.09ID:6v1pd5GW0
余計なお世話や。w
ほっといたれ。
321デフォルトの名無しさん (ワッチョイ 162c-pveB)
垢版 |
2021/09/28(火) 14:07:16.12ID:yeB6oI220
ファイルパスから簡単に、ディレクトリ名だけを取り出す方法がありますか?
今は、下のようにやっています

file_path = "C:/Users/Owner/Documents/test/a.txt"

p dir_path = File.dirname( file_path ) # ディレクトリパスを取り出す
#=> "C:/Users/Owner/Documents/test"

p dir_name = File.basename( dir_path )
#=> "test"
322デフォルトの名無しさん (エムゾネ FF32-kEnG)
垢版 |
2021/09/28(火) 14:19:10.90ID:nD0g4rLvF
file_path = "C:/Users/Owner/Documents/baka.test/a.txt"
2021/09/28(火) 14:44:05.17ID:zeEpbK0KM
>>321
必要充分だと思うがなあ。
自分でメソッドにくくりだすくらいやないの?

どうしても圧縮したいなら、text.sub(%r{.*/(.*)/.*}){$1}とか?
未確認。ワイならやらん。w
2021/09/28(火) 16:33:03.83ID:WAJRktfF0
>>321
標準添付ライブラリの pathname
325デフォルトの名無しさん (ワッチョイ 6b2d-Jjgm)
垢版 |
2021/09/30(木) 20:28:46.68ID:AJpnjzaB0
rubyだけdistrolessイメージない
なんでハブられてるの?
Googleはruby嫌いなの?
https://github.com/GoogleContainerTools/distroless/issues/156
2021/09/30(木) 20:37:22.69ID:I7uygAb2M
Google社内ではRubyの使用が許可されていない
当然だよね
2021/09/30(木) 20:40:38.51ID:BaUXpZJur
>>326
googleって言っても一枚岩じゃないからそれは完全に間違い
2021/09/30(木) 21:14:17.31ID:eVTcYnny0
バージョン互換の低さ、信頼性の低さを考えたら、プロジェクトとして使いにくいっつーのはあるやろな。
329デフォルトの名無しさん (ワッチョイ 92ad-qcFi)
垢版 |
2021/09/30(木) 22:37:54.54ID:Q+Yf9LrK0
> お前は毎朝起きるたびに俺に負けたことを思い出すよ^^

あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!

クソチョンw
330デフォルトの名無しさん (アウアウウー Sa27-jOtc)
垢版 |
2021/10/01(金) 04:21:27.55ID:YSb3+a7ia
>バージョン互換の低さ、信頼性の低さを考えたら、プロジェクトとして使いにくい

googleのAPIのことですか?
2021/10/01(金) 09:11:32.55ID:Bf6uh555M
プログラミング言語のシェア的にはdistroless対応の優先順位は極めて妥当
残念だけどもう昔のような人気言語じゃないんだよ、、、
ttps://insights.stackoverflow.com/survey/2021#technology-most-popular-technologies
2021/10/01(金) 10:15:08.94ID:8GSBOhv80
>>330
自分に甘くて、他人に厳しいのはあたりまえやろ。w
おまえは違うのか?
2021/10/01(金) 10:34:29.22ID:PaEGpo5A0
AWS Lambda には、Ruby もある

Chef, Cookpad 製のItamae, AWS CloudFormation のKumogata2 もある。
まあ、Terraform のシェアが高くなったけど

Vagrant の作者・ワシントン大学の学生で、今世紀最大の起業家・
HashiCorp の創業者・Ruby/Go の神・Mitchell Hashimoto も、
今は、Goへ行ってしまった

Goプログラマーを募集中

YouTube で有名な、雑食系エンジニア・KENTA のサロンでも、
Ruby on Rails → Go のキャリアパスを推奨している

PHP は、一生やらなくても良い。
新規の仕事が無いから、給料が上がらない。
保守要員は、給料が低いから

KENTAは常に、給料が高い新規プロジェクトを推奨している
334デフォルトの名無しさん (ワッチョイ 9eda-exDs)
垢版 |
2021/10/10(日) 15:27:42.39ID:QuuYHTx70
pp dmy={"VERSION"=>RUBY_VERSION, "ARGV"=>ARGV, "Dir.pwd"=>Dir.pwd}
でdmy=を消すと
Dir.pwdの . でエラーになっちゃうんですけど
syntax error, unexpected '.', expecting `end'
pp(puts)+hashのリテラルでうまい書き方ないんですか
2021/10/10(日) 16:08:30.52ID:2mgB061S0
>>334
ブロックとして解釈されてエラーになるので
puts({a: “a”})みたいに括弧でくくる
2021/10/10(日) 16:45:12.39ID:QuuYHTx70
>>335
エラーの意味が理解できました
ありがとうございます
337デフォルトの名無しさん (ワッチョイ 6e89-4csN)
垢版 |
2021/10/10(日) 18:30:23.02ID:bTjCEmsH0
classが全く理解できない。1日掛けても理解できない。俺は向いてないのか。。。
338デフォルトの名無しさん (ワッチョイ b301-RCSg)
垢版 |
2021/10/10(日) 20:30:34.61ID:osHZfZYe0
Rubyのclassはそれ自身がオブジェクトだからねえ。
2021/10/10(日) 20:55:11.50ID:lB7MFpHR0
クラスの型紙を元に実体化させたものが、インスタンス。
クラス自体を変化させたものが、特異クラス

ここで、インスタンスと特異クラスの継承チェーンを考えてみる

最終的にメソッド探索チェーンは、直線になる必要がある。
それで継承チェーンに、インスタンスと特異クラスが順序よく割り込んでくる

インスタンスに無ければ、特異クラスで探す。
特異クラスにも無ければ、継承チェーンを遡って、親クラスのインスタンスで探す。
そこでも見つからなければ、親クラスの特異クラスで探す

みたいに、継承チェーンをドンドン遡っていく
2021/10/10(日) 20:56:55.24ID:Liv3MhTX0
ムリに「理解」しようとしてるからちゃうか。
あちこちのソースを適当に読んでたら、いずれスッと腑に落ちるときがくるやろ。
2021/10/10(日) 20:59:01.10ID:Liv3MhTX0
>>339
こういうふうに、知らない言葉と知らない概念をおっかけて「理解」しようとするのは、素養がなければツラかろう。
最初はとくに適当でええんや。
342デフォルトの名無しさん (ワッチョイ 4699-ANkw)
垢版 |
2021/10/10(日) 21:36:30.35ID:kKlMir+m0
338と339は新人が来てもこの調子なんだろうなぁ
343デフォルトの名無しさん (ブーイモ MM76-NeHw)
垢版 |
2021/10/10(日) 22:52:57.48ID:fsOtTZslM
> お前は毎朝起きるたびに俺に負けたことを思い出すよ^^

あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!

クソチョンw
344デフォルトの名無しさん (ワッチョイ 6b5c-JSxF)
垢版 |
2021/10/12(火) 00:48:53.92ID:Ihqyo7Sc0
地獄は怖いよ
2021/10/20(水) 02:49:58.32ID:7Ch1Hu5l0
スクレイピングに興味があるのですが1時間に1回の頻度のGETだけで訴えられる危険があるって本当ですか?
2021/10/20(水) 03:46:34.01ID:gq1XFNWx0
はい
2021/10/24(日) 12:07:05.65ID:xDtz/yW60
「Ruby」という商標についてなんですが
Rubyは同名の商標が多数登録されていますが、問題になった話を聞いたことがありません
他の言語も同様です
なぜ問題にならないんですか?
2021/10/24(日) 12:08:05.01ID:vH+4cvxG0
はい
2021/10/24(日) 15:50:39.91ID:TxsSkV/ar
区分が違うからだろ
2021/10/25(月) 21:56:04.74ID:b+7kI3n60
スクレイピングに興味があるのですがrobots.txtを守っていても訴えられる危険があるって本当ですか?
2021/10/25(月) 23:56:18.76ID:1eqHtBhs0
訴えられる危険はいつでもどこでもある。
道を歩いていても、家の中にいても。
2021/10/26(火) 02:13:44.51ID:XIgoRovQ0
>>350
上級者になってからやらないと危険だよ
初心者がよくわからないままやるとサービス妨害になる可能性はまあまあある
2021/10/29(金) 21:42:34.32ID:TYU6SVP40
>>352
サービス提供側に原因があるというのにサービス妨害とはこれいかに?
354デフォルトの名無しさん (ワッチョイ f535-Wpxk)
垢版 |
2021/11/06(土) 19:23:11.48ID:NiwSrOA00
>>297

リブラハック事件を念頭に置いて居るのだと思います。
法的リスクを回避する方法はありません。

事業を行うのであれば、あるいは人生を送る以上法的リスクは常にあります。

入門書に記載出来る話ではないです。

リブラハック事件は、不起訴処分となってますが、20日間の勾留となりました。

余談ですが、旧7帝大卒、上場企業所属の場合、余程のことがない限り法的リスクは回避できます。
355デフォルトの名無しさん (ワッチョイ f535-Wpxk)
垢版 |
2021/11/06(土) 19:27:41.07ID:NiwSrOA00
>>350

中小企業で知財を担当してますが、常に訴訟してます。
業務妨害罪で争ったことはありませんが、模造品による損害賠償事件はチョッ中です。
356デフォルトの名無しさん (ワッチョイ f535-Wpxk)
垢版 |
2021/11/06(土) 19:31:11.06ID:NiwSrOA00
>>355

ちなみに、事件ばかり担当すると会社の仕事は超楽です。
裁判期日は多くても2ヶ月に1回だからです。
社内では、暇なおじさんと思われてます。

だから、プログラミング好きには知財は天国です。
まあ、会社によるのかもしれません。
357デフォルトの名無しさん (ワッチョイ 062c-iAR7)
垢版 |
2021/11/19(金) 07:32:40.55ID:UZar/UR10
Ruby on Rails 製のGitLab の時価総額が、1.9 兆円だって!
2021/11/19(金) 10:13:01.84ID:eyeX0xyMF
なるほどおめでとう
https://gitlab.com/libeigen/eigen
2021/12/07(火) 11:50:44.28ID:sVKUttQ/0
ガチでヌーブなんですけどrequestsとbeautifulsoupでスクレイピングやってます
waitかけないとバンされるよと言われましたがどうすればいいですか?
requests.get()でtimeoutは今書きましたがforで同じサイトの似たようなページに何度もアクセスするのでサーバーへの負荷はすごいと思います
これに対してどうすればいいですか?
2021/12/07(火) 15:28:09.99ID:m3nJJ9T10
waiteかければ十分だと思うよ
2021/12/07(火) 23:29:07.13ID:JKy0RWKD0
botからのアクセスはどこのサイトも来まくってるから、スクレイピングを気にするかは分からないけど、
waitを5秒とかいれとけば。

クレカ明細をスクレイピングしようとしてたら403になって数時間アクセス出来なくなったよ
362デフォルトの名無しさん (ワッチョイ be2c-TeJl)
垢版 |
2021/12/17(金) 21:31:46.70ID:tWB5K5S10
David Heinemeier Hansson(DHH), 2021/12/16

Rails 7: The Demo
https://www.youtube.com/watch?v=mpWFrUwAN88

もう、Rails 7.0.0.rc1 か。
Ruby 3.0.3
2021/12/26(日) 19:54:32.13ID:gUkCfD0ur
Happy Christmas!!

Ruby 3.1.0 Released
https://www.ruby-lang.org/ja/news/2021/12/25/ruby-3-1-0-released/
364デフォルトの名無しさん (ワッチョイ df01-dXQO)
垢版 |
2022/01/09(日) 01:26:06.08ID:wKoMs7Y50
そいつは、>1 のテンプレをしょっちゅう改変している、テンプレ改変荒らし。
基本的に、ソースコードを書かない香具師は荒らし

「Ruby, Rails, クソチョン」などを、NGワード登録推奨とか、
自分が有利なように、いつもテンプレを改変する

荒らしがスレ主として、居座っているので、
まともな人がスレ立てして、テンプレも元に戻した方がよい

荒らしは必ず、短文で2回以上書き込む。
必ず、複数人がいるように見せかける
2022/01/10(月) 00:21:27.01ID:MINWORCd0
スレ立てるまでもない質問はここで 158匹目
https://mevius.5ch.net/test/read.cgi/tech/1635193843/538

ここに、YouTube で有名な、雑食系エンジニア・KENTA のサロンの、
Ruby on Rails 初心者用コースの内容を書いておいた

基本的に、Rails以外のフレームワークは、シェアが少ないのでおすすめしない。
学習環境も揃わないので、無理

Railsでは、Railsチュートリアル・Railsガイド・
黒田努の3冊の本・パーフェクト Ruby on Rails・Ruby on Rails 6 エンジニア養成読本とか、
Rubyでは、改訂2版 パーフェクトRuby・改訂2版 Ruby逆引きハンドブックなどの教科書が揃っている

これほど、良い教科書が揃っているフレームワークはない!

Laravel のシェアは少しあるけど、KENTAがPHP は一生やる必要がないと言ったので、
PHP自体がオワコンになってしまったw

日本のウェブ開発の将来は、ほぼKENTAが決めている。
Scala を滅ぼしたのも、KENTA
2022/01/13(木) 11:23:57.64ID:hewkBnV10
wxrubyのインストールができません。

gem install wxrubyコマンドで
ERROR: Could not find a valid gem 'wxruby' (>= 0) in any repository
と出てインストールできないです。

バージョンはruby 3.1.0p0 (2021-12-25 revision fb4df44d16) [x64-mingw-ucrt]
2022/01/13(木) 12:13:19.79ID:/N9d9IBk0
% gem sources -l
*** CURRENT SOURCES ***

https://rubygems.org/

となる?
あとほんとにbundler経由でなくていいのか再考してみて
2022/01/13(木) 13:32:13.20ID:hewkBnV10
>>367
>となる?

なります。
2022/01/13(木) 14:14:29.91ID:/N9d9IBk0
じゃあわからん
$ gem update --system
して更新がもしあれば治るかも
2022/01/13(木) 15:06:21.76ID:ah8E1hap0
>>366
wxrubyがいつのRubyのときに開発されていたか調べましたか?
wxrubyがいまのRuby 3.1.0p0で動くと思いますか?
2022/01/13(木) 18:29:42.26ID:hewkBnV10
>>370

そうなんですか。
tk使います。
2022/01/13(木) 18:36:09.58ID:Eko2QLhP0
知らんがな、っつー話やけどな。w
互換性のなさはなんとかならんのか。
2022/01/13(木) 19:22:50.06ID:ah8E1hap0
主に使おうとする道具の状態を確認しないのですか?
切れないハサミで紙を切ろうとするのですか?

どうしてもwxrubyを使うなら、せめてrbenvでも良いのでwxrubyが確実に動きそうなruby環境(Ruby 1.9.xぐらい)を用意したほうが賢明です。
あるいは、自分でwxWidgetsをRuby 3.xで動くように頑張ってbindingするか。

ちなみに、わたしはメンドクサクなって、wxWidgetsのcoreなところをRuby 2.7ぐらいでportingしている途中で放置したままです。
2022/01/15(土) 13:46:06.28ID:Bc4m3wjx0
nokogiriでスクレイピングしようとしていたら
逮捕されるかもしれないと言われましたが
本当でしょうか?
2022/01/15(土) 13:51:05.48ID:lPS6H26+r
「かもしれない」という事であれば回答はYesでしょう
まあ質問自体馬鹿げてるが
2022/01/15(土) 13:55:29.58ID:fqPeqqWL0
>>374
本当“かもしれない”ですね
2022/01/29(土) 18:54:02.82ID:NEea/ouUa
>>374
かつて 岡崎市立中央図書館事件 という悲劇があったのだよ
いまならこんなあほな事態は発声しないんじゃないかな、だったらいいな……
2022/02/01(火) 11:03:45.45ID:erVefguva
Webrick 1.7.0 でドキュメントと異なった動作と、RFCで推奨されない通信が行われた場合にIOタイムアウトまで動作停止する問題を
発見しました(対処方法も特定済み)

報告方法どなたかご存じでしょうか?
2022/02/01(火) 15:03:45.59ID:nkHg0hKwa
>>374
スクレイピングに限らず、プログラムを動かす事による
アクセス回数と通信容量は気を付けたほうが良いよ

2chみたいにそれが多すぎたらしっかりとアク禁したり弾いたりしてくれるところはまだいいけど
無対策なサイトで管理人が対応できない人だったりすれば
プログラムによるアクセス制限の対応じゃなく法的な対応はありえる
2022/02/01(火) 16:13:06.79ID:UfZW0QsA0
>>379
どこかの某県図書館だな
結局、アレは業者がアレだったな
2022/02/01(火) 17:31:37.91ID:zzLecfCS0
>>378
こんなとこで聞くことやないやろ!w

こういうとこのが?
https://www.ruby-lang.org/ja/community/mailing-lists/
2022/02/01(火) 20:03:07.20ID:TQ6+L4kbr
>>378
協力よろしくお願いします
https://bugs.ruby-lang.org/projects/ruby/wiki/HowToReportJa
2022/02/05(土) 20:00:16.41ID:lkKOvV4nM
[1,2,3].each{ |i|
next i>2
}
がエラーにならずなかなか原因がわからなかった
正解は
[1,2,3].each{ |i|
next if i>2
}
2022/02/06(日) 02:49:25.03ID:wRRLv8q1a
>>383
next(exit_value)
break(exit_value)
という構文があって、実行された時のブロックの戻り値が指定した引数の値になる

loop{ break }
=> nil

loop{ break 10 }
=> 10

[1,2,3,4].map do |num|
next 'even' if num.even?
num
end
=> [1, "even", 3, "even"]
2022/02/07(月) 15:54:59.83ID:UFoAEHlFM
>>384
ありがとうございました、なるほどでした
nextに戻り値は想定外で、別の原因を探していました
2022/02/08(火) 00:35:57.80ID:rEpsZFEq0
ほ〜、知らんかった
387デフォルトの名無しさん (ワッチョイ d75c-z7Dg)
垢版 |
2022/02/11(金) 05:43:01.01ID:kL9RKZ580
nokogiriでhtmlパースをしようと触っているのですが、
DOMの子要素から絞り込みはできないのでしょうか

document.xpath('//div[@class="main"]').each |node|
node.css('div')
↑これだとclass=mainの子要素全体が取れるのですが

node.xpath('//div[@class="target"]')
↑これだとDOM全体から取ってきてしまいます

node.search('//div[@class="target"]')
↑これも同様でした
2022/02/11(金) 07:45:27.90ID:3E0z2JyYr
>>387
node.xpath('.//div[@class="target"]')

node.search('.//div[@class="target"]')
2022/02/11(金) 07:51:20.39ID:tPFLgtIg0
XPathの仕様みるのが先やん
https://triple-underscore.github.io/XML/xpath10-ja.html#path-abbrev
2022/02/11(金) 08:15:17.26ID:kL9RKZ580
>>388
取れました!ありがとうございます!
>>389
XMLパスという仕様書があるのですね
初めて知りました
リンク先まで教えていただきありがとうございます!
2022/02/11(金) 15:10:34.09ID:901NTZe+0
一旦、ある要素を取得してから、その子孫要素に限定して、
さらに要素を取得していく事もできる

一旦、div.x を取得してから、その子孫内のdiv を取得する

doc = Nokogiri::HTML( <<EOT )
<html><body>
<div class="x"><div class="y"><div class="z"></div></div></div>
<div class="x"><div class="a"></div></div>
</body></html>
EOT

doc.xpath( '//div[@class="x"]' ).each do |x|
x.css( 'div' ).each do |div|
puts div.get_attribute( 'class' )
end
end

出力
y
z
a
392デフォルトの名無しさん (ワッチョイ 37d9-zD41)
垢版 |
2022/02/11(金) 15:21:30.61ID:fEekYUc10
あーあ、やっちゃったね
スクレイピングに手を出したら逮捕されるよ
nokogiriもアンインストールしたほうがいい
2022/02/11(金) 18:40:27.30ID:901NTZe+0
XPath よりも、CSS Selector の方が可読性も高く、簡単。
XPathを使う事は、ほぼ無い

ある属性を持った要素の親要素を取得するとか、かなり複雑なケースに限定される
2022/03/08(火) 08:30:39.25ID:uRRrzdTb0
配列内の要素の出現回数を求める

ary = [ 1, "a", 2, "b", "a", 1, "a" ]

p results = ary.each_with_object( Hash.new( 0 ) ){ |elem, hash| hash[ elem ] += 1 }
#=> { 1=>2, "a"=>3, 2=>1, "b"=>1 }

Ruby には、下のPython のcollections.Counter みたいな関数がありますか?

import collections

l = ['a', 'a', 'a', 'a', 'b', 'c', 'c']

c = collections.Counter(l)
print(c)
#=> Counter({'a': 4, 'c': 2, 'b': 1})

Rubyで、誰かが作ったものはあるけど
https://gist.github.com/cielavenir/501c0cf491e10d905d4307bdeb2596ea
2022/03/08(火) 08:39:01.42ID:rK542qf7r
>>394
ない。
できてこんなもん。
ary.uniq.group_by{|i|ary.count i}
=> {2=>[1], 3=>["a"], 1=>[2, "b"]}
2022/03/08(火) 11:58:05.39ID:yCGAKR370
愚直に書くと
ary.group_by(&:itself).transform_values(&:size)
=> {1=>2, "a"=>3, 2=>1, "b"=>1}
2022/03/08(火) 13:18:13.38ID:4udJjeRKM
each_with_objectのほうが少しシンプルだけど
他の言語だと使えないからreduce使ってる
uniqとかgroupbyはやや効率悪い気がする
2022/03/09(水) 01:16:31.71ID:bFH5rQfw0
tally
https://docs.ruby-lang.org/ja/latest/method/Enumerable/i/tally.html
2022/03/09(水) 05:08:13.88ID:xyP8cJI4a
[1, "a", 2, "b", "a", 1, "a"].tally
=> {1=>2, "a"=>3, 2=>1, "b"=>1}

ほ〜
2022/03/09(水) 06:45:20.85ID:ld7hWZ5w0
美しい
2022/05/01(日) 18:29:19.86ID:hArhlqjHd
rails6、ruby2.7を利用しています。
アクセスしてきたリクエストURLのパラメータに「#」が付いた際、paramsにパラメータが含まれてこないのですが、
この内容を取得するにはどうすれば良いでしょうか?
2022/05/01(日) 21:32:54.31ID:hYMTL+9l0
ムリ。
サーバーには渡されない。
2022/05/01(日) 22:05:48.29ID:AIbUDPzi0
HTTPリクエストには乗らないけど
ブラウザ上のJSではハンドリングできるからそれで連携可
2022/05/02(月) 00:21:18.11ID:tduJ9vUQd
ありがとうございます!
ハッシュは取れないのですね…
JSでハンドリングしてみます。
2022/05/10(火) 02:36:19.66ID:lerz5rr1M
JavaScriptのようにPythonコードをHTML内に記述して実行できる「PyScript」 Anacondaがオープンソースで公開
https://www.itmedia.co.jp/news/articles/2205/09/news161.html

rbScriptも技術的に可能でしょう、だそうです
2022/05/10(火) 07:09:23.20ID:4KKJ8JThr
可能も何も既存なんだが
407デフォルトの名無しさん (ワントンキン MM86-3X6i)
垢版 |
2022/05/25(水) 19:57:04.38ID:iXIMMJncM
rubyが1番初心者向け?
2022/05/25(水) 20:27:04.41ID:nspShIcld
JavaScriptだろうな
Rubyは人気急落中で既存のRailsアプリのメンテくらいにしか使われなくなっているから今から入るのはお勧めできない
2022/05/27(金) 01:56:43.24ID:o8IZTGHvr
webアプリ初心者にはrailsがオススメな反面ruby自体は全く初心者にオススメできないクソ言語
2022/05/27(金) 11:29:28.44ID:5IS2i0qw0
>>409
PythonとくにPython3よりも、Rubyのほうがええと思うけど?

といいつつも、仕事でTypeScriptばっかり、Railsもわずかにやっとるけど
2022/05/29(日) 08:45:02.43ID:5LPeOORh0
JavaScriptって初心者にほんとに勧めて良いものだろうか。
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況