Hackerrankのリスト内包表記の使用法と例


  1. リスト内包表記の概要: リスト内包表記は、短くてシンプルな方法でリストを作成するための構文です。一般的な形式は次のようになります:
new_list = [expression for item in iterable if condition]

この構文では、iterableから要素を順に取り出し、conditionが真の場合にexpressionを適用して新しいリストに追加します。

  1. リスト内包表記の応用例: 以下に、いくつかの具体的な例を示します。

例1: 1から10までの偶数のリストを作成する

even_numbers = [x for x in range(1, 11) if x % 2 == 0]

例2: 文字列のリストから長さが5未満の要素を取り出す

words = ["apple", "banana", "cherry", "date", "elderberry"]
short_words = [word for word in words if len(word) < 5]
  1. Hackerrankでのリスト内包表記の活用: Hackerrankの問題を解く際には、リスト内包表記を使用してコードを短く、効率的に書くことができます。具体的な問題によっては、リスト内包表記を使わないと解けない場合もあります。

例3: Hackerrankの問題「Positive Squares」 問題: 正の整数のリストが与えられる。リスト内の各要素の平方からなる新しいリストを作成し、そのリストを返す関数を実装せよ。

def get_positive_squares(arr):
    return [x2 for x in arr if x > 0]