LoginSignup
0
0

More than 1 year has passed since last update.

【初心者向け】Python なんかこんなやつ「if __name__ == '__main__':」の動作。#先輩は#おまじないって#言ってた

Posted at

文系やPython初心者向けの記事。
何かコードを渡されて解読しようにも、全く知識が無くて何で検索すれば良いのか分からない人向け。

・ナニコレ

if __name__ == '__main__':

長い説明は抜きにして動作だけ確認してみる。
※長い説明は他の人の記事参照。詳細動作説明があると読めなくなる人向け。

「if name == 'main':」があるパターン

・ソースコード

#!/usr/bin/python3

def main():
  print("Hello")

if __name__== "__main__":
  main()

・直接実行してみる。Helloが出力された=main()の中が実行された

$ ./python_test.py
Hello

・モジュールとしてimportしてみる。Helloが出力されない。
(なんかそうすれば動作の違いが分かるらしい。ほかの動作説明ページで見て一応、理解した。つもり)

$ python3
>>> import python_test

「if name == 'main':」がないパターン

・ソースコード

#!/usr/bin/python3

def main():
  print("Hello")

main()

・直接実行してみる。Helloが出力された=main()の中が実行された

$ ./python_test.py
Hello

・モジュールとしてimportしてみる。Helloが出力された。★★★★★★ここが違うところ★★★★★★★★★

$ python3
>>> import python_test
Hello
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0