From 7727375d37f18d6b62e05fb7414555770aa31182 Mon Sep 17 00:00:00 2001 From: Payon Date: Fri, 19 Jan 2024 00:14:41 +0800 Subject: [PATCH 1/2] feat: to rst:1828 --- library/unittest.mock.po | 114 ++++++++++++++++++++++++++++++++------- 1 file changed, 96 insertions(+), 18 deletions(-) diff --git a/library/unittest.mock.po b/library/unittest.mock.po index 77d0266b20..3ec0619f82 100644 --- a/library/unittest.mock.po +++ b/library/unittest.mock.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-12-16 00:03+0000\n" -"PO-Revision-Date: 2024-01-17 15:22+0800\n" +"PO-Revision-Date: 2024-01-20 22:16+0800\n" "Last-Translator: Adrian Liaw \n" "Language-Team: Chinese - TAIWAN (https://github.com/python/python-docs-zh-" "tw)\n" @@ -16,7 +16,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.4.2\n" +"X-Generator: Poedit 3.4.1\n" #: ../../library/unittest.mock.rst:3 msgid ":mod:`unittest.mock` --- mock object library" @@ -130,8 +130,8 @@ msgid "" "decorators are applied). This means from the bottom up, so in the example " "above the mock for ``module.ClassName1`` is passed in first." msgstr "" -"當你嵌套 patch 裝飾器時,mock 會以被應用的順序傳遞到裝飾函數(裝飾器應用的正" -"常 *Python* 順序)。這意味著由下而上,因此在上面的範例中,\\ ``module." +"當你巢狀使用 patch 裝飾器時,mock 會以被應用的順序傳遞到裝飾函數(裝飾器應用" +"的正常 *Python* 順序)。這意味著由下而上,因此在上面的範例中,\\ ``module." "ClassName1`` 的 mock 會先被傳入。" #: ../../library/unittest.mock.rst:122 @@ -722,7 +722,7 @@ msgid "" "made, the parameters of ancestor calls are not recorded and so will always " "compare equal:" msgstr "" -":attr:`mock_calls` 記錄的方式意味著在進行嵌套呼叫時,上代 (ancestor) 呼叫的參" +":attr:`mock_calls` 記錄的方式意味著在進行巢狀呼叫時,上代 (ancestor) 呼叫的參" "數不會被記錄,因此在比較時它們將始終相等:" #: ../../library/unittest.mock.rst:737 @@ -1413,6 +1413,8 @@ msgid "" "If you use *spec* or *spec_set* and :func:`patch` is replacing a *class*, " "then the return value of the created mock will have the same spec. ::" msgstr "" +"如果你使用 *spec* 或 *spec_set* 且 :func:`patch` 正在取代一個\\ *類別*,那麼" +"被建立的 mock 的回傳值將具有相同的規格。: ::" #: ../../library/unittest.mock.rst:1457 msgid "" @@ -1420,12 +1422,15 @@ msgid "" "class to the default :class:`MagicMock` for the created mock. For example, " "if you wanted a :class:`NonCallableMock` to be used::" msgstr "" +"當你想要為被建立的 mock 使用一個替代的類別取代預設的 :class:`MagicMock` 時," +"*new_callable* 引數非常有用。例如,如果你想要一個 :class:`NonCallableMock` 被" +"使用: ::" #: ../../library/unittest.mock.rst:1470 msgid "" "Another use case might be to replace an object with an :class:`io.StringIO` " "instance::" -msgstr "" +msgstr "另一個用法是用一個 :class:`io.StringIO` 實例替換一個物件: ::" #: ../../library/unittest.mock.rst:1483 msgid "" @@ -1434,6 +1439,9 @@ msgid "" "can be done in the call to patch. Any arbitrary keywords you pass into the " "call will be used to set attributes on the created mock::" msgstr "" +"當 :func:`patch` 為你建立 mock 時,通常你需要做的第一件事就是配置 mock。其中" +"一些配置可以在對 patch 的呼叫中完成。你傳遞到呼叫中的任何關鍵字都將用於在被建" +"立的 mock 上設定屬性: ::" #: ../../library/unittest.mock.rst:1495 msgid "" @@ -1443,6 +1451,10 @@ msgid "" "arguments, but a dictionary with these as keys can still be expanded into a :" "func:`patch` call using ``**``::" msgstr "" +"除了被建立的 mock 上的屬性外,還可以配置 child mock 的 :attr:`~Mock." +"return_value` 和 :attr:`~Mock.side_effect`。它們在語法上不能直接作為關鍵字引" +"數傳入,但是以它們作為鍵的字典仍然可以使用 ``**`` 擴充為一個 :func:`patch` 呼" +"叫: ::" #: ../../library/unittest.mock.rst:1511 msgid "" @@ -1450,18 +1462,23 @@ msgid "" "attribute in a class) that does not exist will fail with :exc:" "`AttributeError`::" msgstr "" +"預設情況下,嘗試 patch 模組中不存在的函式(或類別中的方法或屬性)將會失敗,並" +"引發 :exc:`AttributeError`: ::" #: ../../library/unittest.mock.rst:1523 msgid "" "but adding ``create=True`` in the call to :func:`patch` will make the " "previous example work as expected::" msgstr "" +"但是在對 :func:`patch` 的呼叫中增加 ``create=True`` 將使前面的範例按照預期運" +"作: ::" #: ../../library/unittest.mock.rst:1534 msgid "" ":func:`patch` now returns an :class:`AsyncMock` if the target is an async " "function." msgstr "" +"如果目標是一個非同步函式,:func:`patch` 現在會回傳一個 :class:`AsyncMock`。" #: ../../library/unittest.mock.rst:1538 msgid "patch.object" @@ -1472,6 +1489,8 @@ msgid "" "patch the named member (*attribute*) on an object (*target*) with a mock " "object." msgstr "" +"使用一個 mock 物件 patch 一個物件(\\ *目標*\\ )上的命名成員(\\ *屬性" +"*\\ )。" #: ../../library/unittest.mock.rst:1545 msgid "" @@ -1481,12 +1500,18 @@ msgid "" "`patch`, :func:`patch.object` takes arbitrary keyword arguments for " "configuring the mock object it creates." msgstr "" +":func:`patch.object` 可以做為裝飾器、類別裝飾器或情境管理器使用。引數 *new*、" +"*spec*、*create*、*spec_set*、*autospec* 和 *new_callable* 與在 :func:" +"`patch` 中的引數具有相同的意義。與 :func:`patch` 一樣,:func:`patch.object` " +"接受任意關鍵字引數來配置它所建立的 mock 物件。" #: ../../library/unittest.mock.rst:1551 msgid "" "When used as a class decorator :func:`patch.object` honours ``patch." "TEST_PREFIX`` for choosing which methods to wrap." msgstr "" +"當作為類別裝飾器使用時,:func:`patch.object` 會遵循 ``patch.TEST_PREFIX`` 來" +"選擇要包裝的方法。" #: ../../library/unittest.mock.rst:1554 msgid "" @@ -1494,6 +1519,8 @@ msgid "" "arguments. The three argument form takes the object to be patched, the " "attribute name and the object to replace the attribute with." msgstr "" +"你可以使用三個引數或兩個引數來呼叫 :func:`patch.object`。三個引數的形式接受要" +"被 patch 的物件、屬性名稱和要替換掉屬性的物件。" #: ../../library/unittest.mock.rst:1558 msgid "" @@ -1501,12 +1528,16 @@ msgid "" "a mock is created for you and passed in as an extra argument to the " "decorated function:" msgstr "" +"當使用兩個引數的形式呼叫時,你會省略要替換的物件,一個 mock 會為你建立並將其" +"作為額外的引數傳遞給被裝飾的函式:" #: ../../library/unittest.mock.rst:1569 msgid "" "*spec*, *create* and the other arguments to :func:`patch.object` have the " "same meaning as they do for :func:`patch`." msgstr "" +"*spec*、*create* 和 :func:`patch.object` 的其他引數與在 :func:`patch` 中的引" +"數具有相同的意義。" #: ../../library/unittest.mock.rst:1574 msgid "patch.dict" @@ -1516,7 +1547,7 @@ msgstr "patch.dict" msgid "" "Patch a dictionary, or dictionary like object, and restore the dictionary to " "its original state after the test." -msgstr "" +msgstr "Patch 字典或類字典的物件,並在測試後將字典回復到其原本的狀態。" #: ../../library/unittest.mock.rst:1581 msgid "" @@ -1524,48 +1555,54 @@ msgid "" "mapping then it must at least support getting, setting and deleting items " "plus iterating over keys." msgstr "" +"*in_dict* 可以是一個字典或一個類對映的容器。如果它是一個對映,那麼它至少必須" +"支援獲取、設定、刪除項目以及對鍵的疊代。" #: ../../library/unittest.mock.rst:1585 msgid "" "*in_dict* can also be a string specifying the name of the dictionary, which " "will then be fetched by importing it." -msgstr "" +msgstr "*in_dict* 也可以是指定字典名稱的字串,然後透過 import 來取得該字典。" #: ../../library/unittest.mock.rst:1588 msgid "" "*values* can be a dictionary of values to set in the dictionary. *values* " "can also be an iterable of ``(key, value)`` pairs." msgstr "" +"*values* 可以是要設定的值的字典。*values* 也可以是 ``(key, value)`` 對 " +"(pairs) 的可疊代物件。" #: ../../library/unittest.mock.rst:1591 msgid "" "If *clear* is true then the dictionary will be cleared before the new values " "are set." -msgstr "" +msgstr "如果 *clear* 為 true,則在設定新值之前字典將被清除。" #: ../../library/unittest.mock.rst:1594 msgid "" ":func:`patch.dict` can also be called with arbitrary keyword arguments to " "set values in the dictionary." -msgstr "" +msgstr "也可以使用任意關鍵字引數呼叫 :func:`patch.dict` 以在字典中設定值。" #: ../../library/unittest.mock.rst:1599 msgid "" ":func:`patch.dict` now returns the patched dictionary when used as a context " "manager." -msgstr "" +msgstr ":func:`patch.dict` 現在在做為情境管理器使用時回傳被 patch 的字典。" #: ../../library/unittest.mock.rst:1602 msgid "" ":func:`patch.dict` can be used as a context manager, decorator or class " "decorator:" -msgstr "" +msgstr ":func:`patch.dict` 可以做為情境管理器、裝飾器或類別裝飾器使用:" #: ../../library/unittest.mock.rst:1613 msgid "" "When used as a class decorator :func:`patch.dict` honours ``patch." "TEST_PREFIX`` (default to ``'test'``) for choosing which methods to wrap:" msgstr "" +"當作為類別裝飾器使用時,:func:`patch.dict` 會遵循 ``patch.TEST_PREFIX``/ (預" +"設為 ``'test'``/ )來選擇要包裝的方法:" #: ../../library/unittest.mock.rst:1624 msgid "" @@ -1573,6 +1610,9 @@ msgid "" "patchers of the different prefix by setting ``patch.TEST_PREFIX``. For more " "details about how to change the value of see :ref:`test-prefix`." msgstr "" +"如果你想在測試中使用不同的前綴,你可以透過設定 ``patch.TEST_PREFIX`` 來告知 " +"patcher 使用不同的前綴。請參閱 :ref:`test-prefix` 以得知如何修改前綴的更多內" +"容。" #: ../../library/unittest.mock.rst:1628 msgid "" @@ -1580,12 +1620,14 @@ msgid "" "a test change a dictionary, and ensure the dictionary is restored when the " "test ends." msgstr "" +":func:`patch.dict` 可用於在字典中新增成員,或單純地讓測試更改字典,並確保在測" +"試結束時將字典回復原狀。" #: ../../library/unittest.mock.rst:1649 msgid "" "Keywords can be used in the :func:`patch.dict` call to set values in the " "dictionary:" -msgstr "" +msgstr "可以在 :func:`patch.dict` 呼叫中使用關鍵字來設定字典中的值:" #: ../../library/unittest.mock.rst:1659 msgid "" @@ -1596,6 +1638,11 @@ msgid "" "__setitem__`, :meth:`~object.__delitem__` and either :meth:`~container." "__iter__` or :meth:`~object.__contains__`." msgstr "" +":func:`patch.dict` 可以與實際上不是字典的類字典物件一起使用。最低限度它們必須" +"支援項目的獲取、設定、刪除以及疊代或隸屬資格測試。這對應到魔術方法中的 :meth:" +"`~object.__getitem__`、:meth:`~object.__setitem__`、:meth:`~object." +"__delitem__` 以及 :meth:`~container.__iter__` 或 :meth:`~object." +"__contains__`。" #: ../../library/unittest.mock.rst:1689 msgid "patch.multiple" @@ -1607,6 +1654,8 @@ msgid "" "(either as an object or a string to fetch the object by importing) and " "keyword arguments for the patches::" msgstr "" +"在一次呼叫中執行多個 patch。它接受被 patch 的物件(作為物件或透過 import 取得" +"物件的字串)和 patch 的關鍵字引數: ::" #: ../../library/unittest.mock.rst:1700 msgid "" @@ -1615,6 +1664,9 @@ msgid "" "decorated function by keyword, and a dictionary is returned when :func:" "`patch.multiple` is used as a context manager." msgstr "" +"如果你想要 :func:`patch.multiple` 為你建立 mock,請使用 :data:`DEFAULT` 作為" +"值。在這種情況下,被建立的 mock 會透過關鍵字傳遞到被裝飾的函式中,並且當 :" +"func:`patch.multiple` 作為情境管理器時會回傳字典。" #: ../../library/unittest.mock.rst:1705 msgid "" @@ -1623,12 +1675,18 @@ msgid "" "*new_callable* have the same meaning as for :func:`patch`. These arguments " "will be applied to *all* patches done by :func:`patch.multiple`." msgstr "" +":func:`patch.multiple` 可以做為裝飾器、類別裝飾器或情境管理器使用。引數 " +"*spec*、*spec_set*、*create*、*autospec* 和 *new_callable* 與在 :func:" +"`patch` 中的引數具有相同的意義。這些引數將應用於由 :func:`patch.multiple` 完" +"成的/ *所有* patch。" #: ../../library/unittest.mock.rst:1710 msgid "" "When used as a class decorator :func:`patch.multiple` honours ``patch." "TEST_PREFIX`` for choosing which methods to wrap." msgstr "" +"當作為類別裝飾器使用時,:func:`patch.multiple` 遵循 ``patch.TEST_PREFIX`` 來" +"選擇要包裝的方法。" #: ../../library/unittest.mock.rst:1713 msgid "" @@ -1637,6 +1695,9 @@ msgid "" "decorator then the created mocks are passed into the decorated function by " "keyword. ::" msgstr "" +"如果你想要 :func:`patch.multiple` 為你建立 mock,那麼你可以使用 :data:" +"`DEFAULT` 作為值。如果你使用 :func:`patch.multiple` 作為裝飾器,那麼被建立的 " +"mock 將透過關鍵字傳遞到被裝飾的函式中。: ::" #: ../../library/unittest.mock.rst:1727 msgid "" @@ -1644,6 +1705,8 @@ msgid "" "put arguments passed by keyword *after* any of the standard arguments " "created by :func:`patch`::" msgstr "" +":func:`patch.multiple` 可以與其他 ``patch`` 裝飾器巢狀使用,但需要將透過關鍵" +"字傳遞的引數放在 :func:`patch` 建立的任何標準引數/ *之後*/ : ::" #: ../../library/unittest.mock.rst:1739 msgid "" @@ -1651,10 +1714,12 @@ msgid "" "by the context manager is a dictionary where created mocks are keyed by " "name::" msgstr "" +"如果 :func:`patch.multiple` 作為情境管理器使用,則情境管理器回傳的值是一個字" +"典,其中被建立的 mock 會按名稱作為其鍵值: ::" #: ../../library/unittest.mock.rst:1753 msgid "patch methods: start and stop" -msgstr "" +msgstr "patch 方法:啟動與停止" #: ../../library/unittest.mock.rst:1755 msgid "" @@ -1662,6 +1727,9 @@ msgid "" "simpler to do patching in ``setUp`` methods or where you want to do multiple " "patches without nesting decorators or with statements." msgstr "" +"所有的 patcher 都有 :meth:`start` 與 :meth:`stop` 方法。這使得在 ``setUp`` 方" +"法中進行 patch 或在你想要在沒有巢狀使用裝飾器或 with 陳述式的情況下進行多個 " +"patch 時變得更簡單。" #: ../../library/unittest.mock.rst:1759 msgid "" @@ -1670,18 +1738,25 @@ msgid "" "then call :meth:`start` to put the patch in place and :meth:`stop` to undo " "it." msgstr "" +"要使用它們,請像平常一樣呼叫 :func:`patch`、:func:`patch.object` 或 :func:" +"`patch.dict` ,並保留對回傳的 ``patcher`` 物件的參照。之後你就可以呼叫 :meth:" +"`start` 將 patch 準備就緒,並呼叫 :meth:`stop` 來取消 patch。" #: ../../library/unittest.mock.rst:1763 msgid "" "If you are using :func:`patch` to create a mock for you then it will be " "returned by the call to ``patcher.start``. ::" msgstr "" +"如果你使用 :func:`patch` 為你建立 mock,那麼它將透過呼叫 ``patcher.start`` 回" +"傳。: ::" #: ../../library/unittest.mock.rst:1777 msgid "" "A typical use case for this might be for doing multiple patches in the " "``setUp`` method of a :class:`TestCase`::" msgstr "" +"一個典型的用法是在一個 :class:`TestCase` 的 ``setUp`` 方法中執行多個 " +"patch: ::" #: ../../library/unittest.mock.rst:1799 msgid "" @@ -1690,26 +1765,29 @@ msgid "" "exception is raised in the ``setUp`` then ``tearDown`` is not called. :meth:" "`unittest.TestCase.addCleanup` makes this easier::" msgstr "" +"如果你使用這個技巧,你必須確保透過呼叫 ``stop`` 來 \"取消\" patch。這可能會比" +"你想像的還要複雜一點,因為如果有例外在 ``setUp`` 中被引發,則 ``tearDown`` 就" +"不會被呼叫。:meth:`unittest.TestCase.addCleanup` 會讓這稍微簡單一點: ::" #: ../../library/unittest.mock.rst:1814 msgid "" "As an added bonus you no longer need to keep a reference to the ``patcher`` " "object." -msgstr "" +msgstr "作為額外的好處,你不再需要保留對 ``patcher`` 物件的參照。" #: ../../library/unittest.mock.rst:1817 msgid "" "It is also possible to stop all patches which have been started by using :" "func:`patch.stopall`." -msgstr "" +msgstr "也可以使用 :func:`patch.stopall` 來停止所有已啟動的 patch。" #: ../../library/unittest.mock.rst:1822 msgid "Stop all active patches. Only stops patches started with ``start``." -msgstr "" +msgstr "停止所有運作的 patch。只停止以 ``start`` 啟動的 patch。" #: ../../library/unittest.mock.rst:1828 msgid "patch builtins" -msgstr "" +msgstr "patch 內建函式" #: ../../library/unittest.mock.rst:1829 msgid "" From 88cda05f8a2ea34b74ad1c30dbc3e5e0b9be058f Mon Sep 17 00:00:00 2001 From: Payon Date: Mon, 22 Jan 2024 21:48:32 +0800 Subject: [PATCH 2/2] fix: change the translation of "membership test" and fix some rST --- library/collections.po | 11 ++++++----- library/unittest.mock.po | 12 ++++++------ tutorial/datastructures.po | 14 +++++++------- 3 files changed, 19 insertions(+), 18 deletions(-) diff --git a/library/collections.po b/library/collections.po index 8eef17b770..352bdffef0 100644 --- a/library/collections.po +++ b/library/collections.po @@ -11,7 +11,7 @@ msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-10-20 00:03+0000\n" -"PO-Revision-Date: 2023-02-18 14:48+0800\n" +"PO-Revision-Date: 2024-01-22 21:42+0800\n" "Last-Translator: Matt Wang \n" "Language-Team: Chinese - TAIWAN (https://github.com/python/python-docs-zh-" "tw)\n" @@ -20,7 +20,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.2.2\n" +"X-Generator: Poedit 3.4.1\n" #: ../../library/collections.rst:2 msgid ":mod:`collections` --- Container datatypes" @@ -789,9 +789,10 @@ msgid "" "to O(n) in the middle. For fast random access, use lists instead." msgstr "" "除了以上使用方式,deque 亦支援了疊代、pickle、``len(d)``、``reversed(d)``、" -"``copy.copy(d)``、``copy.deepcopy(d)``、用 :keyword:`in` 運算子來作成員檢測以" -"及像是 ``d[0]`` 的標號引用來取得第一個元素。在兩端做索引存取的複雜度為 O(1) " -"但越靠近中間則減慢至 O(n)。若想要隨機而快速的存取,使用 list 會較為合適。" +"``copy.copy(d)``、``copy.deepcopy(d)``、用 :keyword:`in` 運算子來作隸屬資格檢" +"測以及像是 ``d[0]`` 的標號引用來取得第一個元素。在兩端做索引存取的複雜度為 " +"O(1) 但越靠近中間則減慢至 O(n)。若想要隨機而快速的存取,使用 list 會較為合" +"適。" #: ../../library/collections.rst:591 msgid "" diff --git a/library/unittest.mock.po b/library/unittest.mock.po index 3ec0619f82..3c9b6ebe2c 100644 --- a/library/unittest.mock.po +++ b/library/unittest.mock.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-12-16 00:03+0000\n" -"PO-Revision-Date: 2024-01-20 22:16+0800\n" +"PO-Revision-Date: 2024-01-22 21:47+0800\n" "Last-Translator: Adrian Liaw \n" "Language-Team: Chinese - TAIWAN (https://github.com/python/python-docs-zh-" "tw)\n" @@ -1601,8 +1601,8 @@ msgid "" "When used as a class decorator :func:`patch.dict` honours ``patch." "TEST_PREFIX`` (default to ``'test'``) for choosing which methods to wrap:" msgstr "" -"當作為類別裝飾器使用時,:func:`patch.dict` 會遵循 ``patch.TEST_PREFIX``/ (預" -"設為 ``'test'``/ )來選擇要包裝的方法:" +"當作為類別裝飾器使用時,:func:`patch.dict` 會遵循 ``patch.TEST_PREFIX``\\ " +"(預設為 ``'test'``\\ )來選擇要包裝的方法:" #: ../../library/unittest.mock.rst:1624 msgid "" @@ -1639,7 +1639,7 @@ msgid "" "__iter__` or :meth:`~object.__contains__`." msgstr "" ":func:`patch.dict` 可以與實際上不是字典的類字典物件一起使用。最低限度它們必須" -"支援項目的獲取、設定、刪除以及疊代或隸屬資格測試。這對應到魔術方法中的 :meth:" +"支援項目的獲取、設定、刪除以及疊代或隸屬資格檢測。這對應到魔術方法中的 :meth:" "`~object.__getitem__`、:meth:`~object.__setitem__`、:meth:`~object." "__delitem__` 以及 :meth:`~container.__iter__` 或 :meth:`~object." "__contains__`。" @@ -1678,7 +1678,7 @@ msgstr "" ":func:`patch.multiple` 可以做為裝飾器、類別裝飾器或情境管理器使用。引數 " "*spec*、*spec_set*、*create*、*autospec* 和 *new_callable* 與在 :func:" "`patch` 中的引數具有相同的意義。這些引數將應用於由 :func:`patch.multiple` 完" -"成的/ *所有* patch。" +"成的\\ *所有* patch。" #: ../../library/unittest.mock.rst:1710 msgid "" @@ -1706,7 +1706,7 @@ msgid "" "created by :func:`patch`::" msgstr "" ":func:`patch.multiple` 可以與其他 ``patch`` 裝飾器巢狀使用,但需要將透過關鍵" -"字傳遞的引數放在 :func:`patch` 建立的任何標準引數/ *之後*/ : ::" +"字傳遞的引數放在 :func:`patch` 建立的任何標準引數\\ *之後*\\ : ::" #: ../../library/unittest.mock.rst:1739 msgid "" diff --git a/tutorial/datastructures.po b/tutorial/datastructures.po index b061e79147..1500a54b48 100644 --- a/tutorial/datastructures.po +++ b/tutorial/datastructures.po @@ -15,7 +15,7 @@ msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-08-22 00:03+0000\n" -"PO-Revision-Date: 2022-11-12 15:11+0800\n" +"PO-Revision-Date: 2024-01-22 21:43+0800\n" "Last-Translator: Steven Hsu \n" "Language-Team: Chinese - TAIWAN (https://github.com/python/python-docs-zh-" "tw)\n" @@ -24,7 +24,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.2\n" +"X-Generator: Poedit 3.4.1\n" #: ../../tutorial/datastructures.rst:5 msgid "Data Structures" @@ -506,8 +506,8 @@ msgid "" "difference." msgstr "" "Python 也包含了一種用在 *set*\\ (集合)的資料類型。一個 set 是一組無序且沒有" -"重複的元素。基本的使用方式包括了成員測試和消除重複元素。 Set 物件也支援聯集、" -"交集、差集和互斥等數學運算。" +"重複的元素。基本的使用方式包括了隸屬資格檢測和消除重複元素。 Set 物件也支援聯" +"集、交集、差集和互斥等數學運算。" #: ../../tutorial/datastructures.rst:454 msgid "" @@ -729,9 +729,9 @@ msgid "" "object. All comparison operators have the same priority, which is lower " "than that of all numerical operators." msgstr "" -"比較運算子 ``in`` 和 ``not in`` 用於成員檢查,在容器中檢查一個值是否存在(或" -"不存在)。運算子 ``is`` 和 ``is not`` 比較兩個物件是否真的是相同的物件。所有" -"比較運算子的優先度都相同且都低於數值運算子。" +"比較運算子 ``in`` 和 ``not in`` 用於隸屬資格檢測,在容器中檢查一個值是否存在" +"(或不存在)。運算子 ``is`` 和 ``is not`` 比較兩個物件是否真的是相同的物件。" +"所有比較運算子的優先度都相同且都低於數值運算子。" #: ../../tutorial/datastructures.rst:669 msgid ""