Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python:整数リストで表された数値の最後の桁を1つインクリメントする方法

リスト形式で表された数値に対して、最後の桁(末尾の要素)を1つ増やしたい場合があります。このようなときは、「increment_num」という名前のメソッドを定義し、リストの最後の要素が9未満かどうかを判定します。この判定結果に応じて、リストの各要素に対して適切な処理(繰り上がりの処理)を行います。

サンプルコード

以下に実際の例を示します。

def increment_num(my_list, n):

   i = n

   if(my_list[i] < 9):

      my_list[i] = my_list[i] + 1
      return

   my_list[i] = 0
   i -= 1

   increment_num(my_list, i)

n = 4

my_list = [0, 1, 4, 7, 9]
print("The list is :")
print(my_list)
increment_num(my_list, n)

print("After incrementing, the list is :")
print(my_list)

出力

The list is :
[0, 1, 4, 7, 9]
After incrementing, the list is :
[0, 1, 4, 8, 0]

解説

  • まず、「increment_num」という名前のメソッドを定義します。このメソッドは、リストと数値(インデックス)を引数として受け取ります。

  • リストの最後の要素が9未満であるかどうかを確認します。

  • 9未満であれば、その要素に1を加算して処理を終了します。

  • 最後の要素が9だった場合(繰り上がりが必要な場合)は、その要素を0に戻し、インデックスを1つ前にずらして、再度「increment_num」メソッドを再帰的に呼び出します。

  • 関数の外側では、変数「n」(操作対象となるインデックス)とリストを定義します。

  • 定義したリストをコンソールに表示します。

  • 必要なパラメータを渡してメソッドを呼び出し、処理を実行します。

  • インクリメント後のリストがコンソールに出力されます。

このように、通常の十進法での足し算と同じ考え方で、桁ごとに繰り上がりを処理することで、リストとして表現された数値でも正しく1を加算することができます。

  1. Pythonでリスト内の要素のインデックス(位置)を取得する方法

    Pythonでは、リスト(シーケンス型全般)に含まれる要素の位置を取得するには、index()メソッドを使用します。このメソッドは、指定した要素が最初に出現するインデックスを返します。index()メソッドの基本的な使い方リストに対してindex()を呼び出し、引数に検索したい要素を指定します。>>> L1=[45, 32, 100, 10, 24, 56] >>> L1.index(24) 4この例では、リストL1の中から値24を検索し、その位置であるインデックス4が返されています。Pythonのインデックスは0から始まるため、5番目の要素がインデックス4

  2. Pythonでリストの最後の要素を取得する方法【初心者向け】

    Pythonでリストの最後の要素を取得する基本方法 Pythonでは、リストをはじめとするシーケンス型オブジェクトに対して、インデックス(添字)を使って任意の要素にアクセスできます。インデックスは0から始まるため、最初の要素は「0」、2番目の要素は「1」というように指定します。 ここで重要になるのが負のインデックスです。負の数を指定すると、リストの末尾から逆順に数えて要素を取得できます。したがって、リストの最後の要素を取得したい場合は、インデックスとして -1 を指定するだけでOKです。 >>> L1 = [1, 2, 3, 4, 5] >>> print(