Pythonに挑戦(9)その(3)からの続き
(8) del
オブジェクトを削除するのには、del文を使います。del文の対象はタプルです。
del obj1, obj2, obj3
のようにして、カンマ‘,’でつないで複数のオブジェクトを削除できます。del文はスライス操作も行えます。
e1 = [ 2, 4, 6, 8, 10 ]
del e1[2:3]
print e1
del e1[2:3]
print e1
とすると、画面に、2, 4, 10と表示されます。del[2]では6だけが削除されます。del[-2:]では末尾から2つの要素8と10が削除されます。
del文は文字列に対しても使えます。
del文は文字列に対しても使えます。
str1 = “stringdata”
del str1[:3]
print(str1)
del str1[:3]
print(str1)
とすると、最初から3文字が削除されて、画面に、ngdataと表示されます。
(9) return
呼び出されている関数から呼び出し元に制御を戻すときには、return文を使います。returnの後ろに戻り値を付けることができます。戻り値は、数値、文字列、リスト、辞書、などすべてのオブジェクトが可能です。タプルを返せば、カンマ‘,’でつないで複数のデータを返すこともできます。但し、戻り値は呼び出し元と適合している必要があります。
(10) match
match文では、マッチングを行い、その結果に応じて分岐します。数値を入力して数値のマッチングを行い分岐する場合は次のようになります。
j1 = int(input(“整数値を入力してください:“))
match j1:
match j1:
case 1:
print(“1です。“)
case 2:
print(“2です。“)
case 3:
print(“3です。“)
case _:
print(“その他です。“)
pass
とすると、「整数値を入力してください:」に対して、2と入力すると、画面に、2です。と表示します。case _:を最後に入れておくと、アンダースコア‘_’は何にでもマッチするので、それより前のcase文でマッチしなかったものを分岐させて処理を行うことができます。デフォルトの動作を指定する場合に使います。
文字列を入力して文字列のマッチングを行い分岐する場合は次のようになります。
文字列を入力して文字列のマッチングを行い分岐する場合は次のようになります。
str1 = input(“文字列の入力:“)
match str1:
match str1:
case “a”:
print(“aです。“)
case “b*”:
print(“bcです。“)
case str1 if len(str1)>2:
print(“3文字以上です。“)
case _:
print(“その他です。“)
pass
とすると、「文字列の入力:」に対して、aと入力すると、画面に、aです。と表示します。bcと入力すると、画面に、bcです。と表示します。cdeと入力すると、3文字以上です。と表示します。dと入力すると、その他です。と表示します。case str1 if len(str1)>2は、str1とは自分自身なので必ずマッチし、その後ろのif文の条件が満たされると分岐します。
その他match文では、タプルとのマッチング、クラスとのマッチングも行えます。
その他match文では、タプルとのマッチング、クラスとのマッチングも行えます。