2017-11-02 8 views
0

私のリストは以下のとおりです。最大は

ptotal: [13545.75, 13009.5, 13009.5, 13009.500000000002] 

backk1: [0, 11.5, 25.8, 39.0, 39.0, 39.0, 25.8, 11.5, 0, 11.5, 25.8, 39.0, 39.0, 0, 24.8, 24.7, 24.7, 24.7, 0, 24.7, 24.7, 24.7, 39.0, 39.0, 39.0] 

私はリスト「PTOTAL」と「backk1」リスト内の対応する値の最大値を見つけるしたいと思います。私は私の全プログラムの一部として次のようなコードを持っています。それはうまくいかない。手伝っていただけませんか?

ptotalfinal=max(ptotal) 

ptotalindex= max(enumerate(ptotal),key=lambda x: x[1])[0] 
etaunk1max= (x in enumerate(zip(backetaunk1, ptotal),key=lambda x: x[1])) 
+0

希望する出力は何ですか? – Ajax1234

+0

したがって、 'ptotal'の最大値のインデックスを見つけて、' backk1 [index] 'を検索したいのですか? – divibisan

+4

したがって、 'backk1 [ptotal.index(max(ptotal))]'? –

答えて

0

一度リストの上に、それだけ繰り返し処理は、おそらく誰かがPythonの開発者にそれをCコードにこれを変換し、提案する必要があるため、これは、リスト内の最大のインデックスを見つけるための私の提案になり

def max_index(l): 
    mx = float("-inf") 
    idx = None 
    for i,e in enumerate(l): 
     if e > mx: 
      mx = e 
      idx = i 
    return idx 

ptotal = [13545.75, 13009.5, 13009.5, 13009.500000000002] 
backk1 = [0, 11.5, 25.8, 39.0, 39.0, 39.0, 25.8, 11.5, 0, 11.5, 25.8, 39.0, 39.0, 0, 24.8, 24.7, 24.7, 24.7, 0, 24.7, 24.7, 24.7, 39.0, 39.0, 39.0] 

number = backk1[max_index(ptotal)] 
0

Pythonには、この作業を非常に簡単にする多くの機能が追加されています。 maxは最大値を示し、indexは対応する要素を見つけるのに使用できる最大のインデックス値をbackk1に与えます。

backk1[ptotal.index(max(ptotal))]