Pythonでリスト内の各要素の先頭文字(先頭要素)を取り出して出力する方法
Pythonでは、リストに格納された各要素の先頭部分を取り出したい場面がよくあります。ここでは、代表的な2つのケース——「文字列のリストから各文字列の1文字目を取得する場合」と「ネストされたリストから各サブリストの先頭要素を取得する場合」——について、具体的なコード例とともに解説します。
文字列のリストから各文字列の先頭文字を取得する
リストが文字列のコレクションである場合、forループで各文字列を順番に取り出し、インデックス [0] を指定することで先頭の1文字を取得できます。
>>> L1 = ['aaa', 'bbb', 'ccc'] >>> for string in L1: ... print(string[0]) ... a b c
string[0] のように、Pythonの文字列はインデックス0から始まるため、[0] を指定すると必ず先頭の文字が返されます。
ネストされたリストから各サブリストの先頭要素を取得する
リストの中にさらにリストが格納されている場合も考え方は同じです。外側のリストをループで回し、各サブリストに対して [0] を指定すれば、それぞれの先頭要素を取得できます。
>>> L1 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] >>> for lst in L1: ... print(lst[0]) ... 1 4 7
このように、文字列でもリストでも「シーケンスの [0] 番目を参照する」という同じ仕組みで先頭要素へアクセスできるのがPythonの特徴です。
補足:リスト内包表記を使った簡潔な書き方
結果を新しいリストとしてまとめて取得したい場合は、リスト内包表記を使うとより簡潔に記述できます。
>>> L1 = ['aaa', 'bbb', 'ccc'] >>> [s[0] for s in L1] ['a', 'b', 'c'] >>> L2 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] >>> [lst[0] for lst in L2] [1, 4, 7]
用途に応じて、print文で逐次出力する方法と、リスト内包表記で一括取得する方法を使い分けると良いでしょう。
-
Pythonで画面に出力するには?print文の基本と使い方を解説
Pythonで画面(標準出力)に文字や値を表示する最も基本的な方法は、print文を使うことです。>>> print Hello, world Hello, worldカンマ区切りで複数の項目を出力する同じ行に複数の項目をスペースで区切って表示したい場合は、項目の間をカンマで区切ります。>>> print Hello,, World Hello, Worldこの例では、どちらの文字列にもスペースは含まれていませんが、2つのオブジェクトの間にあるカンマによって、print文が自動的にスペースを挿入してくれます。さまざまなデータ型の出力print文は文字列だけで
-
Pythonで文字が大文字かどうかを判定する方法
Pythonで文字が大文字かどうかを判定する最も簡単な方法は、isupper()メソッドを使うことです。このメソッドは、対象の文字が大文字であれば True を、そうでなければ False を返します。 isupper()メソッドの使用例 print(Z.isupper()) print(u.isupper()) 出力 True False Z は大文字のため True が返され、u は小文字のため False が返されます。isupper() は1文字だけでなく、文字列全体に対しても呼び出すことができ、その場合はすべての文字が大文字である場合にのみ True を返します。 範囲比較による判定