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

Pythonのソートされたリスト範囲で欠落している番号を検索する


ソートされた番号のリストが与えられた場合、指定された範囲の番号からどの番号が欠落しているかを調べたいと思います。

範囲あり

数値の範囲をチェックするforループを設計し、not in演算子でif条件を使用して、欠落している要素をチェックできます。

listA = [1,5,6, 7,11,14]

# Original list
print("Given list : ",listA)

# using range
res = [x for x in range(listA[0], listA[-1]+1)
                              if x not in listA]
# Result
print("Missing elements from the list : \n" ,res)

出力

上記のコードを実行すると、次の結果が得られます-

Given list : [1, 5, 6, 7, 11, 14]
Missing elements from the list :
[2, 3, 4, 8, 9, 10, 12, 13]

ZIP付き

ZIP機能

listA = [1,5,6, 7,11,14]

# printing original list
print("Given list : ",listA)

# using zip
res = []
for m,n in zip(listA,listA[1:]):
   if n - m > 1:
      for i in range(m+1,n):
         res.append(i)

# Result
print("Missing elements from the list : \n" ,res)

出力

上記のコードを実行すると、次の結果が得られます-

Given list : [1, 5, 6, 7, 11, 14]
Missing elements from the list :
[2, 3, 4, 8, 9, 10, 12, 13]

  1. Pythonを使用して特定の範囲内のカプレカー数を見つける方法は?

    変更されたカプレカー数はd桁の正の整数nであり、その平方を2つの部分(d桁の右側の部分rと左側の部分l)に分割すると残りのdまたはd-1桁を含む場合、ピースの合計は元の数に等しくなります(つまり、l + r =n)。 指定された範囲内の指定された条件について各番号をテストすることにより、指定された範囲内のカプレカー数を見つけることができます。 例 def print_Kaprekar_nums(start, end):    for i in range(start, end + 1):       # Get the digits from

  2. Pythonで数値のリストの合計を見つける方法は?

    Pythonの組み込み関数sum()は、リストやタプルなどの反復可能なオブジェクトの数値の合計を返します。 2つの引数を取ります。初期値はオプションで、デフォルトでは0であり、反復可能なオブジェクトです 例 >>> l1=[10,20,30,40,50] >>> ttl=sum(l1) >>> ttl 150 >>> ttl=sum(range(10)) >>> ttl 45