From 16e885a9569d7ada8cd30b932be46c8c700f36a2 Mon Sep 17 00:00:00 2001 From: Steven Hsu <81967953+StevenHsuYL@users.noreply.github.com> Date: Thu, 9 Jun 2022 02:13:41 +0800 Subject: [PATCH 1/4] translate match statement in tutorial/controlflow.po --- tutorial/controlflow.po | 81 ++++++++++++++++++++++++++++++++++++++--- 1 file changed, 75 insertions(+), 6 deletions(-) diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index 2c46774af2..5ec909a8c3 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -6,14 +6,14 @@ # Liang-Bo Wang , 2015 # Liang-Bo Wang , 2016 # hsiao yi , 2015 -# Steven Hsu , 2021 +# Steven Hsu , 2021-2022 msgid "" msgstr "" "Project-Id-Version: Python 3.10\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-06-22 00:18+0000\n" -"PO-Revision-Date: 2021-06-01 22:43+0800\n" -"Last-Translator: Adrian Liaw \n" +"POT-Creation-Date: 2022-03-09 00:12+0000\n" +"PO-Revision-Date: 2022-06-09 02:11+0800\n" +"Last-Translator: Steven Hsu \n" "Language-Team: Chinese - TAIWAN (https://github.com/python/python-docs-zh-" "tw)\n" "Language: zh_TW\n" @@ -21,7 +21,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Poedit 2.4.3\n" +"X-Generator: Poedit 3.1\n" #: ../../tutorial/controlflow.rst:5 msgid "More Control Flow Tools" @@ -67,6 +67,8 @@ msgid "" "specific types or attributes, you may also find the :keyword:`!match` " "statement useful. For more details see :ref:`tut-match`." msgstr "" +"如果你要將同一個值與多個常數進行比較,或者檢查特定的型別或屬性,你可能會發" +"現 :keyword:`!match` 陳述式也很有用。更多的細節,請參閱 :ref:`tut-match`。" #: ../../tutorial/controlflow.rst:46 msgid ":keyword:`!for` Statements" @@ -295,28 +297,44 @@ msgid "" "also extract components (sequence elements or object attributes) from the " "value into variables." msgstr "" +":keyword:`match` 陳述式會拿取一個運算式,並將其值與多個連續的型樣 (pattern) " +"進行比較,這些型樣是以一個或多個 case 區塊來表示。表面上,這類似 C、Java 或 " +"JavaScript(以及許多其他語言)中的 switch 陳述式,但它也可以將成分(序列元素" +"或物件屬性)從該值中提取到變數中。" #: ../../tutorial/controlflow.rst:261 msgid "" "The simplest form compares a subject value against one or more literals::" msgstr "" +"最簡單的形式,是將一個主題值 (subject value) 與一個或多個字面值 (literal) 進" +"行比較:\n" +"\n" +"::" #: ../../tutorial/controlflow.rst:274 msgid "" "Note the last block: the \"variable name\" ``_`` acts as a *wildcard* and " "never fails to match. If no case matches, none of the branches is executed." msgstr "" +"請注意最後一段:「變數名稱」\\ ``_`` 是作為\\ *通用字元*\\ 的角色,且永遠不會" +"匹配失敗。如果沒有 case 匹配成功,則不會執行任何的分支。" #: ../../tutorial/controlflow.rst:277 msgid "" "You can combine several literals in a single pattern using ``|`` (\"or\")::" msgstr "" +"你可以使用 ``|``\\ (「或」)來將多個字面值組合在單一型樣中:\n" +"\n" +"::" #: ../../tutorial/controlflow.rst:282 msgid "" "Patterns can look like unpacking assignments, and can be used to bind " "variables::" msgstr "" +"型樣可以看起來像是拆解賦值 (unpacking assignment),且可以用來連結變數:\n" +"\n" +"::" #: ../../tutorial/controlflow.rst:298 msgid "" @@ -327,6 +345,10 @@ msgid "" "which makes it conceptually similar to the unpacking assignment ``(x, y) = " "point``." msgstr "" +"請仔細研究那個例子!第一個型樣有兩個字面值,可以想作是之前所述的字面值型樣的" +"延伸。但是接下來的兩個型樣結合了一個字面值和一個變數,且該變數\\ *連結*\\ 了" +"來自主題 (``point``) 的一個值。第四個型樣會擷取兩個值,這使得它在概念上類似於" +"拆解賦值 ``(x, y) = point``。" #: ../../tutorial/controlflow.rst:305 msgid "" @@ -334,6 +356,10 @@ msgid "" "followed by an argument list resembling a constructor, but with the ability " "to capture attributes into variables::" msgstr "" +"如果你要用 class 來結構化你的資料,你可以使用該 class 的名稱加上一個引數列" +"表,類似一個建構式 (constructor),但它能夠將屬性擷取到變數中:\n" +"\n" +"::" #: ../../tutorial/controlflow.rst:326 msgid "" @@ -344,6 +370,12 @@ msgid "" "\"y\"), the following patterns are all equivalent (and all bind the ``y`` " "attribute to the ``var`` variable)::" msgstr "" +"你可以將位置參數 (positional parameter) 與一些能夠排序其屬性的內建 class(例" +"如 dataclasses)一起使用。你也可以透過在 class 中設定特殊屬性 " +"``__match_args__``,來定義型樣中屬性們的特定位置。如果它被設定為 (“x”, “y”)," +"則以下的型樣都是等價的(且都會將屬性 ``y`` 連結到變數 ``var``):\n" +"\n" +"::" #: ../../tutorial/controlflow.rst:337 msgid "" @@ -355,12 +387,21 @@ msgid "" "(recognized by the \"(...)\" next to them like ``Point`` above) are never " "assigned to." msgstr "" +"理解型樣的一種推薦方法,是將它們看作是你會放在賦值 (assignment) 左側內容的一" +"種延伸形式,這樣就可以了解哪些變數會被設為何值。只有獨立的名稱(像是上面的 " +"``var``)能被 match 陳述式賦值。點分隔名稱(如 ``foo.bar``)、屬性名稱(上面" +"的 ``x=`` 及 ``y=``)或 class 名稱(由它們後面的 \"(...)\" 被辨識,如上面的 " +"``Point``)則永遠無法被賦值。" #: ../../tutorial/controlflow.rst:344 msgid "" "Patterns can be arbitrarily nested. For example, if we have a short list of " "points, we could match it like this::" msgstr "" +"型樣可以任意地被巢套 (nested)。例如,如果我們有一個由某些點所組成的簡短 " +"list,我們就可以像這樣來對它進行匹配:\n" +"\n" +"::" #: ../../tutorial/controlflow.rst:359 msgid "" @@ -368,10 +409,15 @@ msgid "" "guard is false, ``match`` goes on to try the next case block. Note that " "value capture happens before the guard is evaluated::" msgstr "" +"我們可以在型樣中加入一個 ``if`` 子句,稱為「防護 (guard)」。如果該防護為假," +"則 ``match`` 會繼續嘗試下一個 case 區塊。請注意,值的擷取會發生在防護的評估之" +"前:\n" +"\n" +"::" #: ../../tutorial/controlflow.rst:369 msgid "Several other key features of this statement:" -msgstr "" +msgstr "此種陳述式的其他幾個重要特色:" #: ../../tutorial/controlflow.rst:371 msgid "" @@ -379,6 +425,8 @@ msgid "" "meaning and actually match arbitrary sequences. An important exception is " "that they don't match iterators or strings." msgstr "" +"與拆解賦值的情況類似,tuple(元組)和 list 型樣具有完全相同的意義,而且實際上" +"可以匹配任意的序列。一個重要的例外,是它們不能匹配疊代器 (iterator) 或字串。" #: ../../tutorial/controlflow.rst:375 msgid "" @@ -387,6 +435,10 @@ msgid "" "also be ``_``, so ``(x, y, *_)`` matches a sequence of at least two items " "without binding the remaining items." msgstr "" +"序列型樣 (sequence pattern) 可支援擴充拆解 (extended unpacking):\\ ``[x, y, " +"*rest]`` 與 ``(x, y, *rest)`` 的作用類似於拆解賦值。\\ ``*`` 後面的名稱也可以" +"是 ``_``,所以 ``(x, y, *_)`` 會匹配一個至少兩項的序列,且不會連結那兩項以外" +"的其餘項。" #: ../../tutorial/controlflow.rst:380 msgid "" @@ -395,34 +447,51 @@ msgid "" "sequence patterns, extra keys are ignored. An unpacking like ``**rest`` is " "also supported. (But ``**_`` would be redundant, so it is not allowed.)" msgstr "" +"映射型樣 (mapping pattern):\\ ``{\"bandwidth\": b, \"latency\": l}`` 能從一" +"個 dictionary(字典)中擷取 ``\"bandwidth\"`` 及 ``\"latency\"`` 的值。與序列" +"型樣不同,額外的鍵 (key) 會被忽略。一種像是 ``**rest`` 的拆解方式,也是可被支" +"援的。(但 ``**_`` 則是多餘的做法,所以它並不被允許。)" #: ../../tutorial/controlflow.rst:385 msgid "Subpatterns may be captured using the ``as`` keyword::" msgstr "" +"使用關鍵字 ``as`` 可以擷取子型樣 (subpattern):\n" +"\n" +"::" #: ../../tutorial/controlflow.rst:389 msgid "" "will capture the second element of the input as ``p2`` (as long as the input " "is a sequence of two points)" msgstr "" +"將會擷取輸入的第二個元素作為 ``p2``\\ (只要該輸入是一個由兩個點所組成的序" +"列)。" #: ../../tutorial/controlflow.rst:392 msgid "" "Most literals are compared by equality, however the singletons ``True``, " "``False`` and ``None`` are compared by identity." msgstr "" +"大部分的字面值是藉由相等性 (equality) 來比較,但是單例物件 (singleton) " +"``True``\\ 、\\ ``False`` 和 ``None`` 是藉由身份 (identity) 來比較。" #: ../../tutorial/controlflow.rst:395 msgid "" "Patterns may use named constants. These must be dotted names to prevent " "them from being interpreted as capture variable::" msgstr "" +"型樣可以使用附名常數 (named constant)。這些型樣必須是點分隔名稱,以免它們被解" +"釋為擷取變數:\n" +"\n" +"::" #: ../../tutorial/controlflow.rst:414 msgid "" "For a more detailed explanation and additional examples, you can look into :" "pep:`636` which is written in a tutorial format." msgstr "" +"關於更詳細的解釋和其他範例,你可以閱讀 :pep:`636`\\ ,它是以教學的格式編寫而" +"成。" #: ../../tutorial/controlflow.rst:420 msgid "Defining Functions" From 134c413c984d1610fab5d720f8c87e75efc6324c Mon Sep 17 00:00:00 2001 From: Steven Hsu Date: Mon, 4 Jul 2022 10:54:25 +0800 Subject: [PATCH 2/4] Apply suggestions from code review Co-authored-by: Ezio Melotti --- tutorial/controlflow.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index 5ec909a8c3..213947f267 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -490,7 +490,7 @@ msgid "" "For a more detailed explanation and additional examples, you can look into :" "pep:`636` which is written in a tutorial format." msgstr "" -"關於更詳細的解釋和其他範例,你可以閱讀 :pep:`636`\\ ,它是以教學的格式編寫而" +"關於更詳細的解釋和其他範例,你可以閱讀 :pep:`636`,它是以教學的格式編寫而" "成。" #: ../../tutorial/controlflow.rst:420 From 441bf434fea49ebcf0d6f3e22c9bdc4e2cb82d11 Mon Sep 17 00:00:00 2001 From: Steven Hsu Date: Tue, 5 Jul 2022 15:47:05 +0800 Subject: [PATCH 3/4] Update controlflow.po Update match section after Sync with CPython 3.10 --- tutorial/controlflow.po | 32 ++++++-------------------------- 1 file changed, 6 insertions(+), 26 deletions(-) diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index 213947f267..f06f05d234 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.10\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-03-09 00:12+0000\n" -"PO-Revision-Date: 2022-06-09 02:11+0800\n" +"POT-Creation-Date: 2022-06-22 00:18+0000\n" +"PO-Revision-Date: 2022-07-05 15:44+0800\n" "Last-Translator: Steven Hsu \n" "Language-Team: Chinese - TAIWAN (https://github.com/python/python-docs-zh-" "tw)\n" @@ -299,8 +299,9 @@ msgid "" msgstr "" ":keyword:`match` 陳述式會拿取一個運算式,並將其值與多個連續的型樣 (pattern) " "進行比較,這些型樣是以一個或多個 case 區塊來表示。表面上,這類似 C、Java 或 " -"JavaScript(以及許多其他語言)中的 switch 陳述式,但它也可以將成分(序列元素" -"或物件屬性)從該值中提取到變數中。" +"JavaScript(以及許多其他語言)中的 switch 陳述式,但它與 Rust 或 Haskell 等語" +"言中的型樣匹配 (pattern matching) 更為相近。只有第一個匹配成功的型樣會被執" +"行,而它也可以將成分(序列元素或物件屬性)從值中提取到變數中。" #: ../../tutorial/controlflow.rst:261 msgid "" @@ -490,8 +491,7 @@ msgid "" "For a more detailed explanation and additional examples, you can look into :" "pep:`636` which is written in a tutorial format." msgstr "" -"關於更詳細的解釋和其他範例,你可以閱讀 :pep:`636`,它是以教學的格式編寫而" -"成。" +"關於更詳細的解釋和其他範例,你可以閱讀 :pep:`636`,它是以教學的格式編寫而成。" #: ../../tutorial/controlflow.rst:420 msgid "Defining Functions" @@ -1344,23 +1344,3 @@ msgstr "" "實際上,\\ *傳址呼叫 (call by object reference)* 的說法可能較為貼切。因為,若" "傳遞的是一個可變物件時,呼叫者將看得見被呼叫者對物件做出的任何改變(例如被插" "入 list 內的新項目)。" - -#~ msgid "" -#~ "If you need to modify the sequence you are iterating over while inside " -#~ "the loop (for example to duplicate selected items), it is recommended " -#~ "that you first make a copy. Iterating over a sequence does not " -#~ "implicitly make a copy. The slice notation makes this especially " -#~ "convenient::" -#~ msgstr "" -#~ "如果你在迴圈中需要修改一個你正在疊代的序列(例如重複一些選擇的元素),那麼" -#~ "會建議你先建立一個序列的拷貝。疊代序列並不暗示建立新的拷貝。此時 slice 語" -#~ "法就讓這件事十分容易完成:\n" -#~ "\n" -#~ "::" - -#~ msgid "" -#~ "With ``for w in words:``, the example would attempt to create an infinite " -#~ "list, inserting ``defenestrate`` over and over again." -#~ msgstr "" -#~ "在 ``for w in words:`` 的情況,這個例子會試著重覆不斷地插入 " -#~ "``defenestrate``,產生一個無限長的 list。" From 87af5af6bd8eed110a4997e45d700e7b416898a0 Mon Sep 17 00:00:00 2001 From: Steven Hsu Date: Sun, 24 Jul 2022 14:55:40 +0800 Subject: [PATCH 4/4] Apply suggestions from code review All suggestions were applied. --- tutorial/controlflow.po | 50 ++++++++++++++++++++--------------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index f06f05d234..5460adea38 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -12,7 +12,7 @@ msgstr "" "Project-Id-Version: Python 3.10\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-06-22 00:18+0000\n" -"PO-Revision-Date: 2022-07-05 15:44+0800\n" +"PO-Revision-Date: 2022-07-24 14:52+0800\n" "Last-Translator: Steven Hsu \n" "Language-Team: Chinese - TAIWAN (https://github.com/python/python-docs-zh-" "tw)\n" @@ -21,7 +21,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Poedit 3.1\n" +"X-Generator: Poedit 3.1.1\n" #: ../../tutorial/controlflow.rst:5 msgid "More Control Flow Tools" @@ -297,10 +297,10 @@ msgid "" "also extract components (sequence elements or object attributes) from the " "value into variables." msgstr "" -":keyword:`match` 陳述式會拿取一個運算式,並將其值與多個連續的型樣 (pattern) " -"進行比較,這些型樣是以一個或多個 case 區塊來表示。表面上,這類似 C、Java 或 " +":keyword:`match` 陳述式會拿取一個運算式,並將其值與多個連續的模式 (pattern) " +"進行比較,這些模式是以一個或多個 case 區塊來表示。表面上,這類似 C、Java 或 " "JavaScript(以及許多其他語言)中的 switch 陳述式,但它與 Rust 或 Haskell 等語" -"言中的型樣匹配 (pattern matching) 更為相近。只有第一個匹配成功的型樣會被執" +"言中的模式匹配 (pattern matching) 更為相近。只有第一個匹配成功的模式會被執" "行,而它也可以將成分(序列元素或物件屬性)從值中提取到變數中。" #: ../../tutorial/controlflow.rst:261 @@ -317,14 +317,14 @@ msgid "" "Note the last block: the \"variable name\" ``_`` acts as a *wildcard* and " "never fails to match. If no case matches, none of the branches is executed." msgstr "" -"請注意最後一段:「變數名稱」\\ ``_`` 是作為\\ *通用字元*\\ 的角色,且永遠不會" -"匹配失敗。如果沒有 case 匹配成功,則不會執行任何的分支。" +"請注意最後一段:「變數名稱」\\ ``_`` 是作為\\ *通用字元 (wildcard)*\\ 的角" +"色,且永遠不會匹配失敗。如果沒有 case 匹配成功,則不會執行任何的分支。" #: ../../tutorial/controlflow.rst:277 msgid "" "You can combine several literals in a single pattern using ``|`` (\"or\")::" msgstr "" -"你可以使用 ``|``\\ (「或」)來將多個字面值組合在單一型樣中:\n" +"你可以使用 ``|``\\ (「或」)來將多個字面值組合在單一模式中:\n" "\n" "::" @@ -333,7 +333,7 @@ msgid "" "Patterns can look like unpacking assignments, and can be used to bind " "variables::" msgstr "" -"型樣可以看起來像是拆解賦值 (unpacking assignment),且可以用來連結變數:\n" +"模式可以看起來像是拆解賦值 (unpacking assignment),且可以用來連結變數:\n" "\n" "::" @@ -346,10 +346,10 @@ msgid "" "which makes it conceptually similar to the unpacking assignment ``(x, y) = " "point``." msgstr "" -"請仔細研究那個例子!第一個型樣有兩個字面值,可以想作是之前所述的字面值型樣的" -"延伸。但是接下來的兩個型樣結合了一個字面值和一個變數,且該變數\\ *連結*\\ 了" -"來自主題 (``point``) 的一個值。第四個型樣會擷取兩個值,這使得它在概念上類似於" -"拆解賦值 ``(x, y) = point``。" +"請仔細研究那個例子!第一個模式有兩個字面值,可以想作是之前所述的字面值模式的" +"延伸。但是接下來的兩個模式結合了一個字面值和一個變數,且該變數\\ *繫結 " +"(bind)*\\ 了來自主題 (``point``) 的一個值。第四個模式會擷取兩個值,這使得它在" +"概念上類似於拆解賦值 ``(x, y) = point``。" #: ../../tutorial/controlflow.rst:305 msgid "" @@ -373,8 +373,8 @@ msgid "" msgstr "" "你可以將位置參數 (positional parameter) 與一些能夠排序其屬性的內建 class(例" "如 dataclasses)一起使用。你也可以透過在 class 中設定特殊屬性 " -"``__match_args__``,來定義型樣中屬性們的特定位置。如果它被設定為 (“x”, “y”)," -"則以下的型樣都是等價的(且都會將屬性 ``y`` 連結到變數 ``var``):\n" +"``__match_args__``,來定義模式中屬性們的特定位置。如果它被設定為 (\"x\", \"y" +"\"),則以下的模式都是等價的(且都會將屬性 ``y`` 連結到變數 ``var``):\n" "\n" "::" @@ -388,7 +388,7 @@ msgid "" "(recognized by the \"(...)\" next to them like ``Point`` above) are never " "assigned to." msgstr "" -"理解型樣的一種推薦方法,是將它們看作是你會放在賦值 (assignment) 左側內容的一" +"理解模式的一種推薦方法,是將它們看作是你會放在賦值 (assignment) 左側內容的一" "種延伸形式,這樣就可以了解哪些變數會被設為何值。只有獨立的名稱(像是上面的 " "``var``)能被 match 陳述式賦值。點分隔名稱(如 ``foo.bar``)、屬性名稱(上面" "的 ``x=`` 及 ``y=``)或 class 名稱(由它們後面的 \"(...)\" 被辨識,如上面的 " @@ -399,7 +399,7 @@ msgid "" "Patterns can be arbitrarily nested. For example, if we have a short list of " "points, we could match it like this::" msgstr "" -"型樣可以任意地被巢套 (nested)。例如,如果我們有一個由某些點所組成的簡短 " +"模式可以任意地被巢套 (nested)。例如,如果我們有一個由某些點所組成的簡短 " "list,我們就可以像這樣來對它進行匹配:\n" "\n" "::" @@ -410,7 +410,7 @@ msgid "" "guard is false, ``match`` goes on to try the next case block. Note that " "value capture happens before the guard is evaluated::" msgstr "" -"我們可以在型樣中加入一個 ``if`` 子句,稱為「防護 (guard)」。如果該防護為假," +"我們可以在模式中加入一個 ``if`` 子句,稱為「防護 (guard)」。如果該防護為假," "則 ``match`` 會繼續嘗試下一個 case 區塊。請注意,值的擷取會發生在防護的評估之" "前:\n" "\n" @@ -426,7 +426,7 @@ msgid "" "meaning and actually match arbitrary sequences. An important exception is " "that they don't match iterators or strings." msgstr "" -"與拆解賦值的情況類似,tuple(元組)和 list 型樣具有完全相同的意義,而且實際上" +"與拆解賦值的情況類似,tuple(元組)和 list 模式具有完全相同的意義,而且實際上" "可以匹配任意的序列。一個重要的例外,是它們不能匹配疊代器 (iterator) 或字串。" #: ../../tutorial/controlflow.rst:375 @@ -436,7 +436,7 @@ msgid "" "also be ``_``, so ``(x, y, *_)`` matches a sequence of at least two items " "without binding the remaining items." msgstr "" -"序列型樣 (sequence pattern) 可支援擴充拆解 (extended unpacking):\\ ``[x, y, " +"序列模式 (sequence pattern) 可支援擴充拆解 (extended unpacking):\\ ``[x, y, " "*rest]`` 與 ``(x, y, *rest)`` 的作用類似於拆解賦值。\\ ``*`` 後面的名稱也可以" "是 ``_``,所以 ``(x, y, *_)`` 會匹配一個至少兩項的序列,且不會連結那兩項以外" "的其餘項。" @@ -448,15 +448,15 @@ msgid "" "sequence patterns, extra keys are ignored. An unpacking like ``**rest`` is " "also supported. (But ``**_`` would be redundant, so it is not allowed.)" msgstr "" -"映射型樣 (mapping pattern):\\ ``{\"bandwidth\": b, \"latency\": l}`` 能從一" +"映射模式 (mapping pattern):\\ ``{\"bandwidth\": b, \"latency\": l}`` 能從一" "個 dictionary(字典)中擷取 ``\"bandwidth\"`` 及 ``\"latency\"`` 的值。與序列" -"型樣不同,額外的鍵 (key) 會被忽略。一種像是 ``**rest`` 的拆解方式,也是可被支" +"模式不同,額外的鍵 (key) 會被忽略。一種像是 ``**rest`` 的拆解方式,也是可被支" "援的。(但 ``**_`` 則是多餘的做法,所以它並不被允許。)" #: ../../tutorial/controlflow.rst:385 msgid "Subpatterns may be captured using the ``as`` keyword::" msgstr "" -"使用關鍵字 ``as`` 可以擷取子型樣 (subpattern):\n" +"使用關鍵字 ``as`` 可以擷取子模式 (subpattern):\n" "\n" "::" @@ -474,14 +474,14 @@ msgid "" "``False`` and ``None`` are compared by identity." msgstr "" "大部分的字面值是藉由相等性 (equality) 來比較,但是單例物件 (singleton) " -"``True``\\ 、\\ ``False`` 和 ``None`` 是藉由身份 (identity) 來比較。" +"``True``\\ 、\\ ``False`` 和 ``None`` 是藉由標識值 (identity) 來比較。" #: ../../tutorial/controlflow.rst:395 msgid "" "Patterns may use named constants. These must be dotted names to prevent " "them from being interpreted as capture variable::" msgstr "" -"型樣可以使用附名常數 (named constant)。這些型樣必須是點分隔名稱,以免它們被解" +"模式可以使用附名常數 (named constant)。這些模式必須是點分隔名稱,以免它們被解" "釋為擷取變數:\n" "\n" "::"