Pythonのお勉強 Part75 (715レス)
1-

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
1: デフォルトの名無しさん (ワッチョイ 33d8-PysV) [sage] 04/04(金)01:47 ID:UMpXJcmx0(1/4)
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024

↑スレ立てる毎に減るので、減ってたら3つに補充すること。

※前スレ
Pythonのお勉強 Part74
2chスレ:tech
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
696: デフォルトの名無しさん (ワッチョイ 174f-Fa+d) [] 08/11(月)10:30 ID:hg5eV/6v0(1)
CPUはレジスタに根渡ししてるだけなのにな

高級言語は余計なことやりすぎなんだよ
697
(1): デフォルトの名無しさん (ワッチョイ 9a02-QbuV) [sage] 08/11(月)12:14 ID:oIjo7VRO0(1)
AIを作ってるが、
Pythonは型が明記されてないから、わかりずらいな…

C++のほうが見やすい
698: デフォルトの名無しさん (ワッチョイ b680-kDJb) [] 08/11(月)12:23 ID:M47h2EOs0(1)
正直俺もどうにかC++に持ってこれないか無駄な努力してる
whisperとかはありがたい設計なんだけど翻訳系がなー

boost::pythonもcythonも結構Cじゃ完結しないのね
699: デフォルトの名無しさん (ワッチョイ 5a4e-a/Iv) [] 08/11(月)14:33 ID:uBk9CY7Y0(1)
C++なら値なのか参照なのかポインタなのか一目で分かるからな
上の議論もc++なら一発で解決する
700: デフォルトの名無しさん (ワッチョイ 0754-mJPu) [sage] 08/11(月)14:38 ID:Xx9EOjxc0(1)
deepcopy必須な再帰呼び出しをリファクタリングしてたらすっきり書けすぎて、
deepcopy部分が暗黙になってしまって逆に危険に
701
(1): デフォルトの名無しさん (ワッチョイ 3e3e-ZDX3) [sage] 08/12(火)04:07 ID:nMX81I590(1)
>>687
そうなんだけどさ
整数いくつ準備してんの
あらかじめ
702: デフォルトの名無しさん (ワッチョイ 4e10-1ngM) [sage] 08/12(火)08:04 ID:i9fPXIIb0(1)
>>701
>>692
703: デフォルトの名無しさん (ワッチョイ df7c-J6sU) [] 08/12(火)09:10 ID:rnDCu4n50(1)
>>697
型ヒントぐらい使え
704: デフォルトの名無しさん (ワッチョイ 230f-1ngM) [sage] 08/12(火)09:28 ID:ob7DnR/R0(1)
typingもバージョンアップのたびに機能が追加されるけれど、正直、フォローできているのは4分の1もないくらいかな。ある程度プラクティスが固まって本でも出たらそれに従うつもりではいるけれど、TypeGuardとかParamSpecとかを自分のコードで使うことはなさそう。
ヌル安全関係の演算子とかは、自分でも何とか理解できそうなので追加が可能なら欲しいかも。
705: デフォルトの名無しさん (ワッチョイ 0754-mJPu) [sage] 08/12(火)09:32 ID:lkNbq5IJ0(1/4)
全部書いて自動チェック機能も常用しないと意味がない
必要なとこだけコメントで十分
706
(1): デフォルトの名無しさん (ワッチョイ f6c1-1ngM) [sage] 08/12(火)09:59 ID:46uwwH/J0(1/4)
たとえばlistにリスト型宣言時に想定されていた要素型の部分型のオブジェクトを要素として入れたりすると、listは共変じゃないから型の互換性がないぞって警告が出たりするけど、そういうのにどこまで対応するのがいいのかってのがよく分からない。castして黙らせるのがいいのか、そういうものだと放置しておくのがいいのか。どちらにせよ、型ヒントを書かないコードと比べて可読性の低下に見合うメリットがあるのか。
基本的には型付けしていく方向性の方が良いんだろうなと思っているけど、今一つ自分のスタンスが固まり切らない感じ。
707
(1): デフォルトの名無しさん (ワッチョイ 0754-mJPu) [sage] 08/12(火)10:10 ID:lkNbq5IJ0(2/4)
型は決めずにいろいろ受け付けて、
想定外のが来ても意外とちゃんと動く、みたいなのがオブジェクト指向
708: デフォルトの名無しさん (ワッチョイ f6c1-1ngM) [sage] 08/12(火)10:18 ID:46uwwH/J0(2/4)
705と707は、方向性としては正反対なのでは。707はいわゆるダックタイピングのことだと思うけど、オブジェクト指向は静的型付けとも両立するよね。
709: デフォルトの名無しさん (ワッチョイ 0754-mJPu) [sage] 08/12(火)10:23 ID:lkNbq5IJ0(3/4)
型を混同するとバグる箇所と、
意図的に型を限定しない箇所がある

混同に該当するようなことをしても、柔軟に書かれてて期待通りに動いたりもする
厳密に追えば正しく動く理由は説明できるけど、
全部隠蔽して直感的に読めるコードだけが残る
710: デフォルトの名無しさん (ワッチョイ 5b2a-ycC0) [] 08/12(火)10:36 ID:JQsdcePx0(1)
>>707
なんか古めかしいよね。
型は決めずに void 型ポインタとしていろいろ受け付けるみたいな。
711: デフォルトの名無しさん (ワッチョイ f6c1-1ngM) [sage] 08/12(火)10:36 ID:46uwwH/J0(3/4)
静的型チェッカーは、onにすると基本的には全コードについて型チェックをするものだと思っていたけど、そこは型チェッカーの設定次第で調整できるのかな。あとはAny……。
712: デフォルトの名無しさん (ワッチョイ 2398-a/Iv) [] 08/12(火)10:46 ID:Gkg/fED60(1)
typescriptみたいに型システムを追加したPythonのスーパーセット作ればいいんだよ
713
(1): デフォルトの名無しさん (ワッチョイ de01-/C6k) [sage] 08/12(火)10:54 ID:ANRO+El50(1)
>>706
Protocol使う場面では?
structual typingでよければだけど
714: デフォルトの名無しさん (ワッチョイ 0754-mJPu) [sage] 08/12(火)11:00 ID:lkNbq5IJ0(4/4)
人間の管理能力は限界があるので、
人間側が間違わずに作るんじゃなくて、
最低限のことしか考えなくても安全に動作する方向に進化している

全員でそれをやると進まないので、
一部の頭いい人だけC言語でかっちり作る両輪体制
715: デフォルトの名無しさん (ワッチョイ f6c1-1ngM) [sage] 08/12(火)11:10 ID:46uwwH/J0(4/4)
>>713
ProtocolについてはロバストPytnonに出てきたのをちょっと読んだくらいしか知識がないのだけど、こういうときに使えるものなのかな。: list[base] という型指定はライブラリの中でされていて書き換えるのは躊躇されるので、そうだとするとちょっと難しいのかなと。
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.019s