X



Pythonのお勉強 Part68

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん (ワッチョイ ab79-ia8c)
垢版 |
2022/09/15(木) 18:52:26.67ID:VqLViKoX0
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
↑スレ立てる毎に減るので、減ってたら3つに補充すること。

・当スレにRubyのソースコード類を書くことを禁ず
・Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止
・「Ruby では」「Rubyでは」「Rails」正規表現→「^クソチョンw$」をNGワード登録推奨
・エラーを解決したいときは、かならず
 エラー文(勝手に省略orスクショうp等の横着禁止)と
 おま環(Pythonのバージョン番号+OS名とバージョン+IDE名)を書け。

★Pythonのソースコードを5ちゃんに直貼はインデントが崩壊するので、
  ↓等のコードうp用サイトに貼ってきてくだしあ。(スクリーンショットをうpる「横着」禁止)
ttps://techiedelight.com/compiler/  Run Code機能あり。
ttp://ideone.com/      デフォ設定がCなので、Pythonするには言語種選択ボタン押下がピコ手間かも。
ttp://pastebin.com/     まずまずシンプル。
ttp://dpaste.com/      とてもシンプル。消えるまでの日数は十分長ーく指定のこと。

◇Pythonオフィシャルサイト http://www.python.org/
◇Pythonドキュメント https://docs.python.org/ja/3/
◇まとめwiki ttp://python.rdy.jp/

●関連スレ● 自称初心者は↓へ
【まず1嫁】くだすれPython(超初心者用) その57
http://mevius.5ch.net/test/read.cgi/tech/1653225908/

〇前スレ〇
Pythonのお勉強 Part67
https://mevius.5ch.net/test/read.cgi/tech/1653540315/

次スレの建立は>>985が挑戦する。(980通過して24h後も落ちなくなった)
### END of TEMPLATE ### ​
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
0640デフォルトの名無しさん (JP 0He5-3A4z)
垢版 |
2022/11/03(木) 18:58:51.96ID:Ppt07bQPH
>>637
言語間の速度差を埋めたいという文脈で
片方により効率的なアルゴリズム使えというのは筋が違うと思う
それやったら相手のCも早くなるやん
0648デフォルトの名無しさん (ワッチョイ c1b0-ee5o)
垢版 |
2022/11/04(金) 11:06:17.40ID:RgN4dMLC0
公式のドキュメント読むと
「pip は推奨されるインストーラ・プログラムです。 Python 3.4 からは、 Python バイナリ・インストーラに最初から付属するようになりました。」
とか見るけど、触る環境どれも最初からインストールされてた試しがなくて手動インストールばっかなんだが
0649デフォルトの名無しさん (ワッチョイ 7933-MTQz)
垢版 |
2022/11/04(金) 11:16:46.46ID:+Vzk9d850
>>648
どこのバイナリインストーラ使ってるの?
0651デフォルトの名無しさん (ワッチョイ 39e0-Sd0E)
垢版 |
2022/11/04(金) 11:26:42.20ID:iSP9CUI40
debianとかはOSのスクリプトを実行するための環境なので
最小限になるようパッケージが分かれている
不便にみえるけどユーザが使う場合はパッケージ外で導入した方が
特定のバージョンも好きにえらべてシンプル
0653デフォルトの名無しさん (ブーイモ MMdd-uk66)
垢版 |
2022/11/04(金) 19:16:21.95ID:7+yqrzWjM
>>648
python -m pipするのが安全やで(pipコマンドだと、複数バージョン入ってると意図したpythonに紐づいてないpipが実行される場合がある)
0656デフォルトの名無しさん (ワッチョイ f568-Cw2/)
垢版 |
2022/11/05(土) 21:51:22.37ID:MH3sXGrP0
>>655
無料のライブラリなんかありませんかね?無いんなら諦めます
0660デフォルトの名無しさん (ワッチョイ d204-ocuO)
垢版 |
2022/11/06(日) 18:38:56.63ID:hWJeexFN0
pythonでなんかかっこいいことがしたいです
でもやることが見つかりません。どうしたらいいですかね
今までポイントサイトをseleniumで自動化したりdiscordのbot作ったり動画編集自動化したりしてきたんですが先というか続きが見えません
0664デフォルトの名無しさん (ワッチョイ d204-ocuO)
垢版 |
2022/11/06(日) 21:07:15.95ID:hWJeexFN0
PyPIで良さそうなモジュール見つけるってどうやるの?
PyPI サイト見てtrend moduleみたいなの適当に選んで説明見ても詳しい使い方がわからない
0665デフォルトの名無しさん (ワッチョイ f666-GkOZ)
垢版 |
2022/11/06(日) 21:15:54.96ID:2BZA6H+N0
電子工作もそうだけど、環境は整いすぎに整ってて、やりたいことがあれば何でもすぐにできる
でもやりたいことが見つからない

さてはみんな環境を整えることを目的にしているな
0667デフォルトの名無しさん (アウアウウー Sacd-ocuO)
垢版 |
2022/11/07(月) 08:02:58.71ID:jFHCFA25a
その通りだけどやりたいことが見つからないんだわ
もしかすると勉強からの逃避のためにプログラミングという逃げ場を作りたいのかもしれない。やりたいことが自然と出てきたらやることにするよ
0676デフォルトの名無しさん (ワッチョイ f666-GkOZ)
垢版 |
2022/11/07(月) 15:51:46.76ID:a5k3bCTy0
AIだから教育が必須で、それなりにコストがかかる
こんなもんは公共事業で、どこかが代表してやって、コスト回収できたら無料化する
各国で自分のとこの言語についてやるのが筋だけど、
どうせ日本はやらないのでgoogleがやる
0677デフォルトの名無しさん (ワッチョイ f666-GkOZ)
垢版 |
2022/11/07(月) 16:22:49.11ID:a5k3bCTy0
似たようなので、音声からテキストへの変換も金かかる
あれが無料で出来たら過去の膨大な音声や動画の資料が検索したり分析可能になって、
文化が大きく前進するだろうに金がブレーキかけてる
国の事業としてやれば一人頭の負担なんて微々たるものなのに
0680デフォルトの名無しさん (ワッチョイ b18e-ly3j)
垢版 |
2022/11/07(月) 16:46:46.72ID:6QND4EcV0
>>675
Rubyオワコン
0686デフォルトの名無しさん (ワッチョイ 5e63-xcLn)
垢版 |
2022/11/08(火) 19:27:53.62ID:h+Zmgne00
有料と言ってもgoogleAPIってかなり安いと思うんだけど
手持ちの本数十冊OCRして1,000円いかなかった気がする
0687デフォルトの名無しさん (ワッチョイ b11d-rPWN)
垢版 |
2022/11/09(水) 17:03:12.36ID:a7tugATP0
某有名ゲーム会社で働いてる友人が、「Pythonではあまりクラスを使うべきではない。
それほど高度なプログラムでなければ関数を使えばいい」と言っていたんですが、
そうなんでしょうか?
皆さんの意見を聞かせて頂きたいです
0689デフォルトの名無しさん (ワッチョイ 1997-OSgl)
垢版 |
2022/11/09(水) 17:30:19.69ID:PaG6ZUsK0
Javaのようになんでもかんでもクラスを作る感じじゃないというのは事実。
でも、dataclassとかnamedtupleとかは使うかな。
とはいえやることによると思う。
0691デフォルトの名無しさん (ワントンキン MM62-76so)
垢版 |
2022/11/09(水) 18:12:18.95ID:uDSXzENKM
pythonはメンバ変数にself必須なのがダルい
メインプログラムまでクラス化する必要はないと思う
規模が小さければモジュール変数をグローバル変数のように使うのが便利
vscodeならインテリセンス利くし
0700デフォルトの名無しさん (ワッチョイ 7247-GkOZ)
垢版 |
2022/11/09(水) 21:30:42.42ID:F89FAkjE0
それは他に影響しないというだけで、グローバル変数の欠点は何も解決しない
作って使ってすぐ捨てるならいいけど、保守が必要なら時間かけてシンプルにしとかないと
0702デフォルトの名無しさん (ワントンキン MM62-76so)
垢版 |
2022/11/09(水) 21:57:03.34ID:uDSXzENKM
グローバル変数はプログラム全体を通した設定値とかに使うもんじゃない?
それこそメインプログラムにとってのselfよ
変に引数取りまくるより可読性高いと思う
規模にもよるんだろうけど
0705デフォルトの名無しさん (ワッチョイ 7247-GkOZ)
垢版 |
2022/11/09(水) 22:13:24.86ID:F89FAkjE0
関数の中に下請け関数があって、
なんかごちゃごちゃしてきたからリファクタリングだと外に出したらスコープから外れたので、
じゃあみんなグローバル化したれ、みたいにglobal付けて誤魔化す
0707デフォルトの名無しさん (ワッチョイ 927e-THRA)
垢版 |
2022/11/09(水) 23:03:08.26ID:a3eCQ+jX0
>>687
どうせ、いたずらにclassを多用したゴミトランプゲームを
見せたんだろ?いつまでも練習だからって言って、設計もしないで
ゴミコードを見せ続けるから嫌われかけてるんだよ。
0708デフォルトの名無しさん (ワッチョイ 5ecf-o+MF)
垢版 |
2022/11/10(木) 00:21:13.04ID:8bOle1Do0
クラス化するのは、言語のタイプやプロジェクトの規模ではなくて
データ同士の相関を元に、見通しをよくすることが目的だと思う
あるいは自分用ライブラリとしてカプセル化しておきたいとか
そういう話を置いて、やらない方がいいレベルの問題があるのかw
0712687 (ワッチョイ b11d-Cw2/)
垢版 |
2022/11/10(木) 00:32:26.74ID:ofaAiG0L0
レスしてくれた皆さんありがとうございます
参考にさせて頂きたいと思います

>>689
CUIの簡単なカードゲームではどうでしょうか?

>>693
失礼しました
曰く「クラスを下手に使わない方がコードが無駄に複雑にならなくてよい」
からだそうです

>>694
まさにそんな感じです

>>698
ちょっと彼に悪いかなって…

>>707
ゴミときたもんだ
彼の人柄はそんな感じじゃないよ
0720デフォルトの名無しさん (アウアウウー Sacd-obsI)
垢版 |
2022/11/10(木) 13:50:13.84ID:99QPf7Vaa
>>716
> 関数とクラス両方使えるのがpythonのメリットなのだから、常に適切な方を選べってことじゃないかと。
なら初めからそう言えや
まあそう言われたら適切な方の決め方について小一時間は問い詰めたいけどなw
0724デフォルトの名無しさん (ブーイモ MMd5-OSgl)
垢版 |
2022/11/10(木) 17:38:31.76ID:aw2UCTg8M
>>712
カードゲームならカードクラスは作ったほうがよさそう。
あとはカードゲームのルールによる。
0726デフォルトの名無しさん (ワッチョイ 655f-nsye)
垢版 |
2022/11/10(木) 18:34:12.90ID:RApG3JqD0
カードクラス作ってもいいけど、同じカードが存在しない、記号4つと数字1〜13の組み合わせの
ものにクラスがいちいちいるかな。
カードクラスはカード1枚を表して、なにができればいいんだ?

記号クラスがあって、各記号クラスがあって、ナンバークラスがあって、
is_MarkMatchとかis_NumberMatchとかもってんの?
idとprintがあればいいのかな。まあいいけど、そんだけのために
classいちいち用意するのめんどくない?
複数枚のカードを扱うcardsクラスなのかな?機能はいろいろ持てそうだけど
ゲーム固有すぎてどうなのかな?
0729デフォルトの名無しさん (ワッチョイ 1997-OSgl)
垢版 |
2022/11/10(木) 19:47:31.93ID:eS5awfmL0
>>725
689だが、トランプはクラスを作った方が(少なくともnamedtuple,dataclass)便利だと思うぞ
>>726
記号クラス、番号クラスなんて作らない
記号はenum、番号はそのまま1~13でいい
が、どの記号が黒だ赤だ、どの番号が絵柄か(JQKA)
みたいなのはたとえインスタンスが一個でもメソッドになってた方が便利だと思うけどなあ。

カードは内部表現とUI上の表現が異なるのが自然だし、そういう意味でもクラスにしておくのは悪くないと思うが

クラスにしすぎてもしょうがないというのは、ゲームのルールをクラスにして共通のインタフェース持たせて、バリエーションを切り替えられるようにしても大抵は仕方ないみたいなことだよ
もちろん、どんなゲームシステムを作るかによるし、ルールを共通インタフェースで入れ替えられるようにするメリットがある場合もあるけど
0733デフォルトの名無しさん (ワッチョイ b12c-rDMU)
垢版 |
2022/11/10(木) 22:35:47.17ID:SvDTIviz0
カード型のインスタンスを生成するデッキクラスを作りたいやん

deck.suffle()
hands = deck.draw(5)

みたいなさあ
あとは各ゲームで処理つくろ
0735687 (ワッチョイ b11d-rPWN)
垢版 |
2022/11/10(木) 23:28:06.08ID:ofaAiG0L0
多くのレスを頂き、ありがたく思います
ちょっと自己顕示欲が強い気もしますが、俺のGitHubを公開させて頂くので、
よろしければご覧下さい
https://github.com/masa-gh/practice
のblackjack_3.pyがそれです
これでもクラス使わないで書けるのかな…
■ このスレッドは過去ログ倉庫に格納されています

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