teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2020/02/22 06:18

投稿

退会済みユーザー
answer CHANGED
@@ -1,3 +1,17 @@
1
1
  `sys`は標準ライブラリです。
2
2
  [sys - Python 3.8.2rc2 Document](https://docs.python.org/ja/3/library/sys.html)で説明されていますが、`$ python fibo.py 50`を実行した場合、`fibo.py`が`argv[0]`相当, `50`が`argv[1]`に相当します。
3
- スクリプトとして実行した際に得た引数の数は`len(sys.argv)`で確認できます。
3
+ スクリプトとして実行した際に得た引数の数は`len(sys.argv)`で確認できます。
4
+
5
+ ---
6
+ > "main" ファイルとして起動されたとき
7
+
8
+ というのは`fibo.py`をスクリプトとして実行したり、関数定義以外の要素を入れて`fibo.py`そのものを実行したときを指します。
9
+ 下記例のように`fibo_test.py`のような別のモジュールに`import fibo`した場合は、"main"ファイルは`fibo_test.py`であり、`fibo.py`ではありません。
10
+
11
+ ```Python
12
+ # fibo_test.py
13
+ import fibo
14
+
15
+ fibo.fib(10)
16
+ fibo.fib2(10)
17
+ ```