リスト内の偶数と奇数をカウントするPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します。
問題の説明 −リストが与えられたので、リスト内の偶数と奇数を数える必要があります。
以下で説明する3つの方法があります-
例
list1 = [21,3,4,6,33,2,3,1,3,76]
even_count, odd_count = 0, 0
# enhanced for loop
for num in list1:
#even numbers
if num % 2 == 0:
even_count += 1
#odd numbers
else:
odd_count += 1
print("Even numbers available in the list: ", even_count)
print("Odd numbers available in the list: ", odd_count) 出力
Even numbers available in the list: 4 Odd numbers available in the list: 6
アプローチ2-filter()とラムダ式の使用
例
list1 = [21,3,4,6,33,2,3,1,3,76]
#odd numbers
odd_count = len(list(filter(lambda x: (x%2 != 0) , list1)))
#even numbers
even_count = len(list(filter(lambda x: (x%2 == 0) , list1)))
print("Even numbers available in the list: ", even_count)
print("Odd numbers available in the list: ", odd_count) 出力
Even numbers available in the list: 4 Odd numbers available in the list: 6
アプローチ3-リスト内包表記の使用
例
list1 = [21,3,4,6,33,2,3,1,3,76]
#copy of list elements which are odd in a new list and calculating
the length on new list
only_odd = [num for num in list1 if num % 2 == 1]
odd_count = len(only_odd)
print("Even numbers available in the list: ", len(list1) -
odd_count)
print("Odd numbers available in the list: ", odd_count) 出力
Even numbers available in the list: 4 Odd numbers available in the list: 6
結論
この記事では、リスト内の偶数と奇数を数える方法を学びました。
-
奇数桁と偶数桁の合計の差のためのPythonプログラム
この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 −整数の場合、奇数桁の合計と偶数桁の合計の差が0であるかどうかを計算する必要があります。 ブルートフォースアプローチでは、数値のすべての偶数桁と奇数桁の合計を計算し、それらを減算して答えを計算します。 計算時間を短縮するために、精神数学の概念を使用します。 上記の制約は、数値が11で割り切れる場合にのみ当てはまります。したがって、以下の実装では、数値の11で割り切れる可能性を確認します。 ここで、複雑さはO(n)から、分割可能性と比較に関係する一定の時間に減少します。 それでは
-
除数の数が偶数か奇数かをチェックするPythonプログラム
この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 −数値「n」を指定して、除数の総数が偶数または奇数であることを確認します。 このアプローチでは、すべての除数を見つけて、除数の数が偶数または奇数であることを確認します。 実装は以下のとおりです- 例 import math def countDivisors(n) : count = 0 # calculating all the divisors root=int(math.sqrt(n))+2 &nbs