[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2ch.scのread.cgiへ]
Update time : 07/24 13:04 / Filesize : 241 KB / Number-of Response : 994
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Pythonのお勉強 Part68



1 名前:デフォルトの名無しさん mailto:sage [2022/09/15(木) 18:52:26.67 ID:VqLViKoX0.net]
!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オフィシャルサイト www.python.org/
◇Pythonドキュメント https://docs.python.org/ja/3/
◇まとめwiki ttp://python.rdy.jp/

●関連スレ● 自称初心者は↓へ
【まず1嫁】くだすれPython(超初心者用) その57
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

601 名前:デフォルトの名無しさん mailto:sage [2022/11/02(水) 19:57:27.92 ID:1xZXeW2Ya.net]
>>593
わかんない?
違うよ
どんどん主張が後退するんじゃねえかなという期待の下、繰り返すけど

602 名前:デフォルトの名無しさん [2022/11/02(水) 21:11:39.58 ID:CsBXjP5R0.net]
リンクリストはリスト的なものを作るときに第一の選択肢としてはこないと思うよ。
任意の要素へのアクセスがO(n)かかるから。
必ず頭から順番に読んで、途中に挿入したいことが多いとかいう状況だったら使うけど、こういう特性を、癖があると思う人の方が多いんじゃないかな。
そういうコンピュータサイエンスの初歩みたいなところの実装が気になるなら、Javaを勉強してみるといいかもね。
リストも辞書もセットも、複数の実装方法が標準で用意されてて明示的にどれを使うか決めなくちゃいけないから。
そう考えると初心者にJava教えてた頃ってコレクションで付いていけなくなり勉強を諦めた人多いんだろうか。

603 名前:デフォルトの名無しさん [2022/11/02(水) 21:16:31.46 ID:CsBXjP5R0.net]
>>589
夕飯を食べる前の自分と食べた後の自分は別のインスタンスか?って問いにyesと答えられるならばイミュータブルなものにしかidを付けてはいけないと考えているのだろう(そういう言語もある、Haskellとか)
そうでなければ、ミュータブルなインスタンスはミュータブルなんだからidが同じでも中身は変化すると考えるべきだろう

604 名前:デフォルトの名無しさん mailto:sage [2022/11/02(水) 21:22:30.41 ID:jJasVlr90.net]
idってCでのアドレスそのものなんでしょ
実装の都合でアドレスが変わったらidも変わるというだけの話で、
何らかのポリシーみたいなものは背景に無いような

605 名前:デフォルトの名無しさん [2022/11/02(水) 21:30:55.81 ID:CsBXjP5R0.net]
>>597
CPythonではな。(すみません知りませんでした)
しかしGCがかかりまくるVM上で動くPythonの実装もあるから、CPythonではそうっていう認識に留めておいたほうがいいんじゃないかなあ。

606 名前:デフォルトの名無しさん mailto:sage [2022/11/02(水) 21:42:19.23 ID:2orW5ow60.net]
idが変わる/変わらないとミュータブル/イミュータブルは一対一対応?

607 名前:デフォルトの名無しさん [2022/11/02(水) 22:06:28.39 ID:CsBXjP5R0.net]
>>599
まず、イミュータブルというのをどう定義するかによると思うけど
(タプルはイミュータブルだが、タプルの中にリストを入れた場合、リストほミュータブルで、リストに変更を加えてもタプルのインスタンスが新しくできるわけではない)
そういうややこしい例を除いても、
イミュータブルならば、値を変えたらidが変わる
値を変えてもidが変わらないならミュータブル
しか言えないんじゃない?

608 名前:デフォルトの名無しさん mailto:sage [2022/11/02(水) 22:13:30.31 ID:F9kh54e50.net]
定義や実装で何がミュータブルかがころころ変わってはいけなくて、
pythonではどんな環境でも同じものがミュータブルであるべき

で、idが変わる/変わらないが環境依存ならば、idとミュータブルは関係ないことになる

609 名前:デフォルトの名無しさん mailto:sage [2022/11/02(水) 22:18:06.81 ID:jyU6y3CY0.net]
わけわからん



610 名前:デフォルトの名無しさん mailto:sage [2022/11/02(水) 22:20:05.72 ID:yCeW62XuM.net]
pythonの辞書ってc++のmapと違って内部でソートされてないからアクセス遅いっぽいんだよね
keysで取り出しても登録した順だし
文字列でも数値でもキーにできるからそういうものなのか

611 名前:デフォルトの名無しさん mailto:sage [2022/11/02(水) 22:50:50.14 ID:rAnbDRgM0.net]
>>595
最後尾への追加削除がO(1)だったからリンクリストだと思ったけど
リアロケートの実装でどうにかそれっぽくなるんだねぇ
全く気にしてなかったけど、勉強になったわ

612 名前:デフォルトの名無しさん mailto:sage [2022/11/02(水) 22:58:46.37 ID:P6hHm0TD0.net]
ループで一つずつappendしていくようなコードは、
溜めておいて一気にどーんで高速化できそう

613 名前:デフォルトの名無しさん mailto:sage [2022/11/02(水) 23:13:03.99 ID:Vdzb0Lkj0.net]
Elixir なんて片方向リストだから、先頭の要素の追加・削除のみ速い。
末尾では全要素をたどる

Ruby は両方向リストだったかな?

614 名前:デフォルトの名無しさん [2022/11/02(水) 23:41:13.42 ID:d827SSNz0.net]
>>603
pythonの辞書は順番を保持することが仕様で規定されてる

615 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 00:20:58.38 ID:gcHdWorI0.net]
3年くらい前からだっけ?
キーバリューやから順番気にしたことなかったわ

616 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 00:37:59.14 ID:vWeFXHff0.net]
順番が同じだとセキュリティの問題があるから意図的にランダムにしてなかったっけ

617 名前:デフォルトの名無しさん [2022/11/03(木) 00:45:24.21 ID:9oLRzF140.net]
>>604
C++のvectorとか、JavaのArrayListの典型的な実装だと、リアロケートが発生するときに倍ぐらいの領域を予め確保しておく、ってのが普通って読んだな
コードレベルで読んだ訳じゃないから確たるエビデンスがあるわけじゃないけど。

618 名前:デフォルトの名無しさん [2022/11/03(木) 00:49:20.51 ID:9oLRzF140.net]
辞書は3.5だかそのぐらいで入れた順になるように仕様が決まったよね
それまではバラバラだったはず
あとソート済みが欲しいならsortedcollectionsがあるんじゃないの
Pythonでパフォーマンス気にするようなコード書いたことないから速くなるかは知らないが
パフォーマンス気になるならもう普通にpybind11よ

619 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 01:13:09.17 ID:t2qUW0n10.net]
動的配列は償却計算量の典型例だぞ



620 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 09:06:43.51 ID:b87ZSO0X0.net]
半島人w

621 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 13:19:41.92 ID:M31+WIXk0.net]
ネトウヨはコードすら書けない

622 名前:デフォルトの名無しさん [2022/11/03(木) 17:39:13.22 ID:JzcJhjtx0.net]
isPrime(n: int):
__for i in range(2, n//2 + 1):
____if (not n%i):
______return 0
__return 1

numPrimes = 0

for i in range(2, 250001):
__numPrimes += isPrime(i)

print(numPrimes)

cとかだと5秒以下で終わると思うんですが
pythonではどうやって高速化できますか?

623 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 17:50:53.27 ID:6cc1wOit0.net]
全角スペースでインデントするといい

624 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 17:57:37.28 ID:t2qUW0n10.net]
エラトステネスの篩みたいなまともなアルゴリズムを使え

625 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 18:05:57.27 ID:pngFKRCN0.net]
>>615
range(2, n//2 + 1) を range(2, int(n**0.5)+1)
にするだけで速くなると言うのは違うか。

n**0.5 は math を import するのが面倒だっただけ。。。

626 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 18:12:13.51 ID:Tny9BBIXa.net]
しょーもないネタ振り

627 名前:デフォルトの名無しさん [2022/11/03(木) 18:58:51.96 ID:Ppt07bQPH.net]
>>617
言語間の速度差を埋めたいという文脈で
片方により効率的なアルゴリズム使えというのは筋が違うと思う
それやったら相手のCも早くなるやん

628 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 19:15:26.76 ID:t2qUW0n10.net]
それはそうだけどPythonをできるだけ速くしようというのは徒労に終わるんだよな

629 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 19:17:29.83 ID:5fumPTTR6.net]
>>615
allかanyか使う



630 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 19:45:13.49 ID:NbsIPyEs0.net]
>>620
> 言語間の速度差を埋めたいという文脈で
そうか、単にPythonで高速化したいだけに見えるけど?

> pythonではどうやって高速化できますか?

631 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 20:09:45.07 ID:6A5YXZlC0.net]
>>615
sympy.isprime()

632 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 20:13:41.27 ID:6A5YXZlC0.net]
>>615
そもそもこのプログラムは一行で済む
print(sympy.primepi(250001))

633 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 20:16:42.18 ID:gDosIilW0.net]
SymPy無いさー

634 名前:デフォルトの名無しさん mailto:sage [2022/11/03(木) 22:42:51.75 ID:qK/YTuYk0.net]
Numpyさぁ

635 名前:デフォルトの名無しさん mailto:sage [2022/11/04(金) 11:06:17.40 ID:RgN4dMLC0.net]
公式のドキュメント読むと
「pip は推奨されるインストーラ・プログラムです。 Python 3.4 からは、 Python バイナリ・インストーラに最初から付属するようになりました。」
とか見るけど、触る環境どれも最初からインストールされてた試しがなくて手動インストールばっかなんだが

636 名前:デフォルトの名無しさん [2022/11/04(金) 11:16:46.46 ID:+Vzk9d850.net]
>>628
どこのバイナリインストーラ使ってるの?

637 名前:デフォルトの名無しさん mailto:sage [2022/11/04(金) 11:23:08.55 ID:eh042CP4a.net]
>>628
たぶん入ってるけど実行ファイルのパスが通ってないんだよ

638 名前:デフォルトの名無しさん mailto:sage [2022/11/04(金) 11:26:42.20 ID:iSP9CUI40.net]
debianとかはOSのスクリプトを実行するための環境なので
最小限になるようパッケージが分かれている
不便にみえるけどユーザが使う場合はパッケージ外で導入した方が
特定のバージョンも好きにえらべてシンプル

639 名前:デフォルトの名無しさん mailto:sage [2022/11/04(金) 13:14:21.89 ID:xdVLdIYL0.net]
npm/yarn, Ruby のbundler などは、デフォルトでコマンド実行できるけど

多分これらは、デフォルトで環境変数PATH にあるフォルダにインストールされるのだろう



640 名前:デフォルトの名無しさん (ブーイモ MMdd-uk66) [2022/11/04(金) 19:16:21.95 ID:7+yqrzWjM.net]
>>628
python -m pipするのが安全やで(pipコマンドだと、複数バージョン入ってると意図したpythonに紐づいてないpipが実行される場合がある)

641 名前:デフォルトの名無しさん mailto:sage [2022/11/05(土) 21:26:42.31 ID:MH3sXGrP0.net]
pythonつかって紙に書いた文字判別するとかって簡単にできますか?

642 名前:デフォルトの名無しさん mailto:sage [2022/11/05(土) 21:34:23.73 ID:7lAZ3AaJ0.net]
簡単だけど有料

643 名前:デフォルトの名無しさん [2022/11/05(土) 21:51:22.37 ID:MH3sXGrP0.net]
>>635
無料のライブラリなんかありませんかね?無いんなら諦めます

644 名前:デフォルトの名無しさん mailto:sage [2022/11/05(土) 21:58:26.55 ID:yxkEcNx60.net]
>>634
判別とはどういうことをしたいのかよくわからんけどとりあえず python ocr とかでぐぐればいいんじゃね?
https://gammasoft.jp/blog/ocr-by-python/

645 名前:デフォルトの名無しさん mailto:sage [2022/11/05(土) 21:58:41.35 ID:j6cTC8iG0.net]
自分で無料ライブラリーを作る、しか

646 名前:デフォルトの名無しさん mailto:sage [2022/11/05(土) 22:07:24.17 ID:MH3sXGrP0.net]
>>637
ありがとうございます!

647 名前:デフォルトの名無しさん (ワッチョイ d204-ocuO) [2022/11/06(日) 18:38:56.63 ID:hWJeexFN0.net]
pythonでなんかかっこいいことがしたいです
でもやることが見つかりません。どうしたらいいですかね
今までポイントサイトをseleniumで自動化したりdiscordのbot作ったり動画編集自動化したりしてきたんですが先というか続きが見えません

648 名前:デフォルトの名無しさん mailto:sage [2022/11/06(日) 19:03:47.89 ID:tSvQZNnX0.net]
PyPIザッピングして良さそうなモジュールみつけてかっこいい応用を書く

649 名前:デフォルトの名無しさん mailto:sage [2022/11/06(日) 19:05:44.66 ID:A20KyXoS0.net]
ラズパイでIoT
リアルの物を動かせると、やれる事の幅が広がるよ



650 名前:デフォルトの名無しさん mailto:sage [2022/11/06(日) 19:13:43.26 ID:hyDfi3PG0.net]
>>640
壁に落書きしてくるのがかっこいいと思ってるんなら大間違いだわw

651 名前:デフォルトの名無しさん [2022/11/06(日) 21:07:15.95 ID:hWJeexFN0.net]
PyPIで良さそうなモジュール見つけるってどうやるの?
PyPI サイト見てtrend moduleみたいなの適当に選んで説明見ても詳しい使い方がわからない

652 名前:デフォルトの名無しさん mailto:sage [2022/11/06(日) 21:15:54.96 ID:2BZA6H+N0.net]
電子工作もそうだけど、環境は整いすぎに整ってて、やりたいことがあれば何でもすぐにできる
でもやりたいことが見つからない

さてはみんな環境を整えることを目的にしているな

653 名前:デフォルトの名無しさん mailto:sage [2022/11/07(月) 06:48:18.34 ID:E9VDXcWoM.net]
アホな質問だな~
まずやりたいことがあって、それからツールを探すものだろ

654 名前:デフォルトの名無しさん [2022/11/07(月) 08:02:58.71 ID:jFHCFA25a.net]
その通りだけどやりたいことが見つからないんだわ
もしかすると勉強からの逃避のためにプログラミングという逃げ場を作りたいのかもしれない。やりたいことが自然と出てきたらやることにするよ

655 名前:デフォルトの名無しさん mailto:sage [2022/11/07(月) 08:09:59.84 ID:nVmoLWqcM.net]
遠回りの人生それも人生

656 名前:デフォルトの名無しさん mailto:sage [2022/11/07(月) 10:49:11.04 ID:vghVm0yU0.net]
巨大数の実数計算は最先端だぞ。

657 名前:デフォルトの名無しさん mailto:sage [2022/11/07(月) 14:36:29.74 ID:ns7213lX0.net]
>>634
EasyOCR は?
pytorch必須だが

658 名前:デフォルトの名無しさん mailto:sage [2022/11/07(月) 14:48:18.41 ID:a5k3bCTy0.net]
使い物になるOCRはみんなAIで有料なんだよな
客はDXしたい企業だから高い

659 名前:デフォルトの名無しさん mailto:sage [2022/11/07(月) 15:15:22.15 ID:dmSTAQ160.net]
料金みたことある?業務で考えたらめちゃ安いとおもうが



660 名前:デフォルトの名無しさん mailto:sage [2022/11/07(月) 15:26:05.72 ID:kmERiYaX0.net]
有料OCR知ってる俺スゲー君なんて相手にすんなよ...

661 名前:デフォルトの名無しさん mailto:sage [2022/11/07(月) 15:26:54.13 ID:a5k3bCTy0.net]
OCRしたい書類なんて有限だから、あらかた終わったら需要が無くなる
そしたらgoogle様が無料開放してくれる筈

662 名前:デフォルトの名無しさん [2022/11/07(月) 15:41:01.53 ID:rtBnyCPM0.net]
Pythonが「メインの利用言語」で2位にとどまる、1位に立ったのは定番のあの言語
https://xtech.nikkei.com/atcl/nxt/column/18/02246/110200002/

663 名前:デフォルトの名無しさん mailto:sage [2022/11/07(月) 15:51:46.76 ID:a5k3bCTy0.net]
AIだから教育が必須で、それなりにコストがかかる
こんなもんは公共事業で、どこかが代表してやって、コスト回収できたら無料化する
各国で自分のとこの言語についてやるのが筋だけど、
どうせ日本はやらないのでgoogleがやる

664 名前:デフォルトの名無しさん mailto:sage [2022/11/07(月) 16:22:49.11 ID:a5k3bCTy0.net]
似たようなので、音声からテキストへの変換も金かかる
あれが無料で出来たら過去の膨大な音声や動画の資料が検索したり分析可能になって、
文化が大きく前進するだろうに金がブレーキかけてる
国の事業としてやれば一人頭の負担なんて微々たるものなのに

665 名前:デフォルトの名無しさん mailto:sage [2022/11/07(月) 16:28:42.14 ID:ns7213lX0.net]
この夏whisperが公開されたやろ?

666 名前:デフォルトの名無しさん mailto:sage [2022/11/07(月) 16:32:21.66 ID:a5k3bCTy0.net]
そんなのあったのか
マスク様々やな

667 名前:デフォルトの名無しさん [2022/11/07(月) 16:46:46.72 ID:6QND4EcV0.net]
>>655
Rubyオワコン

668 名前:デフォルトの名無しさん mailto:sage [2022/11/07(月) 21:52:40.91 ID:J6xutGri0.net]
>>657
つまり文字起こし言いたいんだろ?
なんかクソ認識悪いAPIだったら何かあった気がする

669 名前:デフォルトの名無しさん mailto:sage [2022/11/08(火) 10:16:17.14 ID:gvBOR9qA0.net]
半島系帰化人は強姦魔ばかり
死ねよクズ帰化人!



670 名前:デフォルトの名無しさん mailto:sage [2022/11/08(火) 11:03:03.92 ID:NJ3yWFAyM.net]
何でこのスレで暴れてるんだよ

671 名前:デフォルトの名無しさん mailto:sage [2022/11/08(火) 11:17:25.58 ID:Z/fTsurM0.net]
壊れちゃったんだろ

672 名前:デフォルトの名無しさん mailto:sage [2022/11/08(火) 14:10:32.60 ID:SId0EMb3a.net]
ランダムに書き込んでるbotだよ

673 名前:デフォルトの名無しさん [2022/11/08(火) 19:27:53.62 ID:h+Zmgne00.net]
有料と言ってもgoogleAPIってかなり安いと思うんだけど
手持ちの本数十冊OCRして1,000円いかなかった気がする

674 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 17:03:12.36 ID:a7tugATP0.net]
某有名ゲーム会社で働いてる友人が、「Pythonではあまりクラスを使うべきではない。
それほど高度なプログラムでなければ関数を使えばいい」と言っていたんですが、
そうなんでしょうか?
皆さんの意見を聞かせて頂きたいです

675 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 17:08:46.66 ID:F89FAkjE0.net]
関数でできればいいけど、引数たくさん渡したり、グローバル変数で渡してたり、
みたいな汚いことするくらいならクラスがいい

676 名前:デフォルトの名無しさん [2022/11/09(水) 17:30:19.69 ID:PaG6ZUsK0.net]
Javaのようになんでもかんでもクラスを作る感じじゃないというのは事実。
でも、dataclassとかnamedtupleとかは使うかな。
とはいえやることによると思う。

677 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 17:30:52.94 ID:ugvw1ns9a.net]
状態を持つオブジェクトを扱うならクラスは必然なのでは

678 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 18:12:18.95 ID:uDSXzENKM.net]
pythonはメンバ変数にself必須なのがダルい
メインプログラムまでクラス化する必要はないと思う
規模が小さければモジュール変数をグローバル変数のように使うのが便利
vscodeならインテリセンス利くし

679 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 18:40:16.27 ID:cOB3Ubn30.net]
>>667
プログラム水準(?)の高低でなく、実行速度の遅速でそう



680 名前:セわれるのを聞いたことはある。大昔ね。
事実かは知らぬ。
[]
[ここ壊れてます]

681 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 18:59:13.95 ID:2JAkKfpeM.net]
>>667
使うべきでない理由をなぜ聞かなかったのか?
それを書けば話は終わる
君の友人ほどスキルのある人はここにはいないからな

682 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 20:24:05.09 ID:FPtq7UfL0.net]
>>667
必要になるまで不要なもので汚すな
シンプルに書けってことかと

683 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 20:51:46.35 ID:yZGUhxlRM.net]
>>671
だなselfを二文字くらいの別名に出来ないのかな?

684 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 20:56:49.26 ID:F89FAkjE0.net]
perlから来たからselfは当たり前だと思ってる

685 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 21:06:27.04 ID:EoOj57gu0.net]
開発者間で同意取れるなら
ただの関数の引数だから好きに変えられはする

686 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 21:10:50.26 ID:5c+x4O200.net]
>>667
理由を示さないお作法は無視していい

687 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 21:21:40.38 ID:uDSXzENKM.net]
グローバル変数用のファイルを作ってas gでインポートってのをqiitaで見たけどかなり便利
g.nameみたいにアクセスする

688 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 21:30:42.42 ID:F89FAkjE0.net]
それは他に影響しないというだけで、グローバル変数の欠点は何も解決しない
作って使ってすぐ捨てるならいいけど、保守が必要なら時間かけてシンプルにしとかないと

689 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 21:48:48.07 ID:dM0Gb0+w6.net]
>>675
すればいいじゃん



690 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 21:57:03.34 ID:uDSXzENKM.net]
グローバル変数はプログラム全体を通した設定値とかに使うもんじゃない?
それこそメインプログラムにとってのselfよ
変に引数取りまくるより可読性高いと思う
規模にもよるんだろうけど

691 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 22:03:03.05 ID:F89FAkjE0.net]
configを読んでグローバルに格納してmain()を呼ぶ
みたいな作りになってるのが多い
うちのスクリプト

692 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 22:10:05.03 ID:EoOj57gu0.net]
設定値の保持ならぜんぜんOK
状態を丸見えで管理できないとこに置くなってことでしょ

693 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 22:13:24.86 ID:F89FAkjE0.net]
関数の中に下請け関数があって、
なんかごちゃごちゃしてきたからリファクタリングだと外に出したらスコープから外れたので、
じゃあみんなグローバル化したれ、みたいにglobal付けて誤魔化す

694 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 22:23:48.43 ID:dM0Gb0+w6.net]
せめてconst できればいいのに

695 名前:デフォルトの名無しさん mailto:sage [2022/11/09(水) 23:03:08.26 ID:a3eCQ+jX0.net]
>>667
どうせ、いたずらにclassを多用したゴミトランプゲームを
見せたんだろ?いつまでも練習だからって言って、設計もしないで
ゴミコードを見せ続けるから嫌われかけてるんだよ。

696 名前:デフォルトの名無しさん mailto:sage [2022/11/10(木) 00:21:13.04 ID:8bOle1Do0.net]
クラス化するのは、言語のタイプやプロジェクトの規模ではなくて
データ同士の相関を元に、見通しをよくすることが目的だと思う
あるいは自分用ライブラリとしてカプセル化しておきたいとか
そういう話を置いて、やらない方がいいレベルの問題があるのかw

697 名前:デフォルトの名無しさん mailto:sage [2022/11/10(木) 00:21:46.71 ID:a0I25TkAM.net]
>>667
理由を示せないお作法は取るべきでない

698 名前:デフォルトの名無しさん mailto:sage [2022/11/10(木) 00:24:11.32 ID:KkTOa1Su0.net]
>>667
おまいは友人に言われた事を何でも信じるのか?
この洗剤飲めるの。by アム・○○ぃ

699 名前:デフォルトの名無しさん mailto:sage [2022/11/10(木) 00:27:36.22 ID:OBeQnBIU0.net]
匿名掲示板で聞いて得た答えを信じるというのもどうかと思う



700 名前:687 mailto:sage [2022/11/10(木) 00:32:26.74 ID:ofaAiG0L0.net]
レスしてくれた皆さんありがとうございます
参考にさせて頂きたいと思います

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

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

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

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

>>687
ゴミときたもんだ
彼の人柄はそんな感じじゃないよ






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<241KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef