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

Pythonの指定されたリストでNone値を持つインデックスを検索する


多くの場合、データ分析を処理するときに、リストに存在するNone値に出くわすことがあります。これらの値は、数学演算や文字列演算などで直接使用することはできません。そのため、それらの位置を見つけて変換するか、効果的に使用する必要があります。

range()を使用

range関数とlen関数を組み合わせることで、各要素の値をNoneと比較し、それらのインデックス位置を取得できます。もちろん、これを実現するためにforループ設計を使用しています。

listA = ['Sun', 'Mon',None, 'Wed', None, None]

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

# Using range
positions = [i for i in range(len(listA)) if listA[i] == None]

# Result
print("None value positions : ",positions)

出力

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

Given list : ['Sun', 'Mon', None, 'Wed', None, None]
None value positions : [2, 4, 5]

列挙あり

ech要素を一覧表示するenumerate関数を使用することもできます。次に、各要素をNone値と比較し、プログラムで以下に示すようにその位置を選択します。

listA = ['Sun', 'Mon',None, 'Wed', None, None]

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

# Using enumarate
positions = [i for i, val in enumerate(listA) if val == None]

# Result
print("None value positions : ",positions)

出力

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

Given list : ['Sun', 'Mon', None, 'Wed', None, None]
None value positions : [2, 4, 5]

  1. Pythonで指定されたインデックスを使用して文字列をシャッフルするプログラム

    文字列sとインデックスindのリストがあり、それらは同じ長さであるとします。文字列sは、位置iの文字が最終文字列のindexes[i]に移動するようにシャッフルされます。最後の文字列を見つける必要があります。 したがって、入力がs =ktoalak ind =[0,5,1,6,2,4,3]の場合、出力は「コルカタ」になります これを解決するには、次の手順に従います- fin_str:=サイズがsと同じで、0で埋められるリスト sの各インデックスiと文字vについて、実行します fin_str [ind [i]]:=v fin_strに存在する各文字を結合し

  2. Pythonで指定されたネストされたリストで最大値のサブリストを検索します

    リストには、その要素として他のリストを含めることができます。この記事では、特定のリストに存在する最大値のサブリストを見つけることに等しいです。 maxとlambdaを使用 max関数とLambda関数を一緒に使用して、最大値を持つサブリストを指定できます。 例 listA = [['Mon', 90], ['Tue', 32], ['Wed', 120]] # Using lambda res = max(listA, key=lambda x: x[1]) # printing output print("Given List:\n