くだすれPython(超初心者用) その47【Ruby禁止】

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2020/03/07(土) 00:40:52.77ID:k5ibAr7h
当スレに★Python以外のプログラミング言語での回答類を書くべからず★
☆「Ruby では」「Rubyでは」をNGワード登録推奨

このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

★Pythonのソースコードはそのまま5ちゃんにコピペするとインデントが崩れるので
  ↓等のてきとうなソースコード用うpろだに貼ってきてください。
  スクショをImgur等にうp といった 手抜き(クソ行為)禁止。
ttp://ideone.com/      デフォ設定はC用のため言語選択ボタン押下がピコ手間かも。
ttp://codepad.org/      ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/     まずまずシンプル。
ttp://dpaste.com/      とてもシンプル。消えるまでの日数は十分長ーく指定のこと。
ttps://jupyter.org/try    (旧try.jupyter.org)ちょっとめんどうそう

◆エラーを解決したい場合は、表示されてるエラー全文(勝手に省略禁止)と
  実行環境(Pythonのバージョン・OS名・IDEの種類とバージョン)をシッカリ書くこと。

◇Python公式サイト◇ http://www.python.org/
◇まとめwiki◇ ttp://python.rdy.jp/

〇前スレ〇
くだすれPython(超初心者用) その46【Ruby禁止】
https://mevius.5ch.net/test/read.cgi/tech/1577948214/
2020/04/08(水) 09:30:55.98ID:qM29robv
ゲーム作るならPythonを今すぐ投げ捨ててUnityを使おう
Pythonに拘って今どれだけ苦労しようともいずれ必ず他へ移行することになるんだし、Unityなら初心者向けの本などは腐るほどある
2020/04/08(水) 09:33:01.41ID:J0JU7WJK
kivy慣れるとめっちゃ便利なんだよな
しかも覚えるとUnityやSwiftまで簡単に見えてくる
2020/04/08(水) 09:51:20.83ID:jQHFC0rR
>>474 Kivyは使ったことすら無くてインストールでつまずいてます。
>>475 調べたらUnityはゲームエンジンで言語はC#ですね。C#用の無料IDEがあるかどうか。
>>476 そうですかインストール頑張ってみようかな。簡単に越したことはないし
2020/04/08(水) 09:52:06.27ID:ZB9MMSr7
Unityはそれ自体IDEだし、個人ならVisualStudioも無料
2020/04/08(水) 09:53:16.19ID:Ph0iXt3g
GUIアプリってのもまた微妙な言葉だな。
ゲーム、ブラウザ、デスクトップアプリ、スマホアプリ
でも取り扱いが全然違うだろ。
2020/04/08(水) 10:53:59.23ID:jQHFC0rR
わかりやすい解説見つけたからやってみたらKivyインストール出来た
せっかく環境作って途中まで勉強したしPython + Kivyで作ってみます。ありがとうございました
2020/04/08(水) 11:03:39.60ID:uM85rkI7
>>480
ここまでスレ使ったんだから
その
「わかりやすい解説」とやらのページに行くための検索単語か
「h」をとったttp以降のアドレス書いてけよダボハゼ
2020/04/08(水) 11:25:39.26ID:jQHFC0rR
いやせっかくUnity教えてもらったし迷ったけどKivyの方が簡単て聞いたからだけど
結局Kivy入れるならもっとKivyのインストール調べてから聞くべきでした。失礼しました
参考にしたブログは
ttps://algorithm.joho.info/programming/python/kivy-install/
483デフォルトの名無しさん
垢版 |
2020/04/08(水) 12:46:17.42ID:lWfV0IAd
>>472
pygame
484デフォルトの名無しさん
垢版 |
2020/04/08(水) 14:37:45.00ID:eAo5BdNs
pythonとはライブラリである
実際のプログラムはjuliaで書く
pycallで呼び出せばいいのだ
2020/04/08(水) 18:51:34.73ID:91DNWNmi
これのインストールのどこが難しすぎるんや???
煽り抜きでがちで解せぬ
zip解凍してexe叩くのに比べて難しいってこと?何と比較して難しいの?え?
2020/04/08(水) 20:17:29.14ID:0wClQ2mN
質問です
100万個くらいの点があって、それぞれ名前、X座標、Y座標を持っていて、
その中で2点間の距離が、ある範囲にある点の組を抽出したいのですが、
速度が速いのは、どういう方法になりますか?

いまは全然Pythonっぽくなく、単に各点の名前、座標でリストにして、
X、Y座標のforループ2つで、距離はmathで三平方の定理…です

ただ、100万×100万÷2も回すのはさすがに辛いので、
一応時短のため、先にリストはX座標でソートしておいて、Xの小さい方から評価して、
X座標の差が、距離の範囲のmaxを超えたらbreakでXのループ抜ける…ってのだけしてます
2020/04/08(水) 20:25:25.80ID:uM85rkI7
>>486
距離をもとめる計算の部分を
numpy.linalg.norm でも使ってみたらどうだろう
2020/04/08(水) 20:41:48.88ID:ow6FXFAZ
>>486
https://ja.wikipedia.org/wiki/%E6%9C%80%E8%BF%91%E5%82%8D%E6%8E%A2%E7%B4%A2
これじゃね
2020/04/08(水) 20:47:22.64ID:Oqe9V/es
とりあえずマンハッタン距離で評価してマンハッタン距離>=ユークリッド距離は自明だからそれでフィルタする
2020/04/08(水) 23:10:17.60ID:qM29robv
空間を適当なサイズのメッシュで分割して、互いに近くにあるセルのペアに含まれる点だけで距離を計算すればいい
俺も全く同じことをやったことがあるんだが、見も蓋もないことを言えば
ぶっちゃけ手間暇かけてそういう工夫するよりCで普通に二重ループぶん回した方が結局手っ取り早くて遥かに速いよ
2020/04/08(水) 23:23:28.52ID:kz0qlGwe
>>486
一回しかやらない処理ならpythonでいいけど、毎回計算処理入るようなシステムに組み込むならコンパイル言語でやった方がいいわ。
2020/04/09(木) 00:06:17.93ID:RjAfBwbO
>>490
>互いに近くにあるセル
この判定がめんどくさそうだな
493デフォルトの名無しさん
垢版 |
2020/04/09(木) 01:10:22.16ID:fZEVtxvj
1兆回のループで何分くらい?
2020/04/09(木) 01:23:00.56ID:w8oVZoDk
>>486
理論的なことは他の人が答えているので実践的なことを一つ

モジュールscipy.spatialにKDTreeってのがあるからそれで解決
2020/04/09(木) 02:21:30.49ID:zooYQAb2
>>487-494
回答ありがとうございました!
いろいろヒント貰ったので、それぞれ試してみます

>>493
さすがに1兆回やりきったことはなくて、
>>486で、データによるけど100億のオーダーくらいには減らして、
6時間〜半日くらいかかってます(遅いノートPCだからってのもありますが)
2020/04/09(木) 02:50:53.88ID:4jvLaI/L
class Base():
__def __init__(self):
____self.a()
____self.c()

__def a(self):
____def b():
________pass
__def c(self):
____pass

self.c 内の処理でself.a内関数bを呼び出したいんですが、なんと書けばいいのでしょうか
2020/04/09(木) 03:19:05.59ID:w8oVZoDk
>>496
def a(self)の戻り値にreturn bとして関数を返す
そうするとself.a()で関数bが帰ってくるから
b2=self.a()
b2()
で呼び出せる
一行でかくならself.a()()となる
2020/04/09(木) 03:51:17.13ID:4jvLaI/L
おー。なるほど。ありがとうございます
499デフォルトの名無しさん
垢版 |
2020/04/09(木) 14:16:39.37ID:ksOzelVE
マルチスレッド・プロセスでやるとリークの温床になりそう。
Baseオブジェクトがbオブジェクトに依存するという関係が。
2020/04/09(木) 15:09:05.18ID:cpPSKMvd
マルチプロセス入れたら軽くなった
global使いまわしてるとこエラー出まくってたけどTryで解決した
2020/04/09(木) 19:52:09.26ID:XJeI50tK
座標系aで表された3次元の点群の組と
座標系bで表された3次元の点群の組があって
座標系a→bに変換する行列をsolveするライブラリはありますか
aとbはどちらも直行座標系で、回転と並行移動で変換できることは既知です
そして各座標における点の対応関係も全て既知なので、pnpみたいにsolveして欲しいイメージなのですが
2020/04/09(木) 20:06:42.40ID:ECwfuEfZ
ちなみに何をしたいかというと
座標系aでは点群は全てz軸上に乗っていてx,yは全て0なので
座標系a上で、別の2次元点群をx,yに配置して(zは等間隔に適当に配置)
a→bの変換によって座標系b上で点群に沿ってこの2次元点群を投影したい
503デフォルトの名無しさん
垢版 |
2020/04/10(金) 06:52:09.43ID:uDvGi+nW
未経験から半年でフリーエンジニアになれる人の特徴
https://www.youtube.com/watch?v=YCxu0jn52Qw
フリーランスか会社員かどっちが簡単かについての最終回答
https://www.youtube.com/watch?v=JA4JNSmIdxI
【エンジニア】正社員/派遣社員/フリーランスのメリット・デメリットについて
https://www.youtube.com/watch?v=fTG-eMpwhCg
月収1000万円オンラインサロンオーナーの日常【飲み過ぎ】
https://www.youtube.com/watch?v=lPfWZLatYus&;t=107s
借金400万円から人生逆転するまでの軌跡
https://www.youtube.com/watch?v=fXdHlFFUjGY
エンジニアはお金を追求してはいけないという年寄りを論破してみた
https://www.youtube.com/watch?v=qJHCmxFv718
プログラミングスクールを否定する老害どもについて
https://www.youtube.com/watch?v=K2SN-Rr0PgY&;t=506s
新人叩きしてる古参勢がすぐ儲からなくなる理由
https://www.youtube.com/watch?v=Ch9Ir8O-iqU&;t=332s
2020/04/10(金) 08:38:15.46ID:Ntz3fYqx
>>503
グロ
505デフォルトの名無しさん
垢版 |
2020/04/10(金) 10:12:41.92ID:nz1tlAhX
>501
>回転と並行移動で変換できることは既知

そこまで判ってるなら逆行列で終わり
506デフォルトの名無しさん
垢版 |
2020/04/10(金) 10:14:56.72ID:nz1tlAhX
>>502
それって逆行列が無いパターンかもな
507デフォルトの名無しさん
垢版 |
2020/04/10(金) 12:43:45.01ID:pRfpIztr
>>501
https://www.slideshare.net/mobile/ttamaki/20090924
508デフォルトの名無しさん
垢版 |
2020/04/10(金) 15:18:45.94ID:K9RJlzNI
Pythonはどうして同じ命令を他の言語と比較して簡素に記述できるのですか?
2020/04/10(金) 15:23:55.26ID:q35/zNl6
>>508
他の言語の何を知ってるの?
2020/04/10(金) 15:24:36.26ID:8EAe0xMT
>>508
簡素なことを書いたら
いっぱいある暗黙の作業な部分はPythonアプリ側が勝手にやってくれてるから
2020/04/10(金) 16:40:58.94ID:k/YdHOe5
中カッコを書かないとか
型宣言をしないとか
文の終わりに記号がないとか

そのへん?
2020/04/10(金) 17:31:54.04ID:ii3qWZRf
デジャブな質問…
何処かに書いてあったん?
2020/04/10(金) 17:36:58.64ID:8EAe0xMT
>>512
デジャヴなんだ
じゃあ大学か専門あたりの追試に出てるんジャネーノ
2020/04/10(金) 18:00:16.30ID:tJvmHEKv
>>508
前にも言ったが言語(環境)の中に
より詳細な命令が書いてあるから
ただしその分実行速度が遅くなるが
2020/04/10(金) 18:09:58.00ID:EbTu80yE
型無し言語だからに尽きるんじゃないの?
ライブラリの充実具合ならjavaやc#に及ばないし
2020/04/10(金) 18:11:28.09ID:mRiiX+60
この質問別のスレでも見たな

>>508
・比較しているのは具体的にどの言語か
・具体的にどのようなコードか
この二点を明確にしてくれ
2020/04/10(金) 19:06:58.23ID:K9RJlzNI
>>514
どうして遅くなるのにPythonはそのような仕組みを採用したのですか?
2020/04/10(金) 19:47:29.72ID:8EAe0xMT
はやさがすべてじゃないから。おk? >>517
519デフォルトの名無しさん
垢版 |
2020/04/10(金) 20:30:24.36ID:GziE5Jrh
from XYZ import XY as Z でパッケージを読み込み自作クラスA内でz=Z()とインスタンスを作成しています
このインスタンスzがエラー吐いたとき、exceptになんと書けば捕捉できるのかおしえてください
エラー内容は
raise RegexMatchError(caller="get_config", pattern="config_patterns")
XYZ.exceptions.RegexMatchError: get_config: could not find match for config_patterns
です
z.exceptions.RegexMatchError や z.RegexMatchError ではno attributeと言われてしまいました
2020/04/10(金) 20:31:33.57ID:tJvmHEKv
>>517
人間が読み書きする速度が早くなるからだよ
実行速度より開発速度を取るのが動的型言語
521デフォルトの名無しさん
垢版 |
2020/04/10(金) 20:35:16.10ID:K9RJlzNI
なるほど…

遅い遅いって具体的に何が遅いんですか?
2020/04/10(金) 20:39:22.03ID:8EAe0xMT
>>519
caller="get_config"
たとえば↑これだと、callerにはただの文字列「get_config」が渡ってるんだけど
それでいいのか?

もっと上の方で変数名get_configとかに何かリストなり文字列なりをあててて、
それを引数として渡したいのなら書き方違うぞ。

あと
raise RegexMatchErrorで検索するとpytubeなるものしかHitしない件。
そして
それんなかのpatternには
通常たぶんre.pattern(なんや正規表現な指示)で
コンパイル済みの文字列が入っている件。
2020/04/10(金) 20:39:49.92ID:8EAe0xMT
>>521
 520のレスを おうちのひとに よんで もらってね!
524デフォルトの名無しさん
垢版 |
2020/04/10(金) 21:03:10.70ID:GziE5Jrh
>>522
AtomのRunnerのコピペだと上記のような感じ
e.type すると class `XYZ.exceptions.RegexMatchError`>
e.aegs すると `get_config:could not find match for config_patterns`
です。インスタンスはz=Z(文字列)で、例外処理を書きたくてわざとアンマッチな文字列投げてるんですが
どうキャッチしたらいいのかわからないのです
525デフォルトの名無しさん
垢版 |
2020/04/10(金) 21:04:53.89ID:GziE5Jrh
おっと
except Exception as e : str(type(e))とstr(e.args)ですね
2020/04/10(金) 21:41:23.04ID:L7OYJgcU
>>519
RegexMatchErrorを定義してるpytube.exceptionsモジュールをimportしてればexcept RegexMatchError:
import pytubeしてれば except pytube.exceptions.RegexMatchError:
527デフォルトの名無しさん
垢版 |
2020/04/10(金) 21:58:12.08ID:GziE5Jrh
あーなるほど
どうもありがとうございました
528デフォルトの名無しさん
垢版 |
2020/04/11(土) 09:01:41.18ID:baIYUoyt
メインクラスがあって、メンバとして別クラス(仮にA)のインスタンスを持っているとき、
Aの中のメソッドからメインクラスのメンバやメソッドにアクセスするにはどうすれば良いですか。
529デフォルトの名無しさん
垢版 |
2020/04/11(土) 09:52:19.98ID:rpboyRp0
え、普通に
メインクラスのself.クラスAのインスタンス.メンバ
でアクセスできないですか?
2020/04/11(土) 10:05:21.63ID:3U1NgBPQ
おいーす 俺Python初心者
Pythonはインデントが必須らしいけどコピペするときとか困るんじゃないの?あとめんどくさくない?
この言語ってええの?
2020/04/11(土) 10:22:13.93ID:NNgfTpfC
>>528
Aのコンストラクタにメインクラスのインスタンス渡してA側でメインクラスのインスタンス保持させておいてそれ経由でアクセスする
532528
垢版 |
2020/04/11(土) 11:40:33.99ID:baIYUoyt
>>529
有難うございます。
メインクラスからAのインスタンスのメンバにアクセスしたいのではなく、
Aのメソッド中からメインクラス(のインスタンス)を参照したいのです。

もうすこし具体的にやりたいことは、メインクラスでウィンドウやUI処理させて、
Aクラスは裏で通信やデータ処理をして、結果をUIに返すみたいなことです。
データ処理の結果を、メインのUIでメッセージボックスやログウィンドウに出力するのに、
メインクラスのメソッドを呼ぶにはどういうクラス構成にしたら良いのかなという疑問でした。

>>531
やっぱりどこかでメインクラスのインスタンスへの参照を渡さなきゃいけないのですね。
ありがとうございました。
2020/04/11(土) 11:45:50.10ID:JNm0Zh/X
普通にreturnで返すだけじゃないの?
2020/04/11(土) 12:51:21.82ID:l/viBljq
>>530
初心者以前じゃね?
こまんないよ めんどくさいかどうかは、入力補助アプリ使うかどうかとかによる
いいかどうかは目的次第だが、流行ではある。
2020/04/11(土) 15:17:05.23ID:Rx07X+Iy
>>530
コピペミスなら見た目で判断できるから問題ない
きれいに書くクセがついてない人を矯正する言語と考えれば初心者向けではある
2020/04/11(土) 15:20:15.87ID:3U1NgBPQ
>>535
いちいち目視でチェックすんのか?
数百行に及んでたらどうすんだ?
2020/04/11(土) 16:09:21.34ID:Rx07X+Iy
>>536
直せばいいと思う
あなたはプログラミング上のミスをどうやって修正してる?
数百行書いてる時点でその他のミスもでてるはずだけど、それと同じように直せるはずだよ
2020/04/11(土) 16:13:04.01ID:uEe4bYzD
数百行に及ぶインデントエラーの出るコードなんて捨てちゃえ。
2020/04/11(土) 16:19:28.66ID:l/viBljq
>>536
かの秀丸エディタ様には
範囲選択して右クリック→インデントを増やす・減らす機能があるぞよ。
2020/04/11(土) 16:25:22.73ID:iixeWlwQ
で、でた秀丸おじさん
2020/04/11(土) 16:38:34.48ID:Ni1vKiQd
>>536
Pythonはコピペに対して脆弱なのは間違いない
そこは諦めて使うかミスが発生しそうなコピペはやめるか
対象範囲のみdiffとったりしてリスクを許容範囲まで下げる

>>537
「目視でチェックするのか?」って聞かれて
「直せばいいと思う」ってなんやねんw

>>538
エラーが発生するケースはまだマシ
2020/04/11(土) 16:41:33.76ID:l/viBljq
そもそも
インデントエラーがスーパー出まくるような
くそ長いorむやみに深いネストを作るな。
538が言う通りである。
2020/04/11(土) 16:42:42.64ID:U79xAJ2e
こいつらpycharmもしらんのか?
使ってたらインドンテがずれるとか一発でわかるんだけど
2020/04/11(土) 16:45:28.05ID:l/viBljq
インドアンタエウス
2020/04/11(土) 16:47:27.48ID:A6YNnT52
インデントを右に
546デフォルトの名無しさん
垢版 |
2020/04/11(土) 17:16:36.96ID:3U1NgBPQ
>>542
出まくるとかじゃなくて一ヵ所でもあったら動作しないだろうに
2020/04/11(土) 17:32:32.18ID:YKvanYCA
>>541
エラーに行数出るんだから簡単に直せるじゃん
数百行はどうすんの? なんて言ってる奴はインデント以外のミスはどうすんだよ?って話
2020/04/11(土) 17:38:48.46ID:4HmUYAnX
どうすんの?って書いてる奴は別に今困ってるわけじゃないんだよな?

将来の杞憂をここに書かれてもな
嫌ならpythonやめて他の言語覚えてもいいんだよ?
2020/04/11(土) 18:49:20.39ID:Ni1vKiQd
>コピペミスなら見た目で判断できる
どうやって見た目で判断するの?

>直せばいいと思う
は?

>エラーに行数出るんだから簡単に直せる

見た目で判断できるから問題ないというのは
エラーで行番号がわかるから修正可能って意味だったのかー
エラーになってくれるといいね
2020/04/11(土) 19:00:25.49ID:M1rolH0E
すみません>>530ですが、メモ帳でしかプログラミングしたことないですのでツールの話はやめてください

pythonはやめてScalaにします
2020/04/11(土) 19:56:14.28ID:TRGikFff
ヲタはすぐにツールとかでマウント取りたがる
別に自分で開発したわけでもないくせに
ツールに頼るとコードを書く能力が落ちるぞ
2020/04/11(土) 20:35:26.00ID:EYzLsLX6
包丁使うと手で肉を裂く能力が落ちるぞレベル
2020/04/11(土) 20:49:46.83ID:6g5H7RR3
PythonよりScalaの方が難しいし
メモ帳しか使えないのに
使いこなせるとはとても思えない
2020/04/11(土) 21:24:54.89ID:X6fzJZPO
普通に釣りだろ
2020/04/11(土) 21:29:13.21ID:uEe4bYzD
まぁ包丁が無いと為す術無く餓死するようでは困る。
2020/04/11(土) 21:48:03.64ID:zpjGHkVa
むしろツールを使いまくってコードをできるだけ書かないのが最近のトレンドだろ

目的がコードを書くことになっちゃあかんぞ
と、コードを書くことが好きな人が多い板で言ってみる
2020/04/11(土) 21:57:47.27ID:KrvrVmHy
Software Design 2月号の、Python 特集に、

VSCode で、Microsoft 製のPythonの拡張機能を入れて、
Python.jp の手順通りに、venv で仮想環境を構築すると書いてある

Windows 10, WSL, Ubuntu 18.04 なら、最初からPythonが入っている。
VSCodeの拡張機能・Remote WSL で、Linux にアクセスできる

file `which python`
/usr/bin/python: symbolic link to python2.7

file `which python2`
/usr/bin/python2: symbolic link to python2.7

file `which python3`
/usr/bin/python3: symbolic link to python3.6
2020/04/11(土) 22:05:56.66ID:TRGikFff
>>556
うまく表現できないが、補完機能を使って書いたコードには魂が入っていないから
書いた本人もコードの内容を三日で忘れてメンテできなくなると思うんだ
2020/04/11(土) 22:43:08.54ID:l/viBljq
補完機能を使ったらコード内にコメント書かないとか
あふぉといったらあふぉに失礼なレベルだぞwww
560デフォルトの名無しさん
垢版 |
2020/04/12(日) 01:15:25.34ID:kO9eoW6/
software design ってネラーの暇人が小遣い稼ぎに記事描いてるイメージ
2020/04/12(日) 02:29:22.38ID:VRY0Up0I
コロナで暇だからって超初心者スレで釣りしないでください!最低ですよ!
562デフォルトの名無しさん
垢版 |
2020/04/12(日) 03:19:11.42ID:olxRYtrQ
a = 1
"a" + str(a)
型無しスクリプト言語なのに変換必要な意味ってある?
ここらへんの思想どっかに載ってないかな
563デフォルトの名無しさん
垢版 |
2020/04/12(日) 03:42:46.67ID:43im3Bh2
お前はPHPやってろ
2020/04/12(日) 04:03:04.07ID:G3JTGpGI
>>562
Rubyも暗黙の型変換は(標準で)しない
なお型が無いのではなくて動的型付け言語だ

それでなぜ自動で型変換しないかといえば
バグの原因になりやすいから

個人的にもしなくていいと思ってる
ほんのちょっとの型変換を省く手間より
デバッグの労力が大変になる方が大きいから
2020/04/12(日) 04:13:48.20ID:VRY0Up0I
型がないというより、型がなんなのかを考えてくれる機能が付いている
その機能がカバーしてない部分は型を宣言しないといけない
2020/04/12(日) 07:02:05.23ID:zi/Lsyjr
ぶっちゃけ現場によってはセキュリティによって
ツールのインストールがくっそ面倒な所があるから、何となく気持ちは分かる

例えば秀丸のみ使用可の所とVSCode+使用可プラグイン(特にflake8とBlack)が使える所で
同じPythonプログラムの開発やらせたら絶対に印象が変わる
2020/04/12(日) 07:30:21.20ID:BFOK/rG/
Python使う現場でVSCodeが許されないとか聞いたことない
2020/04/12(日) 07:58:43.10ID:vas415pk
お前の経験値が低いだけ
2020/04/12(日) 08:37:15.37ID:MlWnOvRE
いやだいぶ異常な現場だぞそれ。金融系か?
2020/04/12(日) 09:08:28.32ID:/o40R5E3
ある無しと異常かどうかは別の話
混同する人はプログラマーに向いてない
2020/04/12(日) 09:10:24.42ID:PJaq7P3r
いわゆる「人権が確保されてない」スペックしかない
クソなPCしか置いてない現場も世の中にはごまんとあるんですよ!
572デフォルトの名無しさん
垢版 |
2020/04/12(日) 09:11:07.89ID:/AJWevTM
秀丸が好きでそればっか使うとかならわかるけど、それしかダメな理由がわからん
2020/04/12(日) 09:15:27.53ID:adFA+Z6u
>>562
数値の加算と文字列連結は全く意味の異なる演算であり、それらを同一のものとして扱いたい場面は現実にはほぼ全く無い
関数の引数に渡した値の型によって関数中の+が数値加算になったり文字列連結になったりすると、おそらくどちらか一方の挙動はバグでしかない
だから、文字列となるケースを限定ことでバグの可能性を(完全ではないが)抑えている
Rubyも同じだが、静的型付けでないからこそ型による制約を強める必要がある代表的な例だ
一方で例えばJavaやC#では数値+文字列は暗黙的に文字列連結になるが、これは静的型付けならどっちの挙動になるかは文脈から間違いなく明らかだから問題ないんだよ
2020/04/12(日) 09:26:25.63ID:udLM5MxC
Javaでも暗黙の型変換はゴミですけど?

https://note.com/ryohji/n/n1b5ab7dcd9c1
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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