PythonでのforEachメソッドの基本的な使い方とループ処理方法
- システム
エンジニア - Pythonでの要素の配列や表示に使われるfor文のようなメソッドはありますか?
- プロジェクト
マネージャー - はい。Pythonではfor文の代わりにforEachメソッドを利用します。
PythonでのforEachメソッドの使い方とは?
今回は、PythonでのforEachメソッドの使い方について説明します。配列の繰り返し処理をする場合などには、forEachメソッドを使用します。
PythonでのforEachメソッドの使い方に興味のある方はぜひご覧ください。
基本的な使い方
実は、PythonにはforEachという名前のメソッドはありません。for文がその代わりとなります。
for文は以下のような文法です。
1
2
|
for 変数名 in イテラブルオブジェクト:
繰り返し処理
|
それではfor文を使った実際のソースコードを見てみましょう。
1
2
3
4
5
|
array = ['item1', 'item2', 'item3']
# forEachに相当する繰り返し処理
for item in array:
print(item)
|
実行結果は以下のようになります。
1
2
3
|
item1
item2
item3
|
配列の要素がすべて出力されていることが分かります。このようにPythonでは、for文で繰り返し処理を実現します。
ループ正常終了後の処理
Pythonでは、for文の正常終了後の処理をelse句で記述できます。
実際のソースコードを見てみましょう。
1
2
3
4
5
6
7
|
array = ['item1', 'item2', 'item3']
# forEachに相当する繰り返し処理
for item in array:
print(item)
else:
print('for文の正常終了')
|
実行結果は以下のようになります。
1
2
3
4
|
item1
item2
item3
for文の正常終了
|
for文が正常に終了した後に、else内が実行されていることが分かります。このようにPythonでは、for文の正常終了後の処理をelse句で記述できます。
break
Pythonでは、for文を中断するのにbreakを指定します。
実際のソースコードを見てみましょう。
1
2
3
4
5
6
7
8
9
10
|
array = ['item1', 'item2', 'item3']
# forEachに相当する繰り返し処理
for item in array:
if item == 'item3':
print('break')
break
print(item)
else:
print('for文の正常終了')
|
実行結果は以下のようになります。
1
2
3
|
item1
item2
break
|
特定の条件でfor文を中断していることが分かります。また、for文は正常終了していないので、else内は実行されません。
continue
Pythonでは、for文をスキップするのにcontinueを指定します。
実際のソースコードを見てみましょう。
1
2
3
4
5
6
7
8
9
10
|
array = ['item1', 'item2', 'item3']
# forEachに相当する繰り返し処理
for item in array:
if item == 'item3':
print('continue')
continue
print(item)
else:
print('for文の正常終了')
|
実行結果は以下のようになります。
1
2
3
4
|
item1
item2
continue
for文の正常終了
|
特定の条件でfor文をスキップしていることが分かります。また、for文は正常終了しているので、else内も実行されます。
範囲指定ループ
Pythonでは、範囲指定でfor文を使用できます。
実際のソースコードを見てみましょう。
1
2
3
4
5
|
array = ['item1', 'item2', 'item3', 'item4', 'item5' ]
# forEachに相当する繰り返し処理
for item in array[1:4]:
print(item)
|
実行結果は以下のようになります。
1
2
3
|
item2
item3
item4
|
“array[1:4]”で範囲を指定しています。
インデックスの1から4までの要素(4を含まない)が出力されていることが分かります。このようにPythonでは、範囲指定でfor文を使用できます。
逆順ループ
Pythonでは、reversedメソッドで配列の逆順ループを実現できます。
実際のソースコードを見てみましょう。
1
2
3
4
5
6
|
array = ['item1', 'item2', 'item3' ]
print(array)
# forEachに相当する繰り返し処理
for item in reversed(array):
print(item)
|
実行結果は以下のようになります。
1
2
3
4
|
['item1', 'item2', 'item3']
item3
item2
item1
|
配列が逆順ループになっていることが分かります。数字の場合は数字ソート、文字列の場合は辞書ソートになります。
このようにPythonでは、Pythonではreversedメソッドで配列の逆順ループを実現できます。
昇順ループ
Pythonでは、sortedメソッドで配列の昇順ループを実現できます。
実際のソースコードを見てみましょう。
1
2
3
4
5
6
|
array = ['item3', 'item1', 'item2' ]
print(array)
# forEachに相当する繰り返し処理
for item in sorted(array):
print(item)
|
実行結果は以下のようになります。
1
2
3
4
|
['item3', 'item1', 'item2']
item1
item2
item3
|
配列が昇順ループになっていることが分かります。このようにPythonでは、sortedメソッドで配列の昇順ループを実現できます。
降順ループ
Pythonでは、sortedメソッドで配列の降順ループを実現できます。第2引数に「reverse=True」を指定します。
実際のソースコードを見てみましょう。
1
2
3
4
5
6
|
array = ['item3', 'item1', 'item2' ]
print(array)
# forEachに相当する繰り返し処理
for item in sorted(array, reverse=True):
print(item)
|
実行結果は以下のようになります。
1
2
3
4
|
['item3', 'item1', 'item2']
item3
item2
item1
|
配列が降順ループになっていることが分かります。このようにPythonでは、sortedメソッドで配列の降順ループを実現できます。
第2引数に「reverse=True」を指定します。
要素インデックスの取得
Pythonでは、rangeメソッドで要素インデックスを取得できます。
実際のソースコードを見てみましょう。
1
2
3
4
5
|
array = ['item1', 'item2', 'item3']
# forEachに相当する繰り返し処理
for i in range(0, len(array)):
print('idx:', i , ', value:', array[i])
|
実行結果は以下のようになります。
1
2
3
|
idx: 0 , value: item1
idx: 1 , value: item2
idx: 2 , value: item3
|
このように、Pythonではrangeメソッドで要素インデックスを取得できます。
- システム
エンジニア - forEach文を使うことでリストのそれぞれの要素を効率よく出力することができるのですね。
- プロジェクト
マネージャー - 非常に簡単な処理ではありますが、そのためよく使われるメソッドでもあります。
まとめ
PythonでのforEachメソッドの使い方について説明しました。配列の繰り返し処理をする場合などには、forEachメソッドを使用します。
ぜひご自身でPythonのソースコードを書いて、理解を深めてください。
FEnet.NETナビ・.NETコラムは株式会社オープンアップシステムが運営しています。
株式会社オープンアップシステムはこんな会社です
秋葉原オフィスには株式会社オープンアップシステムをはじめグループのIT企業が集結!
数多くのエンジニアが集まります。
-
スマホアプリから業務系システムまで
スマホアプリから業務系システムまで開発案件多数。システムエンジニア・プログラマーとしての多彩なキャリアパスがあります。
-
充実した研修制度
毎年、IT技術のトレンドや社員の要望に合わせて、カリキュラムを刷新し展開しています。社内講師の丁寧なサポートを受けながら、自分のペースで学ぶことができます。
-
資格取得を応援
スキルアップしたい社員を応援するために資格取得一時金制度を設けています。受験料(実費)と合わせて資格レベルに合わせた最大10万円の一時金も支給しています。
-
東証プライム上場企業グループ
オープンアップシステムは東証プライム上場「株式会社オープンアップグループ」のグループ企業です。
安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。
株式会社オープンアップシステムに興味を持った方へ
株式会社オープンアップシステムでは、開発系エンジニア・プログラマを募集しています。
年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
まずは話だけでも聞いてみたい場合もOK。お気軽にご登録ください。
新着案件New Job
-
開発エンジニア/東京都品川区/【WEB面談可】/在宅ワーク
月給29万~30万円東京都品川区(大崎駅) -
遠隔テストサービス機能改修/JavaScript/東京都港区/【WEB面談可】/テレワーク
月給45万~60万円東京都港区(六本木駅) -
病院内システムの不具合対応、保守/東京都豊島区/【WEB面談可】/テレワーク
月給30万~30万円東京都豊島区(池袋駅) -
開発/JavaScript/東京都豊島区/【WEB面談可】/テレワーク
月給50万~50万円東京都豊島区(大塚駅) -
債権債務システム追加開発/東京都文京区/【WEB面談可】/在宅勤務
月給62万~67万円東京都文京区(後楽園駅) -
PMO/東京都豊島区/【WEB面談可】/在宅勤務
月給55万~55万円東京都豊島区(池袋駅)