0

EG私は最近いくつかのソースコードを読んでいました。

そして誰かがコードを持っていました。

array = "name1 name2 name3 name4 name5".split()

これは本当に速く/簡単に書くことができます。もし私がコードを書いていたら、私は行っただろう。

array[0] = name1    
array[1] = name2    
etc...

時間がかかります!

だから私はどこでいくつかの書き込み効率のヒントを見つけることができるのだろうかと思っていました。または、考えられる場合は投稿することもできます。

私は主にPythonとCでプログラミングします

edit1:私は個人用のプログラムを作成しているので、使いやすさを損なう場合を除いて、ランタイムはそれほど大きな問題ではありません。

edit2:したがって、コーディング時間は10%高速なランタイムよりも重要です。

edit3:@kevinは短く、不可解なワンライナーではなく、あなたの提案のようなものです(ありがとう)

4

3 に答える 3

1

できるだけ読みやすくすることを常に意図してコードを記述する必要があります。次の例を見てください。

array = "one four ninety-one one-hundred-and-six three-thousand".split()

array[0] = "one";
array[1] = "four";
array[2] = "ninety-one";
array[3] = "one-hundred-and-six";
array[4] = "three-thousand";

どのコードを見つけたいかはわかっています。

これに加えて、一番上のスニペットでは、実行ごとに文字列の追加処理が必要です。

于 2010-10-14T14:25:32.617 に答える
1

最初の方法では、コードが実行されるたびに、split() への呼び出しのオーバーヘッドを追加します(おそらく気付かないでしょう)。これが python の場合は、array = ["name1", "name2", "name3"]入力の手間を省き、関数呼び出しに依存しないようにすることができます。

コーディングの「効率」に関するヒントとして、より短いコードを書く方法を探していますか? それとも、より最適化されたコードを作成しますか?

于 2010-10-14T14:23:26.150 に答える
0

スクリプトを実行するたびに解析が行われるため、解析をスキップする方が実行時の速度が速いことは明らかです。ただし、文字列を使用すると、コードの入力が容易になり、実行時にパフォーマンスがわずかに低下する可能性があります。

于 2010-10-14T14:17:42.663 に答える