文字列の中で別の文字列を探す
文字列を扱うとき、どんな文字が含まれているかを気にすることがよくあります。たとえば、クッキーの一覧の中で Chocolate という単語が入っているものがいくつあるか、あるいは先頭の文字が C のものがいくつあるかを知りたい場合です。これらのチェックは、文字列に対して in キーワードや .startswith() メソッドを使うことで行えます。また、リスト内包表記に条件を付けることもできます。形式は [action for item in list if something is true] です。クッキーの例なら、[cookie_name for cookie_name in cookies if 'chocolate' in cookie_name.lower()] のようになります。これらのチェックは大文字・小文字を区別するため、ここでは文字列に対して .lower() メソッドを使っています。さらに、メソッドを続けて呼び出し、「メソッドチェーン」を行うこともできます。
この演習はコースの一部です
Python のデータ型
演習の手順
sで始まるgirl_namesのリストを作成して出力してください。angelを含むgirl_namesのリストを作成して出力してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Store a list of girl_names that start with s: names_with_s
names_with_s = [____ for name in girl_names if ____.lower().____('____')]
print(names_with_s)
# Store a list of girl_names that contain angel: names_with_angel
names_with_angel = [name for name in ____ if '____' in name.____()]
print(names_with_angel)