Pythonに挑戦(13)その(3)

Pythonに挑戦(13)その(2)からの続き

(6) まとめて処理
(a) all
引数のイテラブル・オブジェクト(配列)の要素の中に1つでもFalseがあるとFalse,全てTrueの場合にTrueを返す関数です。ANDと同じ機能です。

e5 = [1, 2, 3, 4, 5]
e6 = [0, 1, 2, 3, 4]
print(“e5
“, e5, “all(e5)“, all(e5))
print(“e6
“, e6, “all(e6)“, all(e6))
とすると、画面に、

e5 [1, 2, 3, 4, 5] all(e5) True
e6
[0, 1, 2, 3, 4] all(e6) False
と表示します。
(b) any
引数のイテラブル・オブジェクト(配列)の要素の中に1つでもTrueがあるとTrue,全てFalseの場合にFalseを返す関数です。ORと同じ機能です。要素が一つもない場合には、Falseを返します。

e7 = [0, 0, 7, 0, 0]
e8 = [0, 0, 0, 0, 0]
e9 = []
print(“e7
“, e7, “all(e7)“, any(e7))
print(“e8
“, e8, “all(e8)“, any(e8))
print(“e9
“, e9, “all(e9)“, any(e9))
とすると、画面に、

e7 [0, 0, 7, 0, 0] all(e7) True
e8
[0, 0, 0, 0, 0] all(e8) False
e9
[] all(e9) False
と表示します。
(7) ループ処理・スライス操作
(a) enumerate
1引数にイテラブル・オブジェクト(リスト、文字列、タプル、辞書、集合など)、第2引数に番号付けを行う時の開始番号を指定(指定しなければ0です)し、番号と配列要素の組み合わせ(タプル)を並べたenumerateオブジェクトを生成する関数です。
forループでリスト要素を巡回する場合に、

array = [‘apple’, ‘orange, ‘peach’]
for element in array:
elementに関する処理
としてしまうと、elementに関する処理を行う場合に、elementarrayの中の何番目の要素か分からなくて困ることがあります。このときに、

array = [‘apple’, ‘orange, ‘peach’]
for n1, s1 in enumerate(array, 1):
print(n1, s1)
とすると、要素に番号を付記して、画面に、

1 apple
2 orange
3 peach
と表示するようにできます。
(b) range
引数で、整数の開始値、終了値、ステップ値(省略すると1です)を指定して、開始値から終了値未満(ステップ値が負なら終了値を超える数値)までの数値を持つrangeオブジェクトを生成する関数です。

e1 = list(range(4))
print(“3 in e1
“, 3 in e1)
print(“range(4)
“, e1)
e1 = list(range(3,6))
print(“3 in e1
“, 3 in e1)
print(“range(3,6)
“, e1)
e1 = list(range(9, 0, -3))
print(“0 in e1
“, 0 in e1)
print(“range(9, 0, -3)”, e1)
とすると、画面に、

3 in e1 True
range(4)
[0, 1, 2, 3]
3 in e1
True
range(3,6)
[3, 4, 5]
0 in e1
False
range(9, 0, -3)
[9, 6, 3]
と表示されます。
(c) slice
引数で、整数の開始値、終了値、ステップ値(省略すると1です)を指定して、スライス・オブジェクトを生成する関数です。リスト、文字列の同一の位置の要素が必要となるときに便利です。

str1 = “abcdefghij”
print(“
元の文字列:“, str1)
s1 = slice(3, 7, 2)
print(“slice(3, 7, 2)
“, str1[s1])
s1 = slice(4, 5)
print(“slice(3, 7, 2)
“, str1[s1])
s1 = slice(4)
print(“slice(3, 7, 2)
“, str1[s1])
とすると、画面に、

元の文字列: abcdefghij
slice(3, 7, 2)
df
slice(4, 5)
e
slice(4)
abcd
と表示されます。slice(4)4は終了値です。

Pythonに挑戦(13)その(4)に続く


  ブログTOP  TOPページに戻る


各問題の著作権は
出題大学に属します。

©2005-2024
(有)りるらる
苦学楽学塾 随時入会受付中!
理系大学受験ネット塾苦学楽学塾
(ご案内はこちら)ご入会は、
まず、こちらまでメール
お送りください。


【広告】 ここから広告です。ご覧の皆さまのご支援ご理解を賜りたく、よろしくお願いいたします。
【広告】 広告はここまでです。
スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする