1. เรียนรู้
  2. /
  3. Courses
  4. /
  5. 効率的なPythonコードの書き方

Connected

Exercises

これから学ぶ内容のさわり

この演習では、リストをループ処理する際の「非Pythonic」な方法と「Pythonic」な方法の両方を見ていきます。

names = ['Jerry', 'Kramer', 'Elaine', 'George', 'Newman']

上のリストから、6文字以上の名前だけを集めたいとします。ほかのプログラミング言語では、インデックス変数(i)を作り、i を使ってリストを反復し、if文で6文字以上の名前を集めるのが一般的です。

i = 0
new_list= []
while i < len(names):
    if len(names[i]) >= 6:
        new_list.append(names[i])
    i += 1

では、もっと「Pythonic」なやり方を見ていきましょう。

คำแนะนำ 1 / 3

undefined XP
  • 1

    「非Pythonic」な方法で作成されたリスト new_list を表示してください。

  • 2

    より「Pythonic」な方法では、インデックス変数ではなく names の要素に直接ループします。better_list を表示してください。

  • 3

    最も「Pythonic」な方法はリスト内包表記を使うことです。best_list を表示してください。