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

リスト内の正と負の数を数えるPythonプログラム


この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。

問題の説明

反復可能なリストを指定すると、反復可能で使用可能なすべての正と負の数をカウントする必要があります。

彼女は2つのアプローチについて話し合います-

  • ブルートフォースアプローチ
  • ラムダインライン関数の使用
アプローチ1-ブルートフォース方式

list1 = [1,-9,15,-16,13]
pos_count, neg_count = 0, 0
for num in list1:
   if num >= 0:
      pos_count += 1
   else:
      neg_count += 1
print("Positive numbers : ", pos_count)
print("Negative numbers : ", neg_count)
出力
Positive numbers : 3
Negative numbers : 2
アプローチ2-ラムダ関数とフィルター関数の使用
list1 = [1,-9,15,-16,13]
neg_count = len(list(filter(lambda x: (x < 0), list1)))
pos_count = len(list(filter(lambda x: (x >= 0), list1)))
print("Positive numbers : ", pos_count)
print("Negative numbers : ", neg_count)
出力
Positive numbers : 3
Negative numbers : 2

結論

この記事では、リスト内の正の数と負の数を数える方法について学びました。


  1. 正の数と負の数を再配置するPythonのLambda式

    この記事では、正と負の整数の入力配列を受け取るラムダ式の使用について学習します。 1つは負の数を含み、もう1つは正の数を含む2つの別々の配列を計算します。 ここでは、1つの引数、つまり整数の配列のみを受け入れるRearrange()関数を定義します。この関数は、配列の異なる側で各タイプとマージされた両方の配列を返します。 それでは、コードを見て理解を深めましょう。 例 def Rearrange(arr): # First lambda expression returns a list of negative numbers in arr. # Second lambda express

  2. Pythonを使用して、列単位および行単位の並べ替えられた行列の負の数をカウントしますか?

    このセクションでは、行ごとおよび列ごとに並べ替えられた行列の負の数を最適な解でカウントするPythonプログラムを紹介します。 行ごとおよび列ごとに並べ替えられた配列とは、任意のインデックスの各値が、次の列および次の行のインデックスの値と小さいか等しいことを意味します。 たとえば、以下のマトリックスM M = [[-40, -12, 1, 5], [-20, -2, 5, 15], [-22, -1, 13, 18], [-12, 0, 15, 38]] 上記の行列Mでは、最初の行の最初の列は-40です。これは、同じ行の次の列の値(-12)よりも小さく、同じ列の次の行の値(-20など)