当スレに★Python以外のプログラミング言語での回答類を書くべからず★
派生言語はそれぞれ専スレがあるのでそっち池。
「Ruby」「某言語では」をNGワード登録推奨。荒らしは、完全スルー放置が一番きらいです。
このスレッドは「お勉強」スレのほうには書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を、勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますので、お礼は Python の布教と初心者の救済をお願いします。
★エラーを解決したい場合は、
表示されてるエラー全文(勝手に省略やスクショうp等の横着クソ行為禁止)と、
実行環境(Pythonのバージョン・OSとIDEの種類とバージョン)をシッカリ書くこと。
【【【複数の連続半角スペースはなかったことになる・タブがうまく入らない5chの仕様】】】に注意!
Pythonの★ソースコードをそのまま5ちゃんにコピペすると、インデントが崩れてチヌ★ので
↓等の、いわゆるコードうp用サイトに貼ってこいください。
ttps://techiedelight.com/compiler/ Run Code機能あり。最近流行中?
ttp://ideone.com/ デフォ設定はC用のため言語選択ボタン押下がピコ手間かも。
ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/ まずまずシンプル。
ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。
◇Python公式サイト◇ http://www.python.org/
◇まとめwiki◇ ttp://python.rdy.jp/wiki.cgi
〇前スレ〇 くだすれPython(超初心者用) その49【まず1嫁】
https://mevius.5ch.net/test/read.cgi/tech/1595057607/
次スレは >>985 あたりが挑戦してくだしあ。(980過ぎて自動落ちは、無くなって久しい)
### END OF TEMPLATE ### ブレークポイントは初心者には難しい(覚えた方がいいのはたしか)からprint()とdir()を駆使したほうがいい
0953デフォルトの名無しさん2020/10/15(木) 21:39:14.53ID:hDJu8kS3
WindowsでtkinterのGUI作ってMacで動かしてみたら
レイアウトがグチャグチャになってるんだが
この原因てなに??
>>953
だいたいのところ、GUI表示に使うフォントが違うから
+Macはなんでもカドを丸めようとする
+最大化とか最小化とかのデフォ配置・縦横比が違う >>952
いまどきはdirよりはJupyter使ってライブラリの使い方調べた方が良くない? Python環境のデバッグで何でdir なのかさっぱりわからない。
何を言いたいの? どんなふうに使ったらデバッグできるというの?
>>956
初めにdirと書いたものじゃないし、デバッグとはちょっと違うとは思うけど、
ライブラリの使い方を調べるのに、
リファレンス読んでどんなメソッドがあるか解読するより、
戻ってきたオブジェクトをdirしてみた方が速いケースはよくある。
自分も書き始めのころはpythonのreplでdirしまくってた。 親に言われてプログラミングスクールに入ったら平方根?とか覚えさせられるんだけど大丈夫?
やたら数学っぽい授業やるんだけど必要なくね?
ぽいじゃなくて数学
コンピューター = 計算機
プログラムってのは計算機にどういう計算をするか書いたもの
文字列やファイル操作とかなら直接数字を弄ることは少ないけれど
プログラミングを学ぶなら数学は付いて回ると思っていい
>>958
平方根に?つけるということは、小学生か中学生くらい?
プログラミングをしたいなら学校の数学と英語はちゃんとやっておいた方がいいぞ。 0961デフォルトの名無しさん2020/10/16(金) 10:20:03.38ID:hP8hKOry
>>958
math.sqrt()的な話なら必要ない
数学的思考は必要だが数学そのものはプログラミングを学ぶには不要
O(log n)的な話なら必要
基礎として理解しておくとよい >>952
デバッガやREPLの使い方は
リファレンスの調べ方、エラーの見方と合わせて最初に身につけるべき三大重要スキル
printと違ってステップ実行することでプログラムの動きを視覚的につかみやすくなる 俺みたいに数学できないと、数学的知識や発想を使ったプログラムになると皆目わからない。
プログラミングが得意な人は基本数学も得意でしょ。
プログラミング覚えたところで英語数学できなかったらIT土方確定だけどな
0966デフォルトの名無しさん2020/10/16(金) 10:53:14.06ID:3SfKc/fX
プログラミングスクールでやる数学なんて大したことやらないだろうし、そこまで身構える必要ないでしょ
0967デフォルトの名無しさん2020/10/16(金) 11:16:01.90ID:jRO02CLT
math.sqrtと三角関数ぐらいは必要だろう
地図データとか使ってて距離や角度を計算するってよくあるし
数学に苦手意識持ってると出来る仕事の範囲が狭まるってのはほんとそうだと思うよ。
数学要らない仕事がほとんどだと思うけど、
誰でも出来る、代わりが効く仕事だからSESとかで1束いくらで値段つけられちゃうし。
0969デフォルトの名無しさん2020/10/16(金) 11:53:04.63ID:/poWTTfA
最近の高校生は
数学で行列を習わないな
習う=覚えるとは違うので
世の中の半分は同じ授業を受けて1ミリも覚えてない理解できてないまま卒業してるよ
0971デフォルトの名無しさん2020/10/16(金) 13:40:25.82ID:RKtFr9bS
三角関数の計算問題とか苦痛でしかないけど
テスト前のJKとか普通にこなしてるしな
後で忘れるんだろうけど
いや数学ならエクセルとかあるだろ
アプリを作りたいのに数学を覚えてる暇ない
プログラミングそのものを学ぶために必要な知識と
プログラムを使って解決したい問題領域の理解に必要な知識は別
汎用的に関数化されてるような数学知識よりもこの2つを区別できる基本的思考力のほうが遥かに重要
Pythonに計算量の概念って要るの?
あれ競プロだけの知識かと思ってたわ
>>974
pythonに限らずどんな言語だろうがプログラミングする上では意識すべきことだろ。
常識的な設計をすれば瞬間的に終わるようなものを、非効率なバカなロジックで書いて10秒待たされるようなことになれば、結果は間違っていなくても糞プログラムだよ。 補足。希にしか使わなくてその10秒が許容されるというのならそれでもいい。
ただ、高度な高速化なんてせずに普通にやれば速く動くはずのものを遅く動くようにしか書けなかったら、ダメプログラマだろう。
forを行列計算に置き換えて高速化したとしても可読性下がったら意味なくない?
競プロならどんなに読み辛くても早ければ正義だけどさ
機械学習、グラフィック、ゲーム、ロボット…
pythonがよく使われるユースケースに絞っても行列使わないとかありえないんだが
>>977
for文でも速度的に問題なくてわざわざ可読性を下げるメリットがないケースは好きにfor文を使えばいい。
計算量の考慮が重要だと言うのは、何でもかんでも最速がベストという意味ではなく、速度要求と可読性その他の要件とをバランスよく考慮して適切な手法を選択するということだぞ。 0981デフォルトの名無しさん2020/10/16(金) 16:55:45.74ID:RKtFr9bS
ベクトルの内積求めるときに
わざわざ対角行列使ってると(たとえ0掛けてても)計算量増えないか?
dot積使った方が速くね?って思う
>>980
,一-、
/ ̄ l | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
■■-っ < んなこたーない
´∀`/ \__________
__/|Y/\.
Ё|__ | / |
| У.. | アプリ側でこ速度改善なんてたかが知れてるから、基本可読性優先でいい
0984デフォルトの名無しさん2020/10/16(金) 18:23:43.58ID:n8fCSc9i
>>977
数理的な素養のある人が見ればむしろ行列計算の方が可読性上がることもあるんじゃない 可読性()言う奴の半数はゴミコード書くドカタ
可読性ガー言っとけば読解力やら諸々能力低い自分が許されると思ってる
0987デフォルトの名無しさん2020/10/16(金) 19:44:29.70ID:dDrh0EkP
>>985
ドヤ顔で誰もメンテナンスできないゴミコード量産して自分だけはスマートなコードを書いていると思ってそう 0988デフォルトの名無しさん2020/10/16(金) 21:55:17.39ID:gZ39DCJs
可読性と速さ、どっちを重要視したほうがいいかなんてのはどう考えてもケースバイケースで、正解なんか存在しない。
理系の研究者に弄ってもらうためのコードだったらforとかifの羅列よりも行列計算にまとめておいたほうがいいし、
かなりの疎行列を扱ってて行列計算だと全然速度出なくて困る場合は、速度アップを狙ってforループとかで書いたほうが良かったりもするし。
「アプリ側で速度向上なんてたかが知れてる」も明らかにケースに依る。
ベクトルの内積を計算するのに対角行列使う方法ってどんな方法なのか、興味あるので教えて欲しい。
たいてい行列計算って線形代数ライブラリを使って実装するし、線形代数ライブラリに
行列そのもの以外にベクトルもあって、ベクトルの内積、外積、ノルムぐらいは付いてるのが普通だし、
行列しかないライブラリでも、縦ベクトルをn行1列行列として作って、a.transpose() * bで計算するのがよくあるやり方じゃない?
>>989
いや、それはそうなんだけどさ。
解析的に解くために行列にしたようなものだったら、
実際の数値計算では行列で扱う必要もない場合もあるわけで、
計算方法、実装方法を選ぶのは目的依存だから必ずしも一つの正解はないんじゃない、ということを言いたい。
RDBのテーブル設計で、テーブルを必ずしも正規化しきった形が実装の正解ではないのと同じで。 ていうかITの世界でも今や文系が牛耳ってるわけだし理系が土方なのは不変の真理なんじゃないか?
>>991
それはITという言葉を狭く捉えすぎか、理系という言葉を広く捉えすぎ。
別に理系信奉ではないんだけど、理系的アプローチでしか出来ないことってそれなりにあって、そのアプローチを出来る人材が不足しているのは恐らく間違いがない。 理系な学科を卒業したってだけで
いわゆる文系脳なヤツも相当数混ざってるからな・・・
可読性と速度でモメてるおまいら
ちょっとでも他人がわかりづらいかも?と感じたら
とりまコメントかけ
できればユニバーサル英語でかけ
おk!
0994デフォルトの名無しさん2020/10/17(土) 10:05:55.87ID:1RQ0Wdhu
0995デフォルトの名無しさん2020/10/17(土) 11:50:33.93ID:0qFIP5N2
>>985
「可読性」に限らず
言い訳する人は行動パターンや結果が共通してるのが面白い df.loc[df['a'] == df['b'], 'flag'] = True
みたいな感じで
df['a'] == df['b']
df['c'] == df['d']
の2条件が成立したらflag=Trueとしたいです
なにかうまい方法ないでしょうか?
>>996
すいません
単に&で条件つなぐだけですよね
andと&間違えてた・・・
複数言語でアプリ同時に作成するとこうなるアホ頭脳です 0998デフォルトの名無しさん2020/10/17(土) 13:19:57.11ID:/Ip3Dsod
and & && * 色々ある
>>985
速度と可読性のバランスの取れたコーディングができない素人の言い訳ですね 1000デフォルトの名無しさん2020/10/17(土) 13:27:50.02ID:/Ip3Dsod
10011001Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 50日 17時間 3分 40秒
10021002Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php