配列内の最小の正の値と、そのリスト内の位置を見つけたいと考えています。リスト内の値が重複している場合、最初のインスタンスのみが対象となります。これは、私が求めている機能を実行するものですが、0 が含まれています。
print "Position:", myArray.index(min(myArray))
print "Value:", min(myArray)
例えば、現状では、
myArray = [4, 8, 0, 1, 5]
位置: 2、値: 0
位置: 3、値: 1 を表示したい
ベストアンサー1
あなたはジェネレータ式を使用します。これにより、 が0 より大きい最小値としてmin
設定されます。次に、 を使用して、この値が最初に出現するインデックスを検索します。m
a
list.index
a = [4, 8, 0, 1, 5]
m = min(i for i in a if i > 0)
print("Position:", a.index(m))
print("Value:", m)
# Position: 3
# Value: 1