<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>プログレスバー  |  Python-memo｜自動化・AI・Web開発の実験室</title>
	<atom:link href="https://python.cbagames.jp/tag/%e3%83%97%e3%83%ad%e3%82%b0%e3%83%ac%e3%82%b9%e3%83%90%e3%83%bc/feed/" rel="self" type="application/rss+xml" />
	<link>https://python.cbagames.jp</link>
	<description>Pythonで、できるをふやそう。</description>
	<lastBuildDate>Tue, 10 Jun 2025 03:06:01 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.1</generator>

<image>
	<url>https://python.cbagames.jp/wp-content/uploads/2025/06/cropped-497d491d54402de785c9e043bfa0620a-32x32.png</url>
	<title>プログレスバー  |  Python-memo｜自動化・AI・Web開発の実験室</title>
	<link>https://python.cbagames.jp</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>【Python入門】for文で使える便利関数3選｜tqdm・zip・enumerateの使い方と活用例を解説！</title>
		<link>https://python.cbagames.jp/2025/06/10/python-for-useful-functions-tqdm-zip-enumerate/</link>
					<comments>https://python.cbagames.jp/2025/06/10/python-for-useful-functions-tqdm-zip-enumerate/#respond</comments>
		
		<dc:creator><![CDATA[asukapy]]></dc:creator>
		<pubDate>Tue, 10 Jun 2025 03:06:00 +0000</pubDate>
				<category><![CDATA[Python入門]]></category>
		<category><![CDATA[enumerate]]></category>
		<category><![CDATA[for文]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Python初心者]]></category>
		<category><![CDATA[tqdm]]></category>
		<category><![CDATA[zip]]></category>
		<category><![CDATA[プログレスバー]]></category>
		<guid isPermaLink="false">https://python.cbagames.jp/?p=220</guid>

					<description><![CDATA[目次 1. はじめに｜for文がもっと便利になる関数を紹介！2. tqdm｜処理の進捗が見えるプログレスバー✅ tqdmってなに？✅ インストールと使い方✅ どんな情報が見られるの？✅ tqdmのここがすごい！3. zi [&#8230;]]]></description>
										<content:encoded><![CDATA[

  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2"><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">1. はじめに｜for文がもっと便利になる関数を紹介！</a></li><li><a href="#toc2" tabindex="0">2. tqdm｜処理の進捗が見えるプログレスバー</a><ol><li><a href="#toc3" tabindex="0">✅ tqdmってなに？</a></li><li><a href="#toc4" tabindex="0">✅ インストールと使い方</a></li><li><a href="#toc5" tabindex="0">✅ どんな情報が見られるの？</a></li><li><a href="#toc6" tabindex="0">✅ tqdmのここがすごい！</a></li></ol></li><li><a href="#toc7" tabindex="0">3. zip｜複数のリストを同時にループ処理</a><ol><li><a href="#toc8" tabindex="0">✅ zipってなに？</a></li><li><a href="#toc9" tabindex="0">✅ zipのポイントまとめ</a></li><li><a href="#toc10" tabindex="0">✅ 注意点：リストの長さが違うと？</a></li></ol></li><li><a href="#toc11" tabindex="0">4. enumerate｜インデックス付きで繰り返す</a><ol><li><a href="#toc12" tabindex="0">✅ enumerateってなに？</a></li><li><a href="#toc13" tabindex="0">✅ start引数で番号を1から始める</a></li><li><a href="#toc14" tabindex="0">✅ enumerateの活用シーン</a></li></ol></li><li><a href="#toc15" tabindex="0">5. まとめ｜for文 × 便利関数でコードの質が上がる！</a><ol><li><a href="#toc16" tabindex="0">あわせて読みたい</a></li></ol></li><li><a href="#toc17" tabindex="0">よくある質問（Q&amp;A）</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">1. はじめに｜for文がもっと便利になる関数を紹介！</span></h2>



<p>Pythonを使っていると、<strong>繰り返し処理（ループ）をする場面ってたくさん出てきますよね。たとえばリストの中身を1つずつ取り出して表示したり、何かの処理を何回もくり返したり……そんなときに活躍するのがfor文</strong>です。</p>



<p>でも、for文をたくさん使っていると、こんなことを思ったことはありませんか？</p>



<ul class="wp-block-list">
<li>「このループ、<strong>あとどれくらいで終わるんだろう？</strong>」</li>



<li>「<strong>リストが2つ</strong>あるんだけど、どうやって同時に回そう？」</li>



<li>「今<strong>何番目の要素</strong>を処理してるんだっけ……？」</li>
</ul>



<p>実は、こういった「ちょっと不便かも？」を<strong>簡単に解決してくれる関数</strong>がPythonにはちゃんと用意されています！</p>



<p>この記事では、そんな便利な関数たち――</p>



<ul class="wp-block-list">
<li><code>tqdm</code>（ループの進み具合を表示）</li>



<li><code>zip</code>（複数のリストをまとめてループ）</li>



<li><code>enumerate</code>（インデックス付きでループ）</li>
</ul>



<p>この3つを、Python初心者にもわかるようにやさしく解説していきます。<br>for文に<strong>ちょっとプラスするだけ</strong>で、コードがもっと分かりやすく・使いやすくなりますよ！</p>



<p>それでは、さっそくひとつずつ見ていきましょう！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc2">2. tqdm｜処理の進捗が見えるプログレスバー</span></h2>



<p>for文を使って、たくさんのデータを処理しているとき、「<strong>あとどれくらいで終わるんだろう？</strong>」って思ったことありませんか？<br>そんなときに便利なのが、**tqdm（ティー・キュー・ディー・エム）**というライブラリです。</p>



<h3 class="wp-block-heading"><span id="toc3">✅ tqdmってなに？</span></h3>



<p><code>tqdm</code>は、<strong>ループの進み具合（進捗）をバーで表示してくれる</strong>ツールです。<br>ループ処理に「あと〇％で終わるよ〜！」と<strong>視覚的に教えてくれる</strong>ので、とっても安心感があります。</p>



<h3 class="wp-block-heading"><span id="toc4">✅ インストールと使い方</span></h3>



<p><code>tqdm</code>はPythonに最初から入っているわけではないので、最初にインストールが必要です。<br>ターミナル（またはコマンドプロンプト）でこのコマンドを実行してください：</p>



<pre class="wp-block-preformatted"><code>pip install tqdm<br></code></pre>



<p>次に、Pythonのコードで<code>tqdm</code>を読み込むにはこうします：</p>



<pre class="wp-block-preformatted"><code>from tqdm import tqdm<br></code></pre>



<p>使い方はとっても簡単で、for文の中で「繰り返したいリストなど」を<code>tqdm()</code>で囲むだけ！</p>



<pre class="wp-block-preformatted"><code>from tqdm import tqdm<br>import time<br><br>for i in tqdm(range(10)):<br>    time.sleep(0.5)  # ちょっと時間のかかる処理をイメージ<br></code></pre>



<p>実行すると、ターミナル上に「█」が伸びていく<strong>プログレスバー</strong>が出てきます！</p>



<h3 class="wp-block-heading"><span id="toc5">✅ どんな情報が見られるの？</span></h3>



<p><code>tqdm</code>を使うと、以下のような情報が一目でわかります：</p>



<ul class="wp-block-list">
<li>現在の進み具合（％表示）</li>



<li>終わった回数 / 全体の回数</li>



<li>経過時間・残り時間（予想）</li>
</ul>



<p>「まだ半分か〜」「あと10秒で終わる！」など、<strong>作業の見通しが立つ</strong>のでとても便利です。</p>



<h3 class="wp-block-heading"><span id="toc6">✅ tqdmのここがすごい！</span></h3>



<ul class="wp-block-list">
<li><strong>大量のデータ処理でも安心感あり！</strong><br>→ どこまで終わったか分かるので、ストレスが減ります。</li>



<li><strong>処理が遅い時に気づける！</strong><br>→ 進みが遅いと感じたら、コードを見直すチャンス！</li>



<li><strong>Jupyter Notebookでも使える！</strong><br>→ <code>from tqdm.notebook import tqdm</code>とすれば、ノートブックにも対応。</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc7">3. zip｜複数のリストを同時にループ処理</span></h2>



<p>Pythonでfor文を使っていると、**2つのリストを同時に扱いたい！**ということがあります。</p>



<p>たとえば…</p>



<pre class="wp-block-preformatted"><code>名前リスト = ["太郎", "花子", "次郎"]<br>点数リスト = [80, 90, 75]<br></code></pre>



<p>この2つのリストを<strong>同じ順番で1人ずつ表示したい</strong>とき、どうすればいいでしょう？</p>



<p>ここで登場するのが、便利な関数 <strong><code>zip()</code></strong> です！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc8">✅ zipってなに？</span></h3>



<p><code>zip()</code>は、<strong>複数のリストや繰り返しオブジェクトを1つずつまとめてくれる関数</strong>です。<br>使い方はとてもシンプル！</p>



<pre class="wp-block-preformatted"><code>for 名前, 点数 in zip(名前リスト, 点数リスト):<br>    print(f"{名前}さんの点数は{点数}点です")<br></code></pre>



<p>これを実行すると、こんなふうに出力されます：</p>



<pre class="wp-block-preformatted"><code>太郎さんの点数は80点です  <br>花子さんの点数は90点です  <br>次郎さんの点数は75点です<br></code></pre>



<p><strong>1つ目のリストの1番目と、2つ目のリストの1番目がセットで処理される</strong>感じですね。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc9">✅ zipのポイントまとめ</span></h3>



<ul class="wp-block-list">
<li><strong>複数のリストやタプルを「ペア」にして同時に処理</strong>できる</li>



<li>3つ以上のリストも組み合わせられる！（例：<code>zip(A, B, C)</code>）</li>



<li>リストの中身を<strong>対応づけて処理したいときにピッタリ！</strong></li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc10">✅ 注意点：リストの長さが違うと？</span></h3>



<p><code>zip()</code>は、一番<strong>短いリストに合わせて止まる</strong>ようになっています。</p>



<pre class="wp-block-preformatted"><code>A = [1, 2, 3]<br>B = ["a", "b"]<br><br>for x, y in zip(A, B):<br>    print(x, y)<br></code></pre>



<p>このコードでは、<code>(1, "a")</code> と <code>(2, "b")</code> までしか表示されません。<br>**3と&#8221;c&#8221;**のようなペアが存在しないので、そこまででループが終わります。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://python.cbagames.jp/wp-content/uploads/2025/06/9d9697ea94c9608a27d0bde31599ba86-150x150.jpg" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>zipは、データを<strong>組み合わせて処理したいときの定番</strong>です。<br>データの「セット」を扱う感覚で覚えておくと、後でとっても役に立ちますよ！</p>
</div></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc11">4. enumerate｜インデックス付きで繰り返す</span></h2>



<p>Pythonのfor文でリストを繰り返すとき、「この要素って<strong>何番目</strong>なんだろう？」と思ったことはありませんか？</p>



<p>そんなときに使えるのが、**<code>enumerate()</code>（エニュメレート）**という関数です。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc12">✅ enumerateってなに？</span></h3>



<p><code>enumerate()</code>は、リストなどの繰り返しオブジェクトに<strong>番号（インデックス）を自動で付けてくれる関数</strong>です。</p>



<p>ふつうのfor文では、こう書きますよね：</p>



<pre class="wp-block-preformatted"><code>果物リスト = ["りんご", "バナナ", "みかん"]<br><br>for 果物 in 果物リスト:<br>    print(果物)<br></code></pre>



<p>でも「何番目か」も一緒に表示したいなら、<code>enumerate()</code>を使うととっても簡単！</p>



<pre class="wp-block-preformatted"><code>for i, 果物 in enumerate(果物リスト):<br>    print(f"{i}番目の果物は{果物}です")<br></code></pre>



<p>実行結果：</p>



<pre class="wp-block-preformatted"><code>0番目の果物はりんごです  <br>1番目の果物はバナナです  <br>2番目の果物はみかんです<br></code></pre>



<p>番号（インデックス）と一緒に要素が出てきます！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc13">✅ start引数で番号を1から始める</span></h3>



<p>Pythonでは番号（インデックス）は<strong>0からスタート</strong>するのが基本ですが、「1番目、2番目…」のように表示したいときもありますよね。</p>



<p>そんなときは、<code>start=1</code>をつけるだけ！</p>



<pre class="wp-block-preformatted"><code>for i, 果物 in enumerate(果物リスト, start=1):<br>    print(f"{i}番目の果物は{果物}です")<br></code></pre>



<p>これで出力はこうなります：</p>



<pre class="wp-block-preformatted"><code>1番目の果物はりんごです  <br>2番目の果物はバナナです  <br>3番目の果物はみかんです<br></code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc14">✅ enumerateの活用シーン</span></h3>



<ul class="wp-block-list">
<li>データに<strong>順位をつけたいとき</strong></li>



<li>ループ処理で**「何件目か」を表示したいとき**</li>



<li><strong>インデックス番号をもとに条件分岐</strong>したいとき（たとえば、3番目だけ特別な処理をする など）</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>enumerateを使えば、わざわざ<code>range(len(リスト))</code>のような書き方をしなくても、<strong>番号と要素のペア</strong>をスマートに扱えます。</p>



<p>Pythonで繰り返し処理をたくさん書く人にとって、<strong>知っておくと必ず役立つ関数</strong>ですよ！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>


<p><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2494518121553371"
     crossorigin="anonymous"></script><br />
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-2494518121553371"
     data-ad-slot="2936039508"></ins><br />
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></p>



<h2 class="wp-block-heading"><span id="toc15">5. まとめ｜for文 × 便利関数でコードの質が上がる！</span></h2>



<p>この記事では、Pythonのfor文と一緒に使うととっても便利な3つの関数をご紹介しました。</p>



<ul class="wp-block-list">
<li>✅ <code>tqdm</code>：ループの進捗を<strong>プログレスバーで見える化</strong>！</li>



<li>✅ <code>zip</code>：複数のリストを<strong>ペアにして同時にループ</strong>！</li>



<li>✅ <code>enumerate</code>：要素と<strong>その番号（インデックス）をセットでループ</strong>！</li>
</ul>



<p>どれも書き方はかんたんなのに、<strong>コードの読みやすさ・使いやすさ・効率</strong>が一気にアップするすぐれものです。</p>



<p>「Pythonのコードって読みにくいな…」<br>「for文ってもっと賢く使えないかな？」<br>そんなときは、ぜひ今回紹介した関数たちを使ってみてください。</p>



<p>少し工夫するだけで、<strong>見やすくてバグが出にくいコード</strong>が書けるようになりますよ！</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc16">あわせて読みたい</span></h3>



<p>for文と便利関数をマスターしたら、次はこちらもチェック！</p>



<ul class="wp-block-list">
<li>🔗 <a target="_blank" href="https://python.cbagames.jp/2025/06/02/python-syntax-indent-pep8-beginner2/">Pythonの基本構文をやさしく解説｜改行・インデント・エラー対応まで初心者向けに丁寧に紹介</a><br>　基本をおさらいして、読みやすいコードを目指そう！</li>



<li>🔗 <a target="_blank" href="https://python.cbagames.jp/2025/06/07/python-automation-for-beginners/">Pythonでできる自動化10選｜初心者向けにやさしく解説</a><br>　for文を活かして、毎日の作業を自動化しよう！</li>



<li>🔗 <a target="_blank" href="https://python.cbagames.jp/2025/06/06/variables-nameerror-beginner-mistakes/">Python初心者がやりがちな変数名のミス5選｜NameErrorを防ぐコツ</a><br>　よくあるミスを知って、エラーの少ないコードに！</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><span id="toc17">よくある質問（Q&amp;A）</span></h2>



<div class="wp-block-cocoon-blocks-faq faq-wrap blank-box block-box not-nested-style cocoon-block-faq"><dl class="faq"><dt class="faq-question faq-item"><div class="faq-question-label faq-item-label">Q</div><div class="faq-question-content faq-item-content">tqdmはJupyter Notebookでも使えますか？</div></dt><dd class="faq-answer faq-item"><div class="faq-answer-label faq-item-label">A</div><div class="faq-answer-content faq-item-content">
<p>はい、使えます！<br>Jupyter Notebookの場合は、次のように書くときれいに表示されます：</p>



<pre class="wp-block-preformatted"><code>from tqdm.notebook import tqdm<br></code></pre>
</div></dd></dl></div>



<div class="wp-block-cocoon-blocks-faq faq-wrap blank-box block-box not-nested-style cocoon-block-faq"><dl class="faq"><dt class="faq-question faq-item"><div class="faq-question-label faq-item-label">Q</div><div class="faq-question-content faq-item-content">zipでリストの長さが違うとどうなりますか？</div></dt><dd class="faq-answer faq-item"><div class="faq-answer-label faq-item-label">A</div><div class="faq-answer-content faq-item-content">
<p>一番短いリストに合わせて、ループが途中で終わります。<br>たとえば、3つと2つのリストをzipした場合、<strong>2つ目のリストに合わせて2回だけループ</strong>します。</p>
</div></dd></dl></div>



<div class="wp-block-cocoon-blocks-faq faq-wrap blank-box block-box not-nested-style cocoon-block-faq"><dl class="faq"><dt class="faq-question faq-item"><div class="faq-question-label faq-item-label">Q</div><div class="faq-question-content faq-item-content"><strong>enumerateでインデックスを1から始めたいんだけど？</strong></div></dt><dd class="faq-answer faq-item"><div class="faq-answer-label faq-item-label">A</div><div class="faq-answer-content faq-item-content">
<p>できます！次のように<code>start=1</code>を指定すればOKです：</p>



<pre class="wp-block-preformatted"><code>for i, val in enumerate(リスト, start=1):<br>    print(i, val)</code></pre>
</div></dd></dl></div>
]]></content:encoded>
					
					<wfw:commentRss>https://python.cbagames.jp/2025/06/10/python-for-useful-functions-tqdm-zip-enumerate/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
