2016-10-19 8 views
-5

を最適化するのに役立つあなたは私の心にこのコードあなたはこれが最適化ではなく、壊れたコードを固定するためではありませんつまり、コメントの一部、私はあなたを指すことができます私はこのコード

def calc_potential(time, firstsale, lastsale, sold, supplied): 
    retval = [] 
    for t, f, l, c, s in zip(time, firstsale, lastsale, sold, supplied): 
     try: 
      if s > c: 
       retval.append(c) 
      else: 
       s = (l - t).total_seconds()/3600. 
       d = ((t - f).total_seconds()/3600.)/c 
       retval.append(s/d + c) 
     except: 
      retval.append(None) 

    return retval 
+1

私たちは多分、壊れたコードを修正するのに役立ちます。私たちは最適化サービスではありません。 –

+0

これのどの側面を最適化できると思いますか? –

+0

[コードビュー](http://codereview.stackexchange.com/tour)は、あなたの要求に適した選択肢です。ただし、ヘルプページを注意深く読んで、投稿がトピックになっていることを確認してください。 –

答えて

1

キーピングを最適化するのに役立つことができ右方向:

コードのこのセクション置き換えるには:より効率的な何かについて

if s > c: 
    retval.append(c) 

を、リスト内包を試してみてください。

retval= [c for c, s in zip(sold, supplied) if s>c] 

else文のコードでも同様のことを行い、両方のリストを結合するとします。あなたは可能な方法であなたが望むものを持っています。