Skip to content

Commit dad6c85

Browse files
sync with cpython 4fcc1025
1 parent 03e25dc commit dad6c85

File tree

3 files changed

+253
-250
lines changed

3 files changed

+253
-250
lines changed

c-api/arg.po

Lines changed: 76 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ msgid ""
66
msgstr ""
77
"Project-Id-Version: Python 3.14\n"
88
"Report-Msgid-Bugs-To: \n"
9-
"POT-Creation-Date: 2025-09-08 15:25+0800\n"
9+
"POT-Creation-Date: 2025-10-25 00:15+0000\n"
1010
"PO-Revision-Date: 2022-10-16 03:21+0800\n"
1111
"Last-Translator: Adrian Liaw <[email protected]>\n"
1212
"Language-Team: Chinese - TAIWAN (https://github.com/python/python-docs-zh-"
@@ -25,17 +25,17 @@ msgstr "剖析引數與建置數值"
2525
#: ../../c-api/arg.rst:8
2626
msgid ""
2727
"These functions are useful when creating your own extension functions and "
28-
"methods. Additional information and examples are available "
29-
"in :ref:`extending-index`."
28+
"methods. Additional information and examples are available in :ref:"
29+
"`extending-index`."
3030
msgstr ""
3131

3232
#: ../../c-api/arg.rst:12
3333
msgid ""
34-
"The first three of these functions "
35-
"described, :c:func:`PyArg_ParseTuple`, :c:func:`PyArg_ParseTupleAndKeywords`, "
36-
"and :c:func:`PyArg_Parse`, all use *format strings* which are used to tell "
37-
"the function about the expected arguments. The format strings use the same "
38-
"syntax for each of these functions."
34+
"The first three of these functions described, :c:func:`PyArg_ParseTuple`, :c:"
35+
"func:`PyArg_ParseTupleAndKeywords`, and :c:func:`PyArg_Parse`, all use "
36+
"*format strings* which are used to tell the function about the expected "
37+
"arguments. The format strings use the same syntax for each of these "
38+
"functions."
3939
msgstr ""
4040

4141
#: ../../c-api/arg.rst:19
@@ -108,10 +108,10 @@ msgstr ""
108108

109109
#: ../../c-api/arg.rst:70
110110
msgid ""
111-
"To ensure that the underlying buffer may be safely borrowed, the "
112-
"object's :c:member:`PyBufferProcs.bf_releasebuffer` field must be ``NULL``. "
113-
"This disallows common mutable objects such as :class:`bytearray`, but also "
114-
"some read-only objects such as :class:`memoryview` of :class:`bytes`."
111+
"To ensure that the underlying buffer may be safely borrowed, the object's :c:"
112+
"member:`PyBufferProcs.bf_releasebuffer` field must be ``NULL``. This "
113+
"disallows common mutable objects such as :class:`bytearray`, but also some "
114+
"read-only objects such as :class:`memoryview` of :class:`bytes`."
115115
msgstr ""
116116

117117
#: ../../c-api/arg.rst:76
@@ -139,8 +139,8 @@ msgstr ""
139139
msgid ""
140140
"This format does not accept :term:`bytes-like objects <bytes-like object>`. "
141141
"If you want to accept filesystem paths and convert them to C character "
142-
"strings, it is preferable to use the ``O&`` format "
143-
"with :c:func:`PyUnicode_FSConverter` as *converter*."
142+
"strings, it is preferable to use the ``O&`` format with :c:func:"
143+
"`PyUnicode_FSConverter` as *converter*."
144144
msgstr ""
145145

146146
#: ../../c-api/arg.rst:96
@@ -163,11 +163,11 @@ msgstr ""
163163

164164
#: ../../c-api/arg.rst:106
165165
msgid ""
166-
"``s#`` (:class:`str`, read-only :term:`bytes-like object`) [const char "
167-
"\\*, :c:type:`Py_ssize_t`]"
166+
"``s#`` (:class:`str`, read-only :term:`bytes-like object`) [const char \\*, :"
167+
"c:type:`Py_ssize_t`]"
168168
msgstr ""
169-
"``s#`` (:class:`str`、唯讀的 :term:`bytes-like object`) [const char "
170-
"\\*, :c:type:`Py_ssize_t`]"
169+
"``s#`` (:class:`str`、唯讀的 :term:`bytes-like object`) [const char \\*, :c:"
170+
"type:`Py_ssize_t`]"
171171

172172
#: ../../c-api/arg.rst:107
173173
msgid ""
@@ -244,11 +244,11 @@ msgstr ""
244244

245245
#: ../../c-api/arg.rst:141
246246
msgid ""
247-
"``y#`` (read-only :term:`bytes-like object`) [const char "
248-
"\\*, :c:type:`Py_ssize_t`]"
247+
"``y#`` (read-only :term:`bytes-like object`) [const char \\*, :c:type:"
248+
"`Py_ssize_t`]"
249249
msgstr ""
250-
"``y#`` (唯讀的 :term:`bytes-like object`) [const char "
251-
"\\*, :c:type:`Py_ssize_t`]"
250+
"``y#`` (唯讀的 :term:`bytes-like object`) [const char \\*, :c:type:"
251+
"`Py_ssize_t`]"
252252

253253
#: ../../c-api/arg.rst:142
254254
msgid ""
@@ -274,9 +274,9 @@ msgstr "``Y`` (:class:`bytearray`) [PyByteArrayObject \\*]"
274274
#: ../../c-api/arg.rst:151
275275
msgid ""
276276
"Requires that the Python object is a :class:`bytearray` object, without "
277-
"attempting any conversion. Raises :exc:`TypeError` if the object is not "
278-
"a :class:`bytearray` object. The C variable may also be declared "
279-
"as :c:expr:`PyObject*`."
277+
"attempting any conversion. Raises :exc:`TypeError` if the object is not a :"
278+
"class:`bytearray` object. The C variable may also be declared as :c:expr:"
279+
"`PyObject*`."
280280
msgstr ""
281281

282282
#: ../../c-api/arg.rst:155
@@ -298,8 +298,8 @@ msgstr "``w*`` (可讀寫 :term:`bytes-like object`) [Py_buffer]"
298298
msgid ""
299299
"This format accepts any object which implements the read-write buffer "
300300
"interface. It fills a :c:type:`Py_buffer` structure provided by the caller. "
301-
"The buffer may contain embedded null bytes. The caller have to "
302-
"call :c:func:`PyBuffer_Release` when it is done with the buffer."
301+
"The buffer may contain embedded null bytes. The caller has to call :c:func:"
302+
"`PyBuffer_Release` when it is done with the buffer."
303303
msgstr ""
304304

305305
#: ../../c-api/arg.rst:166
@@ -327,8 +327,8 @@ msgstr ""
327327
msgid ""
328328
":c:func:`PyArg_ParseTuple` will allocate a buffer of the needed size, copy "
329329
"the encoded data into this buffer and adjust *\\*buffer* to reference the "
330-
"newly allocated storage. The caller is responsible for "
331-
"calling :c:func:`PyMem_Free` to free the allocated buffer after use."
330+
"newly allocated storage. The caller is responsible for calling :c:func:"
331+
"`PyMem_Free` to free the allocated buffer after use."
332332
msgstr ""
333333

334334
#: ../../c-api/arg.rst:183
@@ -348,11 +348,11 @@ msgstr ""
348348

349349
#: ../../c-api/arg.rst:188
350350
msgid ""
351-
"``es#`` (:class:`str`) [const char \\*encoding, char "
352-
"\\*\\*buffer, :c:type:`Py_ssize_t` \\*buffer_length]"
351+
"``es#`` (:class:`str`) [const char \\*encoding, char \\*\\*buffer, :c:type:"
352+
"`Py_ssize_t` \\*buffer_length]"
353353
msgstr ""
354-
"``es#`` (:class:`str`) [const char \\*encoding, char "
355-
"\\*\\*buffer, :c:type:`Py_ssize_t` \\*buffer_length]"
354+
"``es#`` (:class:`str`) [const char \\*encoding, char \\*\\*buffer, :c:type:"
355+
"`Py_ssize_t` \\*buffer_length]"
356356

357357
#: ../../c-api/arg.rst:189
358358
msgid ""
@@ -428,11 +428,10 @@ msgstr "數字"
428428
#: ../../c-api/arg.rst:232
429429
msgid ""
430430
"These formats allow representing Python numbers or single characters as C "
431-
"numbers. Formats that require :class:`int`, :class:`float` "
432-
"or :class:`complex` can also use the corresponding special "
433-
"methods :meth:`~object.__index__`, :meth:`~object.__float__` "
434-
"or :meth:`~object.__complex__` to convert the Python object to the required "
435-
"type."
431+
"numbers. Formats that require :class:`int`, :class:`float` or :class:"
432+
"`complex` can also use the corresponding special methods :meth:`~object."
433+
"__index__`, :meth:`~object.__float__` or :meth:`~object.__complex__` to "
434+
"convert the Python object to the required type."
436435
msgstr ""
437436

438437
#: ../../c-api/arg.rst:238
@@ -452,8 +451,8 @@ msgid ""
452451
"Convert a nonnegative Python integer to an unsigned tiny integer, stored in "
453452
"a C :c:expr:`unsigned char`."
454453
msgstr ""
455-
"將一個 Python 非負整數轉換成無符號 tiny integer(小整數),儲存在 C "
456-
"的 :c:expr:`unsigned`"
454+
"將一個 Python 非負整數轉換成無符號 tiny integer(小整數),儲存在 C 的 :c:"
455+
"expr:`unsigned`"
457456

458457
#: ../../c-api/arg.rst:248 ../../c-api/arg.rst:648
459458
msgid "``B`` (:class:`int`) [unsigned char]"
@@ -464,8 +463,8 @@ msgid ""
464463
"Convert a Python integer to a tiny integer without overflow checking, stored "
465464
"in a C :c:expr:`unsigned char`."
466465
msgstr ""
467-
"將一個 Python 整數轉換成 tiny integer,轉換過程無溢位檢查,儲存在 C "
468-
"的 :c:expr:`unsigned char`。"
466+
"將一個 Python 整數轉換成 tiny integer,轉換過程無溢位檢查,儲存在 C 的 :c:"
467+
"expr:`unsigned char`。"
469468

470469
#: ../../c-api/arg.rst:252 ../../c-api/arg.rst:642
471470
msgid "``h`` (:class:`int`) [short int]"
@@ -616,9 +615,9 @@ msgstr "``O`` (object) [PyObject \\*]"
616615
#: ../../c-api/arg.rst:313
617616
msgid ""
618617
"Store a Python object (without any conversion) in a C object pointer. The C "
619-
"program thus receives the actual object that was passed. A "
620-
"new :term:`strong reference` to the object is not created (i.e. its "
621-
"reference count is not increased). The pointer stored is not ``NULL``."
618+
"program thus receives the actual object that was passed. A new :term:"
619+
"`strong reference` to the object is not created (i.e. its reference count is "
620+
"not increased). The pointer stored is not ``NULL``."
622621
msgstr ""
623622

624623
#: ../../c-api/arg.rst:319
@@ -652,12 +651,12 @@ msgstr "status = converter(object, address);"
652651

653652
#: ../../c-api/arg.rst:336
654653
msgid ""
655-
"where *object* is the Python object to be converted and *address* is "
656-
"the :c:expr:`void*` argument that was passed to the ``PyArg_Parse*`` "
657-
"function. The returned *status* should be ``1`` for a successful conversion "
658-
"and ``0`` if the conversion has failed. When the conversion fails, the "
659-
"*converter* function should raise an exception and leave the content of "
660-
"*address* unmodified."
654+
"where *object* is the Python object to be converted and *address* is the :c:"
655+
"expr:`void*` argument that was passed to the ``PyArg_Parse*`` function. The "
656+
"returned *status* should be ``1`` for a successful conversion and ``0`` if "
657+
"the conversion has failed. When the conversion fails, the *converter* "
658+
"function should raise an exception and leave the content of *address* "
659+
"unmodified."
661660
msgstr ""
662661

663662
#: ../../c-api/arg.rst:345
@@ -671,8 +670,8 @@ msgstr ""
671670

672671
#: ../../c-api/arg.rst:351
673672
msgid ""
674-
"Examples of converters: :c:func:`PyUnicode_FSConverter` "
675-
"and :c:func:`PyUnicode_FSDecoder`."
673+
"Examples of converters: :c:func:`PyUnicode_FSConverter` and :c:func:"
674+
"`PyUnicode_FSDecoder`."
676675
msgstr ""
677676

678677
#: ../../c-api/arg.rst:354
@@ -707,8 +706,8 @@ msgstr ""
707706
#: ../../c-api/arg.rst:372
708707
msgid ""
709708
"If *items* contains format units which store a :ref:`borrowed buffer <c-arg-"
710-
"borrowed-buffer>` (``s``, ``s#``, ``z``, ``z#``, ``y``, or ``y#``) or "
711-
"a :term:`borrowed reference` (``S``, ``Y``, ``U``, ``O``, or ``O!``), the "
709+
"borrowed-buffer>` (``s``, ``s#``, ``z``, ``z#``, ``y``, or ``y#``) or a :"
710+
"term:`borrowed reference` (``S``, ``Y``, ``U``, ``O``, or ``O!``), the "
712711
"object must be a Python tuple. The *converter* for the ``O&`` format unit in "
713712
"*items* must not store a borrowed buffer or a borrowed reference."
714713
msgstr ""
@@ -773,8 +772,8 @@ msgstr "``;``"
773772
#: ../../c-api/arg.rst:411
774773
msgid ""
775774
"The list of format units ends here; the string after the semicolon is used "
776-
"as the error message *instead* of the default error message. ``:`` and "
777-
"``;`` mutually exclude each other."
775+
"as the error message *instead* of the default error message. ``:`` and ``;"
776+
"`` mutually exclude each other."
778777
msgstr ""
779778

780779
#: ../../c-api/arg.rst:415
@@ -833,9 +832,9 @@ msgstr ""
833832

834833
#: ../../c-api/arg.rst:462
835834
msgid ""
836-
"The *keywords* parameter declaration is :c:expr:`char * const *` in C "
837-
"and :c:expr:`const char * const *` in C++. This can be overridden with "
838-
"the :c:macro:`PY_CXX_CONST` macro."
835+
"The *keywords* parameter declaration is :c:expr:`char * const *` in C and :c:"
836+
"expr:`const char * const *` in C++. This can be overridden with the :c:macro:"
837+
"`PY_CXX_CONST` macro."
839838
msgstr ""
840839

841840
#: ../../c-api/arg.rst:466
@@ -846,9 +845,9 @@ msgstr "新增對\\ :ref:`僅限位置參數 <positional-only_parameter>`\\ 的
846845

847846
#: ../../c-api/arg.rst:470
848847
msgid ""
849-
"The *keywords* parameter has now type :c:expr:`char * const *` in C "
850-
"and :c:expr:`const char * const *` in C++, instead of :c:expr:`char **`. "
851-
"Added support for non-ASCII keyword parameter names."
848+
"The *keywords* parameter has now type :c:expr:`char * const *` in C and :c:"
849+
"expr:`const char * const *` in C++, instead of :c:expr:`char **`. Added "
850+
"support for non-ASCII keyword parameter names."
852851
msgstr ""
853852

854853
#: ../../c-api/arg.rst:479
@@ -986,10 +985,10 @@ msgid ""
986985
"When memory buffers are passed as parameters to supply data to build "
987986
"objects, as for the ``s`` and ``s#`` formats, the required data is copied. "
988987
"Buffers provided by the caller are never referenced by the objects created "
989-
"by :c:func:`Py_BuildValue`. In other words, if your code "
990-
"invokes :c:func:`malloc` and passes the allocated memory "
991-
"to :c:func:`Py_BuildValue`, your code is responsible for "
992-
"calling :c:func:`free` for that memory once :c:func:`Py_BuildValue` returns."
988+
"by :c:func:`Py_BuildValue`. In other words, if your code invokes :c:func:"
989+
"`malloc` and passes the allocated memory to :c:func:`Py_BuildValue`, your "
990+
"code is responsible for calling :c:func:`free` for that memory once :c:func:"
991+
"`Py_BuildValue` returns."
993992
msgstr ""
994993

995994
#: ../../c-api/arg.rst:589
@@ -1165,16 +1164,16 @@ msgid ""
11651164
"Convert a C :c:expr:`int` representing a byte to a Python :class:`bytes` "
11661165
"object of length 1."
11671166
msgstr ""
1168-
"將一個 C 中代表一個位元組的 :c:expr:`int` 轉換成 Python 中長度為一"
1169-
"的 :class:`bytes`。"
1167+
"將一個 C 中代表一個位元組的 :c:expr:`int` 轉換成 Python 中長度為一的 :class:"
1168+
"`bytes`。"
11701169

11711170
#: ../../c-api/arg.rst:687
11721171
msgid ""
11731172
"Convert a C :c:expr:`int` representing a character to Python :class:`str` "
11741173
"object of length 1."
11751174
msgstr ""
1176-
"將一個 C 中代表一個字元的 :c:expr:`int` 轉換成 Python 中長度為一"
1177-
"的 :class:`str`。"
1175+
"將一個 C 中代表一個字元的 :c:expr:`int` 轉換成 Python 中長度為一的 :class:"
1176+
"`str`。"
11781177

11791178
#: ../../c-api/arg.rst:691
11801179
msgid "Convert a C :c:expr:`double` to a Python floating-point number."
@@ -1197,9 +1196,9 @@ msgid ""
11971196
"Pass a Python object untouched but create a new :term:`strong reference` to "
11981197
"it (i.e. its reference count is incremented by one). If the object passed in "
11991198
"is a ``NULL`` pointer, it is assumed that this was caused because the call "
1200-
"producing the argument found an error and set an exception. "
1201-
"Therefore, :c:func:`Py_BuildValue` will return ``NULL`` but won't raise an "
1202-
"exception. If no exception has been raised yet, :exc:`SystemError` is set."
1199+
"producing the argument found an error and set an exception. Therefore, :c:"
1200+
"func:`Py_BuildValue` will return ``NULL`` but won't raise an exception. If "
1201+
"no exception has been raised yet, :exc:`SystemError` is set."
12031202
msgstr ""
12041203

12051204
#: ../../c-api/arg.rst:709
@@ -1228,9 +1227,9 @@ msgstr "``O&`` (object) [*converter*, *anything*]"
12281227
#: ../../c-api/arg.rst:718
12291228
msgid ""
12301229
"Convert *anything* to a Python object through a *converter* function. The "
1231-
"function is called with *anything* (which should be compatible "
1232-
"with :c:expr:`void*`) as its argument and should return a \"new\" Python "
1233-
"object, or ``NULL`` if an error occurred."
1230+
"function is called with *anything* (which should be compatible with :c:expr:"
1231+
"`void*`) as its argument and should return a \"new\" Python object, or "
1232+
"``NULL`` if an error occurred."
12341233
msgstr ""
12351234

12361235
#: ../../c-api/arg.rst:723

0 commit comments

Comments
 (0)