# Copyright (C) 2001-2023, Python Software Foundation # This file is distributed under the same license as the Python package. # # Translators: # Liang-Bo Wang , 2015 # Matt Wang , 2023 msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-04-03 00:14+0000\n" "PO-Revision-Date: 2023-07-01 03:44+0800\n" "Last-Translator: Matt Wang \n" "Language-Team: Chinese - TAIWAN (https://github.com/python/python-docs-zh-" "tw)\n" "Language: zh_TW\n" "MIME-Version: 1.0\n" "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" #: ../../c-api/iter.rst:6 msgid "Iterator Protocol" msgstr "疊代器協議" #: ../../c-api/iter.rst:8 msgid "There are two functions specifically for working with iterators." msgstr "有兩個專門用於疊代器的函式。" #: ../../c-api/iter.rst:12 msgid "" "Return non-zero if the object *o* can be safely passed to :c:func:" "`PyIter_Next`, and ``0`` otherwise. This function always succeeds." msgstr "" "如果物件 *o* 可以安全地傳遞給 :c:func:`PyIter_Next` 則回傳非零 (non-zero),否" "則回傳 0。這個函式一定會執行成功。" #: ../../c-api/iter.rst:17 msgid "" "Return non-zero if the object *o* provides the :class:`AsyncIterator` " "protocol, and ``0`` otherwise. This function always succeeds." msgstr "" "如果物件 *o* 有提供 :class:`AsyncIterator` 協議,則回傳非零,否則回傳 0。這個" "函式一定會執行成功。" #: ../../c-api/iter.rst:24 msgid "" "Return the next value from the iterator *o*. The object must be an iterator " "according to :c:func:`PyIter_Check` (it is up to the caller to check this). " "If there are no remaining values, returns ``NULL`` with no exception set. If " "an error occurs while retrieving the item, returns ``NULL`` and passes along " "the exception." msgstr "" "回傳疊代器 *o* 的下一個值。根據 :c:func:`PyIter_Check`,該物件必須是一個疊代" "器(由呼叫者檢查)。如果沒有剩餘值,則回傳 ``NULL`` 且不設定例外。如果檢索項" "目時發生錯誤,則回傳 ``NULL`` 並傳遞例外。" #: ../../c-api/iter.rst:30 msgid "" "To write a loop which iterates over an iterator, the C code should look " "something like this::" msgstr "要編寫一個疊代於疊代器的迴圈,C 程式碼應該會像這樣:" #: ../../c-api/iter.rst:59 msgid "" "The enum value used to represent different results of :c:func:`PyIter_Send`." msgstr "用於表示 :c:func:`PyIter_Send` 不同結果的列舉 (enum) 值。" #: ../../c-api/iter.rst:66 msgid "Sends the *arg* value into the iterator *iter*. Returns:" msgstr "將 *arg* 值發送到疊代器 *iter* 中。回傳:" #: ../../c-api/iter.rst:68 msgid "" "``PYGEN_RETURN`` if iterator returns. Return value is returned via *presult*." msgstr "如果疊代器有回傳則為 ``PYGEN_RETURN``。回傳值透過 *presult* 回傳。" #: ../../c-api/iter.rst:69 msgid "" "``PYGEN_NEXT`` if iterator yields. Yielded value is returned via *presult*." msgstr "" "如果疊代器有產生 (yield) 則為 ``PYGEN_NEXT``。產生值透過 *presult* 回傳。" #: ../../c-api/iter.rst:70 msgid "" "``PYGEN_ERROR`` if iterator has raised and exception. *presult* is set to " "``NULL``." msgstr "如果疊代器引發例外則為 ``PYGEN_ERROR``。 *presult* 被設定為 ``NULL``。"