Тёмный

Pythonでよく見かける『if __name__ == ‘__main__‘』をわかりやすく解説 

Просмотров 48 тыс.
% 1 218

■ ビジネス戦闘力が圧倒的に向上するプログラミングスクール 『code4biz』🧑‍💻
↓説明会はこちら↓
code4biz.jp/
※ 締切日:3月23日(水)23:59
※ 第2期開催は当分ありません
👨‍💻⬇︎無料LINE登録で近日限定コンテツ公開⬇︎👨‍💻
✅プログラミング学習効率を飛躍的に高める3つの考え方
✅必ず知っておくべきエラー解決法9選
✅プログラミングによる業務効率化の重要な考え方と成功事例3選! etc...
line.me/R/ti/p/@114eqgxg
Pythonを学んだことがある皆さんであれば、一度は見たことがある『if __name__=='__main__'』 について説明します!まずは、__name__ を理解するところから始めていきます。
■ Twitter
03Imanyu
■ Udemy
www.udemy.com/user/jin-xi-hang-ping-2/
#__name__ #Python

Опубликовано:

 

16 янв 2022

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 71   
@user-yy4md6ve1v
@user-yy4md6ve1v 7 месяцев назад
これは本当に神動画。 参考にさせていただきます。
@Libertas011
@Libertas011 2 года назад
ビックリするほど分かりやすかったです。 ありがとうございます。
@minenao2002
@minenao2002 2 года назад
こんなにわかりやすく解説してくれるなんて。 神動画ですね。
@imanyu_programming
@imanyu_programming 2 года назад
そのようにおっしゃっていただき嬉しいです😂
@user-zb6cr5xu8z
@user-zb6cr5xu8z 2 года назад
めちゃくそわかりやすくて助かりました! これからもお世話になります!
@imanyu_programming
@imanyu_programming 2 года назад
良かったです!!☺️
@wcc23579
@wcc23579 2 года назад
今まで見てきたいろんな動画の中で、1番分かりやすかったです…ありがとうございます…
@imanyu_programming
@imanyu_programming 2 года назад
ありがとうございます!!😂
@yujiro103
@yujiro103 22 дня назад
5年ほど分からず放置してたけど初めて分かりました。ありがとうございます!
@obake_12
@obake_12 2 года назад
本当にありがたい。 独学してて、調べる気にもならなかったやつ!
@imanyu_programming
@imanyu_programming 2 года назад
よかったです☺️
@user-wu6rd6ry9l
@user-wu6rd6ry9l 2 года назад
ダブルアンダースコアはダバダバと読むのが楽でおすすめ。
@hanamoto1122
@hanamoto1122 2 года назад
if __name__ == "__main__":の意味が理解できました!、今までは良く分からない呪文のようなものでしたが、明日からは意識して使ってみます。ありがとうございます。
@imanyu_programming
@imanyu_programming 2 года назад
是非使ってください!!
@itomaru0203
@itomaru0203 2 года назад
単に自作の関数まとめただけのモジュールで他のファイルで呼び出す以外で使うつもりのないものには特に書かなくていいということなんですかね? それともそういう場合でも何か書いておいた方がいいんでしょうか?
@satoru3893
@satoru3893 2 года назад
モジュールの単体テストで使う時に有用ですね
@iKami-jv9ml
@iKami-jv9ml 2 года назад
マルチプロセスでいくつかプロセス立てる際に、メイン処理以外でプロセスが乱立するのを防ぐ場合にも使いますね〜
@imanyu_programming
@imanyu_programming 2 года назад
おぉ、そうなんですね!! 教えていただきありがとうございます!!
@tsubasa_km
@tsubasa_km 2 года назад
__name__と__main__のどっちが変数でどっちを”で囲うかごちゃごちゃになってたので助かります()
@imanyu_programming
@imanyu_programming 2 года назад
ごちゃごちゃになるやつですよね😅
@ryusei8833
@ryusei8833 2 года назад
何を見てもちゃんと解説されていなかったのでようやく理解ができました!ありがとうございます 少し関係のないことですがいつも解説に使っている 文字を囲ったり クリックした際チカチカとしてるのは何のアプリを使っているのでしょうか
@imanyu_programming
@imanyu_programming 2 года назад
ScreenBrushです!!
@ryusei8833
@ryusei8833 2 года назад
@@imanyu_programming ありがとうございます。 このアプリのおかげですごくわかりやすくていつも助かっています! 応援してます
@ShinyaYaginuma
@ShinyaYaginuma 2 года назад
プログラミング初心者です。__init__.pyの説明もお願いします。
@KG-ni6zp
@KG-ni6zp 2 года назад
今まで分からずに使っていましたが、やっと理解できました! こんなに簡単だったとは驚きです(^o^) ありがとうございました!!!!!!!!!!!!
@imanyu_programming
@imanyu_programming 2 года назад
意外と簡単ですよね☺️
@kenkenmath
@kenkenmath 2 года назад
スルーしたと見せかけてちゃんと伏線回収しに来てた〜!
@imanyu_programming
@imanyu_programming 2 года назад
回収しました😁
@dollshacky802
@dollshacky802 2 года назад
いつも動画拝見しております。 特にpythonを学び始めたとき、クラスの動画はとても参考になりました。 今回の動画の内容とは異なるんですが、私はいつもjupyterを使っています。この動画で使われているのは なんというツールなのでしょうか。素人質問ですみません。
@imanyu_programming
@imanyu_programming 2 года назад
Visula Studio Codeです!
@user-xh4bj1xw3q
@user-xh4bj1xw3q 2 года назад
なるほど。わかった。
@user-dc1yt2fn8s
@user-dc1yt2fn8s 2 года назад
フラスク起動とか をそのif文の下に書けば 誤差動も防げると?
@user-ef5wf8xm8m
@user-ef5wf8xm8m 2 года назад
sample2はsample1の関数funkを実行しているので、sample1のif分は関数funkの外にあり、sample2を実行しても何も変わらないと思うのですが合っていますか? 説明の本質ではないですが、これではsample2を最後に実行する意味がないかなと思ったので確認のためコメントさせていただきました。間違っていたらすいません。
@imanyu_programming
@imanyu_programming 2 года назад
if文の中身が実行されないことを確かめるためにsample2を実行しました☺️
@itomaru0203
@itomaru0203 2 года назад
sample2の中ではfunc()しか呼び出していないのでif文の部分は実行されていないのでは?という似た疑問を私ももったのでpythonで確認してみました。 もしsample1.pyのdef func(): で定義した後のprint()部分がif__name__==__main__ に囲われてないとsample2でimport sample1をしたところでprint()部分が実行されてしまいます。 import時点でsample1.pyファイルを直接実行するのと同じようにモジュールを実行しているんだと思われます。 そのためif文の有無でsample2のsample1.func()部分の実行結果は変わらないけれどimport sample1の部分の実行結果が変わってくるので、全体としてsample2の実行結果は変わってくるようです。
@ignis___fatuus
@ignis___fatuus 2 года назад
ちょうど気になってたから助かった。 つまりimport sample1 って頭に書くことと、sample1の中身を直接頭に書くことが同じってことかな。
@source_master
@source_master 2 года назад
importって自作関数を呼び出せるようにするためのものかと思ってたけど、importした時点でグローバルも含めて一度全部実行してるってことなのか
@user-xk8ln6it5w
@user-xk8ln6it5w 4 месяца назад
全部実行してんのかよ一番大事なとこでしょおおおおお
@user-ct7bu6np3s
@user-ct7bu6np3s 2 года назад
スルーしてたけどやっと意味がわかりました
@imanyu_programming
@imanyu_programming 2 года назад
良かったです☺️
@tomoyukimiyata9298
@tomoyukimiyata9298 2 года назад
本筋と関係ないのですが、動画の中でマウスカーソルで四角で囲んだりしているのはどういうツールを使っていますか?
@imanyu_programming
@imanyu_programming 2 года назад
ScreenBrushです!!
@user-qq6wo5ut4q
@user-qq6wo5ut4q 2 года назад
これわからんかった笑笑 おまじないかと思ってました
@imanyu_programming
@imanyu_programming 2 года назад
実は難しくないおまじないです!笑
@akahanaman
@akahanaman 2 года назад
今まで何でこれ書いてあるんだろう? 何で書く必要あるんだろう?って思ってましたが やっとわかりました。 mainで実行する場合と呼び出す場合で 使い分けできそうだなと感じました!
@ytjapan9
@ytjapan9 2 года назад
8:10 ん、間違ってたらすみません。 python3 sample2.pyを叩くと、sample1.func()のみが呼び出されるので、そもそもsample1.pyのif文の中身がFalseになる以前に、そのif文を通らないですよね? それって、わざわざif文で書かなくても、def func():の外にprint(“hogehoge”)を書いておけば、同じ結果になる気がします。 でも、あえてif文で書くのはおまじないというか慣習というか保守性というかそういう観点があるからなのでしょうか?
@user-ip7uo8cx4b
@user-ip7uo8cx4b 2 года назад
試してみたらわかると思いますが、import sample1をした段階でsample1.pyに記述されているプログラムが全て実行されるので同じ結果にはなりません。
@user-mj3bz9sl4b
@user-mj3bz9sl4b 2 года назад
ありがとうございます! 基本、アンダースコアで挟まった形したやつ (__〇〇__←こういうやつ) 嫌い笑
@imanyu_programming
@imanyu_programming 2 года назад
わかります🥲😂
@user-nx5iz6wi7t
@user-nx5iz6wi7t 2 года назад
マウスカーソルのエフェクト気になったんですけど何使ってるんですか?
@Da-fk3gm
@Da-fk3gm 2 года назад
僕も気になりました。コメントがしばらくたってますがわかりましたか?
@hiroyan2023
@hiroyan2023 2 года назад
画面上一時的に図形を描き表示させるソフトはなにをお使いでしょうか.作業のプロセスがよくわかります.
@imanyu_programming
@imanyu_programming 2 года назад
ScreenBrushです!
@hiroyan2023
@hiroyan2023 2 года назад
@@imanyu_programming 有難うございました。windowsなのですが,Epic Penが同じような機能が使えます.
@tskikoh
@tskikoh 2 года назад
sample2.pyを「import sample1」と1行だけ書いて sample1.pyは「if __name__=='sample1':」のパターンもやった方が理解しやすいかなと思いました。
@tskikoh
@tskikoh 2 года назад
importの意味をちゃんと理解してないと、importはただのおまじないで、sample1.func()で、func関数を呼び出しただけに見えるので、sample1.pyのif __name__=='__main__':は呼び出されてないように感じてしまいそうです。
@soshina3
@soshina3 4 месяца назад
func()にif文入れないといけないのでは?と思ってる私が間違えてるのだろうか
@AIxCE
@AIxCE 2 года назад
今さっそく見ながらソース書いてます^^
@imanyu_programming
@imanyu_programming 2 года назад
いいですね☺️
@masamasa8996
@masamasa8996 2 года назад
独学で学んでいますが、__◯◯__は敷居が高そうでスルーしていました。 目から鱗です!知ってしまえば、何てことないですね。
@imanyu_programming
@imanyu_programming 2 года назад
確かに敷居が高そうに見えますよね😂
@anais5378
@anais5378 Год назад
所在?を表すイメージなんですね
@yn2814
@yn2814 2 года назад
メインのスクリプトだからmainなのか
@heropu-65
@heropu-65 2 года назад
知っててもダブルアンダースコアがゲシュタルト崩壊する~。ダンダーと呼ぶのは知りませんでした。覚えておこう。
@user-nh9xk1rc8u
@user-nh9xk1rc8u Год назад
pythonのプログラム(スクリプト)はモジュールとしても実行ファイルとしても使えるように作るのでコレでその切り替えをする訳ですね
@user-of2db6hs5g
@user-of2db6hs5g 5 дней назад
結局、これがないと どのような危険があるのかがわからん
@sasensui1000
@sasensui1000 5 месяцев назад
ダンダーネームと言っている
@yositune7940
@yositune7940 2 года назад
略して「アンスコ」で、言う人結構多いので ダブルアンスコで大丈夫ですよ
@imanyu_programming
@imanyu_programming 2 года назад
そのようにします😂