文 (statement)

単純文 (simple statement)

import文

モジュールやパッケージを取り込めます。

import foo                 # foo imported and bound locally
import foo.bar.baz         # foo, foo.bar, and foo.bar.baz imported, foo bound locally
import foo.bar.baz as fbb  # foo, foo.bar, and foo.bar.baz imported, foo.bar.baz bound as fbb
from foo.bar import baz    # foo, foo.bar, and foo.bar.baz imported, foo.bar.baz bound as baz
from foo import attr       # foo imported and foo.attr bound as attr
7.11. The import statement - 7. Simple statements — Python 3.x documentation

「(most likely due to a circular import)」としてインポートに失敗するならば、このcircular import (循環インポート) が発生していないか確認します。たとえばファイル名がfoo.pyのときにfrom foo import attrとすると、このエラーが発生します。

ModuleNotFoundError: No module named '***'」としてモジュールを見つけられないならば、

pip list

として、そのモジュールを含むパッケージがインストールされているか確認します。

from

fromを使用して取り込むことで、関数や変数をパッケージ名やモジュール名を省略して参照できます。6.4. パッケージ - 6. モジュール — Python 3.x ドキュメント

たとえばimport package.moduleとして取り込むだけだと、そこで定義されている関数はpackage.module.func()のように呼ぶ必要がありますが、from package import moduleとするとmodule.func()のように呼べます。

assert文

assert expression1, expression2

とすることは、

if __debug__:
    if not expression1: raise AssertionError(expression2)

と等しく、最適化が要求されていないときにexpression1がFalseと評価されたときにAssertionError例外が投げられ、expression2と説明されます。

7.3. The assert statement - 7. Simple statements — Python 3.x documentation

複合文 (compound statement)

if文

if_stmt ::= "if" assignment_expression ":" suite
            ("elif" assignment_expression ":" suite)*
            ["else" ":" suite]
8.1. The if statement - 8. Compound statements — Python 3.x documentation

while文

for文

たとえば10回くり返すならば、次のようにします。

for i in range(10):
    print(i)

こうすると0、1、… 9と順に出力されます。

8.3. The for statement - 8. Compound statements — Python 3.x documentation 4.2. for 文 - 4. その他の制御フローツール — Python 3.x ドキュメント

with文

try…except…finallyのパターンを簡潔に記述できます。8.5. The with statement - 8. Compound statements — Python 3.x documentation