!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(超初心者用) その58
https://mevius.5ch.net/test/read.cgi/tech/1662514433/
〇前スレ〇
Pythonのお勉強 Part68
https://mevius.5ch.net/test/read.cgi/tech/1663235546/
次スレの建立は>>985が挑戦する。(980通過して24h後も落ちなくなった)
### END of TEMPLATE ### ?
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
Pythonのお勉強 Part69
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ c733-stRS)
2022/11/24(木) 21:39:44.67ID:A6xfpKBe0226デフォルトの名無しさん (ワッチョイ af57-32gv)
2022/12/20(火) 15:28:58.59ID:JRmAGSz50 設定系は直接操作するんじゃなくて薄いインターフェイスかました方が
環境で分けたりモックも容易になるからそうしてる
環境で分けたりモックも容易になるからそうしてる
227デフォルトの名無しさん (ワッチョイ 4b97-jBQ6)
2022/12/20(火) 15:49:32.75ID:TXqlHGSa0 システムに一つしかないものを取り扱うハンドラみたいなのはglobalにするのが設計的にもおかしくない気がするけど
一概に負けとか言えないと思うけどなー
一概に負けとか言えないと思うけどなー
228デフォルトの名無しさん (ワッチョイ f363-WNmf)
2022/12/20(火) 16:03:10.85ID:bLZdNL8i0 原理主義はどこにでも存在するからな
229デフォルトの名無しさん (ワッチョイ f32c-XlG+)
2022/12/20(火) 16:16:10.63ID:3CIih5oL0 globalの唯一まともな使い道はキルフラグみたいに定義は関数外に書く必要がある、その関数専用の変数 みたいなやつ
ああ外部コントロールあるんだな とglobal, nonlocal宣言部で読める
それ以外ではスコープ外の変数は明示的に引数に渡すべきであって云々。逆にシグナル引数で渡すのは気持ち悪いし
ああ外部コントロールあるんだな とglobal, nonlocal宣言部で読める
それ以外ではスコープ外の変数は明示的に引数に渡すべきであって云々。逆にシグナル引数で渡すのは気持ち悪いし
230デフォルトの名無しさん (ワッチョイ becf-DiWi)
2022/12/20(火) 16:22:03.00ID:oBUmZgg40 グローバルは、C,B,BCPL,ALGOL以来の伝統的な概念で
変数に限らず外部モジュールをリンクするのにも必要だ
それらを踏まえたで、やたらと使うのはやめとこう、くらいの話か?
変数に限らず外部モジュールをリンクするのにも必要だ
それらを踏まえたで、やたらと使うのはやめとこう、くらいの話か?
231デフォルトの名無しさん (ワッチョイ 8a47-Jn8R)
2022/12/20(火) 16:26:08.70ID:Vq1NdAbT0 組み込み系は今でもC言語で、膨大なglobal変数の塊で動いている
当然干渉は発生しまくってそれは人間業ではコントロールできないので、
解析ツールでやばそうな箇所をリストアップして人間がじっくり調べる方法で今も作っている
当然干渉は発生しまくってそれは人間業ではコントロールできないので、
解析ツールでやばそうな箇所をリストアップして人間がじっくり調べる方法で今も作っている
232デフォルトの名無しさん (ワッチョイ 9761-XlG+)
2022/12/20(火) 17:01:28.69ID:ni2L+av30233デフォルトの名無しさん (アウアウウー Sa9f-TXpN)
2022/12/20(火) 17:44:04.58ID:GaxDEwu0a 変数宣言がないpythonでグローバル変数など狂気の沙汰
マジで辞めとけ
マジで辞めとけ
234デフォルトの名無しさん (スップ Sd8a-ytDT)
2022/12/20(火) 17:53:56.68ID:paaoChG1d グローバル変数に関してはPython は変数宣言あるぞ
235デフォルトの名無しさん (ワッチョイ 6a01-6ae9)
2022/12/20(火) 18:53:45.23ID:k+1oqZ2P0 >>230
グローバルはその話で合ってる
問題はPythonは読出しだとグローバルで書き込みだとローカルになると言う一瞬?ってなる仕様だと言う事
まあよくよく考えたらそれなりにリーズナブルな仕様だとは思う
グローバルはその話で合ってる
問題はPythonは読出しだとグローバルで書き込みだとローカルになると言う一瞬?ってなる仕様だと言う事
まあよくよく考えたらそれなりにリーズナブルな仕様だとは思う
236デフォルトの名無しさん (ワッチョイ 1f02-Mwb3)
2022/12/20(火) 19:28:23.44ID:XnPYkEMS0 グローバル変数用のモジュールを用意すれば全て解決
237デフォルトの名無しさん (アウアウウー Sa9f-TXpN)
2022/12/20(火) 19:31:19.26ID:GaxDEwu0a 大人しく引数で渡せって
238デフォルトの名無しさん (アウアウウー Sa9f-10I4)
2022/12/20(火) 19:32:53.36ID:KsWI+ERLa キーワードとしてのglobalと、使い方としてグローバルの話が混ざってるなぁ
モジュールに変数設定して実質的にグローバル変数として使えるので、普通に使っていてキーワードとしてのglobalの使用は不要と言っても言い過ぎではないだろう
組み込みがグローバルだらけになるのは、ハードウェアが変数の値を勝手に書き換えることがあり、それを前提とした処理を書くため
結果的に組み込みプログラマーはグローバルが不要なところでもグローバルで書くのが慣習となってしまった
これは直すべき悪習だが、ハードウェア開発とソフトウェア開発はスキルセットが違うので、両方をカバーできる人はほとんどいないのが現実
モジュールに変数設定して実質的にグローバル変数として使えるので、普通に使っていてキーワードとしてのglobalの使用は不要と言っても言い過ぎではないだろう
組み込みがグローバルだらけになるのは、ハードウェアが変数の値を勝手に書き換えることがあり、それを前提とした処理を書くため
結果的に組み込みプログラマーはグローバルが不要なところでもグローバルで書くのが慣習となってしまった
これは直すべき悪習だが、ハードウェア開発とソフトウェア開発はスキルセットが違うので、両方をカバーできる人はほとんどいないのが現実
239デフォルトの名無しさん (ワッチョイ 4b97-jBQ6)
2022/12/20(火) 20:25:35.35ID:TXqlHGSa0 >>238
そうなんだよなあ。組み込み屋と純粋ソフト屋は職能違うからね。
純粋ソフト屋が時間をかけて綺麗なコードを書く努力をしている間に、組み込み屋は別のことやってるからね。データシート通りに書き込んでるのに動かないけど、結局データシートが間違ってる、みたいな検証とか、波形見て波形が正しく出てない、みたいな検証とか。
純粋ソフト屋が組み込みのプログラムが汚いって馬鹿にするのはなんか違うと思うんだよね。
そうなんだよなあ。組み込み屋と純粋ソフト屋は職能違うからね。
純粋ソフト屋が時間をかけて綺麗なコードを書く努力をしている間に、組み込み屋は別のことやってるからね。データシート通りに書き込んでるのに動かないけど、結局データシートが間違ってる、みたいな検証とか、波形見て波形が正しく出てない、みたいな検証とか。
純粋ソフト屋が組み込みのプログラムが汚いって馬鹿にするのはなんか違うと思うんだよね。
240デフォルトの名無しさん (ワッチョイ 8a47-Jn8R)
2022/12/20(火) 20:38:06.37ID:is7jIq/00 組み込みのプロセッサは遅いんだよ
ROMもRAMも少なくて、きちきちに詰めてる
そんな条件で競争に勝つには、新しい手法なんか使ってられない
要はCPUパワーがあれば人間が楽できるという話なので、楽せずに安く作る
ROMもRAMも少なくて、きちきちに詰めてる
そんな条件で競争に勝つには、新しい手法なんか使ってられない
要はCPUパワーがあれば人間が楽できるという話なので、楽せずに安く作る
241デフォルトの名無しさん (ワッチョイ 3ebb-x89l)
2022/12/20(火) 21:30:58.08ID:6VqZ94+90 >>236
それ名前の衝突問題しか解決しないよね…
それ名前の衝突問題しか解決しないよね…
242デフォルトの名無しさん (ワッチョイ eaad-F7tP)
2022/12/20(火) 21:33:33.15ID:z0lLMPAj0 30代Pythonクソチョン男は強姦魔の犯罪者!
あなたの近くにいます!
父母と祖父母の戸籍謄本を提出させましょう!
あなたの近くにいます!
父母と祖父母の戸籍謄本を提出させましょう!
243デフォルトの名無しさん (ワッチョイ f32c-ZR1D)
2022/12/20(火) 22:21:22.22ID:3CIih5oL0 chatGPTにfactory methodわかんねーからどういう感じなのか教えてくれやって聞いた
ロボ「こういう感じやで猿野郎」
ぼく「ほげ」
class Product:
__def operation(self):
____pass
class ConcreteProduct(Product):
__def operation(self):
____print("eat your banana !")
class Creator:
__def factory_method(self):
____return Product()
class ConcreteCreator(Creator):
__def factory_method(self):
____return ConcreteProduct()
def main():
__concrete_creator = ConcreteCreator()
__product = concrete_creator.factory_method()
__product.operation()
if __name__ == "__main__":
__main()
ロボ「こういう感じやで猿野郎」
ぼく「ほげ」
class Product:
__def operation(self):
____pass
class ConcreteProduct(Product):
__def operation(self):
____print("eat your banana !")
class Creator:
__def factory_method(self):
____return Product()
class ConcreteCreator(Creator):
__def factory_method(self):
____return ConcreteProduct()
def main():
__concrete_creator = ConcreteCreator()
__product = concrete_creator.factory_method()
__product.operation()
if __name__ == "__main__":
__main()
244デフォルトの名無しさん (ワッチョイ eb09-JDfe)
2022/12/20(火) 22:25:24.04ID:2TJ1ocPA0 純粋ソフト屋さんにVerilogとか書かせたら発狂しそうw
245デフォルトの名無しさん (スッププ Sdb6-9TJG)
2022/12/21(水) 10:58:23.40ID:61VlK0r/d 組み込みソフト屋のソフトが汚いのは、ハードのテスト用にチョチョっと書いたのをそのまま使うから。ソースは俺
246デフォルトの名無しさん (ワッチョイ be63-e5AJ)
2022/12/21(水) 11:01:33.58ID:LOXcnIHB0 たまにお客を呼ぶようにすると、部屋を片付けるようになる
247デフォルトの名無しさん (ワッチョイ 2a7c-VwIi)
2022/12/21(水) 12:43:02.37ID:fQLbrXbN0 >>245
その理屈で機械学習屋やデータサイエンティストのコードも汚い、というかプロダクションレベルではないことが多いわな
その理屈で機械学習屋やデータサイエンティストのコードも汚い、というかプロダクションレベルではないことが多いわな
248デフォルトの名無しさん (ワッチョイ eb65-ytDT)
2022/12/21(水) 13:10:09.14ID:uJxDCyvm0 自分でケツ拭くなら別にいいよ
その点、機械学習屋やデータサイエンティストはだいたい責任取らずに逃げるからタチが悪い
組み込み屋はいかにクソでも最低限のプロ意識と責任感はある奴が多い
その点、機械学習屋やデータサイエンティストはだいたい責任取らずに逃げるからタチが悪い
組み込み屋はいかにクソでも最低限のプロ意識と責任感はある奴が多い
249デフォルトの名無しさん (ワッチョイ dbf0-TXpN)
2022/12/21(水) 13:17:21.01ID:M5sZwq5J0 機械学習屋のコードが1番きついわ
他の分野はまだ歴史があるからそれなりにコードは綺麗に書くという文化が浸透しているけど
機械学習の分野についてはバッチジョブだし
面倒なコードはフレームワーク側が持ってるから
ユーザーがグチャグチャのコードを書きがち
他の分野はまだ歴史があるからそれなりにコードは綺麗に書くという文化が浸透しているけど
機械学習の分野についてはバッチジョブだし
面倒なコードはフレームワーク側が持ってるから
ユーザーがグチャグチャのコードを書きがち
250デフォルトの名無しさん (ワッチョイ 6666-Jn8R)
2022/12/21(水) 13:48:59.56ID:RDg+NYLG0 サンプルがおかしい
世の中のソフトの大半はwebか金融だろ
世の中のソフトの大半はwebか金融だろ
251デフォルトの名無しさん (ワンミングク MM36-Mwb3)
2022/12/21(水) 13:50:28.08ID:yiozSUofM どうせ使い回さないのに綺麗に書く意味
252デフォルトの名無しさん (ガックシ 06e6-7E/c)
2022/12/21(水) 13:55:34.79ID:KT7+MN136 機械学習はもうyamlでやる時代
253デフォルトの名無しさん (ワッチョイ 4b97-jBQ6)
2022/12/21(水) 23:00:50.73ID:dTgA3nGq0254デフォルトの名無しさん (ブーイモ MM17-Z1hy)
2022/12/22(木) 04:33:23.99ID:NfOs0lsnM Web屋は仕様書を書くという習慣がないから
データサイエンティストなどという詐欺師と同じw
データサイエンティストなどという詐欺師と同じw
255デフォルトの名無しさん (テテンテンテン MMe6-PhJw)
2022/12/22(木) 08:44:45.20ID:YRfbWBEUM Pythonに出会って、自分がC言語に挫折した理由がやっとわかった
俺らがPythonで空気のように使っているリスト・タプル・辞書
これらがCにはないので、処理ロジックを書く前にまず
これらに相当するデータ構造を配列・ポインタを駆使して実現しなくてはならない
多くのC入門者はここで挫折してしまう
C言語に20年挑んでハローワールドから一歩も進めなかった男の悔恨
俺らがPythonで空気のように使っているリスト・タプル・辞書
これらがCにはないので、処理ロジックを書く前にまず
これらに相当するデータ構造を配列・ポインタを駆使して実現しなくてはならない
多くのC入門者はここで挫折してしまう
C言語に20年挑んでハローワールドから一歩も進めなかった男の悔恨
256デフォルトの名無しさん (ワッチョイ 6a01-6ae9)
2022/12/22(木) 09:18:43.62ID:dL3lthyL0 リスト、タプル、辞書程度を実装できないレベルならどっちにしろどこかで挫折してただろ...
257デフォルトの名無しさん (ワッチョイ 8a47-Jn8R)
2022/12/22(木) 09:31:03.41ID:LbQSD5ER0 辞書はどうやって作ったらいいか未だに判らない
awkの連想配列が魔法に見えた
awkの連想配列が魔法に見えた
258デフォルトの名無しさん (ワッチョイ 3ebb-fz0m)
2022/12/22(木) 09:41:13.34ID:hTl9WjWG0259デフォルトの名無しさん (ワッチョイ 8a47-Jn8R)
2022/12/22(木) 09:44:49.77ID:LbQSD5ER0 みんなが同じようなことをやるなら誰が代表してやればいい
言語に仕様として持たせたり、関数をライブラリにしたり、モジュールを作ったり、
サンプルプログラムを流用したり
AIに書いて貰ったり ←今ここ
言語に仕様として持たせたり、関数をライブラリにしたり、モジュールを作ったり、
サンプルプログラムを流用したり
AIに書いて貰ったり ←今ここ
260デフォルトの名無しさん (ワッチョイ 6a01-6ae9)
2022/12/22(木) 10:34:47.44ID:dL3lthyL0261デフォルトの名無しさん (スッププ Sdb6-9TJG)
2022/12/22(木) 10:38:02.07ID:O2u0DCiFd Pythonに慣れるとCでcsvファイル読み込むだけでも面倒臭く感じるな
262デフォルトの名無しさん (ワッチョイ afaa-32gv)
2022/12/22(木) 10:44:11.72ID:jksouGkc0263デフォルトの名無しさん (ワッチョイ 3ebb-fz0m)
2022/12/22(木) 10:49:10.26ID:hTl9WjWG0264デフォルトの名無しさん (ワッチョイ becf-DiWi)
2022/12/22(木) 10:55:23.14ID:N0yJkasM0 構造体の配列でいいのでは
265デフォルトの名無しさん (ワッチョイ be63-e5AJ)
2022/12/22(木) 11:01:24.77ID:smn+2blz0 オートマにばかり乗ってると、マニュアル車の運転が出来なくなる
266デフォルトの名無しさん (ワッチョイ 8a47-Jn8R)
2022/12/22(木) 11:06:25.86ID:LbQSD5ER0 結局は言語ではなくて、データ構造とアルゴリズムの理解なんだよな
昔はみんなが知ってるべき知識だったけど、どんどん知らなくても使えるようになってきた
昔はみんなが知ってるべき知識だったけど、どんどん知らなくても使えるようになってきた
267デフォルトの名無しさん (ワッチョイ afaa-32gv)
2022/12/22(木) 11:06:39.49ID:jksouGkc0268デフォルトの名無しさん (ワッチョイ 6a01-6ae9)
2022/12/22(木) 11:11:21.58ID:dL3lthyL0269デフォルトの名無しさん (ワッチョイ be63-e5AJ)
2022/12/22(木) 11:13:23.55ID:smn+2blz0 頭は筋肉と同じで、使わないと退化する
270デフォルトの名無しさん (ブーイモ MMe6-F7tP)
2022/12/22(木) 11:24:11.50ID:mRMrFGRVM 30代Pythonクソチョン男は強姦魔の犯罪者!
あなたの近くにいます!
父母と祖父母の戸籍謄本を提出させましょう!
あなたの近くにいます!
父母と祖父母の戸籍謄本を提出させましょう!
271デフォルトの名無しさん (ワッチョイ 1f5f-S/ke)
2022/12/22(木) 11:27:48.27ID:fdccbL2R0 >>268
なんかかわいそうな人 バイバイ
なんかかわいそうな人 バイバイ
272デフォルトの名無しさん (ワッチョイ be63-e5AJ)
2022/12/22(木) 12:08:33.90ID:smn+2blz0 知恵のないプログラマって、使い物にならないが
いるんだな、そういうのが
いるんだな、そういうのが
273デフォルトの名無しさん (ワッチョイ 6a01-6ae9)
2022/12/22(木) 12:10:33.74ID:dL3lthyL0274デフォルトの名無しさん (スップ Sd8a-UQjj)
2022/12/22(木) 12:23:21.69ID:eLm5edyfd 挫折した理由がわからないからなのか車輪の再発明に嫌気がさしたからなのかで違う
275デフォルトの名無しさん (ワッチョイ be63-e5AJ)
2022/12/22(木) 12:25:09.82ID:smn+2blz0 適性がないと思う
276デフォルトの名無しさん (ワッチョイ be10-ihXz)
2022/12/22(木) 12:29:33.73ID:Z8BCtWeu0 マウントおじさんは今日も元気だなぁ
277デフォルトの名無しさん (ワッチョイ 7e30-ZR1D)
2022/12/22(木) 18:06:39.79ID:mFK9O5hM0 >>261
学生の時、CとJava覚えて
Cで基本情報処理取ったけど
Python知ってから、家でPythonしか使ってないけど
一般的なプログラマーじゃないから会社でそういう言語を使うことはないけども
資料の自動化云々、家のラズパイ、仮想通貨関係とか
Pythonしか使ってない
学生の時、CとJava覚えて
Cで基本情報処理取ったけど
Python知ってから、家でPythonしか使ってないけど
一般的なプログラマーじゃないから会社でそういう言語を使うことはないけども
資料の自動化云々、家のラズパイ、仮想通貨関係とか
Pythonしか使ってない
278デフォルトの名無しさん (ワッチョイ cea4-gSWH)
2022/12/22(木) 18:20:13.15ID:indjkH6A0 けど
けど
けども
使ってない
けど
けども
使ってない
279デフォルトの名無しさん (ワッチョイ 7e30-ZR1D)
2022/12/22(木) 18:47:57.98ID:mFK9O5hM0280デフォルトの名無しさん (ワッチョイ 970c-ZvOm)
2022/12/22(木) 19:03:24.41ID:dbqZG8bb0 簡単に書けるレベルのものしかやったことないけど、プログラマとしての欲求が満たせて自分は満足している
簡単なものしか書けないレベルっていうのが本質的なんだろう
簡単なものしか書けないレベルっていうのが本質的なんだろう
281デフォルトの名無しさん (ワッチョイ be63-e5AJ)
2022/12/22(木) 19:07:06.14ID:smn+2blz0 人の揚げ足取りが一番つまらない奴
282デフォルトの名無しさん (ワッチョイ be63-e5AJ)
2022/12/22(木) 19:09:04.98ID:smn+2blz0 普通は簡単に書けるレベルをやるので十分なんだよ
自分がやってることをできるだけ手間掛けないで済むようにすることから始める
簡単に書けないことは、それで飯を食おうと思ったときにやれば良い
自分がやってることをできるだけ手間掛けないで済むようにすることから始める
簡単に書けないことは、それで飯を食おうと思ったときにやれば良い
283デフォルトの名無しさん (ワッチョイ cea4-gSWH)
2022/12/22(木) 19:19:51.34ID:gXKKQs6i0 >>281
人格攻撃もどっこいじゃない?
人格攻撃もどっこいじゃない?
284デフォルトの名無しさん (ワッチョイ be63-e5AJ)
2022/12/22(木) 19:25:45.86ID:smn+2blz0 技術板なんだから、お互いの技術向上と切磋琢磨で活用したい
多少のちゃちゃ入れはいいかもしれんが、
多少のちゃちゃ入れはいいかもしれんが、
285デフォルトの名無しさん (ワッチョイ 0f32-m4BD)
2022/12/22(木) 19:33:35.57ID:pS7gMn7x0 Cはプログラマを信用してるから最小設計ポインタドーン!
286デフォルトの名無しさん (ワッチョイ 7e30-ZR1D)
2022/12/22(木) 19:36:06.08ID:mFK9O5hM0 この流れで「どっこいどっこい」じゃなくて「どっこい」で来るのか、、、
なるほどね
なるほどね
287デフォルトの名無しさん (テテンテンテン MMe6-U4GE)
2022/12/22(木) 20:01:31.68ID:gat4VRlWM どすこいじゃなくて良かったじゃん
288デフォルトの名無しさん (テテンテンテン MMe6-PhJw)
2022/12/22(木) 20:08:02.26ID:YRfbWBEUM まあまあ喧嘩せんでくれ
自分はCに致命的に向いてないんだろう
例えば、20年Cに挑んでどうしても理解できなかったのがポインタのポインタ
**argvがわからないのでコマンドライン引数を使うアプリが作れず挫折
実はPythonにも*と**があって絶望しかかったのだけど、これはPythonを使う上で必須ではないようでセーフ
自分はCに致命的に向いてないんだろう
例えば、20年Cに挑んでどうしても理解できなかったのがポインタのポインタ
**argvがわからないのでコマンドライン引数を使うアプリが作れず挫折
実はPythonにも*と**があって絶望しかかったのだけど、これはPythonを使う上で必須ではないようでセーフ
289デフォルトの名無しさん (ワッチョイ 8a47-Jn8R)
2022/12/22(木) 20:13:27.78ID:LbQSD5ER0 あれは結局言語仕様がおかしいんだよな
Cで書く人はみんなargvを憎んでいる
Cで書く人はみんなargvを憎んでいる
290デフォルトの名無しさん (ワッチョイ becf-DiWi)
2022/12/22(木) 20:29:10.73ID:N0yJkasM0 アンカーだけのレス
へのアンカーなら分かるだろ
へのアンカーなら分かるだろ
291デフォルトの名無しさん (ワッチョイ cea4-gSWH)
2022/12/22(木) 20:50:41.85ID:PKP5vjg/0292デフォルトの名無しさん (ワッチョイ 7e30-ZR1D)
2022/12/22(木) 21:05:30.63ID:mFK9O5hM0293デフォルトの名無しさん (ワッチョイ 6a01-6ae9)
2022/12/22(木) 21:22:01.08ID:dL3lthyL0294デフォルトの名無しさん (ワッチョイ cea4-gSWH)
2022/12/22(木) 21:34:51.38ID:oY+OEcI00295デフォルトの名無しさん (ワッチョイ 6a01-6ae9)
2022/12/22(木) 21:36:57.96ID:dL3lthyL0 ↑ どう見ても負けず嫌いw
296デフォルトの名無しさん (ワッチョイ 8a47-Jn8R)
2022/12/22(木) 21:52:19.67ID:LbQSD5ER0 プログラミングのハードルが下がったなと実感する瞬間である
297デフォルトの名無しさん (ワッチョイ 7e30-ZR1D)
2022/12/22(木) 22:02:44.58ID:mFK9O5hM0 >>294
つまらないレスをする人って
それがわからないからつまらないレスをする訳だが
その人がレスを続けたところで当然内容はつまらない
せっかくそこそこ面白いのを出したんだから
面白い状態で終わらせとけばいいのにと思って
「やっぱりつまらないよねー」で終わっちゃったよね
つまらないレスをする人って
それがわからないからつまらないレスをする訳だが
その人がレスを続けたところで当然内容はつまらない
せっかくそこそこ面白いのを出したんだから
面白い状態で終わらせとけばいいのにと思って
「やっぱりつまらないよねー」で終わっちゃったよね
298デフォルトの名無しさん (ワッチョイ 3b32-m4BD)
2022/12/22(木) 22:05:02.75ID:c+J4V8f90 #include <stdio.h>をおまじないって説明すると馬鹿にされるけどさ
Cの入門書なんかで#include <stdio.h>を「今はとりあえず、おまじないと思っておいてください」みたいな説明してるとマニアックな人から糞本扱いされるけど、じゃどんな説明するのが正解なんだろうか。
hello worldを書いてる初心者に、プロトタイプとかマクロとかから説明するのだろうか。
なぜプロトタイプみたいのが必要かって言うと、printf()は分割コンパイルでライブラリというものに入っていて……とか初心者が納得のいくまで説明をしなきゃならないのか。
「stdio.hというファイルにprintf()を使うための情報が入っているのでそれを取り込む命令です。詳しいことはおいおいわかりす」って簡単に説明するなら「今はおまじないとおもっていてください」と大差ないし。
バシッと納得のいく説明の例を教えてほしい。
Cの入門書なんかで#include <stdio.h>を「今はとりあえず、おまじないと思っておいてください」みたいな説明してるとマニアックな人から糞本扱いされるけど、じゃどんな説明するのが正解なんだろうか。
hello worldを書いてる初心者に、プロトタイプとかマクロとかから説明するのだろうか。
なぜプロトタイプみたいのが必要かって言うと、printf()は分割コンパイルでライブラリというものに入っていて……とか初心者が納得のいくまで説明をしなきゃならないのか。
「stdio.hというファイルにprintf()を使うための情報が入っているのでそれを取り込む命令です。詳しいことはおいおいわかりす」って簡単に説明するなら「今はおまじないとおもっていてください」と大差ないし。
バシッと納得のいく説明の例を教えてほしい。
299デフォルトの名無しさん (ワッチョイ be63-e5AJ)
2022/12/22(木) 22:07:40.99ID:smn+2blz0 ハードル下がってプログラマ人口が増えると良いね
300デフォルトの名無しさん (ワッチョイ 8a47-Jn8R)
2022/12/22(木) 22:24:53.66ID:LbQSD5ER0 論理的に考えられる人が増えたらいいとは思う
301デフォルトの名無しさん (ワッチョイ cea4-gSWH)
2022/12/22(木) 23:02:38.79ID:TDhKeJEe0 >>297
面白いレスサンキュー
面白いレスサンキュー
302デフォルトの名無しさん (ワッチョイ 1f02-Mwb3)
2022/12/23(金) 08:01:48.05ID:Xg/JPq4Q0303デフォルトの名無しさん (ワッチョイ 8a47-Jn8R)
2022/12/23(金) 08:14:41.70ID:Z/1nZoBr0 実際にはプロトタイピングしているだけなので、includeしなくてもexternしてしまえば使える
304デフォルトの名無しさん (スッププ Sd03-RKev)
2022/12/25(日) 15:05:08.45ID:szxk8o6ud >>298
糞本扱いする人が糞だということにすれば問題なし
糞本扱いする人が糞だということにすれば問題なし
305デフォルトの名無しさん (ワッチョイ 07cf-4Ar3)
2022/12/25(日) 15:48:44.62ID:itz3wrzY0 おまじないがダメなら料理に例えようw
306デフォルトの名無しさん
2022/12/25(日) 21:04:49.84ID:UDG4tDm5 バリデーション管理しやすくかつクラスを普通の関数のように扱いたいのですがどうしたら良いでしょか・・
用途はありませんが試しに足し算するだけのクラスを実装してみました
from typing import Optional
from pydantic import BaseModel
class _Sum(BaseModel):
a: int
b: int
def sum(self):
return self.a+self.b
#sum()を使うまでに段階を踏んでしまう
Sum=_Sum(a=3,b=3)
print(Sum.sum())
#sum(2,3)のように使いたい
#やりたいことは↓こんな感じで、自分で作ってみました
https://ideone.com/mQQPoc
後々に”偶数しかダメ”とかsum09自体を拡張したりとかしたいです
用途はありませんが試しに足し算するだけのクラスを実装してみました
from typing import Optional
from pydantic import BaseModel
class _Sum(BaseModel):
a: int
b: int
def sum(self):
return self.a+self.b
#sum()を使うまでに段階を踏んでしまう
Sum=_Sum(a=3,b=3)
print(Sum.sum())
#sum(2,3)のように使いたい
#やりたいことは↓こんな感じで、自分で作ってみました
https://ideone.com/mQQPoc
後々に”偶数しかダメ”とかsum09自体を拡張したりとかしたいです
307デフォルトの名無しさん (ワッチョイ 7fbb-ccc6)
2022/12/25(日) 21:37:54.73ID:ZZol25Zb0 >>306
_Sumクラスのインスタンス生成時に型とかチェックしたい内容だけ渡すようにして、sumの中でそのチェックをするとか
_Sumクラスのインスタンス生成時に型とかチェックしたい内容だけ渡すようにして、sumの中でそのチェックをするとか
308デフォルトの名無しさん (スッップ Sdaf-T2CE)
2022/12/25(日) 23:13:02.03ID:ICQtDf1md 「普通の関数だと拡張性が弱まる」の意味がわからん
普通の関数のようにクラスのインスタンス化と特定のメソッドの呼び出しを実行できたとして、
そのインスタンスに後でアクセスする方法はないのだから関数ではなくクラスであることに何の意味もない
引数をバリデーションしたいだけなら、普通に引数に渡された値が条件を満たしていなければエラーを投げる関数を作って関数の先頭で普通に呼べばよい
アノテーションとタイプ数変わらないだろ
普通の関数のようにクラスのインスタンス化と特定のメソッドの呼び出しを実行できたとして、
そのインスタンスに後でアクセスする方法はないのだから関数ではなくクラスであることに何の意味もない
引数をバリデーションしたいだけなら、普通に引数に渡された値が条件を満たしていなければエラーを投げる関数を作って関数の先頭で普通に呼べばよい
アノテーションとタイプ数変わらないだろ
309デフォルトの名無しさん (スッップ Sdaf-T2CE)
2022/12/25(日) 23:24:11.94ID:ICQtDf1md あと、単に関数の処理としてクラスに実装された機能を利用したいということであれば、関数の中でそのクラスのインスタンスを作って目当てのメソッドを呼べばいいだけだ
トリッキーな仕掛けなど何一つとして必要ない
トリッキーな仕掛けなど何一つとして必要ない
310デフォルトの名無しさん (ワッチョイ fb56-lkZw)
2022/12/25(日) 23:32:47.68ID:B6BX6vu/0 逆説だけど同一だからって関数内で関数呼ぶならデコレータの存在意義ないやん
コードの理解を和らげるためにあるんで
コードの理解を和らげるためにあるんで
311デフォルトの名無しさん
2022/12/25(日) 23:41:27.55ID:UDG4tDm5 >>308
ちなみに>エラーを投げる関数を作って
的なのを実装するとどういう感じになりますか?
少し前に自分でやったのはかなり簡略しますがこんな感じになりました
def must_be_int(n):
if type(n) is not int:
raise TypeError(f"type error:'{n}' is not int")
return n
def sum(a:int,b:int) -> int:
return must_be_int(a)+must_be_int(b)
print( sum(2,3) )
print( sum(2,"3") )
ただこれだとsum関数のロジック
ちなみに>エラーを投げる関数を作って
的なのを実装するとどういう感じになりますか?
少し前に自分でやったのはかなり簡略しますがこんな感じになりました
def must_be_int(n):
if type(n) is not int:
raise TypeError(f"type error:'{n}' is not int")
return n
def sum(a:int,b:int) -> int:
return must_be_int(a)+must_be_int(b)
print( sum(2,3) )
print( sum(2,"3") )
ただこれだとsum関数のロジック
312デフォルトの名無しさん
2022/12/25(日) 23:43:25.19ID:UDG4tDm5 途中でした
ただこれだとsum関数のロジック内にチェックする関数が混在してくるので分けたいなと思い
must_be_int(a)
must_be_int(b)
return a+b
にしたりと、なんかしっくりこなくて・・
ただこれだとsum関数のロジック内にチェックする関数が混在してくるので分けたいなと思い
must_be_int(a)
must_be_int(b)
return a+b
にしたりと、なんかしっくりこなくて・・
313デフォルトの名無しさん
2022/12/25(日) 23:48:37.78ID:UDG4tDm5 ようは、
def sum(a:int,b:int) --> int:
このアノテーションだけでint以外の入ってきたらエラー吐いてくれればいいのに・・
みたいな
def sum(a:int,b:int) --> int:
このアノテーションだけでint以外の入ってきたらエラー吐いてくれればいいのに・・
みたいな
314デフォルトの名無しさん (ブーイモ MMf3-pLDh)
2022/12/26(月) 00:38:14.71ID:ZJD8d3IcM それはtype checkerの仕事やろ
315デフォルトの名無しさん (ブーイモ MM5b-pLDh)
2022/12/26(月) 00:54:00.05ID:3Zc3mIaMM316デフォルトの名無しさん (アウアウウー Sa1f-SvsN)
2022/12/26(月) 13:49:23.62ID:6bMfB0bxa >>306
https://ideone.com/LoiejS
class sum(object):
def __call__(self, a, b):
self.a, self.b = a, b
return self.a + self.b
print(sum()(2, 3))
https://ideone.com/LoiejS
class sum(object):
def __call__(self, a, b):
self.a, self.b = a, b
return self.a + self.b
print(sum()(2, 3))
317デフォルトの名無しさん (ワッチョイ 5310-4Ar3)
2022/12/26(月) 15:23:10.53ID:Z9xA6Bih0 >>306
普通に関数で実装してバリデーション用のデコレータ作れば?
def must_be_int(func):
__def _validate(*args):
____assert all(isinstance(x, int) for x in args), "all arguments must be integer"
____return func(*args)
__return _validate
def must_be_even(func):
__def _validate(*args):
__assert all(x % 2 == 0 for x in args), "all arguments must be even number"
____return func(*args)
__return _validate
@must_be_even
@must_be_int
def _sum(a, b):
__return a+b
print(_sum(2, 2))
print(_sum(1, 3)) # error
print(_sum(1.5, 2.5)) # error
普通に関数で実装してバリデーション用のデコレータ作れば?
def must_be_int(func):
__def _validate(*args):
____assert all(isinstance(x, int) for x in args), "all arguments must be integer"
____return func(*args)
__return _validate
def must_be_even(func):
__def _validate(*args):
__assert all(x % 2 == 0 for x in args), "all arguments must be even number"
____return func(*args)
__return _validate
@must_be_even
@must_be_int
def _sum(a, b):
__return a+b
print(_sum(2, 2))
print(_sum(1, 3)) # error
print(_sum(1.5, 2.5)) # error
318デフォルトの名無しさん
2022/12/26(月) 19:13:28.11ID:271e9Qy4 >>316,317
ありがとうございます
実は__call__つかった方も関数の方(>306のコメントアウトに書いてあるように(ただ、args[1:]の部分が合わないのでバリデーションの部分は意図的に省いて書いてます))も
どちらもやっていたのですが諦めていました
ひとつは、(おま環なのかエディタの設定なのか)今度はアノテーションの方がなぜかデコレーターの方が優先されちゃって表示されて諦めたのと
もうひとつは、今回のような試しにやってみた足し算のみの用途なしな機能だけではない場合、
関数の方だと後々に拡張したいってなったときに難しそうだなと思い諦めました
ありがとうございます
実は__call__つかった方も関数の方(>306のコメントアウトに書いてあるように(ただ、args[1:]の部分が合わないのでバリデーションの部分は意図的に省いて書いてます))も
どちらもやっていたのですが諦めていました
ひとつは、(おま環なのかエディタの設定なのか)今度はアノテーションの方がなぜかデコレーターの方が優先されちゃって表示されて諦めたのと
もうひとつは、今回のような試しにやってみた足し算のみの用途なしな機能だけではない場合、
関数の方だと後々に拡張したいってなったときに難しそうだなと思い諦めました
319デフォルトの名無しさん (ブーイモ MMf3-kIRX)
2022/12/26(月) 22:18:46.52ID:IvZMxVOoM 30代Pythonクソチョン男は強姦魔の犯罪者!
あなたの近くにいます!
父母と祖父母の戸籍謄本を提出させましょう!
あなたの近くにいます!
父母と祖父母の戸籍謄本を提出させましょう!
320デフォルトの名無しさん (ワッチョイ 3333-aH43)
2022/12/28(水) 11:04:27.64ID:JTGZh46Y0 止まってる車に60キロで走ってきた車がぶつかったら、中の人が受ける衝撃ってどっちの車も同じなんだっけ?
321デフォルトの名無しさん (ワッチョイ 3333-aH43)
2022/12/28(水) 11:04:43.39ID:JTGZh46Y0 あ、スレ違いですね。忘れてください
322デフォルトの名無しさん (ワッチョイ 7b97-H+55)
2022/12/28(水) 12:07:11.51ID:L0e9GMVm0 >>320
同じではない
軽自動車とトレーラーなんか考えてみたらわかるけど、作用反作用の法則で同じ力が軽自動車とトレーラーにかかるけど、軽自動車は潰された後完全にトレーラーに張り付く形で進み、トレーラーはわずかにしか減速しない
よって中の人の衝撃は全然違う
塑性変形で弾性衝突じゃないからそうなると思うかもしれないが、完全弾性衝突の場合だと軽い方が思いっきり跳ね返るだけね。よく跳ねるボールの中にいる人と、地下室の中にいる(地球という大きいボールのなかにいる)人を考えてもいいかも
要は同じ運動量が交換されるが、同じ運動量でも質量が違えば加速度は違うということだね
同じではない
軽自動車とトレーラーなんか考えてみたらわかるけど、作用反作用の法則で同じ力が軽自動車とトレーラーにかかるけど、軽自動車は潰された後完全にトレーラーに張り付く形で進み、トレーラーはわずかにしか減速しない
よって中の人の衝撃は全然違う
塑性変形で弾性衝突じゃないからそうなると思うかもしれないが、完全弾性衝突の場合だと軽い方が思いっきり跳ね返るだけね。よく跳ねるボールの中にいる人と、地下室の中にいる(地球という大きいボールのなかにいる)人を考えてもいいかも
要は同じ運動量が交換されるが、同じ運動量でも質量が違えば加速度は違うということだね
323デフォルトの名無しさん (アウアウウー Sa1f-SHOq)
2022/12/29(木) 11:07:07.82ID:jCj0trE4a324デフォルトの名無しさん (ブーイモ MMb3-pLDh)
2022/12/29(木) 15:42:32.28ID:NCBV9Sb6M >>323
動画のクオリティ高くてビビったw
動画のクオリティ高くてビビったw
325デフォルトの名無しさん (ワッチョイ 3f36-l5v6)
2022/12/29(木) 19:35:56.88ID:RiMtnxAm0 pythonのバージョン管理ってアナコンダがいいの?
俺ドッカーしか知らんかったからずっとドッカーのこと調べてたんだが
俺ドッカーしか知らんかったからずっとドッカーのこと調べてたんだが
326デフォルトの名無しさん (ワッチョイ 3f36-l5v6)
2022/12/29(木) 19:36:47.55ID:RiMtnxAm0 あとpythonの開発環境って3.8が多いみたいなんだけど理由あるの?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★4 [ぐれ★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 【大分】佐賀関で大規模火災、170棟以上が延焼中 70代男性1人と連絡取れず [ぐれ★]
- 【サッカー】U-17日本代表、激闘PK戦制す 北朝鮮撃破で6大会ぶり8強入り U17W杯 [久太郎★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 【サッカー】日本代表、ボリビアに3発快勝 森保監督通算100試合目を飾る…鎌田、町野、中村がゴール [久太郎★]
- 自閉症が「んなっしょい」と連呼するお🏡
- アンケート調査で「高市発言は問題なし」 93.5%wwwwwwwwwwwwwwwwwwwwwwwww [279254606]
- じゃあ何故俺がここまで独身チーズ男性を嫌っているか理由が分かる?
- クマの救急医「ヘルメット被れ」 [787212328]
- 生活保護の受給額ってなんでこんなに安いの?
- 自民党議員「高市は先人が築き上げた日中関係を壊した。外務省が謝罪に言ってるが自分で責任を取れ」 [834922174]
