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

■ このスレッドは過去ログ倉庫に格納されています
2019/10/16(水) 10:17:12.96ID:dCHq3Ix4
当スレに★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/
337デフォルトの名無しさん
垢版 |
2019/11/27(水) 17:52:41.97ID:b0aYXQt/
>>336
pass silently を「黙って渡す」と直訳するか、その行為を日本語の表現で
「見逃す」、「見過ごす」と訳すかと違いと思う。

日本語的には見過ごすと訳した方が自然に感じます。
2019/11/27(水) 19:02:19.69ID:ymKEnJ4Y
>>336の意味であってる
「黙って通過させてはならない」的な意味

「エラーを黙って渡してはならない」は完全な誤訳
Errors should never be passed silentlyや
You should never pass errors silentlyじゃないと
エラーを渡すという意味にはならない
2019/11/27(水) 20:33:56.00ID:hknmBY+P
例外の握りつぶしとかだろ。
例外をキャッチしたけど、何もせずに、そのまま処理を継続したとか

Jupyter Notebook(JN)は、Python, Julia, Ruby などで使うIDE だろ。
VSCode みたいなもの

Bash, PowerShell などのシェル経由でも、
シングル/ダブルクォーテーションで、エスケープのタイミングが違ってくる。
Linux/Windows で書き方が異なる

シェルに渡すときに、既にエスケープされているか、されていないのか

エスケープ文字を、エディタで設定できるかも知れない
2019/11/27(水) 20:43:49.33ID:R3eAH8fN
>>335-336
個人的には>>339の解釈に1票。
try:
    なんとかかんとか
except:
    pass
みたいなマジクソ行為は
自分以外の人物が
たとえ0.1×10^23%でもかかわる可能性があるソースコードでは
絶対やっちゃだめだなwww
341デフォルトの名無しさん
垢版 |
2019/11/27(水) 21:37:06.71ID:OMjrfaFS
pygameは商用利用できますか?
2019/11/27(水) 21:48:56.24ID:gPxE2uPM
>>340
どんなに小さな確率でも、と言いたいのかもしれないけど巨大な下図になってるぞw
2019/11/27(水) 21:49:28.61ID:gPxE2uPM
>>342
数だった。人のことは言えないな。
2019/11/27(水) 22:17:55.37ID:ap410XA+
>>340
passがダメだとして何なら良いわけ?
2019/11/27(水) 22:18:57.75ID:vYtjQlD0
>>341
可能だが、pyinstallerのような方法で事実上の静的リンクを行った場合には
LGPLに従ってpygameが含まれている実行ファイル全体の再配布を許可せねばならない
つまり俺が買ったらそれを10円で再販してやる
2019/11/27(水) 22:20:16.38ID:1UHKBbgP
>>344
passを書くくらいならエラー処理せずに普通にエラー発生させた方がマシ
2019/11/27(水) 22:27:15.42ID:vYtjQlD0
>>341
補足
あと、リンクの方法に関わらず、そのソフトウェアを買った俺はそれをリバースエンジニアリングし、改造できる
俺のスキルをもってすればライセンス認証の回避は容易であり、お前はそれを禁止できない
348347
垢版 |
2019/11/27(水) 22:31:35.68ID:vYtjQlD0
すまん、俺が金払って買ったなら認証を回避する意味はなかったな
問題は、ダウンロードは無料だが継続して利用するにはライセンス認証が必要になるというような典型的な配布パターンだ
この場合、俺は金を払わずに改造してライセンス認証を突破し、タダでそれを使う
そしてその方法をWebで公開する
お前はそれを禁止できない
なぜならLGPLライブラリを使用しているからだ
2019/11/27(水) 22:42:28.92ID:ap410XA+
>>346
つまりtry ~ except は不要と言ってるのか?
excaptの中に何を書くのが良いのか訊いているんだが。
2019/11/27(水) 22:48:46.79ID:R3eAH8fN
>>342
ほんとだ 重要なマイナスが抜けてた!

>>340訂正する
×たとえ0.1×10^23%でもかかわる可能性があるソースコードでは
〇たとえ全世界の砂粒から、ハズレの1粒をひきあてたくらいの確率でも、かかわる可能性があるソースコードでは


>>349
「except:」みたいな雑なくくりをせず
おきるエラーの種類ひとつひとつについて
「except Errorhogehoge:」みたいなかんじで一個ずつちゃんと分岐させろ
2019/11/27(水) 22:57:52.16ID:ap410XA+
>>350
例外の種類ごとに異なる対処が必要なら分岐するがそうでないならその限りではない。
何か対処すべきことがあればそれを記述するが他にすることがなければpassでよい。

おまえさんは何か変な教条主義に囚われているんではないかね?
2019/11/27(水) 23:06:11.22ID:vYtjQlD0
>>350
悪いけど、最初から個別の例外について虱潰しに対応しようとするのは典型的なアンチパターンだよ
あまりにも手間がかかりすぎるし、変更に対して非常に弱いコードになる。
例外処理で死守すべき大原則は、アプリを落とさないこと、綺麗に回復すること、の2点だけだ。
その上で、必要に応じて丁寧な個別対応をしてもよい。
まずアプリを落とさないことだが、WebのリクエストハンドラであったりUIのイベントハンドラであったりバッチ処理の一番大本のループであったり、
「ここまで戻れば確実に回復できる」という箇所で全ての例外をキャッチし、リトライやエラーメッセージの表示等を行って回復する。
次に綺麗に回復すること、これは、適切にwithやfinally等を使用して例外発生時に適切な後片付けを行うことだ。
この2点が守れていれば例外処理は完璧だが、場合によっては個別対応することで早期に回復できたり、より適切なエラーメッセージをユーザーに表示できたりするケースがある。
しかしそれはあくまでオプションにすぎない。
2019/11/27(水) 23:22:24.86ID:ymKEnJ4Y
>>351-352
え、お前らマジでこんなコード書いてるの!?
いろいろビックリするわ

try:
____do_something()
except:
____pass
2019/11/27(水) 23:28:50.58ID:hknmBY+P
Ruby on Rails で、RSpec で、TDD から学びなおせw
2019/11/27(水) 23:31:50.95ID:vYtjQlD0
>>353
単に無視することが適切な回復なのであればそれで正しいよ
大抵はそうではないが、だからといって例外が発生した瞬間に直上でキャッチしたところで対処のしようがないケースがほとんど
ほとんどの例外は単純にキャッチせずにスルーし、上の方で纏めてキャッチしてエラーを表示したりすることになる
356デフォルトの名無しさん
垢版 |
2019/11/27(水) 23:36:46.74ID:OMjrfaFS
>>348
ありがとうございます。ようするにpygameを使った作品は著作権を放棄しろってことなんですね。。。
2019/11/27(水) 23:58:21.75ID:ymKEnJ4Y
>>355
範囲の狭い特定のエラーを意図して無視するのが適切な場合はあっても
あらゆるエラーをすべて無視するのが適切な場合はまずないやろ
2019/11/28(木) 00:12:16.59ID:H2QhOzf/
>>356
細かいツッコミすると、国内で放棄できるのは著作請求権だけ
359デフォルトの名無しさん
垢版 |
2019/11/28(木) 01:29:21.32ID:BjRR3Cis
>>358
ありがとうございます!!
2019/11/28(木) 03:06:02.69ID:1K1GwsjB
著作権を放棄しているわけではない
自分の著作権の下で自らの著作物をLGPLの派生物として配布しているんだ
自分の著作物をどんなライセンスで配布しようが本来は勝手だが、利用しているライブラリが他人の著作物である以上、
そのライブラリの著作権を同梱した派生物を配布するためにはそのライブラリの著作権者が定めるライセンスに従わねばならない
そして、そのライセンスが派生物のライセンスを制約するようなものであった場合は結果的に自分の著作物にライセンスが感染する形になるわけだ
361デフォルトの名無しさん
垢版 |
2019/11/28(木) 05:28:36.70ID:BjRR3Cis
>>360
そういうことなんですね!
勉強になりました。
2019/11/28(木) 07:46:57.30ID:LEtsBWW2
俺が不勉強なだけかもしれないが
try:〜except:passでエラーを握りつぶしておいて
直上でエラー処理するってどういうことだ?

普通にエラーをそのままにしといたら呼び出し元にエラーが届いて
そこで処理したらいいだけの話だろ 一番下の階層でpassして握り潰す必要はない
2019/11/28(木) 08:33:14.83ID:VOkh5kHm
>>362
> try:〜except:passでエラーを握りつぶしておいて
誰がそんなことを言ってるんだ?
そう思い込んでいるのはあなただけでは
364デフォルトの名無しさん
垢版 |
2019/11/28(木) 08:38:48.41ID:b0jGiHif
異常系をわざわざ戻り値で表現し直すんじゃないの?w
そんなことするより、リスローの方が絶対にいいわな。
2019/11/28(木) 14:36:06.70ID:B2pLXdx8
>>353
やってるけど
2019/11/28(木) 14:59:01.40ID:p/uKw1d3
pyautoguiっての普通に使ってる時は問題ないんだけど
リモートデスクトップで1度開いちゃうと画面閉じた時に
pyautoguiの中のsetcursorposってのでエラー出るんだけどどうにかならない?
2019/11/28(木) 16:12:48.01ID:rcIus152
大企業で無料で商用利用できるIDEでオススメありませんか?
個人ではVScode使ってますがエンタープライズ企業は無償利用無理みたいです
2019/11/28(木) 16:26:05.13ID:sRkzUhKD
生産性を無視する企業に未来はない
2019/11/28(木) 16:48:19.24ID:f9JN6uOx
>>367
そんな都合のいいものはない
大企業税(有名税てきな)だとおもって
あきらメロン
2019/11/28(木) 17:08:37.95ID:VOkh5kHm
>>367
VSCodeはエンタープライズでも無償だぞ
371デフォルトの名無しさん
垢版 |
2019/11/28(木) 17:24:36.37ID:i2j7bL3h
どうせVSと近藤してるんだろ
2019/11/28(木) 21:56:29.31ID:qnF6NUyh
>>357
堅牢なソフトウェアを構築する方法論として、何かエラーがあったらその処理単位ごと
無かったことにするというものがある。DBのトランザクションとかerlangのlet it crashとかな。
そういう方法論ではエラーの種類など見ない。
そこでは逆に、知ってるエラーだけcatchして他はスルーするという手法こそ否定される。
なぜなら、下層のルーチンが「知らない」とスルーしたエラーなら上層のルーチンは
「もっと知らない」はずだからな。
373デフォルトの名無しさん
垢版 |
2019/11/28(木) 22:06:08.08ID:4XtsM+GQ
せやろか?
2019/11/28(木) 23:49:35.94ID:3SZL29g0
>>372
ものすっごい中途半端な知識で知ったかしようとする前に基礎を抑えようね

DBのトランザクション処理を実行しました
なんかエラー発生しました
エラーの種類など見ないっ(キリッ)

軽量プロセスにsend messageしました
なんかプロセス落ちました
リスタートあるのみ(キリッ)

>なぜなら、下層のルーチンが「知らない」とスルーしたエラーなら上層のルーチンは
>「もっと知らない」はずだからな。
何を知らないのか考えようね
2019/11/29(金) 00:49:58.07ID:8hJB6N01
>>372のやり方だと「止まらない」プログラムは作ることはできても
「使える」プログラムは作れそうにないなw
2019/11/29(金) 01:26:05.58ID:pmSmtC6r
例外原理主義か…
2019/11/29(金) 09:16:06.14ID:B0LTR+GE
スターリン風エラー処理
2019/11/29(金) 09:24:58.26ID:TmZsQyhe
pyautoguiのsetcursorposエラーはtry:〜except:passで無事解決しました!
2019/11/29(金) 09:28:46.75ID:wYCEjZQR
わださんのゆうめいなやつ
https://speakerdeck.com/twada/php-conference-2016
PHPだけど、理解できるだろ。読んどけ。
380デフォルトの名無しさん
垢版 |
2019/11/29(金) 10:27:27.39ID:N/f9f1S7
>>349
漏れもpassは禁止で正しく処理するべきだと考えるが
どうしてもスルーしてプログラムを続行したい場合は

1.フラグを立ててプログラム終了時に報告
2.loggerでsyslogに出力
3.上の1と2の合わせ技
381デフォルトの名無しさん
垢版 |
2019/11/29(金) 10:30:54.20ID:N/f9f1S7
>>355
上の方でまとめてキャッチしたいのに
except で pass したらキャッチされないぞ

except でその場だけキャッチせず上にスルーしたいならあらためて raise しろ
2019/11/29(金) 12:06:18.51ID:dGU1sZlL
pyautoguiでとりあえずブラウザ内の手作業のの自動化できたから、seleniumにも手を出してみたけどこっちは難しいね
HTMLが分かってないとキツイな(´・ω・`)
2019/11/29(金) 17:46:37.36ID:po6NZMwT
python勉強しようと思うんだけどエディタはjupyterがデフォなの?
visual studioになれてるからvs使いたいんだけどまずいのかな。
2019/11/29(金) 17:47:25.58ID:lBRwa/7I
ok
2019/11/29(金) 17:51:35.27ID:VBGSEbtt
>>383
PCのスペックが足りてて問題なく動けば問題ないぞ
スペック足りない俺様PCでは
秀丸エディタかsakuraエディタが精いっぱいなんだぜ
2019/11/29(金) 19:37:04.50ID:LMfDTWZ+
>>383
VSCodeにしとけ
MSはPythonの開発環境としては今VSCodeを推していて、本家VSの方のPythonサポートはもう将来性がない
2019/11/29(金) 19:41:46.20ID:VBGSEbtt
>>386
横レスだけど参考になった
2019/11/29(金) 19:56:54.52ID:SQehs03a
>>380
>漏れもpassは禁止で正しく処理するべきだと考えるが

passは正しい処理ではないと言っているようだが、そう断言できる根拠はないだろ。
ログを吐けばオーケーというのも意味わからん。プログラムの正しさとは何の関係もないだろうに。
2019/11/29(金) 20:05:59.92ID:8hJB6N01
保守性が落ちるコードは正しいコードとはいえないだろ
例外処理でpassするくらいならそもそも例外が出ないようにすべきだし
自分で例外処理が書けないなら例外をそのまま発生させて別の誰かか未来の自分が対処できるようにすべき

自分ひとりで全部完結するプログラミングなら
他人から見てエラーを脳死で握りつぶしているのか
面倒臭くてpassしてるのか分からない変なコード書くのもありかもしれないけどな

ぶっちゃけ「正しいコード」が書きたいならpythonじゃなく証明型プログラミング使えばいいだけだしな
2019/11/29(金) 20:10:38.20ID:5FLVJ8iu
正しい処理どうこうの前に
passは文字通り何もしてないんだから処理したとは言わないだろ
2019/11/29(金) 20:18:27.56ID:VBGSEbtt
>>389
> 例外処理でpassするくらいならそもそも例外が出ないようにすべきだし
> 自分で例外処理が書けないなら例外をそのまま発生させて別の誰かか未来の自分が対処できるようにすべき
>
> 自分ひとりで全部完結するプログラミングなら
> 他人から見てエラーを脳死で握りつぶしているのか
> 面倒臭くてpassしてるのか分からない変なコード書くのもありかもしれないけど
↑イイ!!(・∀・)こと書いてある!!!
2019/11/29(金) 21:32:51.55ID:SQehs03a
>>389
>例外処理でpassするくらいならそもそも例外が出ないようにすべきだし

なんか言っていることが矛盾してるね。自分ひとりで全部のコードを書いているわけじゃなけりゃ
下層のルーチンから例外が出ないようにするなんてことが常にできるわけがないだろう。
自分で保証できるのは上流の呼び出し元にどういう例外を渡すか(渡さないか)だけ。

>他人から見てエラーを脳死で握りつぶしているのか
>面倒臭くてpassしてるのか分からない変なコード書くのもありかもしれないけどな

意図がわかりやすいコードを書くことが推奨されるのはもちろんだが、逆にコードだけからは
意図を判断しづらいケースはいくらでもあるわけなんでそこを非難しようとしても不毛なだけだと
思うがな。
例えば逆のケースで例外をcatchしていないコードがあった時、それが意図的にスルーして
いるのか面倒くさいからかcatchしなかったのかはたまた例外が発生する可能性を見過ごして
いたのか、コードの字面だけからはやっぱり判断できんだろう。

そもそも、面倒くさくて握りつぶすという発想がよくわからんな。
面倒くさいなら何もしないでスルーするんじゃないの?
#Javaの話で関数の仕様を変えられないから、とかならわからんでもないが。
2019/11/29(金) 21:44:06.26ID:8hJB6N01
>>392
下層で例外を上に渡すのか渡さないのか決めるなら
例外処理をどうするのかを上層で判断するのか下層で判断するのか
結局どちらでもない中途半端になるだけだな 
上層に例外処理を任せるなら 例外を握りつぶしにしても上層で握りつぶす
例外が出る可能性を消せないのであれば例外を隠蔽しない
例外を隠蔽するくらいなら例外が出る可能性を完全に消す
単純な話だ


>例えば逆のケースで例外をcatchしていないコードがあった時、それが意図的にスルーして
>いるのか面倒くさいからかcatchしなかったのかはたまた例外が発生する可能性を見過ごして
>いたのか、コードの字面だけからはやっぱり判断できんだろう。

このうちのどれかなんて判断しなくていい 全部対処の必要があるからな
君は「問題なく動くコード」を作ることを最優先にしているようだがそのために「問題を起きていないことにする」んじゃあ意味がない
起きてない問題を解決するのは起きている問題を解決することの数倍難しいんだ

エラーが発生すること自体は開発の過程においては別に悪いことじゃない
エラーを見かけ上発生させなくなることで問題を不可視にするほうが害悪
2019/11/29(金) 22:04:01.71ID:SQehs03a
>上層に例外処理を任せるなら 例外を握りつぶしにしても上層で握りつぶす

その例外を発生させた処理に近い方が適切な判断ができるに決まってるだろう。
どういうメリットがあってその処理を上層に任せるなんて言ってるのかねえ。

>エラーを見かけ上発生させなくなることで問題を不可視にするほうが害悪

こうなるともう宗教だな。
仮に内部でエラーが起きたとしても、それが外に対して悪影響を及ぼさないんだったら
無かったことにして全然問題ないと思うが。
2019/11/29(金) 22:08:10.95ID:5FLVJ8iu
外に悪影響を及ぼさないことを保証できる実力があるなら文句ないわ
俺にはとても出来ない
2019/11/29(金) 22:28:46.19ID:8hJB6N01
>>394が作ったプログラムが上手く動かなかったときは
下層上層問わずすべてのコードを精査して
「外部に対した悪影響を及ぼさないからエラーを握りつぶしてOK」と「思いこんでいるかもしれない部分」
も含めてチェックしないといけないハメになるな

地獄だぜ
2019/11/29(金) 22:51:00.95ID:X/BrqNBd
全能無謬の神PG降臨
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)
2019/11/30(土) 11:41:37.85ID:eoIz8ORY
[[block[3-l][i] for l in range(4)] for i in range(4)]
2019/11/30(土) 11:54:44.80ID:rKTaGmhL
テトリスなら回転した情報は固定で持っとけ
2019/11/30(土) 12:03:43.42ID:OO2kPiiB
>>399
 >>401に補足すっと
各ブロックの向き4種類をあらかじめ準備しといて、
まわすボタン(AボタンとBボタンで回る向き違うよな)1回押されるごとに、
(左右どっちか)隣の状態へ行くようにしとけ
4種類目から次へいく指令がきたときは、1種類目を表示するようにも、しとけ。

いちいち回す計算してたら ちぬる
2019/11/30(土) 12:17:28.60ID:PlBmox+6
配列回すのなんて計算してインデックスを読み替えるだけだろ
配列を書き換える必要などないし計算コストなんてほぼゼロだし極めて単純な算数
>>402はよほど頭悪いんだろうな
2019/11/30(土) 12:51:05.66ID:rKTaGmhL
> 極めて単純な算数

長いヤツの180°回転がずれたら叫ぶぞw
2019/11/30(土) 12:54:57.33ID:OO2kPiiB
>>404
んだべや

配列の回転て
手計算だと結構しくじるヤツがいるし
理屈はわかってても、プログラムするとなるとバグ仕込んじゃうヤツけっこういるぞw
>>403は現場を知らない
2019/11/30(土) 12:57:48.37ID:OO2kPiiB
テトリスブロック回してずれたら(・x・)コロヌ!!!だけど、
ぷよぷよの場合は
「滝登り」できないと逆に困るけどなw
2019/11/30(土) 13:40:28.58ID:X9RQeX1v
数億パターンとかあるわけじゃないでしょ?
じゃあテーブルルックアップの方が早いに決まってる
2019/11/30(土) 13:51:38.88ID:e3px8G1e
visual studioでpythonをインタプリタ形式で動かすのってどこで設定すればいいんでしょう?
2019/11/30(土) 13:56:10.70ID:PlBmox+6
>>408
どのような方法で実行しようがPythonはインタプリタ形式で動きます
2019/11/30(土) 15:12:04.28ID:u5c1qEtQ
テトリス野郎です
ありがとうございます
理解できないんでもう少し調べてrから着ます(´・ω・`)
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())
2019/11/30(土) 15:48:48.66ID:MBj/QS/D
>>411なんですが、実行するとhello!とNoneが表示されます
Noneは、どこから湧いてきていますか(´・ω・`)?
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())

インデント入れるとこんな感じです
2019/11/30(土) 15:54:41.68ID:OO2kPiiB
>>411-413
最終行が悪い
Noneがいらないなら
m.name()
でおk
2019/11/30(土) 15:57:11.28ID:OO2kPiiB
ところで
>>413な内容をやらせるのに
nameってつけるネーミングセンスは
ないわー
2019/11/30(土) 16:18:36.23ID:MBj/QS/D
サンクス、直ったわ(´・ω・`)

NameError: name 'センス' is not defined
2019/11/30(土) 16:34:21.86ID:Esy6R5Oj
>>409
ああ、一行入力したらすぐに結果が返ってくるようにしたいのです。
2019/11/30(土) 16:46:10.13ID:OO2kPiiB
>>416
なおってなにより。

2年後の自分が上からよんでって、
過去の自分に対して殺意が湧かない程度の名前をつけるようにしる。
すげーだいじだぞ。
2019/11/30(土) 16:51:12.50ID:SKhbFAll
Tensorflowでディープラーニングの勉強するのに必要なPCのスペックを教えてください。

GPUはやはりいりますか?
2019/11/30(土) 16:57:04.40ID:NRfKrTi3
はい
2019/11/30(土) 19:01:21.04ID:BP9rhd+I
>>419
NVIDIAのGPUがいいとか、その中でもGTX750、850、950、1050以上でないと無理だとか
メモリもできれば8GBできれば16GBがいいとか
色々あったか

4スレッドのCPUだとそれがボトルネックになったなんて話もあったかな

だがスピードを気にしないならGPUなしでも出来るだろ!って人もいる
大規模な問題は出来なくなるが
422デフォルトの名無しさん
垢版 |
2019/11/30(土) 19:04:37.44ID:SKhbFAll
>>420-421

ありがとうございます。

小さな問題さえ試せればOKだと考えています。
Tensorflowやいろいろなツールを使えるようになればOKだと考えています。
2019/11/30(土) 19:44:27.10ID:OO2kPiiB
>>422
いやだからさ、
テンフロつかって 何がしたいかによるんだってばよ・・・

ある1人の文豪の文章全部を教師にして
文豪もどきっぽいあやしいモノをつくったったwwwくらいなら
GPUなし、一昔前の古しいPCでも3週間かけっぱでできるんだYO

ところが
文書データといっても
Abstractがひっぱってこれる既存の理系英語論文全てをターゲットにして
なんかかんかしようとすると
メモリ2テラくらい使っていいスパコンがないと、無理。
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が配列にならず文字になってしまいます。
誰が良い方法をお願いします
2019/12/01(日) 06:47:09.10ID:i2YaNYYV
c#アプリで計測したデータをpythonで自動的に統計処理してグラフ表示する。
って考えてるんですが、言語はpythonでokでしょうか?Rを使うのとどっちがいいか悩んでます。
2019/12/01(日) 06:49:59.72ID:i2YaNYYV
想定してる統計は単回帰とコルモゴフスミノフなど簡単なものです。グラフは回帰直線表示させた後に平均値、最大値、最小値を赤でプロットしたい。
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]
2019/12/01(日) 08:31:43.33ID:gxWit/c+
すみません。
macでanaconda3(python3.7)をインストールしたのですが
ターミナルでconda -versionで確認してもcommand not found
python -Vで確認しても2.7.10と表示されるのですが何故でしょうか

環境構築の質問で申し訳ないですがどなたか詳しい方いますか?
2019/12/01(日) 08:39:56.12ID:Yb3VJQ//
>>428
ありがとうございます!
変換する必要があるんですね!
2019/12/01(日) 08:51:20.61ID:w+6yrHlL
>>426-427
どっちでもできるよ

その後どういう風に上達していきたいのか
それとももうその作業さえできればおkなのか
あとは自分がどっちの言語がより好きなのか

による
2019/12/01(日) 08:52:50.77ID:w+6yrHlL
>>429
Macにデフォで入ってるPythonのほうが優先で呼ばれている件
環境変数を弄らないとだめだとおもわれるが
いじるとそれはそれで困ったことになるかもしれない

py -V
は動くけ?
(Python3系は「py」で呼べるのだ)
2019/12/01(日) 09:05:38.42ID:gxWit/c+
>>432
ありがとうございます
py -Vもcommand not foundとなってしまいました

私の今の状態はanaconda3、python3.7ともにインストールはされているもののパスが通っていないと言う認識で間違い無いでしょうか?
2019/12/01(日) 09:15:08.45ID:YC7h427T
>>433
パスが通ってない可能性に気づいたなら、まず自分なりにパスの確認までしてから次の質問をした方がいいぞ。(自分で考える&確かめる習慣をつけるために。)
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だろう?
2019/12/01(日) 09:37:44.85ID:w+6yrHlL
>>435
conda -versionも動作しないってゆってるからなー

Macは最初からシステムにPython2.7系が入ってるから
なにかがうまくいってなくても
Python2.7系がはいってますよー ってならないとおかしい。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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