当スレに★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(超初心者用) その44【Ruby禁止】
http://mevius.5ch.net/test/read.cgi/tech/1563969768/
探検
くだすれPython(超初心者用) その45【Ruby禁止】
■ このスレッドは過去ログ倉庫に格納されています
2019/10/16(水) 10:17:12.96ID:dCHq3Ix4
337デフォルトの名無しさん
2019/11/27(水) 17:52:41.97ID:b0aYXQt/338デフォルトの名無しさん
2019/11/27(水) 19:02:19.69ID:ymKEnJ4Y >>336の意味であってる
「黙って通過させてはならない」的な意味
「エラーを黙って渡してはならない」は完全な誤訳
Errors should never be passed silentlyや
You should never pass errors silentlyじゃないと
エラーを渡すという意味にはならない
「黙って通過させてはならない」的な意味
「エラーを黙って渡してはならない」は完全な誤訳
Errors should never be passed silentlyや
You should never pass errors silentlyじゃないと
エラーを渡すという意味にはならない
339デフォルトの名無しさん
2019/11/27(水) 20:33:56.00ID:hknmBY+P 例外の握りつぶしとかだろ。
例外をキャッチしたけど、何もせずに、そのまま処理を継続したとか
Jupyter Notebook(JN)は、Python, Julia, Ruby などで使うIDE だろ。
VSCode みたいなもの
Bash, PowerShell などのシェル経由でも、
シングル/ダブルクォーテーションで、エスケープのタイミングが違ってくる。
Linux/Windows で書き方が異なる
シェルに渡すときに、既にエスケープされているか、されていないのか
エスケープ文字を、エディタで設定できるかも知れない
例外をキャッチしたけど、何もせずに、そのまま処理を継続したとか
Jupyter Notebook(JN)は、Python, Julia, Ruby などで使うIDE だろ。
VSCode みたいなもの
Bash, PowerShell などのシェル経由でも、
シングル/ダブルクォーテーションで、エスケープのタイミングが違ってくる。
Linux/Windows で書き方が異なる
シェルに渡すときに、既にエスケープされているか、されていないのか
エスケープ文字を、エディタで設定できるかも知れない
340デフォルトの名無しさん
2019/11/27(水) 20:43:49.33ID:R3eAH8fN341デフォルトの名無しさん
2019/11/27(水) 21:37:06.71ID:OMjrfaFS pygameは商用利用できますか?
342デフォルトの名無しさん
2019/11/27(水) 21:48:56.24ID:gPxE2uPM >>340
どんなに小さな確率でも、と言いたいのかもしれないけど巨大な下図になってるぞw
どんなに小さな確率でも、と言いたいのかもしれないけど巨大な下図になってるぞw
343デフォルトの名無しさん
2019/11/27(水) 21:49:28.61ID:gPxE2uPM >>342
数だった。人のことは言えないな。
数だった。人のことは言えないな。
344デフォルトの名無しさん
2019/11/27(水) 22:17:55.37ID:ap410XA+ >>340
passがダメだとして何なら良いわけ?
passがダメだとして何なら良いわけ?
345デフォルトの名無しさん
2019/11/27(水) 22:18:57.75ID:vYtjQlD0 >>341
可能だが、pyinstallerのような方法で事実上の静的リンクを行った場合には
LGPLに従ってpygameが含まれている実行ファイル全体の再配布を許可せねばならない
つまり俺が買ったらそれを10円で再販してやる
可能だが、pyinstallerのような方法で事実上の静的リンクを行った場合には
LGPLに従ってpygameが含まれている実行ファイル全体の再配布を許可せねばならない
つまり俺が買ったらそれを10円で再販してやる
346デフォルトの名無しさん
2019/11/27(水) 22:20:16.38ID:1UHKBbgP >>344
passを書くくらいならエラー処理せずに普通にエラー発生させた方がマシ
passを書くくらいならエラー処理せずに普通にエラー発生させた方がマシ
347デフォルトの名無しさん
2019/11/27(水) 22:27:15.42ID:vYtjQlD0 >>341
補足
あと、リンクの方法に関わらず、そのソフトウェアを買った俺はそれをリバースエンジニアリングし、改造できる
俺のスキルをもってすればライセンス認証の回避は容易であり、お前はそれを禁止できない
補足
あと、リンクの方法に関わらず、そのソフトウェアを買った俺はそれをリバースエンジニアリングし、改造できる
俺のスキルをもってすればライセンス認証の回避は容易であり、お前はそれを禁止できない
348347
2019/11/27(水) 22:31:35.68ID:vYtjQlD0 すまん、俺が金払って買ったなら認証を回避する意味はなかったな
問題は、ダウンロードは無料だが継続して利用するにはライセンス認証が必要になるというような典型的な配布パターンだ
この場合、俺は金を払わずに改造してライセンス認証を突破し、タダでそれを使う
そしてその方法をWebで公開する
お前はそれを禁止できない
なぜならLGPLライブラリを使用しているからだ
問題は、ダウンロードは無料だが継続して利用するにはライセンス認証が必要になるというような典型的な配布パターンだ
この場合、俺は金を払わずに改造してライセンス認証を突破し、タダでそれを使う
そしてその方法をWebで公開する
お前はそれを禁止できない
なぜならLGPLライブラリを使用しているからだ
349デフォルトの名無しさん
2019/11/27(水) 22:42:28.92ID:ap410XA+350デフォルトの名無しさん
2019/11/27(水) 22:48:46.79ID:R3eAH8fN351デフォルトの名無しさん
2019/11/27(水) 22:57:52.16ID:ap410XA+ >>350
例外の種類ごとに異なる対処が必要なら分岐するがそうでないならその限りではない。
何か対処すべきことがあればそれを記述するが他にすることがなければpassでよい。
おまえさんは何か変な教条主義に囚われているんではないかね?
例外の種類ごとに異なる対処が必要なら分岐するがそうでないならその限りではない。
何か対処すべきことがあればそれを記述するが他にすることがなければpassでよい。
おまえさんは何か変な教条主義に囚われているんではないかね?
352デフォルトの名無しさん
2019/11/27(水) 23:06:11.22ID:vYtjQlD0 >>350
悪いけど、最初から個別の例外について虱潰しに対応しようとするのは典型的なアンチパターンだよ
あまりにも手間がかかりすぎるし、変更に対して非常に弱いコードになる。
例外処理で死守すべき大原則は、アプリを落とさないこと、綺麗に回復すること、の2点だけだ。
その上で、必要に応じて丁寧な個別対応をしてもよい。
まずアプリを落とさないことだが、WebのリクエストハンドラであったりUIのイベントハンドラであったりバッチ処理の一番大本のループであったり、
「ここまで戻れば確実に回復できる」という箇所で全ての例外をキャッチし、リトライやエラーメッセージの表示等を行って回復する。
次に綺麗に回復すること、これは、適切にwithやfinally等を使用して例外発生時に適切な後片付けを行うことだ。
この2点が守れていれば例外処理は完璧だが、場合によっては個別対応することで早期に回復できたり、より適切なエラーメッセージをユーザーに表示できたりするケースがある。
しかしそれはあくまでオプションにすぎない。
悪いけど、最初から個別の例外について虱潰しに対応しようとするのは典型的なアンチパターンだよ
あまりにも手間がかかりすぎるし、変更に対して非常に弱いコードになる。
例外処理で死守すべき大原則は、アプリを落とさないこと、綺麗に回復すること、の2点だけだ。
その上で、必要に応じて丁寧な個別対応をしてもよい。
まずアプリを落とさないことだが、WebのリクエストハンドラであったりUIのイベントハンドラであったりバッチ処理の一番大本のループであったり、
「ここまで戻れば確実に回復できる」という箇所で全ての例外をキャッチし、リトライやエラーメッセージの表示等を行って回復する。
次に綺麗に回復すること、これは、適切にwithやfinally等を使用して例外発生時に適切な後片付けを行うことだ。
この2点が守れていれば例外処理は完璧だが、場合によっては個別対応することで早期に回復できたり、より適切なエラーメッセージをユーザーに表示できたりするケースがある。
しかしそれはあくまでオプションにすぎない。
353デフォルトの名無しさん
2019/11/27(水) 23:22:24.86ID:ymKEnJ4Y354デフォルトの名無しさん
2019/11/27(水) 23:28:50.58ID:hknmBY+P Ruby on Rails で、RSpec で、TDD から学びなおせw
355デフォルトの名無しさん
2019/11/27(水) 23:31:50.95ID:vYtjQlD0 >>353
単に無視することが適切な回復なのであればそれで正しいよ
大抵はそうではないが、だからといって例外が発生した瞬間に直上でキャッチしたところで対処のしようがないケースがほとんど
ほとんどの例外は単純にキャッチせずにスルーし、上の方で纏めてキャッチしてエラーを表示したりすることになる
単に無視することが適切な回復なのであればそれで正しいよ
大抵はそうではないが、だからといって例外が発生した瞬間に直上でキャッチしたところで対処のしようがないケースがほとんど
ほとんどの例外は単純にキャッチせずにスルーし、上の方で纏めてキャッチしてエラーを表示したりすることになる
356デフォルトの名無しさん
2019/11/27(水) 23:36:46.74ID:OMjrfaFS >>348
ありがとうございます。ようするにpygameを使った作品は著作権を放棄しろってことなんですね。。。
ありがとうございます。ようするにpygameを使った作品は著作権を放棄しろってことなんですね。。。
357デフォルトの名無しさん
2019/11/27(水) 23:58:21.75ID:ymKEnJ4Y358デフォルトの名無しさん
2019/11/28(木) 00:12:16.59ID:H2QhOzf/ >>356
細かいツッコミすると、国内で放棄できるのは著作請求権だけ
細かいツッコミすると、国内で放棄できるのは著作請求権だけ
359デフォルトの名無しさん
2019/11/28(木) 01:29:21.32ID:BjRR3Cis >>358
ありがとうございます!!
ありがとうございます!!
360デフォルトの名無しさん
2019/11/28(木) 03:06:02.69ID:1K1GwsjB 著作権を放棄しているわけではない
自分の著作権の下で自らの著作物をLGPLの派生物として配布しているんだ
自分の著作物をどんなライセンスで配布しようが本来は勝手だが、利用しているライブラリが他人の著作物である以上、
そのライブラリの著作権を同梱した派生物を配布するためにはそのライブラリの著作権者が定めるライセンスに従わねばならない
そして、そのライセンスが派生物のライセンスを制約するようなものであった場合は結果的に自分の著作物にライセンスが感染する形になるわけだ
自分の著作権の下で自らの著作物をLGPLの派生物として配布しているんだ
自分の著作物をどんなライセンスで配布しようが本来は勝手だが、利用しているライブラリが他人の著作物である以上、
そのライブラリの著作権を同梱した派生物を配布するためにはそのライブラリの著作権者が定めるライセンスに従わねばならない
そして、そのライセンスが派生物のライセンスを制約するようなものであった場合は結果的に自分の著作物にライセンスが感染する形になるわけだ
361デフォルトの名無しさん
2019/11/28(木) 05:28:36.70ID:BjRR3Cis362デフォルトの名無しさん
2019/11/28(木) 07:46:57.30ID:LEtsBWW2 俺が不勉強なだけかもしれないが
try:〜except:passでエラーを握りつぶしておいて
直上でエラー処理するってどういうことだ?
普通にエラーをそのままにしといたら呼び出し元にエラーが届いて
そこで処理したらいいだけの話だろ 一番下の階層でpassして握り潰す必要はない
try:〜except:passでエラーを握りつぶしておいて
直上でエラー処理するってどういうことだ?
普通にエラーをそのままにしといたら呼び出し元にエラーが届いて
そこで処理したらいいだけの話だろ 一番下の階層でpassして握り潰す必要はない
363デフォルトの名無しさん
2019/11/28(木) 08:33:14.83ID:VOkh5kHm364デフォルトの名無しさん
2019/11/28(木) 08:38:48.41ID:b0jGiHif 異常系をわざわざ戻り値で表現し直すんじゃないの?w
そんなことするより、リスローの方が絶対にいいわな。
そんなことするより、リスローの方が絶対にいいわな。
365デフォルトの名無しさん
2019/11/28(木) 14:36:06.70ID:B2pLXdx8 >>353
やってるけど
やってるけど
366デフォルトの名無しさん
2019/11/28(木) 14:59:01.40ID:p/uKw1d3 pyautoguiっての普通に使ってる時は問題ないんだけど
リモートデスクトップで1度開いちゃうと画面閉じた時に
pyautoguiの中のsetcursorposってのでエラー出るんだけどどうにかならない?
リモートデスクトップで1度開いちゃうと画面閉じた時に
pyautoguiの中のsetcursorposってのでエラー出るんだけどどうにかならない?
367デフォルトの名無しさん
2019/11/28(木) 16:12:48.01ID:rcIus152 大企業で無料で商用利用できるIDEでオススメありませんか?
個人ではVScode使ってますがエンタープライズ企業は無償利用無理みたいです
個人ではVScode使ってますがエンタープライズ企業は無償利用無理みたいです
368デフォルトの名無しさん
2019/11/28(木) 16:26:05.13ID:sRkzUhKD 生産性を無視する企業に未来はない
369デフォルトの名無しさん
2019/11/28(木) 16:48:19.24ID:f9JN6uOx370デフォルトの名無しさん
2019/11/28(木) 17:08:37.95ID:VOkh5kHm >>367
VSCodeはエンタープライズでも無償だぞ
VSCodeはエンタープライズでも無償だぞ
371デフォルトの名無しさん
2019/11/28(木) 17:24:36.37ID:i2j7bL3h どうせVSと近藤してるんだろ
372デフォルトの名無しさん
2019/11/28(木) 21:56:29.31ID:qnF6NUyh >>357
堅牢なソフトウェアを構築する方法論として、何かエラーがあったらその処理単位ごと
無かったことにするというものがある。DBのトランザクションとかerlangのlet it crashとかな。
そういう方法論ではエラーの種類など見ない。
そこでは逆に、知ってるエラーだけcatchして他はスルーするという手法こそ否定される。
なぜなら、下層のルーチンが「知らない」とスルーしたエラーなら上層のルーチンは
「もっと知らない」はずだからな。
堅牢なソフトウェアを構築する方法論として、何かエラーがあったらその処理単位ごと
無かったことにするというものがある。DBのトランザクションとかerlangのlet it crashとかな。
そういう方法論ではエラーの種類など見ない。
そこでは逆に、知ってるエラーだけcatchして他はスルーするという手法こそ否定される。
なぜなら、下層のルーチンが「知らない」とスルーしたエラーなら上層のルーチンは
「もっと知らない」はずだからな。
373デフォルトの名無しさん
2019/11/28(木) 22:06:08.08ID:4XtsM+GQ せやろか?
374デフォルトの名無しさん
2019/11/28(木) 23:49:35.94ID:3SZL29g0 >>372
ものすっごい中途半端な知識で知ったかしようとする前に基礎を抑えようね
DBのトランザクション処理を実行しました
なんかエラー発生しました
エラーの種類など見ないっ(キリッ)
軽量プロセスにsend messageしました
なんかプロセス落ちました
リスタートあるのみ(キリッ)
>なぜなら、下層のルーチンが「知らない」とスルーしたエラーなら上層のルーチンは
>「もっと知らない」はずだからな。
何を知らないのか考えようね
ものすっごい中途半端な知識で知ったかしようとする前に基礎を抑えようね
DBのトランザクション処理を実行しました
なんかエラー発生しました
エラーの種類など見ないっ(キリッ)
軽量プロセスにsend messageしました
なんかプロセス落ちました
リスタートあるのみ(キリッ)
>なぜなら、下層のルーチンが「知らない」とスルーしたエラーなら上層のルーチンは
>「もっと知らない」はずだからな。
何を知らないのか考えようね
375デフォルトの名無しさん
2019/11/29(金) 00:49:58.07ID:8hJB6N01 >>372のやり方だと「止まらない」プログラムは作ることはできても
「使える」プログラムは作れそうにないなw
「使える」プログラムは作れそうにないなw
376デフォルトの名無しさん
2019/11/29(金) 01:26:05.58ID:pmSmtC6r 例外原理主義か…
377デフォルトの名無しさん
2019/11/29(金) 09:16:06.14ID:B0LTR+GE スターリン風エラー処理
378デフォルトの名無しさん
2019/11/29(金) 09:24:58.26ID:TmZsQyhe pyautoguiのsetcursorposエラーはtry:〜except:passで無事解決しました!
379デフォルトの名無しさん
2019/11/29(金) 09:28:46.75ID:wYCEjZQR380デフォルトの名無しさん
2019/11/29(金) 10:27:27.39ID:N/f9f1S7 >>349
漏れもpassは禁止で正しく処理するべきだと考えるが
どうしてもスルーしてプログラムを続行したい場合は
1.フラグを立ててプログラム終了時に報告
2.loggerでsyslogに出力
3.上の1と2の合わせ技
漏れもpassは禁止で正しく処理するべきだと考えるが
どうしてもスルーしてプログラムを続行したい場合は
1.フラグを立ててプログラム終了時に報告
2.loggerでsyslogに出力
3.上の1と2の合わせ技
381デフォルトの名無しさん
2019/11/29(金) 10:30:54.20ID:N/f9f1S7382デフォルトの名無しさん
2019/11/29(金) 12:06:18.51ID:dGU1sZlL pyautoguiでとりあえずブラウザ内の手作業のの自動化できたから、seleniumにも手を出してみたけどこっちは難しいね
HTMLが分かってないとキツイな(´・ω・`)
HTMLが分かってないとキツイな(´・ω・`)
383デフォルトの名無しさん
2019/11/29(金) 17:46:37.36ID:po6NZMwT python勉強しようと思うんだけどエディタはjupyterがデフォなの?
visual studioになれてるからvs使いたいんだけどまずいのかな。
visual studioになれてるからvs使いたいんだけどまずいのかな。
384デフォルトの名無しさん
2019/11/29(金) 17:47:25.58ID:lBRwa/7I ok
385デフォルトの名無しさん
2019/11/29(金) 17:51:35.27ID:VBGSEbtt386デフォルトの名無しさん
2019/11/29(金) 19:37:04.50ID:LMfDTWZ+387デフォルトの名無しさん
2019/11/29(金) 19:41:46.20ID:VBGSEbtt >>386
横レスだけど参考になった
横レスだけど参考になった
388デフォルトの名無しさん
2019/11/29(金) 19:56:54.52ID:SQehs03a >>380
>漏れもpassは禁止で正しく処理するべきだと考えるが
passは正しい処理ではないと言っているようだが、そう断言できる根拠はないだろ。
ログを吐けばオーケーというのも意味わからん。プログラムの正しさとは何の関係もないだろうに。
>漏れもpassは禁止で正しく処理するべきだと考えるが
passは正しい処理ではないと言っているようだが、そう断言できる根拠はないだろ。
ログを吐けばオーケーというのも意味わからん。プログラムの正しさとは何の関係もないだろうに。
389デフォルトの名無しさん
2019/11/29(金) 20:05:59.92ID:8hJB6N01 保守性が落ちるコードは正しいコードとはいえないだろ
例外処理でpassするくらいならそもそも例外が出ないようにすべきだし
自分で例外処理が書けないなら例外をそのまま発生させて別の誰かか未来の自分が対処できるようにすべき
自分ひとりで全部完結するプログラミングなら
他人から見てエラーを脳死で握りつぶしているのか
面倒臭くてpassしてるのか分からない変なコード書くのもありかもしれないけどな
ぶっちゃけ「正しいコード」が書きたいならpythonじゃなく証明型プログラミング使えばいいだけだしな
例外処理でpassするくらいならそもそも例外が出ないようにすべきだし
自分で例外処理が書けないなら例外をそのまま発生させて別の誰かか未来の自分が対処できるようにすべき
自分ひとりで全部完結するプログラミングなら
他人から見てエラーを脳死で握りつぶしているのか
面倒臭くてpassしてるのか分からない変なコード書くのもありかもしれないけどな
ぶっちゃけ「正しいコード」が書きたいならpythonじゃなく証明型プログラミング使えばいいだけだしな
390デフォルトの名無しさん
2019/11/29(金) 20:10:38.20ID:5FLVJ8iu 正しい処理どうこうの前に
passは文字通り何もしてないんだから処理したとは言わないだろ
passは文字通り何もしてないんだから処理したとは言わないだろ
391デフォルトの名無しさん
2019/11/29(金) 20:18:27.56ID:VBGSEbtt >>389
> 例外処理でpassするくらいならそもそも例外が出ないようにすべきだし
> 自分で例外処理が書けないなら例外をそのまま発生させて別の誰かか未来の自分が対処できるようにすべき
>
> 自分ひとりで全部完結するプログラミングなら
> 他人から見てエラーを脳死で握りつぶしているのか
> 面倒臭くてpassしてるのか分からない変なコード書くのもありかもしれないけど
↑イイ!!(・∀・)こと書いてある!!!
> 例外処理でpassするくらいならそもそも例外が出ないようにすべきだし
> 自分で例外処理が書けないなら例外をそのまま発生させて別の誰かか未来の自分が対処できるようにすべき
>
> 自分ひとりで全部完結するプログラミングなら
> 他人から見てエラーを脳死で握りつぶしているのか
> 面倒臭くてpassしてるのか分からない変なコード書くのもありかもしれないけど
↑イイ!!(・∀・)こと書いてある!!!
392デフォルトの名無しさん
2019/11/29(金) 21:32:51.55ID:SQehs03a >>389
>例外処理でpassするくらいならそもそも例外が出ないようにすべきだし
なんか言っていることが矛盾してるね。自分ひとりで全部のコードを書いているわけじゃなけりゃ
下層のルーチンから例外が出ないようにするなんてことが常にできるわけがないだろう。
自分で保証できるのは上流の呼び出し元にどういう例外を渡すか(渡さないか)だけ。
>他人から見てエラーを脳死で握りつぶしているのか
>面倒臭くてpassしてるのか分からない変なコード書くのもありかもしれないけどな
意図がわかりやすいコードを書くことが推奨されるのはもちろんだが、逆にコードだけからは
意図を判断しづらいケースはいくらでもあるわけなんでそこを非難しようとしても不毛なだけだと
思うがな。
例えば逆のケースで例外をcatchしていないコードがあった時、それが意図的にスルーして
いるのか面倒くさいからかcatchしなかったのかはたまた例外が発生する可能性を見過ごして
いたのか、コードの字面だけからはやっぱり判断できんだろう。
そもそも、面倒くさくて握りつぶすという発想がよくわからんな。
面倒くさいなら何もしないでスルーするんじゃないの?
#Javaの話で関数の仕様を変えられないから、とかならわからんでもないが。
>例外処理でpassするくらいならそもそも例外が出ないようにすべきだし
なんか言っていることが矛盾してるね。自分ひとりで全部のコードを書いているわけじゃなけりゃ
下層のルーチンから例外が出ないようにするなんてことが常にできるわけがないだろう。
自分で保証できるのは上流の呼び出し元にどういう例外を渡すか(渡さないか)だけ。
>他人から見てエラーを脳死で握りつぶしているのか
>面倒臭くてpassしてるのか分からない変なコード書くのもありかもしれないけどな
意図がわかりやすいコードを書くことが推奨されるのはもちろんだが、逆にコードだけからは
意図を判断しづらいケースはいくらでもあるわけなんでそこを非難しようとしても不毛なだけだと
思うがな。
例えば逆のケースで例外をcatchしていないコードがあった時、それが意図的にスルーして
いるのか面倒くさいからかcatchしなかったのかはたまた例外が発生する可能性を見過ごして
いたのか、コードの字面だけからはやっぱり判断できんだろう。
そもそも、面倒くさくて握りつぶすという発想がよくわからんな。
面倒くさいなら何もしないでスルーするんじゃないの?
#Javaの話で関数の仕様を変えられないから、とかならわからんでもないが。
393デフォルトの名無しさん
2019/11/29(金) 21:44:06.26ID:8hJB6N01 >>392
下層で例外を上に渡すのか渡さないのか決めるなら
例外処理をどうするのかを上層で判断するのか下層で判断するのか
結局どちらでもない中途半端になるだけだな
上層に例外処理を任せるなら 例外を握りつぶしにしても上層で握りつぶす
例外が出る可能性を消せないのであれば例外を隠蔽しない
例外を隠蔽するくらいなら例外が出る可能性を完全に消す
単純な話だ
>例えば逆のケースで例外をcatchしていないコードがあった時、それが意図的にスルーして
>いるのか面倒くさいからかcatchしなかったのかはたまた例外が発生する可能性を見過ごして
>いたのか、コードの字面だけからはやっぱり判断できんだろう。
このうちのどれかなんて判断しなくていい 全部対処の必要があるからな
君は「問題なく動くコード」を作ることを最優先にしているようだがそのために「問題を起きていないことにする」んじゃあ意味がない
起きてない問題を解決するのは起きている問題を解決することの数倍難しいんだ
エラーが発生すること自体は開発の過程においては別に悪いことじゃない
エラーを見かけ上発生させなくなることで問題を不可視にするほうが害悪
下層で例外を上に渡すのか渡さないのか決めるなら
例外処理をどうするのかを上層で判断するのか下層で判断するのか
結局どちらでもない中途半端になるだけだな
上層に例外処理を任せるなら 例外を握りつぶしにしても上層で握りつぶす
例外が出る可能性を消せないのであれば例外を隠蔽しない
例外を隠蔽するくらいなら例外が出る可能性を完全に消す
単純な話だ
>例えば逆のケースで例外をcatchしていないコードがあった時、それが意図的にスルーして
>いるのか面倒くさいからかcatchしなかったのかはたまた例外が発生する可能性を見過ごして
>いたのか、コードの字面だけからはやっぱり判断できんだろう。
このうちのどれかなんて判断しなくていい 全部対処の必要があるからな
君は「問題なく動くコード」を作ることを最優先にしているようだがそのために「問題を起きていないことにする」んじゃあ意味がない
起きてない問題を解決するのは起きている問題を解決することの数倍難しいんだ
エラーが発生すること自体は開発の過程においては別に悪いことじゃない
エラーを見かけ上発生させなくなることで問題を不可視にするほうが害悪
394デフォルトの名無しさん
2019/11/29(金) 22:04:01.71ID:SQehs03a >上層に例外処理を任せるなら 例外を握りつぶしにしても上層で握りつぶす
その例外を発生させた処理に近い方が適切な判断ができるに決まってるだろう。
どういうメリットがあってその処理を上層に任せるなんて言ってるのかねえ。
>エラーを見かけ上発生させなくなることで問題を不可視にするほうが害悪
こうなるともう宗教だな。
仮に内部でエラーが起きたとしても、それが外に対して悪影響を及ぼさないんだったら
無かったことにして全然問題ないと思うが。
その例外を発生させた処理に近い方が適切な判断ができるに決まってるだろう。
どういうメリットがあってその処理を上層に任せるなんて言ってるのかねえ。
>エラーを見かけ上発生させなくなることで問題を不可視にするほうが害悪
こうなるともう宗教だな。
仮に内部でエラーが起きたとしても、それが外に対して悪影響を及ぼさないんだったら
無かったことにして全然問題ないと思うが。
395デフォルトの名無しさん
2019/11/29(金) 22:08:10.95ID:5FLVJ8iu 外に悪影響を及ぼさないことを保証できる実力があるなら文句ないわ
俺にはとても出来ない
俺にはとても出来ない
396デフォルトの名無しさん
2019/11/29(金) 22:28:46.19ID:8hJB6N01 >>394が作ったプログラムが上手く動かなかったときは
下層上層問わずすべてのコードを精査して
「外部に対した悪影響を及ぼさないからエラーを握りつぶしてOK」と「思いこんでいるかもしれない部分」
も含めてチェックしないといけないハメになるな
地獄だぜ
下層上層問わずすべてのコードを精査して
「外部に対した悪影響を及ぼさないからエラーを握りつぶしてOK」と「思いこんでいるかもしれない部分」
も含めてチェックしないといけないハメになるな
地獄だぜ
397デフォルトの名無しさん
2019/11/29(金) 22:51:00.95ID:X/BrqNBd 全能無謬の神PG降臨
398デフォルトの名無しさん
2019/11/30(土) 10:27:47.46ID:rKTaGmhL わださんへの反応が皆無で笑ったwさすが初心者スレ。
399デフォルトの名無しさん
2019/11/30(土) 11:15:37.77ID:u5c1qEtQ numpyとかいうのなしで、配列を回転させることはできますか?
テトリスのブロックの回転です
var base = [
[0,0,0,0],
[0,0,0,0],
[0,0,0,0],
[0,0,0,0]
]
var block = [
[0,0,0,0],
[1,1,0,0],
[0,1,1,0],
[0,0,0,0]
]
#
func _ready():
for y in block.size():
for x in block[y].size():
block[y][x] =
print(block)
テトリスのブロックの回転です
var base = [
[0,0,0,0],
[0,0,0,0],
[0,0,0,0],
[0,0,0,0]
]
var block = [
[0,0,0,0],
[1,1,0,0],
[0,1,1,0],
[0,0,0,0]
]
#
func _ready():
for y in block.size():
for x in block[y].size():
block[y][x] =
print(block)
400デフォルトの名無しさん
2019/11/30(土) 11:41:37.85ID:eoIz8ORY [[block[3-l][i] for l in range(4)] for i in range(4)]
401デフォルトの名無しさん
2019/11/30(土) 11:54:44.80ID:rKTaGmhL テトリスなら回転した情報は固定で持っとけ
402デフォルトの名無しさん
2019/11/30(土) 12:03:43.42ID:OO2kPiiB403デフォルトの名無しさん
2019/11/30(土) 12:17:28.60ID:PlBmox+6404デフォルトの名無しさん
2019/11/30(土) 12:51:05.66ID:rKTaGmhL > 極めて単純な算数
長いヤツの180°回転がずれたら叫ぶぞw
長いヤツの180°回転がずれたら叫ぶぞw
405デフォルトの名無しさん
2019/11/30(土) 12:54:57.33ID:OO2kPiiB406デフォルトの名無しさん
2019/11/30(土) 12:57:48.37ID:OO2kPiiB テトリスブロック回してずれたら(・x・)コロヌ!!!だけど、
ぷよぷよの場合は
「滝登り」できないと逆に困るけどなw
ぷよぷよの場合は
「滝登り」できないと逆に困るけどなw
407デフォルトの名無しさん
2019/11/30(土) 13:40:28.58ID:X9RQeX1v 数億パターンとかあるわけじゃないでしょ?
じゃあテーブルルックアップの方が早いに決まってる
じゃあテーブルルックアップの方が早いに決まってる
408デフォルトの名無しさん
2019/11/30(土) 13:51:38.88ID:e3px8G1e visual studioでpythonをインタプリタ形式で動かすのってどこで設定すればいいんでしょう?
409デフォルトの名無しさん
2019/11/30(土) 13:56:10.70ID:PlBmox+6 >>408
どのような方法で実行しようがPythonはインタプリタ形式で動きます
どのような方法で実行しようがPythonはインタプリタ形式で動きます
410デフォルトの名無しさん
2019/11/30(土) 15:12:04.28ID:u5c1qEtQ テトリス野郎です
ありがとうございます
理解できないんでもう少し調べてrから着ます(´・ω・`)
ありがとうございます
理解できないんでもう少し調べてrから着ます(´・ω・`)
411デフォルトの名無しさん
2019/11/30(土) 15:47:17.79ID:MBj/QS/D class myClass():
def __init__(self, message):
self.value = message
def name(self):
self.name1 = self.value
print(self.name1)
m = myClass("hello!")
print(m.name())
def __init__(self, message):
self.value = message
def name(self):
self.name1 = self.value
print(self.name1)
m = myClass("hello!")
print(m.name())
412デフォルトの名無しさん
2019/11/30(土) 15:48:48.66ID:MBj/QS/D >>411なんですが、実行するとhello!とNoneが表示されます
Noneは、どこから湧いてきていますか(´・ω・`)?
Noneは、どこから湧いてきていますか(´・ω・`)?
413デフォルトの名無しさん
2019/11/30(土) 15:50:04.56ID:MBj/QS/D class myClass():
def __init__(self, message):
self.value = message
def name(self):
self.name1 = self.value
print(self.name1)
m = myClass("hello!")
print(m.name())
インデント入れるとこんな感じです
def __init__(self, message):
self.value = message
def name(self):
self.name1 = self.value
print(self.name1)
m = myClass("hello!")
print(m.name())
インデント入れるとこんな感じです
414デフォルトの名無しさん
2019/11/30(土) 15:54:41.68ID:OO2kPiiB415デフォルトの名無しさん
2019/11/30(土) 15:57:11.28ID:OO2kPiiB416デフォルトの名無しさん
2019/11/30(土) 16:18:36.23ID:MBj/QS/D サンクス、直ったわ(´・ω・`)
NameError: name 'センス' is not defined
NameError: name 'センス' is not defined
417デフォルトの名無しさん
2019/11/30(土) 16:34:21.86ID:Esy6R5Oj >>409
ああ、一行入力したらすぐに結果が返ってくるようにしたいのです。
ああ、一行入力したらすぐに結果が返ってくるようにしたいのです。
418デフォルトの名無しさん
2019/11/30(土) 16:46:10.13ID:OO2kPiiB419デフォルトの名無しさん
2019/11/30(土) 16:51:12.50ID:SKhbFAll Tensorflowでディープラーニングの勉強するのに必要なPCのスペックを教えてください。
GPUはやはりいりますか?
GPUはやはりいりますか?
420デフォルトの名無しさん
2019/11/30(土) 16:57:04.40ID:NRfKrTi3 はい
421デフォルトの名無しさん
2019/11/30(土) 19:01:21.04ID:BP9rhd+I >>419
NVIDIAのGPUがいいとか、その中でもGTX750、850、950、1050以上でないと無理だとか
メモリもできれば8GBできれば16GBがいいとか
色々あったか
4スレッドのCPUだとそれがボトルネックになったなんて話もあったかな
だがスピードを気にしないならGPUなしでも出来るだろ!って人もいる
大規模な問題は出来なくなるが
NVIDIAのGPUがいいとか、その中でもGTX750、850、950、1050以上でないと無理だとか
メモリもできれば8GBできれば16GBがいいとか
色々あったか
4スレッドのCPUだとそれがボトルネックになったなんて話もあったかな
だがスピードを気にしないならGPUなしでも出来るだろ!って人もいる
大規模な問題は出来なくなるが
422デフォルトの名無しさん
2019/11/30(土) 19:04:37.44ID:SKhbFAll423デフォルトの名無しさん
2019/11/30(土) 19:44:27.10ID:OO2kPiiB >>422
いやだからさ、
テンフロつかって 何がしたいかによるんだってばよ・・・
ある1人の文豪の文章全部を教師にして
文豪もどきっぽいあやしいモノをつくったったwwwくらいなら
GPUなし、一昔前の古しいPCでも3週間かけっぱでできるんだYO
ところが
文書データといっても
Abstractがひっぱってこれる既存の理系英語論文全てをターゲットにして
なんかかんかしようとすると
メモリ2テラくらい使っていいスパコンがないと、無理。
いやだからさ、
テンフロつかって 何がしたいかによるんだってばよ・・・
ある1人の文豪の文章全部を教師にして
文豪もどきっぽいあやしいモノをつくったったwwwくらいなら
GPUなし、一昔前の古しいPCでも3週間かけっぱでできるんだYO
ところが
文書データといっても
Abstractがひっぱってこれる既存の理系英語論文全てをターゲットにして
なんかかんかしようとすると
メモリ2テラくらい使っていいスパコンがないと、無理。
424デフォルトの名無しさん
2019/11/30(土) 23:18:38.91ID:X9RQeX1v 結局スパコンのタイムシェアリングで50年前と同じじゃねえか
425デフォルトの名無しさん
2019/12/01(日) 06:11:57.70ID:Yb3VJQ// はじめましてPython初心者です
a = input()
で入力を求めて、[1,2,3,4,5]
と入力をしても変数aが配列にならず文字になってしまいます。
誰が良い方法をお願いします
a = input()
で入力を求めて、[1,2,3,4,5]
と入力をしても変数aが配列にならず文字になってしまいます。
誰が良い方法をお願いします
426デフォルトの名無しさん
2019/12/01(日) 06:47:09.10ID:i2YaNYYV c#アプリで計測したデータをpythonで自動的に統計処理してグラフ表示する。
って考えてるんですが、言語はpythonでokでしょうか?Rを使うのとどっちがいいか悩んでます。
って考えてるんですが、言語はpythonでokでしょうか?Rを使うのとどっちがいいか悩んでます。
427デフォルトの名無しさん
2019/12/01(日) 06:49:59.72ID:i2YaNYYV 想定してる統計は単回帰とコルモゴフスミノフなど簡単なものです。グラフは回帰直線表示させた後に平均値、最大値、最小値を赤でプロットしたい。
428デフォルトの名無しさん
2019/12/01(日) 08:24:56.60ID:7UL7JgFh >>425
input()は文字列を返す関数なので、自分で変換する必要がある
https://docs.python.org/3/library/functions.html#input
In [1]: a = input()
1 2 3 4 5
In [2]: list(map(int, a.split(' ')))
Out[2]: [1, 2, 3, 4, 5]
input()は文字列を返す関数なので、自分で変換する必要がある
https://docs.python.org/3/library/functions.html#input
In [1]: a = input()
1 2 3 4 5
In [2]: list(map(int, a.split(' ')))
Out[2]: [1, 2, 3, 4, 5]
429デフォルトの名無しさん
2019/12/01(日) 08:31:43.33ID:gxWit/c+ すみません。
macでanaconda3(python3.7)をインストールしたのですが
ターミナルでconda -versionで確認してもcommand not found
python -Vで確認しても2.7.10と表示されるのですが何故でしょうか
環境構築の質問で申し訳ないですがどなたか詳しい方いますか?
macでanaconda3(python3.7)をインストールしたのですが
ターミナルでconda -versionで確認してもcommand not found
python -Vで確認しても2.7.10と表示されるのですが何故でしょうか
環境構築の質問で申し訳ないですがどなたか詳しい方いますか?
430デフォルトの名無しさん
2019/12/01(日) 08:39:56.12ID:Yb3VJQ//431デフォルトの名無しさん
2019/12/01(日) 08:51:20.61ID:w+6yrHlL432デフォルトの名無しさん
2019/12/01(日) 08:52:50.77ID:w+6yrHlL >>429
Macにデフォで入ってるPythonのほうが優先で呼ばれている件
環境変数を弄らないとだめだとおもわれるが
いじるとそれはそれで困ったことになるかもしれない
py -V
は動くけ?
(Python3系は「py」で呼べるのだ)
Macにデフォで入ってるPythonのほうが優先で呼ばれている件
環境変数を弄らないとだめだとおもわれるが
いじるとそれはそれで困ったことになるかもしれない
py -V
は動くけ?
(Python3系は「py」で呼べるのだ)
433デフォルトの名無しさん
2019/12/01(日) 09:05:38.42ID:gxWit/c+ >>432
ありがとうございます
py -Vもcommand not foundとなってしまいました
私の今の状態はanaconda3、python3.7ともにインストールはされているもののパスが通っていないと言う認識で間違い無いでしょうか?
ありがとうございます
py -Vもcommand not foundとなってしまいました
私の今の状態はanaconda3、python3.7ともにインストールはされているもののパスが通っていないと言う認識で間違い無いでしょうか?
434デフォルトの名無しさん
2019/12/01(日) 09:15:08.45ID:YC7h427T >>433
パスが通ってない可能性に気づいたなら、まず自分なりにパスの確認までしてから次の質問をした方がいいぞ。(自分で考える&確かめる習慣をつけるために。)
パスが通ってない可能性に気づいたなら、まず自分なりにパスの確認までしてから次の質問をした方がいいぞ。(自分で考える&確かめる習慣をつけるために。)
435デフォルトの名無しさん
2019/12/01(日) 09:27:14.95ID:YoP0MD/8 >>429
>macでanaconda3(python3.7)をインストール
>ターミナルでconda -versionで確認してもcommand not found
Mac使いさんにWin使いが出しゃばってしまうのは非常に失礼なのは承知だが
Winだと
https://qiita.com/kaizen_nagoya/items/7bfd7ecdc4e8edcbd679
Anacondaでのインストール後に
Windosのコマンドプロンプトやパワーシェルにpython -vで
何か表示されるのは、むしろ良くない事だとされている
で、Macだとどうなbだろう?
>macでanaconda3(python3.7)をインストール
>ターミナルでconda -versionで確認してもcommand not found
Mac使いさんにWin使いが出しゃばってしまうのは非常に失礼なのは承知だが
Winだと
https://qiita.com/kaizen_nagoya/items/7bfd7ecdc4e8edcbd679
Anacondaでのインストール後に
Windosのコマンドプロンプトやパワーシェルにpython -vで
何か表示されるのは、むしろ良くない事だとされている
で、Macだとどうなbだろう?
2019/12/01(日) 09:37:44.85ID:w+6yrHlL
>>435
conda -versionも動作しないってゆってるからなー
Macは最初からシステムにPython2.7系が入ってるから
なにかがうまくいってなくても
Python2.7系がはいってますよー ってならないとおかしい。
conda -versionも動作しないってゆってるからなー
Macは最初からシステムにPython2.7系が入ってるから
なにかがうまくいってなくても
Python2.7系がはいってますよー ってならないとおかしい。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「日本はパンダがいなくなる状況に直面するだろう」 中国メディア、専門家の見方伝える [♪♪♪★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★11 [樽悶★]
- 止まらぬ「日本売り」 高市財政への懸念で進む金利上昇と円安 ★2 [蚤の市★]
- 【無言】中国怒らせた高市首相→1週間だんまり、国民に実害も説明なし 中国問題を避けてスルー… ★5 [BFU★]
- 【福岡】ミカンの木に逆さ吊りになっていた高齢の男性が死亡 [雑用縞工作★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★12 [樽悶★]
- (´・ω・`)おはよ
- 🏡
- 【高市悲報】大暴落 [115996789]
- 【速報】東京から人が消える [329329848]
- 昼間にスーパーいったらさ客の9割が女しかも年代色々
- 【悲報】無能ぼく、仕事では「どうやったら楽できるか」を最優先に考えてしまうwwwwww
