プログラミング言語 Rubyについての、初心者向けスレです。質問・要望・雑談などをどうぞ
質問するときは、OSやRubyのバージョン、エラーメッセージを書いて下さい。
Ruby on Rails については、WEBプログラミング板で
前スレ
Ruby 初心者スレッド Part 64
https://mevius.5ch.net/test/read.cgi/tech/1535797516/
るりまサーチ (リファレンス検索)
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
探検
Ruby 初心者スレッド Part 65
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 0f80-JI52)
2018/12/22(土) 04:43:34.03ID:84E3pYZa0741デフォルトの名無しさん (ワイーワ2 FFdf-1wBF)
2019/10/11(金) 10:44:47.24ID:hkXt1GtmF 別に目の仇にしてる訳じゃないやろ
「rubyはなんでwindowsで使うと糞なの」
「じゃあおまいが対応汁」
「forkωωω」
「挫折」
の流れを繰り返してるだけ
屍累々
「rubyはなんでwindowsで使うと糞なの」
「じゃあおまいが対応汁」
「forkωωω」
「挫折」
の流れを繰り返してるだけ
屍累々
742デフォルトの名無しさん (ワッチョイ 9714-Gl4G)
2019/10/11(金) 10:59:31.96ID:PhVW6Uck0 >>738
お前がわかってないだけだろ
そのエラーはlocalhostでtelnetサーバーを起動してない、
もしくは接続が拒否されたって意味だ。
今どき暗号化されてないtelnetサーバーなんて使わないから
前者だろうな。
お前がわかってないだけだろ
そのエラーはlocalhostでtelnetサーバーを起動してない、
もしくは接続が拒否されたって意味だ。
今どき暗号化されてないtelnetサーバーなんて使わないから
前者だろうな。
743デフォルトの名無しさん (ワッチョイ 9714-Gl4G)
2019/10/11(金) 11:00:41.99ID:PhVW6Uck0 ちなみにWindows 10にはtelnetサーバーは付属してない。
744デフォルトの名無しさん (ワッチョイ 9714-Gl4G)
2019/10/11(金) 11:01:10.81ID:PhVW6Uck0 >>741
的はずれなレスをするな
的はずれなレスをするな
745728 (ワッチョイ 9f2c-la4p)
2019/10/11(金) 22:27:44.45ID:SXeDtfTX0 Windows10, WSL, Ubuntu 16.04 の端末上で、
tty と入力すると、/dev/tty1 と表示される
/dev/tty, /dev/tty0, /dev/tty1 などもある。
他にも、S が付いた、/dev/ttyS0 〜 /dev/ttyS191 もある
/dev/stdin, /dev/stdout, /dev/stderr もある
expect で、このあたりの、デバイスファイルを使えるかもしれない
>>738
Telnet の接続エラーは、port 23 が開いていないのかも
tty と入力すると、/dev/tty1 と表示される
/dev/tty, /dev/tty0, /dev/tty1 などもある。
他にも、S が付いた、/dev/ttyS0 〜 /dev/ttyS191 もある
/dev/stdin, /dev/stdout, /dev/stderr もある
expect で、このあたりの、デバイスファイルを使えるかもしれない
>>738
Telnet の接続エラーは、port 23 が開いていないのかも
746デフォルトの名無しさん (ワイーワ2 FFdf-1wBF)
2019/10/14(月) 11:56:07.71ID:Cg/ykvDAF747デフォルトの名無しさん (ワイーワ2 FFdf-1wBF)
2019/10/14(月) 11:56:43.70ID:Cg/ykvDAF748デフォルトの名無しさん (ワッチョイ 7f73-pTuN)
2019/10/20(日) 00:18:23.73ID:tI/yRj1E0 Rubyの課題が全然わからないので教えてほしいです。
1、0、−1、0が繰り返し表示されるようにしたいです。
when使ってできないでしょうか。
OS→windows10
Rubyバージョン→1.8.4
一応作ったのですが、nilが永遠にでます。
1、0、−1、0が繰り返し表示されるようにしたいです。
when使ってできないでしょうか。
OS→windows10
Rubyバージョン→1.8.4
一応作ったのですが、nilが永遠にでます。
749デフォルトの名無しさん (ワッチョイ 1201-dMft)
2019/10/20(日) 02:00:28.55ID:pHh2P92w0 作ったの貼るっしょ
750デフォルトの名無しさん (ワッチョイ 122c-pTuN)
2019/10/20(日) 08:32:27.73ID:ADDbXmaX0 Ruby 1.8.4 ?
もう、そんなに古いのは無理!
Windows 用のRubyInstaller でも、Ruby2.5.7。
Linux では、Ruby2.6.5 が最新だが、Windows では、1つ前のバージョンを使うこと!
Windows では、irb も日本語でバグるから、VSCode を使え!
Code Runner という拡張機能を入れると、
右クリックメニューから、選択したコードを実行できる
もう、そんなに古いのは無理!
Windows 用のRubyInstaller でも、Ruby2.5.7。
Linux では、Ruby2.6.5 が最新だが、Windows では、1つ前のバージョンを使うこと!
Windows では、irb も日本語でバグるから、VSCode を使え!
Code Runner という拡張機能を入れると、
右クリックメニューから、選択したコードを実行できる
751デフォルトの名無しさん (ワッチョイ 92a5-iRVk)
2019/10/20(日) 08:40:43.47ID:akKR2ina0 その問題を「1、0、−1、0を産む機械」と言い換えればすぐにyieldを使えばいいと分かる
whenなの?
whenなの?
752デフォルトの名無しさん (ワッチョイ b35f-dFI/)
2019/10/20(日) 09:10:18.66ID:X1mKFDBe0 0.step do |i|
p case i % 4
when 0 then 1
when 1 then 0
when 2 then -1
when 3 then 0
end
end
a = [1,0,-1,0]
0.step{|i| p a[i%4] }
>>750
> Linux では、Ruby2.6.5 が最新だが、Windows では、1つ前のバージョンを使うこと!
私の観測範囲が狭いのか2.6.5を使わない理由が見つからないのだが、なにかバグありました?
p case i % 4
when 0 then 1
when 1 then 0
when 2 then -1
when 3 then 0
end
end
a = [1,0,-1,0]
0.step{|i| p a[i%4] }
>>750
> Linux では、Ruby2.6.5 が最新だが、Windows では、1つ前のバージョンを使うこと!
私の観測範囲が狭いのか2.6.5を使わない理由が見つからないのだが、なにかバグありました?
753デフォルトの名無しさん (オッペケ Sr47-sprL)
2019/10/20(日) 09:57:11.30ID:V17Fc59sr >>748
(1..).each{|i| p (-1)**((i & 2) >> 1) * (i & 1)}
(1..).each{|i| p (-1)**((i & 2) >> 1) * (i & 1)}
754750 (ワッチョイ 122c-pTuN)
2019/10/20(日) 10:13:18.00ID:ADDbXmaX0 >>752
Windows 用のRuby は、いつも1つ前のバージョンを使う!
RubyInstaller のサイトにも、最新版を使わないようにと、いつも書いてある
Windowsでは、MSYS2 でコンパイルするモジュールなどが、
最新版に対応していないので、1年ぐらい待つ必要がある
Windows 用のRuby は、いつも1つ前のバージョンを使う!
RubyInstaller のサイトにも、最新版を使わないようにと、いつも書いてある
Windowsでは、MSYS2 でコンパイルするモジュールなどが、
最新版に対応していないので、1年ぐらい待つ必要がある
755デフォルトの名無しさん (ワッチョイ 6b7d-sepG)
2019/10/20(日) 10:18:26.35ID:lW4NmDBF0 >>748
loop{ puts 1, 0, -1, 0 }
loop{ puts 1, 0, -1, 0 }
756デフォルトの名無しさん (ワッチョイ b35f-dFI/)
2019/10/20(日) 11:35:59.48ID:X1mKFDBe0 >>754
RUBYINSTALLER-HEAD(https://github.com/oneclick/rubyinstaller2/releases/tag/rubyinstaller-head)については書いてありますが
latestについては記述見つかりませんでしたが、どこに書いてありますか?
> MSYS2 でコンパイルするモジュールなどが、
コンパイル済みのfat-gemが問題起こしてる印象があり、なくならねぇかな・・・と思ってますね
RUBYINSTALLER-HEAD(https://github.com/oneclick/rubyinstaller2/releases/tag/rubyinstaller-head)については書いてありますが
latestについては記述見つかりませんでしたが、どこに書いてありますか?
> MSYS2 でコンパイルするモジュールなどが、
コンパイル済みのfat-gemが問題起こしてる印象があり、なくならねぇかな・・・と思ってますね
757750 (ワッチョイ 122c-pTuN)
2019/10/20(日) 12:06:18.48ID:ADDbXmaX0 https://rubyinstaller.org/
以前は、このトップページか、Download のページに書いてあったけど、文章が変わったみたい
まあでも、このスレでも、Windows では、最新バージョンは使うなという書き込みがあったから、
たぶん、1つ前のバージョンを使わないと、依存関係が解決できないのだろう
とにかく、Mac を使っている人は、Windowsの依存関係が地獄だから、皆Macへ移った
以前は、このトップページか、Download のページに書いてあったけど、文章が変わったみたい
まあでも、このスレでも、Windows では、最新バージョンは使うなという書き込みがあったから、
たぶん、1つ前のバージョンを使わないと、依存関係が解決できないのだろう
とにかく、Mac を使っている人は、Windowsの依存関係が地獄だから、皆Macへ移った
758デフォルトの名無しさん (ワッチョイ d201-4js2)
2019/10/20(日) 12:16:45.81ID:MDf6mYD+0 [1,0,-1,0].cycle {|x| puts x} #無限
[1,0,-1,0].cycle(3) {|x| puts x} #サイクル数指定
[1,0,-1,0].cycle.take(10).each {|x| puts x} #要素数指定
cycle再発明したいならEnumeratorを返す方法を学ぶ
[1,0,-1,0].cycle(3) {|x| puts x} #サイクル数指定
[1,0,-1,0].cycle.take(10).each {|x| puts x} #要素数指定
cycle再発明したいならEnumeratorを返す方法を学ぶ
759デフォルトの名無しさん (ワイーワ2 FF6a-uHRg)
2019/10/20(日) 12:46:50.25ID:9lZC9vgyF ひょっとすると Ruby は糞なのかも知れない
10.times{|n|puts Math::cos(n*Math::PI/2) <=> 0}
10.times{|n|puts Math::cos(n*Math::PI/2) <=> 0}
760デフォルトの名無しさん (ワイーワ2 FF6a-uHRg)
2019/10/20(日) 12:48:22.43ID:9lZC9vgyF 10.times{|n|puts Math.sign(Math::cos(n*Math::PI/2))}
10.times{|n|puts Numeric.sign(Math::cos(n*Math::PI/2))}
10.times{|n|puts Number.sign(Math::cos(n*Math::PI/2))}
10.times{|n|puts Numeric.sign(Math::cos(n*Math::PI/2))}
10.times{|n|puts Number.sign(Math::cos(n*Math::PI/2))}
761デフォルトの名無しさん (ワイーワ2 FF6a-uHRg)
2019/10/20(日) 12:56:08.24ID:9lZC9vgyF 糞は漏れだった orz
10.times{|n|puts Math::cos(n*Math::PI/2).to_i}
10.times{|n|puts Math::cos(n*Math::PI/2).to_i}
762デフォルトの名無しさん (オッペケ Sr47-sprL)
2019/10/21(月) 12:00:03.97ID:ZDMJHUdnr >>758が一番スマートだな
763デフォルトの名無しさん (ワッチョイ 3714-V5T5)
2019/10/21(月) 13:13:03.03ID:a2dL9b0A0 >>760みたいに下手に計算するより早いしね!
764デフォルトの名無しさん (オッペケ Sr47-sprL)
2019/10/21(月) 13:27:57.28ID:ZDMJHUdnr いやそもそも>>759-761は間違ってる
765デフォルトの名無しさん (ワッチョイ 3714-V5T5)
2019/10/21(月) 13:42:33.89ID:a2dL9b0A0766デフォルトの名無しさん (オッペケ Sr47-sprL)
2019/10/21(月) 14:06:09.86ID:ZDMJHUdnr 流石に本気で三角関数使って実装しようなんて思ってないだろうしそこは別にネタで言ってんだと思うけど
ネタとしても面白くはないけど
ネタとしても面白くはないけど
767デフォルトの名無しさん (アウアウウー Sa43-gDzD)
2019/10/21(月) 16:50:50.88ID:RCZWOoQNa そもそも>>748はhello worldレベルの初心者だろうに、回答者が求めてるものを無視して俺の解き方見てくれ!って奴ばかりなのは問題だと思う
768デフォルトの名無しさん (ワイーワ2 FF6a-uHRg)
2019/10/21(月) 17:07:36.09ID:5+ah6i6TF 禁止事項
トリを使おうとしている質問者に対して、そんなトリはやめろとかという、斜め上からのアドバイス
質問者そっちのけでの昔語り(昔はもっと苦労したもんだ、今の若い者は…)
知らないのに、使ったことないのに、知ったかぶりでの書き込み
ググれという誰でも言えそうな忠告
俺は知ってるけど言わない等といった、実社会での扱われ方からの僻みから来る
意地悪な言辞
回答はあくまでボランティアなので、質問者は、回答がつかなかったり、
期待に沿った回答が得られなかったからといって切れたりしないように。
また、わざとそういう困った質問者を演じて釣りに来る人もいるかもしれないので、
回答者も、むかついたからといって、いちいち切れて反応せずスルーしよう。
そして質問者はもう出て来ない
トリを使おうとしている質問者に対して、そんなトリはやめろとかという、斜め上からのアドバイス
質問者そっちのけでの昔語り(昔はもっと苦労したもんだ、今の若い者は…)
知らないのに、使ったことないのに、知ったかぶりでの書き込み
ググれという誰でも言えそうな忠告
俺は知ってるけど言わない等といった、実社会での扱われ方からの僻みから来る
意地悪な言辞
回答はあくまでボランティアなので、質問者は、回答がつかなかったり、
期待に沿った回答が得られなかったからといって切れたりしないように。
また、わざとそういう困った質問者を演じて釣りに来る人もいるかもしれないので、
回答者も、むかついたからといって、いちいち切れて反応せずスルーしよう。
そして質問者はもう出て来ない
769デフォルトの名無しさん (ワッチョイ 37e7-6fT3)
2019/10/21(月) 17:50:42.35ID:fwYGRAlp0770769 (ワッチョイ 37e7-6fT3)
2019/10/21(月) 19:35:56.70ID:fwYGRAlp0771デフォルトの名無しさん (オッペケ Sr47-sprL)
2019/10/22(火) 11:21:00.25ID:wZUXcjF6r いやどうみてもnがちょっとでかくなったら正しくなくなることくらい自明だろ
同じ発想でやりたいなら複素平面とかπ/2の回転行列とか使って計算すればいいだけ
ただし奇を衒った回答としては斬新さにかけて面白くないと言っている
で>>758が一番スマート(かつ自分でもそうする)って言ってるんだがなんなんやこいつ
同じ発想でやりたいなら複素平面とかπ/2の回転行列とか使って計算すればいいだけ
ただし奇を衒った回答としては斬新さにかけて面白くないと言っている
で>>758が一番スマート(かつ自分でもそうする)って言ってるんだがなんなんやこいつ
772デフォルトの名無しさん (ワイーワ2 FF6a-uHRg)
2019/10/22(火) 11:24:07.59ID:fxbuxtP/F >nがちょっとでかくなったら正しくなくなる
2π で mod すればいい
2π で mod すればいい
773デフォルトの名無しさん (ワッチョイ 7f73-pTuN)
2019/10/22(火) 11:42:16.77ID:Bl/xGts70 質問したものです。皆さん様々な意見ありがとうございます。考えてくださってとても感謝しています。
皆さんのを見ながらなんとかできました!
ありがとうございました。
皆さんのを見ながらなんとかできました!
ありがとうございました。
774デフォルトの名無しさん (ワッチョイ 6373-sEIE)
2019/10/26(土) 11:19:55.92ID:VCWPcpX80 def break_test
return break
end
i = 10;
while i > 0
next_test
}
放置すれば無限ループになるのをbreak_testでループを
抜けたいのですが、関数?からnext や breakなどを
返すようにできないのでしょうか。
return break
end
i = 10;
while i > 0
next_test
}
放置すれば無限ループになるのをbreak_testでループを
抜けたいのですが、関数?からnext や breakなどを
返すようにできないのでしょうか。
775デフォルトの名無しさん (ワッチョイ 6373-sEIE)
2019/10/26(土) 11:21:02.82ID:VCWPcpX80 ごめんなさい、
i = 10;
while i > 0
break_test
}
でした。
i = 10;
while i > 0
break_test
}
でした。
776デフォルトの名無しさん (ワッチョイ ff2c-vu2g)
2019/10/26(土) 12:47:43.93ID:751XFDvk0 そういうキーワードそのものは、返せないだろ
戻り値は、0, 1 などの整数とか、
フラグとして、true, false の真偽値とか、
:next, :break みたいなシンボルとか、文字列とか
戻り値は、0, 1 などの整数とか、
フラグとして、true, false の真偽値とか、
:next, :break みたいなシンボルとか、文字列とか
777デフォルトの名無しさん (ワッチョイ ffa5-7KPZ)
2019/10/26(土) 13:32:18.57ID:aCoOcfZt0 キーワードデリゲーションをすればいいんだろ
かんたんじゃん
かんたんじゃん
778デフォルトの名無しさん (ワッチョイ ff01-E1XV)
2019/10/26(土) 13:42:24.92ID:ZMkO6rZZ0779デフォルトの名無しさん (ワッチョイ bf33-1RvR)
2019/10/26(土) 19:48:47.03ID:zP6esb2p0 >>774
斬新な発想だな。w
Rubyに限らず一般的に、制御を移すしくみは、関数(メソッド)の範囲を越えることはできない。
ただし、「例外」ならそれ以降をすっとばすことができるので、break相当ならできるかも?
# 勧めないけど。
斬新な発想だな。w
Rubyに限らず一般的に、制御を移すしくみは、関数(メソッド)の範囲を越えることはできない。
ただし、「例外」ならそれ以降をすっとばすことができるので、break相当ならできるかも?
# 勧めないけど。
780デフォルトの名無しさん (ワッチョイ bf33-1RvR)
2019/10/26(土) 19:56:33.83ID:zP6esb2p0781デフォルトの名無しさん (ワッチョイ 6373-sEIE)
2019/10/26(土) 22:09:58.48ID:VCWPcpX80 >>778
実際はwhileじゃなくて
xxxxx.each do |key|
同じようなことする関数(引数)
同じようなことする関数(引数)
同じようなことする関数(引数)
end
の中で関数の中身がある条件だったら
nextで残りをやらずにeach.doの最初からやりたいんですけど
引数の値が違うだけなのに
例えば関数にTrueを返したら next しろとか条件をいちいち
付けるのもめんどくさいと思い、質問してみました。
実際はwhileじゃなくて
xxxxx.each do |key|
同じようなことする関数(引数)
同じようなことする関数(引数)
同じようなことする関数(引数)
end
の中で関数の中身がある条件だったら
nextで残りをやらずにeach.doの最初からやりたいんですけど
引数の値が違うだけなのに
例えば関数にTrueを返したら next しろとか条件をいちいち
付けるのもめんどくさいと思い、質問してみました。
782デフォルトの名無しさん (ワッチョイ 6373-sEIE)
2019/10/26(土) 22:13:03.44ID:VCWPcpX80 xxxxx.each do |key|
if 同じようなことする関数(引数) then next
if 同じようなことする関数(引数) then next
if 同じようなことする関数(引数) then next
end
Rubyにあまり詳しくないのでよくわからないのですが
こんな感じなのでしょうか?
if 同じようなことする関数(引数) then next
if 同じようなことする関数(引数) then next
if 同じようなことする関数(引数) then next
end
Rubyにあまり詳しくないのでよくわからないのですが
こんな感じなのでしょうか?
783デフォルトの名無しさん (ワッチョイ a3e0-Oqw9)
2019/10/26(土) 23:35:07.98ID:BPSgYag60 慣習的に返り値を成否にすることが多いから論理を逆にして
xxxxx.each do |key|
同じようなことする関数(引数) &&
同じようなことする関数(引数) &&
同じようなことする関数(引数)
end
xxxxx.each do |key|
next unless 同じようなことする関数(引数)
next unless 同じようなことする関数(引数)
同じようなことする関数(引数)
end
xxxxx.each do |key|
同じようなことする関数(引数) &&
同じようなことする関数(引数) &&
同じようなことする関数(引数)
end
xxxxx.each do |key|
next unless 同じようなことする関数(引数)
next unless 同じようなことする関数(引数)
同じようなことする関数(引数)
end
784デフォルトの名無しさん (ワッチョイ ff01-E1XV)
2019/10/27(日) 00:24:39.23ID:wfElRmia0 >>781
なるほど
自分ならオプショナルチェーン的なのを使うか
「同じようなことする関数」をメソッドオブジェクトかProcにして配列に入れて
true返したらnextしろって書くのを1箇所にする
https://ideone.com/I7hyOs
https://ideone.com/VQMgg2
なるほど
自分ならオプショナルチェーン的なのを使うか
「同じようなことする関数」をメソッドオブジェクトかProcにして配列に入れて
true返したらnextしろって書くのを1箇所にする
https://ideone.com/I7hyOs
https://ideone.com/VQMgg2
785デフォルトの名無しさん (ワッチョイ ff2c-vu2g)
2019/10/27(日) 05:02:59.99ID:hJUpCTqv0 jQuery.each( object, callback )
これは、jQueryの繰り返し処理用の関数。
配列/オブジェクトで使える
繰り返し処理中に、ループを抜けたい場合(一般的なループ処理で言うところのbreak)、
コールバック関数で、falseを返すことで実装できます。
それ以外の値を返した場合は、無視されます
これは、jQueryの繰り返し処理用の関数。
配列/オブジェクトで使える
繰り返し処理中に、ループを抜けたい場合(一般的なループ処理で言うところのbreak)、
コールバック関数で、falseを返すことで実装できます。
それ以外の値を返した場合は、無視されます
786デフォルトの名無しさん (ワッチョイ 53f3-cmPQ)
2019/10/27(日) 05:08:22.73ID:+BT3KxOb0787デフォルトの名無しさん (ワッチョイ c314-BWw0)
2019/10/27(日) 10:29:27.71ID:EzDt4vDz0 ifのネストができないとかなので
qiitaの「オレオレ言語作ってみた」記事レベル
qiitaの「オレオレ言語作ってみた」記事レベル
788デフォルトの名無しさん (オッペケ Sr47-eGmw)
2019/10/27(日) 10:35:17.49ID:4XYnNnzNr いや、さすがにそれよりは完成度高かったよ
789デフォルトの名無しさん (ワッチョイ 2314-BWw0)
2019/10/27(日) 10:40:08.22ID:Lik42TLZ0 あとgithubプロジェクトには、オブジェクトファイルとか
vimのスワップファイルとかも入っていて周辺知識もない
つまりはプログラミング全般の幅広い知識をつけて、
言語開発できるレベルになったと言うより
言語作ってみたくて、それ関連の知識をぐぐってコピペした程度
再帰を知ってるかも怪しいw
vimのスワップファイルとかも入っていて周辺知識もない
つまりはプログラミング全般の幅広い知識をつけて、
言語開発できるレベルになったと言うより
言語作ってみたくて、それ関連の知識をぐぐってコピペした程度
再帰を知ってるかも怪しいw
790デフォルトの名無しさん (オッペケ Sr47-eGmw)
2019/10/27(日) 10:44:23.07ID:4XYnNnzNr 中学生相手に謎のマウントとって恥ずかしくないんかこのおっさん
791デフォルトの名無しさん (ワッチョイ 6f8c-cmPQ)
2019/10/27(日) 11:37:21.19ID:vygsvak+0 どこにも新人を虐め殺す人はいる。
792デフォルトの名無しさん (ワッチョイ ff2c-vu2g)
2019/10/27(日) 11:58:18.66ID:hJUpCTqv0 養成読本シリーズのムック本が出た!
Software Design plusシリーズ
Ruby on Rails 6 エンジニア養成読本、2019/10/26
著者は、すがわらまさのり,前島真一
Software Design plusシリーズ
Ruby on Rails 6 エンジニア養成読本、2019/10/26
著者は、すがわらまさのり,前島真一
793デフォルトの名無しさん (ワッチョイ ffa5-7KPZ)
2019/10/27(日) 12:17:41.60ID:Cn2fohUL0 養成ギプスじゃねーのなこのシリーズ
794デフォルトの名無しさん (ワッチョイ 6373-ynHG)
2019/10/28(月) 23:21:57.76ID:FXEIy8w10795デフォルトの名無しさん (ワッチョイ 6373-ynHG)
2019/10/29(火) 06:00:13.39ID:wBa+308I0796デフォルトの名無しさん (ワッチョイ 6373-ynHG)
2019/10/29(火) 06:25:03.68ID:wBa+308I0 >>785
Ruby on Rails入れてませんがjqueryが使えるのでしょうか。
Ruby on Rails入れてませんがjqueryが使えるのでしょうか。
797デフォルトの名無しさん (スップ Sd1f-PDRl)
2019/10/29(火) 23:05:22.63ID:wWZj5nZGd github の ignoreとか適当だから、objとか普通にアップしてるな。
仕事ならまだしも、個人ねやつなんか、完全やバックアップもくてきだから、
あまりにデカイみだな .db とか除いて、全部あっふだわ。
個人のリポジドリも200とか超え始めると、一つ一つ丁寧に設定なんかしとれんわ。
githubやエディタ独自仕様に振り回される必要なし。
仕事ならまだしも、個人ねやつなんか、完全やバックアップもくてきだから、
あまりにデカイみだな .db とか除いて、全部あっふだわ。
個人のリポジドリも200とか超え始めると、一つ一つ丁寧に設定なんかしとれんわ。
githubやエディタ独自仕様に振り回される必要なし。
798デフォルトの名無しさん (ワッチョイ ff2c-vu2g)
2019/10/30(水) 01:59:02.44ID:p2ffZ2o00799デフォルトの名無しさん (エムゾネ FF1f-Tlcr)
2019/10/30(水) 13:12:15.78ID:Jt7N9BVBF800デフォルトの名無しさん (ワッチョイ ca2c-0B+f)
2019/11/04(月) 16:33:35.55ID:Zu03xGz40 あるフォルダ内の子フォルダだけを取得するのに、こう書いているのですが、
PowerShell みたいに、ls -Directory
など、もっと簡単に書けないの?
target_dir = "C:/Users/Owner/Documents/*"
p dest_dirs = Dir.glob( target_dir ).select { |path| File.directory?( path ) }
return if dest_dirs.length == 0 # フォルダが存在しない
PowerShell みたいに、ls -Directory
など、もっと簡単に書けないの?
target_dir = "C:/Users/Owner/Documents/*"
p dest_dirs = Dir.glob( target_dir ).select { |path| File.directory?( path ) }
return if dest_dirs.length == 0 # フォルダが存在しない
801デフォルトの名無しさん (ミカカウィ FF27-xbEI)
2019/11/04(月) 16:36:49.84ID:6GYoHHZPF RubyはUNIXで使うものであり、シェルコマンドも積極的に使うのが前提
Rubyから普通にlsを呼べ基地外
Rubyから普通にlsを呼べ基地外
802デフォルトの名無しさん (ワッチョイ 8a01-ODnH)
2019/11/04(月) 19:06:35.57ID:KBcuTkU10 単発で使う分には十分簡単に書けてると思うが
繰り返し書く必要があるなら自分でメソッド抽出すればよくね?
繰り返し書く必要があるなら自分でメソッド抽出すればよくね?
803800 (ワッチョイ ca2c-0B+f)
2019/11/04(月) 19:37:03.85ID:Zu03xGz40 Dir.glob( "パス", :directory )
みたいに、ブロックじゃなくて、
オプション・シンボルなどで、簡単に指定できれば
みたいに、ブロックじゃなくて、
オプション・シンボルなどで、簡単に指定できれば
804デフォルトの名無しさん (アウアウカー Sacb-ENpr)
2019/11/04(月) 20:32:46.29ID:15pQYryDa >>800
むしろPowerShellが凄い
むしろPowerShellが凄い
805デフォルトの名無しさん (ワッチョイ 8a01-ODnH)
2019/11/04(月) 22:33:04.21ID:KBcuTkU10 Dir.glob('*/')
806デフォルトの名無しさん (アウアウウー Sa2f-x9nz)
2019/11/05(火) 21:08:09.25ID:z9XdE4jra rubyを使い出して2週間なのですが困っています。
今は汎用機のログの一括処理に使っているのですが、
半角カナや漢字が文字化けして読み込まれます。
ログファイルはwindowsにsjisで保存されていて、
これをsjis指定で読み込んでも\x33等と化けます。
どうすれば半角カナが化けないように読めるのでしょうか。
今は汎用機のログの一括処理に使っているのですが、
半角カナや漢字が文字化けして読み込まれます。
ログファイルはwindowsにsjisで保存されていて、
これをsjis指定で読み込んでも\x33等と化けます。
どうすれば半角カナが化けないように読めるのでしょうか。
807デフォルトの名無しさん (ワッチョイ c68c-fAkU)
2019/11/05(火) 22:01:22.14ID:+vsp0I/Q0 sjis指定で読み込んでると思い込んでるだけで実際はutf-8になってるんじゃないかな
あるいはログがsjisと思い込んでるだけという線もありうる
もしくは書き出しがsjisになってないとか
可能性を挙げたらきりがない
コードをさらすのが解決への近道
あるいはログがsjisと思い込んでるだけという線もありうる
もしくは書き出しがsjisになってないとか
可能性を挙げたらきりがない
コードをさらすのが解決への近道
808デフォルトの名無しさん (アウアウウー Sa2f-xbEI)
2019/11/05(火) 22:19:23.14ID:HJJtuDtXa 汎用機のデータをRubyで処理とか懐かしいな
俺もやってたわ
結局転職するのが唯一にして最良のソリューションだから、あまり変なことに拘って時間を無駄にするよりAWSの勉強でもしたほうがいいよ
俺もやってたわ
結局転職するのが唯一にして最良のソリューションだから、あまり変なことに拘って時間を無駄にするよりAWSの勉強でもしたほうがいいよ
809デフォルトの名無しさん (ワッチョイ 8a01-ODnH)
2019/11/05(火) 23:08:03.80ID:rzC/SdAh0 >>806
どういう環境を使って
どういう方法でエンコーディング指定をしていて
どうやって読み込んで、どこに出力して、出力結果をどうやって確認してるのか?
そういう情報が必要
Ruby関係なくエンコーディングに対する理解を深めたほうが良さげ
基本的には外部エンコーディングと内部エンコーディングを指定すれば問題なし
https://docs.ruby-lang.org/ja/2.6.0/class/IO.html#io_encoding
>File.read('sjis.log', mode: "rt:sjis:utf-8")
どういう環境を使って
どういう方法でエンコーディング指定をしていて
どうやって読み込んで、どこに出力して、出力結果をどうやって確認してるのか?
そういう情報が必要
Ruby関係なくエンコーディングに対する理解を深めたほうが良さげ
基本的には外部エンコーディングと内部エンコーディングを指定すれば問題なし
https://docs.ruby-lang.org/ja/2.6.0/class/IO.html#io_encoding
>File.read('sjis.log', mode: "rt:sjis:utf-8")
810デフォルトの名無しさん (アウアウウー Sa2f-x9nz)
2019/11/06(水) 00:03:50.72ID:lUVlDRaka >806です
解決しました。
エンコードにsjisではなくwindows-31Jを
指定すると半角カナを文字化けせずに読めました。
ファイルの文字コードは確実にsjisなのに、
なんでsjis指定で読み込んだら化けるのか分かりませんが、
ひとまず解決です。
解決しました。
エンコードにsjisではなくwindows-31Jを
指定すると半角カナを文字化けせずに読めました。
ファイルの文字コードは確実にsjisなのに、
なんでsjis指定で読み込んだら化けるのか分かりませんが、
ひとまず解決です。
811デフォルトの名無しさん (アウアウウー Sa2f-x9nz)
2019/11/06(水) 00:05:50.13ID:lUVlDRaka812デフォルトの名無しさん (ワッチョイ 7a33-DbiX)
2019/11/06(水) 02:48:09.37ID:normnvJW0 >>810
一般に、Shift_JIS(標準規格)とcp932(Windowsカスタム)は別物。
Rubyでもそうらしい。
https://docs.ruby-lang.org/ja/latest/class/Encoding.html#S_ALIASES
一般に、Shift_JIS(標準規格)とcp932(Windowsカスタム)は別物。
Rubyでもそうらしい。
https://docs.ruby-lang.org/ja/latest/class/Encoding.html#S_ALIASES
813デフォルトの名無しさん (アウウィフ FF2f-DOEl)
2019/11/06(水) 11:43:12.78ID:o3tEvZiYF 半角カタカナ ← 混ぜるな危険
30年くらい前の話
30年くらい前の話
814デフォルトの名無しさん (アウアウウー Sa2f-x9nz)
2019/11/06(水) 11:50:52.64ID:SpldiVNta815デフォルトの名無しさん (アウアウウー Sa2f-x9nz)
2019/11/06(水) 11:52:59.82ID:SpldiVNta >>813
漢字も駄目なのでやや難易度高しです。
漢字も駄目なのでやや難易度高しです。
816デフォルトの名無しさん (アウウィフ FF2f-DOEl)
2019/11/06(水) 12:34:12.51ID:o3tEvZiYF いいがかりは止せ
SJISファイルじゃないんだから当然だろ
SJISファイルじゃないんだから当然だろ
817デフォルトの名無しさん (ワッチョイ ca2c-0B+f)
2019/11/06(水) 13:41:03.82ID:ZR40S1lI0 Windows では一般用語として、sjis と書くけど、
厳密には、sjisを拡張した、CP932 の事です。
だから、MS が独自に拡張した部分は、sjisではない!
漏れは、Windows で、PowerShell を使って、クリップボード処理を書いているけど、
Windows(CP932) ←→ Ruby(utf8) と、外部環境とruby内で、文字コードを変換している
クリップボード内の複数行文字列の、各行の先頭・末尾から、
連続する空白類を除去して、クリップボードに入れる
str = `powershell Get-Clipboard`
str.encode! Encoding::UTF_8, Encoding::CP932 # UTF_8 へ変換
ary = str.each_line.map( &:strip ) # 連続する空白類を除去する
IO.popen( 'clip', 'w:cp932' ) do | clip | # CP932 へ戻す
clip.print( ary.join "\n" )
end
厳密には、sjisを拡張した、CP932 の事です。
だから、MS が独自に拡張した部分は、sjisではない!
漏れは、Windows で、PowerShell を使って、クリップボード処理を書いているけど、
Windows(CP932) ←→ Ruby(utf8) と、外部環境とruby内で、文字コードを変換している
クリップボード内の複数行文字列の、各行の先頭・末尾から、
連続する空白類を除去して、クリップボードに入れる
str = `powershell Get-Clipboard`
str.encode! Encoding::UTF_8, Encoding::CP932 # UTF_8 へ変換
ary = str.each_line.map( &:strip ) # 連続する空白類を除去する
IO.popen( 'clip', 'w:cp932' ) do | clip | # CP932 へ戻す
clip.print( ary.join "\n" )
end
818デフォルトの名無しさん (ワッチョイ de14-EL77)
2019/11/06(水) 15:16:56.50ID:Z1mcKm+J0 別にMSがSJISを拡張したんじゃないけどな。
そもそもSJIS本家を作ったのがMS(+他)なわけで。
じゃあ拡張したのは誰かというとIBMとかNECだよ
まあそもそも拡張可能にしていんだけどな
MSなどがSJISを作った。IBMやNECが拡張した。
それらを取り込んでWindowssのCP932とした。というのが正しい流れ
ちなみにAppleもSJISを拡張してる。それはMacJapaneseと呼ばれる。
拡張部分がIBMやNECが拡張した部分とかぶってるので互換性がないんだけどな
そもそもSJIS本家を作ったのがMS(+他)なわけで。
じゃあ拡張したのは誰かというとIBMとかNECだよ
まあそもそも拡張可能にしていんだけどな
MSなどがSJISを作った。IBMやNECが拡張した。
それらを取り込んでWindowssのCP932とした。というのが正しい流れ
ちなみにAppleもSJISを拡張してる。それはMacJapaneseと呼ばれる。
拡張部分がIBMやNECが拡張した部分とかぶってるので互換性がないんだけどな
819デフォルトの名無しさん (ワッチョイ 8a01-ODnH)
2019/11/06(水) 15:39:23.65ID:Fx0hE3mY0 >Encoding.aliases.select {|_,v| v == "Windows-31J"}
{"CP932"=>"Windows-31J",
"csWindows31J"=>"Windows-31J",
"SJIS"=>"Windows-31J",
"PCK"=>"Windows-31J"}
Rubyでは"SJIS"も"CP932"もWindows-31Jのエイリアスなんだけど
SJISの指定をWindows-31Jに変更して解決する事があるんですねー(棒)
{"CP932"=>"Windows-31J",
"csWindows31J"=>"Windows-31J",
"SJIS"=>"Windows-31J",
"PCK"=>"Windows-31J"}
Rubyでは"SJIS"も"CP932"もWindows-31Jのエイリアスなんだけど
SJISの指定をWindows-31Jに変更して解決する事があるんですねー(棒)
820デフォルトの名無しさん (ワッチョイ c68c-fAkU)
2019/11/06(水) 18:22:07.75ID:8bqr3nzy0 半角カナや大半の漢字はsjis範囲内だからきちんとsjisで読めばほぼ文字化けはないはず
つまりsjisで読めていなかったということ
つまりsjisで読めていなかったということ
821デフォルトの名無しさん (ワッチョイ 0314-EL77)
2019/11/06(水) 19:09:22.79ID:wTTuQQRz0 >>819
エンコーディングは同じで文字集合が違うだけだからね
エンコーディングは同じで文字集合が違うだけだからね
822デフォルトの名無しさん (ワッチョイ 077d-qsv/)
2019/11/06(水) 19:26:39.67ID:GIJSYcug0 リファレンスマニュアルの aliases -> Hash の例
"SJIS"=>"Shift_JIS" は間違いですね
Encoding::SJIS == Encoding::CP932 #=> true
Encoding::SJIS == Encoding::Windows_31J #=> true
Encoding::SJIS == Encoding::Shift_JIS #=> false
"SJIS"=>"Shift_JIS" は間違いですね
Encoding::SJIS == Encoding::CP932 #=> true
Encoding::SJIS == Encoding::Windows_31J #=> true
Encoding::SJIS == Encoding::Shift_JIS #=> false
823デフォルトの名無しさん (アウウィフ FF2f-DOEl)
2019/11/06(水) 19:55:23.52ID:o3tEvZiYF HTML (HTTP) で Encoding Shift_JIS って書くと怒られた思い出
824デフォルトの名無しさん (ワッチョイ 8a01-ODnH)
2019/11/06(水) 20:51:13.84ID:Fx0hE3mY0 >>821
いやいやいや
文字集合と符号化方式を別々に選択できる状況ならともかく
「ファイル読み取り時のエンコーディング指定」とかの文脈で使うエンコーディングって用語は
狭義の符号化方式だけでなく文字集合も含めた上位の概念だから
いやいやいや
文字集合と符号化方式を別々に選択できる状況ならともかく
「ファイル読み取り時のエンコーディング指定」とかの文脈で使うエンコーディングって用語は
狭義の符号化方式だけでなく文字集合も含めた上位の概念だから
825デフォルトの名無しさん (ワッチョイ 0314-EL77)
2019/11/06(水) 21:02:49.31ID:wTTuQQRz0826デフォルトの名無しさん (ワッチョイ df33-rCU0)
2019/11/07(木) 00:17:25.40ID:gr4VkOsJ0 >>818
エンコーディングと機種依存文字をごっちゃにしてるやろ。
エンコーディングと機種依存文字をごっちゃにしてるやろ。
827デフォルトの名無しさん (ワッチョイ 2b14-6wYC)
2019/11/07(木) 01:13:21.86ID:sEmiRyTj0828デフォルトの名無しさん (ワッチョイ ef8c-z4KY)
2019/11/07(木) 02:15:26.05ID:QKW84+pO0 ガイジか?
829デフォルトの名無しさん (ワッチョイ 2b14-6wYC)
2019/11/07(木) 02:20:56.81ID:sEmiRyTj0 理解できなくなったら、このようなレスをするんだよなw
830デフォルトの名無しさん (ワッチョイ 2b14-6wYC)
2019/11/07(木) 02:31:19.18ID:sEmiRyTj0 例えば、Unicodeは文字集合(キャラクタセット、Coded Character Set)で
UTF-8とかUTF-16というのが符号化方式(エンコード、Character Encoding Scheme)
Unicodeも拡張可能でバージョン番号があって文字集合の内容が変わってる。
Unicode 1.0では文字集合の中の文字数は7,161文字
最新のUnicode 12.1では137,929文字も収録文字数が増えてる。
エンコーディングは変わっていないが文字集合は変わってるので
古いバージョンにしか対応してないコンピュータで、
最新のUnicodeを表示させると一部文字化けする
ただし管理団体の手によって収録文字は決められてるので
ShiftJISの頃のような各社バラバラで互換性がないってことにはならない
(ただし私用領域を使ってる場合は除く)
UTF-8とかUTF-16というのが符号化方式(エンコード、Character Encoding Scheme)
Unicodeも拡張可能でバージョン番号があって文字集合の内容が変わってる。
Unicode 1.0では文字集合の中の文字数は7,161文字
最新のUnicode 12.1では137,929文字も収録文字数が増えてる。
エンコーディングは変わっていないが文字集合は変わってるので
古いバージョンにしか対応してないコンピュータで、
最新のUnicodeを表示させると一部文字化けする
ただし管理団体の手によって収録文字は決められてるので
ShiftJISの頃のような各社バラバラで互換性がないってことにはならない
(ただし私用領域を使ってる場合は除く)
831デフォルトの名無しさん (ワッチョイ ef8c-z4KY)
2019/11/07(木) 03:28:55.37ID:QKW84+pO0 外字と引っ掛けた洒落や
気い悪くしたんならすまんかった
気い悪くしたんならすまんかった
832デフォルトの名無しさん (ワッチョイ 9f01-vL98)
2019/11/07(木) 08:58:28.91ID:debRpYWr0 >>830
>エンコーディングは変わっていないが文字集合は変わってるので
>最新のUnicodeを表示させると一部文字化けする
じゃ文字集合だけ更新すれば文字化け解消するのかな?
文脈理解せず無意味なレス繰り返してるとそりゃ外字言われるわ
>エンコーディングは変わっていないが文字集合は変わってるので
>最新のUnicodeを表示させると一部文字化けする
じゃ文字集合だけ更新すれば文字化け解消するのかな?
文脈理解せず無意味なレス繰り返してるとそりゃ外字言われるわ
833デフォルトの名無しさん (ワッチョイ 9f2c-E8Ce)
2019/11/07(木) 11:38:26.80ID:LDERshfw0 そりゃ、新しい文字集合を使うと、新しい絵文字も正しく表示されるだろ?
834デフォルトの名無しさん (ワッチョイ 2b14-6wYC)
2019/11/07(木) 12:52:46.05ID:sEmiRyTj0 正確に言えば、新しい文字集合に対応したフォントを使うとだね。
>>832の言う「文字集合だけ更新すれば」が意味不明だが
「仕様書を更新すれば、なにも変更はいらない」って意味なら
そんなことは誰も言ってない
>>832の言う「文字集合だけ更新すれば」が意味不明だが
「仕様書を更新すれば、なにも変更はいらない」って意味なら
そんなことは誰も言ってない
835デフォルトの名無しさん (ワッチョイ ef8c-z4KY)
2019/11/07(木) 20:03:36.67ID:1chRDjs40 ㋿
最近だと令和対応が記憶に新しいな
最近だと令和対応が記憶に新しいな
836デフォルトの名無しさん (ワッチョイ 9f2c-E8Ce)
2019/11/08(金) 15:49:09.19ID:bNpOstnB0 よく出てくる、&:メソッド名は、proc オブジェクトですが、
たまに出てくる、:メソッド名は、何ですか?
違いが、よく分からない
nums = %w(1 2 3 4).map!( &:to_i ) # 数値の配列
p nums.inject( :+ ) # 10
たまに出てくる、:メソッド名は、何ですか?
違いが、よく分からない
nums = %w(1 2 3 4).map!( &:to_i ) # 数値の配列
p nums.inject( :+ ) # 10
837デフォルトの名無しさん (ドコグロ MM3f-keNo)
2019/11/08(金) 17:07:06.66ID:GYgLC2XDM シンボル
実用的には単なる変更不可能な文字列と見做してよい
Rubyの初期からの大きな失敗の一つで、特に意味はない
実用的には単なる変更不可能な文字列と見做してよい
Rubyの初期からの大きな失敗の一つで、特に意味はない
838デフォルトの名無しさん (ワッチョイ 9f01-vL98)
2019/11/08(金) 18:26:17.63ID:q9/Fdf+e0 マニュアルの「シンボルの実装と用途」ってところを読むと良いと思う
https://docs.ruby-lang.org/ja/2.6.0/class/Symbol.html
&:to_iも":to_i"がシンボルで、そのシンボルが"&"で修飾されてるだけ
"&"はProcオブジェクトやto_procメソッドを持つオブジェクトをブロックとして渡す時に引数につける修飾記号
実行時にSymbol#to_procが呼ばれてそれがブロックとして渡される
https://docs.ruby-lang.org/ja/2.6.0/class/Symbol.html
&:to_iも":to_i"がシンボルで、そのシンボルが"&"で修飾されてるだけ
"&"はProcオブジェクトやto_procメソッドを持つオブジェクトをブロックとして渡す時に引数につける修飾記号
実行時にSymbol#to_procが呼ばれてそれがブロックとして渡される
839デフォルトの名無しさん (ワッチョイ 9f01-vL98)
2019/11/08(金) 18:31:13.82ID:q9/Fdf+e0 mapはシンボルを引数にとらないからmap(&:to_i)でブロックとして渡すけど
injectはシンボルを引数に取るからinject(:+)で実行できる
inject(&:+)としてブロックとして渡してもいいけど無駄処理が入るので普通はやらない
injectはシンボルを引数に取るからinject(:+)で実行できる
inject(&:+)としてブロックとして渡してもいいけど無駄処理が入るので普通はやらない
840836 (ワッチョイ 9f2c-E8Ce)
2019/11/08(金) 18:48:10.88ID:bNpOstnB0 漏れは、いつも、メソッドがシンボルを引数に取るかどうか、分からないから、
ひとまず、map!( :to_i ) みたいに、シンボルを渡して、エラーになったら、
map!( &:to_i ) と、& を付けることにしている
ひとまず、map!( :to_i ) みたいに、シンボルを渡して、エラーになったら、
map!( &:to_i ) と、& を付けることにしている
841デフォルトの名無しさん (ワッチョイ df33-rCU0)
2019/11/08(金) 21:56:04.93ID:ZY78KkPA0■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】中国外務省報道官 高市首相発言撤回なければ「断固たる対抗措置」 ★2 [蚤の市★]
- 高市首相答弁を“引き出した”立民・岡田克也氏が改めて説明「なぜ慎重な答弁をされなかったのか。非常に残念に思っている」 ★4 [ぐれ★]
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… ★3 [BFU★]
- 中国、日本行き“50万人”キャンセル 渡航自粛でコロナ禍以来最大 [お断り★]
- 【速報】日本産牛肉の対中国輸出再開協議が中止 ★2 [おっさん友の会★]
- 毛寧(もう・ねい)報道官「中国に日本の水産品の市場は無い」 高市首相の国会答弁に「中国民衆の強い怒り」 [ぐれ★]
- 【高市悲報】インドネシアの山が大爆発。日本への影響調査中。2025/11/19 19:35 [253245739]
- 【速報】中国政府、ゲームを禁輸。原神やブルアカ、荒野行動が日本で影響 [347751896]
- 中国「私達が怒ってるのは日本の政治家に対してで、日本の観光客や日本企業はこれまで通り歓迎する。これこそが大国としての余裕」 [377482965]
- 【悲報】アメリカ軍「ジャップの自衛隊は上官の指示がないと何も出来ない無能者揃い、だから弱い」 [616817505]
- 【高市悲報】北朝鮮🇰🇵、大人しすぎるwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww [573041775]
- 高市コイン、ガチで156円突入へwwwwwwwwww [246620176]
