TECH I.S.

Python-リスト内包表記


リスト内包表記

リスト内包表記は、既存のリストの値に基づいて新しいリストを作成する場合に、より短い構文を提供します。

例:

果物のリストに基づいて、名前に文字「a」が含まれる果物のみを含む新しいリストが必要です。

リスト内包表記がなければ、for内部に条件テストを含むステートメント:

fruits = ["apple", "banana", "cherry", "kiwi", "mango"] newlist = [] for x in fruits:   if "a" in x:     newlist.append(x) print(newlist)

自分で試してみる »

リスト内包表記を使用すると、たった 1 行のコードですべてを実行できます。

fruits = ["apple", "banana", "cherry", "kiwi", "mango"] newlist = [x for x in fruits if "a" in x] print(newlist)

自分で試してみる »



構文

newlist = [ expression for item in iterable if condition == True]

戻り値は新しいリストで、古いリストは変更されません。


状態

の*状態*に評価されるアイテムのみを受け入れるフィルターのようなものです。True.

「りんご」以外の商品のみ受け付けます。

newlist = [x for x in fruits if x != "apple"]

自分で試してみる »

conditionif x != "apple" が返されますTrue「リンゴ」以外のすべての要素に対して、新しいリストに「リンゴ」以外のすべての果物が含まれるようにします。

の*状態*はオプションであり、省略できます。

なしでif声明:

newlist = [x for x in fruits]

自分で試してみる »


反復可能

の*反復可能*リスト、タプル、セットなどの反復可能なオブジェクトにすることができます。

あなたが使用することができますrange()イテラブルを作成する関数:

newlist = [x for x in range(10)]

自分で試してみる »

同じ例ですが、条件があります:

5 未満の数のみを受け入れる:

newlist = [x for x in range(10) if x < 5]

自分で試してみる »


表現

の*表現*は反復の現在の項目ですが、新しいリストのリスト項目のようになる前に操作できる結果でもあります。

新しいリストの値を大文字に設定します。

newlist = [x.upper() for x in fruits]

自分で試してみる »

結果を好きなように設定できます。

新しいリストのすべての値を「hello」に設定します。

newlist = ['hello' for x in fruits]

自分で試してみる »

の*表現*フィルターのようにではなく、結果を操作する方法として、条件を含めることもできます。

「バナナ」の代わりに「オレンジ」を返す:

newlist = [x if x != "banana" else "orange" for x in fruits]

自分で試してみる »

の*表現*上記の例では、次のように述べています。

*「バナナじゃなければ商品を返品、バナナならオレンジを返品」。*



プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細