44# Translators:
55# Ching-Lung Chuang, 2015
66# Liang-Bo Wang <me@liang2.tw>, 2015
7+ # Matt Wang <mattwang44@gmail.com>, 2025
78msgid ""
89msgstr ""
910"Project-Id-Version :Python 3.14\n "
1011"Report-Msgid-Bugs-To :\n "
11- "POT-Creation-Date :2025-09-08 15:25+0800 \n "
12- "PO-Revision-Date :2017-09-22 18:26 +0000\n "
13- "Last-Translator :Liang-Bo Wang <me@liang2.tw >\n "
12+ "POT-Creation-Date :2025-11-06 00:14+0000 \n "
13+ "PO-Revision-Date :2025-11-07 05:06 +0000\n "
14+ "Last-Translator :Matt Wang <mattwang44@gmail.com >\n "
1415"Language-Team :Chinese - TAIWAN (https://github.com/python/python-docs-zh- "
1516"tw)\n "
1617"Language :zh_TW\n "
@@ -26,89 +27,123 @@ msgstr "浮點數(Floating-Point)物件"
2627#: ../../c-api/float.rst:13
2728msgid ""
2829"This subtype of :c:type:`PyObject` represents a Python floating-point object."
29- msgstr ""
30+ msgstr "這個 :c:type:`PyObject` 的子型別代表一個 Python 浮點數物件。 "
3031
3132#: ../../c-api/float.rst:18
3233msgid ""
3334"This instance of :c:type:`PyTypeObject` represents the Python floating-point "
3435"type. This is the same object as :class:`float` in the Python layer."
3536msgstr ""
37+ "這個 :c:type:`PyTypeObject` 的實例代表 Python 浮點數型別。這與 Python 層中的 :class:`float` "
38+ "物件相同。"
3639
3740#: ../../c-api/float.rst:24
3841msgid ""
39- "Return true if its argument is a :c:type:`PyFloatObject` or a subtype "
40- "of :c: type:`PyFloatObject`. This function always succeeds."
42+ "Return true if its argument is a :c:type:`PyFloatObject` or a subtypeof :c: "
43+ "type:`PyFloatObject`. This function always succeeds."
4144msgstr ""
45+ "如果其引數是 :c:type:`PyFloatObject` 或 :c:type:`PyFloatObject` 的子型別,則回傳 "
46+ "true。這個函式不會失敗。"
4247
4348#: ../../c-api/float.rst:30
4449msgid ""
4550"Return true if its argument is a :c:type:`PyFloatObject`, but not a subtype "
4651"of :c:type:`PyFloatObject`. This function always succeeds."
4752msgstr ""
53+ "如果其引數是 :c:type:`PyFloatObject`,但不是 :c:type:`PyFloatObject` 的子型別,"
54+ "則回傳 true。這個函式不會失敗。"
4855
4956#: ../../c-api/float.rst:36
5057msgid ""
5158"Create a :c:type:`PyFloatObject` object based on the string value in *str*, "
5259"or ``NULL`` on failure."
53- msgstr ""
60+ msgstr "建立一個基於字串值 *str* 的 :c:type:`PyFloatObject` 物件,失敗時回傳 ``NULL``。 "
5461
5562#: ../../c-api/float.rst:42
5663msgid ""
5764"Create a :c:type:`PyFloatObject` object from *v*, or ``NULL`` on failure."
58- msgstr ""
65+ msgstr "建立一個來自 *v* 的 :c:type:`PyFloatObject` 物件,失敗時回傳 ``NULL``。 "
5966
6067#: ../../c-api/float.rst:47
6168msgid ""
6269"Return a C :c:expr:`double` representation of the contents of *pyfloat*. If "
63- "*pyfloat* is not a Python floating-point object but has "
64- "a :meth:`~object. __float__` method, this method will first be called to "
65- "convert *pyfloat* into a float. If :meth:`!__float__` is not defined then it "
66- "falls back to : meth:`~object.__index__`. This method returns ``-1.0`` upon "
67- "failure, so one should call :c:func:`PyErr_Occurred` to check for errors."
70+ "*pyfloat* is not a Python floating-point object but hasa :meth:`~object. "
71+ "__float__` method, this method will first be called to convert *pyfloat* "
72+ "into a float. If :meth:`!__float__` is not defined then itfalls back to : "
73+ "meth:`~object.__index__`. This method returns ``-1.0`` upon failure, so one "
74+ "should call :c:func:`PyErr_Occurred` to check for errors."
6875msgstr ""
6976
7077#: ../../c-api/float.rst:54
7178msgid "Use :meth:`~object.__index__` if available."
72- msgstr ""
79+ msgstr "請使用 :meth:`~object.__index__` \\ (如果可用)。 "
7380
7481#: ../../c-api/float.rst:60
7582msgid ""
7683"Return a C :c:expr:`double` representation of the contents of *pyfloat*, but "
7784"without error checking."
78- msgstr ""
85+ msgstr "回傳 *pyfloat* 內容的 C :c:expr:`double` 表示形式,但不進行錯誤檢查。 "
7986
8087#: ../../c-api/float.rst:66
8188msgid ""
8289"Return a structseq instance which contains information about the precision, "
8390"minimum and maximum values of a float. It's a thin wrapper around the header "
8491"file :file:`float.h`."
8592msgstr ""
93+ "回傳一個 structseq 實例,其中包含有關浮點數的精度、最小值和最大值的資訊。"
94+ "它是對標頭檔 :file:`float.h` 的簡單封裝。"
8695
8796#: ../../c-api/float.rst:73
8897msgid ""
89- "Return the maximum representable finite float *DBL_MAX* as "
90- "C :c:expr: `double`."
91- msgstr ""
98+ "Return the maximum representable finite float *DBL_MAX* asC :c:expr: "
99+ "`double`."
100+ msgstr "將可表示的最大有限浮點數 *DBL_MAX* 作為 C :c:expr:`double` 回傳。 "
92101
93102#: ../../c-api/float.rst:78
94103msgid ""
95104"Return the minimum normalized positive float *DBL_MIN* as C :c:expr:`double`."
96- msgstr ""
105+ msgstr "將最小的正規化浮點數 *DBL_MIN* 作為 C :c:expr:`double` 回傳。"
106+
107+ #: ../../c-api/float.rst:83
108+ msgid "Return :data:`math.nan` from a function."
109+ msgstr "從函式回傳 :data:`math.nan`。"
97110
98- #: ../../c-api/float.rst:82
111+ #: ../../c-api/float.rst:85
112+ msgid ""
113+ "On most platforms, this is equivalent to ``return PyFloat_FromDouble(NAN)``."
114+ msgstr "在大多數平台上,這相當於 ``return PyFloat_FromDouble(NAN)``。"
115+
116+ #: ../../c-api/float.rst:90
117+ msgid ""
118+ "Return :data:`math.inf` or :data:`-math.inf <math.inf>` from a function, "
119+ "depending on the sign of *sign*."
120+ msgstr "根據 *sign* 的正負號,從函式回傳 :data:`math.inf` 或 :data:`-math.inf <math.inf>`。"
121+
122+ #: ../../c-api/float.rst:93
123+ msgid "On most platforms, this is equivalent to the following::"
124+ msgstr "在大多數平台上,這相當於以下內容: ::"
125+
126+ #: ../../c-api/float.rst:95
127+ msgid "return PyFloat_FromDouble(copysign(INFINITY, sign));"
128+ msgstr "return PyFloat_FromDouble(copysign(INFINITY, sign));"
129+
130+ #: ../../c-api/float.rst:99
99131msgid "Pack and Unpack functions"
100- msgstr ""
132+ msgstr "打包和解包函式 "
101133
102- #: ../../c-api/float.rst:84
134+ #: ../../c-api/float.rst:101
103135msgid ""
104136"The pack and unpack functions provide an efficient platform-independent way "
105137"to store floating-point values as byte strings. The Pack routines produce a "
106- "bytes string from a C :c:expr:`double`, and the Unpack routines produce a "
107- "C : c:expr:`double` from such a bytes string. The suffix (2, 4 or 8) "
108- "specifies the number of bytes in the bytes string."
138+ "bytes string from a C :c:expr:`double`, and the Unpack routines produce aC : "
139+ "c:expr:`double` from such a bytes string. The suffix (2, 4 or 8) specifies "
140+ "the number of bytes in the bytes string."
109141msgstr ""
142+ "打包和解包函式提供了一種有效的跨平台方式,來將浮點數值儲存為位元組字串。"
143+ "打包例程從 C :c:expr:`double` 產生位元組字串,而解包例程則從這樣的位元組字串產生 "
144+ "C :c:expr:`double`。後綴(2、4 或 8)標示了位元組字串中的位元組數。"
110145
111- #: ../../c-api/float.rst:90
146+ #: ../../c-api/float.rst:107
112147msgid ""
113148"On platforms that appear to use IEEE 754 formats these functions work by "
114149"copying bits. On other platforms, the 2-byte format is identical to the IEEE "
@@ -119,104 +154,128 @@ msgid ""
119154"attempting to unpack a bytes string containing an IEEE INF or NaN will raise "
120155"an exception."
121156msgstr ""
157+ "在看似使用 IEEE 754 格式的平台上,這些函式是透過複製位元來運作的。"
158+ "在其他平台上,2 位元組格式與 IEEE 754 binary16 半精度格式相同,"
159+ "4 位元組格式(32 位元)與 IEEE 754 binary32 單精度格式相同,"
160+ "8 位元組格式與 IEEE 754 binary64 雙精度格式相同。"
161+ "儘管如此,INF 和 NaN(如果這些東西在平台上存在)的打包並未正確處理,"
162+ "並且嘗試解包包含 IEEE INF 或 NaN 的位元組字串將引發例外。"
122163
123- #: ../../c-api/float.rst:99
164+ #: ../../c-api/float.rst:116
124165msgid ""
125166"Note that NaNs type may not be preserved on IEEE platforms (silent NaN "
126167"become quiet), for example on x86 systems in 32-bit mode."
127168msgstr ""
169+ "請注意,在 IEEE 平台上可能無法保留 NaN 型別(「靜默型 NaN (silent NaN)」會變成"
170+ "「安靜型 NaN (quiet NaN)」),例如在 32 位元模式的 x86 系統上。"
128171
129- #: ../../c-api/float.rst:102
172+ #: ../../c-api/float.rst:119
130173msgid ""
131174"On non-IEEE platforms with more precision, or larger dynamic range, than "
132175"IEEE 754 supports, not all values can be packed; on non-IEEE platforms with "
133176"less precision, or smaller dynamic range, not all values can be unpacked. "
134177"What happens in such cases is partly accidental (alas)."
135178msgstr ""
179+ "在非 IEEE 平台上,如果精度更高或動態範圍比 IEEE 754 支援的更大,"
180+ "則無法打包所有值;在非 IEEE 平台上,如果精度較低或動態範圍較小,"
181+ "則無法解包所有值。在這種案例下發生的情況在某種程度上是偶然的(唉)。"
136182
137- #: ../../c-api/float.rst:110
183+ #: ../../c-api/float.rst:127
138184msgid "Pack functions"
139- msgstr ""
185+ msgstr "打包函式 "
140186
141- #: ../../c-api/float.rst:112
187+ #: ../../c-api/float.rst:129
142188msgid ""
143- "The pack routines write 2, 4 or 8 bytes, starting at *p*. *le* is "
144- "an :c:expr:`int` argument, non-zero if you want the bytes string in little-"
145- "endian format (exponent last, at ``p+1``, ``p+3``, or ``p+6`` ``p+7``), zero "
146- "if you want big-endian format (exponent first, at *p*). "
147- "The :c:macro:`PY_BIG_ENDIAN` constant can be used to use the native endian: "
148- "it is equal to ``1`` on big endian processor, or ``0`` on little endian "
149- "processor."
150- msgstr ""
151-
152- #: ../../c-api/float.rst:119
189+ "The pack routines write 2, 4 or 8 bytes, starting at *p*. *le* is an :c:expr:"
190+ "`int` argument, non-zero if you want the bytes string in little-endian "
191+ "format (exponent last, at ``p+1``, ``p+3``, or ``p+6`` ``p+7``), zero if you "
192+ "want big-endian format (exponent first, at *p*). The :c:macro:"
193+ "`PY_BIG_ENDIAN` constant can be used to use the native endian: it is equal "
194+ "to ``1`` on big endian processor, or ``0`` on little endian processor."
195+ msgstr ""
196+ "打包例程會從 *p* 開始寫入 2、4 或 8 位元組。*le* 是一個 :c:expr:`int` 引數,"
197+ "如果你想要位元組字串為小端序格式(指數在最後,位於 ``p+1``、``p+3``、"
198+ "``p+6`` 或 ``p+7``),則用非零值;如果你想要大端序格式(指數在最前,位於 *p*),"
199+ "則用零。可以使用 :c:macro:`PY_BIG_ENDIAN` 常數來使用原生端序:"
200+ "在大端序處理器上它等於 ``1``,在小端序處理器上它等於 ``0``。"
201+
202+ #: ../../c-api/float.rst:136
153203msgid ""
154204"Return value: ``0`` if all is OK, ``-1`` if error (and an exception is set, "
155205"most likely :exc:`OverflowError`)."
156206msgstr ""
207+ "回傳值:如果一切正常則為 ``0``,如果發生錯誤則為 ``-1``\\ (並且會設定一個例外,"
208+ "最有可能是 :exc:`OverflowError`)。"
157209
158- #: ../../c-api/float.rst:122
210+ #: ../../c-api/float.rst:139
159211msgid "There are two problems on non-IEEE platforms:"
160- msgstr ""
212+ msgstr "在非 IEEE 平台上有兩個問題: "
161213
162- #: ../../c-api/float.rst:124
214+ #: ../../c-api/float.rst:141
163215msgid "What this does is undefined if *x* is a NaN or infinity."
164- msgstr ""
216+ msgstr "如果 *x* 是 NaN 或無窮大,則這樣做是未定義的。 "
165217
166- #: ../../c-api/float.rst:125
218+ #: ../../c-api/float.rst:142
167219msgid "``-0.0`` and ``+0.0`` produce the same bytes string."
168220msgstr "``-0.0`` 和 ``+0.0`` 會產生同樣的位元組字串。"
169221
170- #: ../../c-api/float.rst:129
222+ #: ../../c-api/float.rst:146
171223msgid "Pack a C double as the IEEE 754 binary16 half-precision format."
172- msgstr ""
224+ msgstr "將 C double 打包為 IEEE 754 binary16 半精度格式。 "
173225
174- #: ../../c-api/float.rst:133
226+ #: ../../c-api/float.rst:150
175227msgid "Pack a C double as the IEEE 754 binary32 single precision format."
176- msgstr ""
228+ msgstr "將 C double 打包為 IEEE 754 binary32 單精度格式。 "
177229
178- #: ../../c-api/float.rst:137
230+ #: ../../c-api/float.rst:154
179231msgid "Pack a C double as the IEEE 754 binary64 double precision format."
180- msgstr ""
232+ msgstr "將 C double 打包為 IEEE 754 binary64 雙精度格式。 "
181233
182- #: ../../c-api/float.rst:141
234+ #: ../../c-api/float.rst:158
183235msgid "Unpack functions"
184- msgstr ""
236+ msgstr "解包函式 "
185237
186- #: ../../c-api/float.rst:143
238+ #: ../../c-api/float.rst:160
187239msgid ""
188- "The unpack routines read 2, 4 or 8 bytes, starting at *p*. *le* is "
189- "an :c: expr:`int` argument, non-zero if the bytes string is in little-endian "
190- "format (exponent last, at ``p+1``, ``p+3`` or ``p+6`` and ``p+7``), zero if "
191- "big- endian (exponent first, at *p*). The :c:macro:`PY_BIG_ENDIAN` constant "
192- "can be used to use the native endian: it is equal to ``1`` on big endian "
240+ "The unpack routines read 2, 4 or 8 bytes, starting at *p*. *le* isan :c: "
241+ "expr:`int` argument, non-zero if the bytes string is in little-endian format "
242+ "(exponent last, at ``p+1``, ``p+3`` or ``p+6`` and ``p+7``), zero ifbig- "
243+ "endian (exponent first, at *p*). The :c:macro:`PY_BIG_ENDIAN` constant can "
244+ "be used to use the native endian: it is equal to ``1`` on big endian "
193245"processor, or ``0`` on little endian processor."
194246msgstr ""
247+ "解包例程會從 *p* 開始讀取 2、4 或 8 位元組。*le* 是一個 :c:expr:`int` 引數,"
248+ "如果位元組字串為小端序格式(指數在最後,位於 ``p+1``、``p+3``、"
249+ "``p+6`` 或 ``p+7``),則用非零值;如果為大端序格式(指數在最前,位於 *p*),則用零。"
250+ "可以使用 :c:macro:`PY_BIG_ENDIAN` 常數來使用原生端序:在大端序處理器上它等於 ``1``,"
251+ "在小端序處理器上它等於 ``0``。"
195252
196- #: ../../c-api/float.rst:150
253+ #: ../../c-api/float.rst:167
197254msgid ""
198- "Return value: The unpacked double. On error, this is ``-1.0`` "
199- "and :c:func: `PyErr_Occurred` is true (and an exception is set, most "
200- "likely :exc: `OverflowError`)."
255+ "Return value: The unpacked double. On error, this is ``-1.0``and :c:func: "
256+ "`PyErr_Occurred` is true (and an exception is set, mostlikely :exc: "
257+ "`OverflowError`)."
201258msgstr ""
259+ "回傳值:解包後的 double。發生錯誤時,這是 ``-1.0`` 且 :c:func:`PyErr_Occurred` "
260+ "為 true(並且會設置一個例外,最有可能是 :exc:`OverflowError`)。"
202261
203- #: ../../c-api/float.rst:154
262+ #: ../../c-api/float.rst:171
204263msgid ""
205264"Note that on a non-IEEE platform this will refuse to unpack a bytes string "
206265"that represents a NaN or infinity."
207- msgstr ""
266+ msgstr "請注意,在非 IEEE 平台上,這將拒絕解包會表示為 NaN 或無窮大的位元組字串。 "
208267
209- #: ../../c-api/float.rst:159
268+ #: ../../c-api/float.rst:176
210269msgid "Unpack the IEEE 754 binary16 half-precision format as a C double."
211- msgstr ""
270+ msgstr "將 IEEE 754 binary16 半精度格式解包為 C double。 "
212271
213- #: ../../c-api/float.rst:163
272+ #: ../../c-api/float.rst:180
214273msgid "Unpack the IEEE 754 binary32 single precision format as a C double."
215- msgstr ""
274+ msgstr "將 IEEE 754 binary32 單精度格式解包為 C double。 "
216275
217- #: ../../c-api/float.rst:167
276+ #: ../../c-api/float.rst:184
218277msgid "Unpack the IEEE 754 binary64 double precision format as a C double."
219- msgstr ""
278+ msgstr "將 IEEE 754 binary64 雙精度格式解包為 C double。 "
220279
221280#: ../../c-api/float.rst:8
222281msgid "object"