@@ -282,28 +282,37 @@ msgid ""
282282"also extract components (sequence elements or object attributes) from the "
283283"value into variables."
284284msgstr ""
285+ ":keyword:`match` 文は1つの式を指定し、その値と次に続く1つ以上のcaseブロックに"
286+ "指定されたパターンを比較します。この機能はCやJava、JavaScript(や他の多数の言"
287+ "語)のswitch文と表面的には似ていますが、RustやHaskellのパターンマッチングによ"
288+ "り似ています。最初にマッチしたパターンのみが実行され、コンポーネント(シーケン"
289+ "スの要素やオブジェクトの属性)から値を取り出して変数に代入することもできます。"
285290
286291#: ../../tutorial/controlflow.rst:261
287292msgid ""
288293"The simplest form compares a subject value against one or more literals::"
289- msgstr ""
294+ msgstr "最も単純な形式は、対象の値に対して1つ以上のリテラルです:: "
290295
291296#: ../../tutorial/controlflow.rst:274
292297msgid ""
293298"Note the last block: the\" variable name\" ``_`` acts as a *wildcard* and "
294299"never fails to match. If no case matches, none of the branches is executed."
295300msgstr ""
301+ "最後のブロックについてのメモ: 変数名 ``_`` は *ワイルドカード* の働きをし、"
302+ "マッチに絶対失敗しません。マッチするケースがない場合は、そのブロックも実行さ"
303+ "れません。"
296304
297305#: ../../tutorial/controlflow.rst:277
298306msgid ""
299307"You can combine several literals in a single pattern using ``|`` (\" or\" )::"
300308msgstr ""
309+ "複数のリテラルを``|`` (\" or\" )を使用して組み合わせて1つのパターンにできます。"
301310
302311#: ../../tutorial/controlflow.rst:282
303312msgid ""
304313"Patterns can look like unpacking assignments, and can be used to bind "
305314"variables::"
306- msgstr ""
315+ msgstr "パターンはアンパック代入ができ、変数に結びつけられます:: "
307316
308317#: ../../tutorial/controlflow.rst:298
309318msgid ""
@@ -314,13 +323,20 @@ msgid ""
314323"which makes it conceptually similar to the unpacking assignment ``(x, y) = "
315324"point``."
316325msgstr ""
326+ "慎重に学んでください!最初のパターンには2つのリテラルがあり、上で示したリテラ"
327+ "ルパターンの拡張と考えることができます。しかし次の2つのパターンはリテラルと変"
328+ "数の組み合わせのため、対象(``point``)から値を取り出して変数に *結びつけ* ま"
329+ "す。4番目のパターンは2つの値を捕まえます。これは、アンパック代入 ``(x, y) = "
330+ "point`` と概念的に似ています。"
317331
318332#: ../../tutorial/controlflow.rst:305
319333msgid ""
320334"If you are using classes to structure your data you can use the class name "
321335"followed by an argument list resembling a constructor, but with the ability "
322336"to capture attributes into variables::"
323337msgstr ""
338+ "データを構造化するためにクラスを使っている場合は、クラス名の後ろにコンストラ"
339+ "クターのように引数のリストを指定できます。属性の値は変数に取り込まれます。"
324340
325341#: ../../tutorial/controlflow.rst:326
326342msgid ""
@@ -331,6 +347,11 @@ msgid ""
331347"\" y\" ), the following patterns are all equivalent (and all bind the ``y`` "
332348"attribute to the ``var`` variable)::"
333349msgstr ""
350+ "いくつかの組み込みクラスでは位置引数が使用でき、属性の順番を提供します(例: "
351+ "データクラス)。クラスの ``__match_args__`` 特殊属性でによって、パターンの中で"
352+ "属性の明確な位置を定義することもできます。(\" x\" ,\" y\" )が設定された場合、以"
353+ "下のすべてのパターンは等価です(すべて属性 ``y`` が ``var`` 変数に関連づけられ"
354+ "ます)::"
334355
335356#: ../../tutorial/controlflow.rst:337
336357msgid ""
@@ -348,17 +369,22 @@ msgid ""
348369"Patterns can be arbitrarily nested. For example, if we have a short list of "
349370"points, we could match it like this::"
350371msgstr ""
372+ "パターンは任意のネストができます。たとえば、短いポイントのリストがある場合、"
373+ "以下のようにマッチできます::"
351374
352375#: ../../tutorial/controlflow.rst:359
353376msgid ""
354377"We can add an ``if`` clause to a pattern, known as a\" guard\" . If the "
355378"guard is false, ``match`` goes on to try the next case block. Note that "
356379"value capture happens before the guard is evaluated::"
357380msgstr ""
381+ "パターンに ``if`` 節を追加できます。これは\" ガード\" と呼ばれます。ガードが"
382+ "falseの場合、``match`` は次のcaseブロックの処理に移動します。ガードを評価する"
383+ "前に値が取り出されることに注意してください::"
358384
359385#: ../../tutorial/controlflow.rst:369
360386msgid "Several other key features of this statement:"
361- msgstr ""
387+ msgstr "この文のその他のいくつか重要な特徴:: "
362388
363389#: ../../tutorial/controlflow.rst:371
364390msgid ""
@@ -410,6 +436,8 @@ msgid ""
410436"For a more detailed explanation and additional examples, you can look into :"
411437"pep:`636` which is written in a tutorial format."
412438msgstr ""
439+ "より詳細な説明と追加の例は :pep:`636` にチュートリアル形式で記述してありま"
440+ "す。"
413441
414442#: ../../tutorial/controlflow.rst:420
415443msgid "Defining Functions"