[解決済み] forまたはwhileループでn回何かを行う
2022-02-08 13:39:15
質問
Pythonでは、ある動作を2回以上繰り返すには2つの方法があります。そのうちの1つは
while
ループと、もう1つの
for
のループになります。それでは、2つの簡単なコードを見てみましょう。
for i in range(n):
do_sth()
そしてもうひとつは
i = 0
while i < n:
do_sth()
i += 1
問題は、どちらが良いかということです。もちろん、最初のものはドキュメントの例やインターネット上で見つけられる様々なコードの断片で非常によく見られるもので、よりエレガントで短いものですが、その一方で、ループさせるためだけに全く役に立たない整数のリストを作成しています。特に大量の反復処理に関しては、メモリの無駄遣いではないでしょうか?
では、どちらの方法が良いと思いますか?
解決方法は?
<ブロッククオートが、その一方で、ループさせるためだけに全く無駄な整数のリストを作ってしまいます。特に大きな数の反復処理に関しては、メモリの無駄遣いではないでしょうか?
それは
xrange(n)
はそのためのものです。これは数値のリストを作成することを避け、代わりにイテレータオブジェクトを提供するだけです。
Python3では
xrange()
にリネームされました。
range()
- リストが必要な場合は、特に
list(range(n))
.
関連
-
Evidentlyを用いたPythonデータマイニングによる機械学習モデルダッシュボードの作成
-
[解決済み】SyntaxError: デフォルト以外の引数がデフォルトの引数に続く
-
[解決済み】Python: SyntaxError: キーワードは式になり得ない
-
[解決済み] for'ループでインデックスにアクセスする?
-
[解決済み] JavaScriptのオブジェクトをループスルーまたは列挙するにはどうすればよいですか?
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] 配列の反復処理に "for...in "を使用するのは、なぜ良くないのでしょうか?
-
[解決済み] Do-whileループをエミュレートする方法は?
-
[解決済み] Bashでの単一行whileループの構文
-
[解決済み】forループを使った辞書の反復処理
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
python implement mysql add delete check change サンプルコード
-
パッケージングツールPyinstallerの使用と落とし穴の回避
-
pyCaret効率化乗算器 オープンソース ローコード Python機械学習ツール
-
Python入門 openを使ったファイルの読み書きの方法
-
PythonでECDSAを実装する方法 知っていますか?
-
[解決済み】TypeError: unhashable type: 'numpy.ndarray'.
-
[解決済み】OSError: [WinError 193] %1 は有効な Win32 アプリケーションではありません。
-
[解決済み] builtins.TypeError: strでなければならない、bytesではない
-
[解決済み】Python elifの構文が無効です【終了しました
-
[解決済み】Python: SyntaxError: キーワードは式になり得ない