diff --git a/Makefile b/Makefile index 871a5aa93..2be0b2117 100644 --- a/Makefile +++ b/Makefile @@ -19,7 +19,7 @@ # test build, we're building with the .rst files that generated our # .po files. -CPYTHON_CURRENT_COMMIT := dc3c075d9eebc82c63ec54bb3f217d67b2aea914 +CPYTHON_CURRENT_COMMIT := b1bbd0160d2202bc686cef4c80d42023eb085bff LANGUAGE := tr BRANCH := 3.12 diff --git a/about.po b/about.po index d4535b6b1..4fcb32df6 100644 --- a/about.po +++ b/about.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-01-04 03:14+0300\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2022-12-28 16:16-0500\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -18,19 +18,22 @@ msgstr "" "X-Generator: Poedit 3.2.2\n" #: about.rst:3 -msgid "About these documents" +#, fuzzy +msgid "About this documentation" msgstr "Bu dokümanlar hakkında" #: about.rst:6 +#, fuzzy msgid "" -"These documents are generated from `reStructuredText`_ sources by `Sphinx`_, " -"a document processor specifically written for the Python documentation." +"Python's documentation is generated from `reStructuredText`_ sources using " +"`Sphinx`_, a documentation generator originally created for Python and now " +"maintained as an independent project." msgstr "" "Bu dokümanlar, Python dokümanları için özel olarak yazılmış bir doküman " "işlemcisi olan `Sphinx`_ tarafından `reStructuredText`_ kaynaklarından " "oluşturulur." -#: about.rst:15 +#: about.rst:16 msgid "" "Development of the documentation and its toolchain is an entirely volunteer " "effort, just like Python itself. If you want to contribute, please take a " @@ -42,19 +45,20 @@ msgstr "" "yapacağınıza ilişkin bilgi için lütfen :ref:`reporting-bugs` sayfasına göz " "atın. Yeni gönüllülere her zaman açığız!" -#: about.rst:20 +#: about.rst:21 msgid "Many thanks go to:" msgstr "Destekleri için teşekkürler:" -#: about.rst:22 +#: about.rst:23 +#, fuzzy msgid "" "Fred L. Drake, Jr., the creator of the original Python documentation toolset " -"and writer of much of the content;" +"and author of much of the content;" msgstr "" "Fred L. Drake, Jr., orijinal Python dokümantasyon araç setinin yaratıcısı ve " "içeriğin çoğunun yazarı;" -#: about.rst:24 +#: about.rst:25 msgid "" "the `Docutils `_ project for creating " "reStructuredText and the Docutils suite;" @@ -62,7 +66,7 @@ msgstr "" "`Docutils `_ projesi, reStructuredText ve " "Docutils paketini oluşturdukları için;" -#: about.rst:26 +#: about.rst:27 msgid "" "Fredrik Lundh for his Alternative Python Reference project from which Sphinx " "got many good ideas." @@ -70,11 +74,12 @@ msgstr "" "Fredrik Lundh, Sphinx'in pek çok iyi fikir edindiği Alternatif Python " "Referansı projesi için." -#: about.rst:31 -msgid "Contributors to the Python Documentation" +#: about.rst:32 +#, fuzzy +msgid "Contributors to the Python documentation" msgstr "Python Dokümantasyonuna Katkıda Bulunanlar" -#: about.rst:33 +#: about.rst:34 msgid "" "Many people have contributed to the Python language, the Python standard " "library, and the Python documentation. See :source:`Misc/ACKS` in the " @@ -84,7 +89,7 @@ msgstr "" "dokümantasyonuna katkıda bulunmuştur. Katkıda bulunanların kısmi bir " "listesi için Python kaynak dağıtımında :source:`Misc/ACKS` dosyasına bakın." -#: about.rst:37 +#: about.rst:38 msgid "" "It is only with the input and contributions of the Python community that " "Python has such wonderful documentation -- Thank You!" diff --git a/c-api/allocation.po b/c-api/allocation.po index 8b43cf8ba..d269a4fe9 100644 --- a/c-api/allocation.po +++ b/c-api/allocation.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-09-18 19:05+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -23,19 +23,17 @@ msgstr "" #: c-api/allocation.rst:17 msgid "" "Initialize a newly allocated object *op* with its type and initial " -"reference. Returns the initialized object. If *type* indicates that the " -"object participates in the cyclic garbage detector, it is added to the " -"detector's set of observed objects. Other fields of the object are not " -"affected." +"reference. Returns the initialized object. Other fields of the object are " +"not affected." msgstr "" -#: c-api/allocation.rst:26 +#: c-api/allocation.rst:24 msgid "" "This does everything :c:func:`PyObject_Init` does, and also initializes the " "length information for a variable-size object." msgstr "" -#: c-api/allocation.rst:32 +#: c-api/allocation.rst:30 msgid "" "Allocate a new Python object using the C structure type *TYPE* and the " "Python type object *typeobj* (``PyTypeObject*``). Fields not defined by the " @@ -45,7 +43,14 @@ msgid "" "tp_basicsize` field of the type object." msgstr "" -#: c-api/allocation.rst:43 +#: c-api/allocation.rst:38 +msgid "" +"Note that this function is unsuitable if *typeobj* has :c:macro:" +"`Py_TPFLAGS_HAVE_GC` set. For such objects, use :c:func:`PyObject_GC_New` " +"instead." +msgstr "" + +#: c-api/allocation.rst:45 msgid "" "Allocate a new Python object using the C structure type *TYPE* and the " "Python type object *typeobj* (``PyTypeObject*``). Fields not defined by the " @@ -58,7 +63,14 @@ msgid "" "management efficiency." msgstr "" -#: c-api/allocation.rst:57 +#: c-api/allocation.rst:56 +msgid "" +"Note that this function is unsuitable if *typeobj* has :c:macro:" +"`Py_TPFLAGS_HAVE_GC` set. For such objects, use :c:func:`PyObject_GC_NewVar` " +"instead." +msgstr "" + +#: c-api/allocation.rst:63 msgid "" "Releases memory allocated to an object using :c:macro:`PyObject_New` or :c:" "macro:`PyObject_NewVar`. This is normally called from the :c:member:" @@ -67,17 +79,17 @@ msgid "" "no longer a valid Python object." msgstr "" -#: c-api/allocation.rst:66 +#: c-api/allocation.rst:72 msgid "" "Object which is visible in Python as ``None``. This should only be accessed " "using the :c:macro:`Py_None` macro, which evaluates to a pointer to this " "object." msgstr "" -#: c-api/allocation.rst:73 +#: c-api/allocation.rst:79 msgid ":c:func:`PyModule_Create`" msgstr "" -#: c-api/allocation.rst:74 +#: c-api/allocation.rst:80 msgid "To allocate and create extension modules." msgstr "" diff --git a/c-api/arg.po b/c-api/arg.po index 3364d0bad..41be82f8f 100644 --- a/c-api/arg.po +++ b/c-api/arg.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -22,7 +22,7 @@ msgstr "" #: c-api/arg.rst:8 msgid "" -"These functions are useful when creating your own extensions functions and " +"These functions are useful when creating your own extension functions and " "methods. Additional information and examples are available in :ref:" "`extending-index`." msgstr "" @@ -175,7 +175,7 @@ msgid "" "encoding." msgstr "" -#: c-api/arg.rst:546 +#: c-api/arg.rst:558 msgid "``z`` (:class:`str` or ``None``) [const char \\*]" msgstr "" @@ -414,162 +414,179 @@ msgid "Numbers" msgstr "" #: c-api/arg.rst:232 +msgid "" +"These formats allow representing Python numbers or single characters as C " +"numbers. Formats that require :class:`int`, :class:`float` or :class:" +"`complex` can also use the corresponding special methods :meth:`~object." +"__index__`, :meth:`~object.__float__` or :meth:`~object.__complex__` to " +"convert the Python object to the required type." +msgstr "" + +#: c-api/arg.rst:238 +msgid "" +"For signed integer formats, :exc:`OverflowError` is raised if the value is " +"out of range for the C type. For unsigned integer formats, no range checking " +"is done --- the most significant bits are silently truncated when the " +"receiving field is too small to receive the value." +msgstr "" + +#: c-api/arg.rst:244 msgid "``b`` (:class:`int`) [unsigned char]" msgstr "" -#: c-api/arg.rst:233 +#: c-api/arg.rst:245 msgid "" -"Convert a nonnegative Python integer to an unsigned tiny int, stored in a C :" -"c:expr:`unsigned char`." +"Convert a nonnegative Python integer to an unsigned tiny integer, stored in " +"a C :c:expr:`unsigned char`." msgstr "" -#: c-api/arg.rst:580 +#: c-api/arg.rst:592 msgid "``B`` (:class:`int`) [unsigned char]" msgstr "" -#: c-api/arg.rst:237 +#: c-api/arg.rst:249 msgid "" -"Convert a Python integer to a tiny int without overflow checking, stored in " -"a C :c:expr:`unsigned char`." +"Convert a Python integer to a tiny integer without overflow checking, stored " +"in a C :c:expr:`unsigned char`." msgstr "" -#: c-api/arg.rst:574 +#: c-api/arg.rst:586 msgid "``h`` (:class:`int`) [short int]" msgstr "" -#: c-api/arg.rst:241 +#: c-api/arg.rst:253 msgid "Convert a Python integer to a C :c:expr:`short int`." msgstr "" -#: c-api/arg.rst:583 +#: c-api/arg.rst:595 msgid "``H`` (:class:`int`) [unsigned short int]" msgstr "" -#: c-api/arg.rst:244 +#: c-api/arg.rst:256 msgid "" "Convert a Python integer to a C :c:expr:`unsigned short int`, without " "overflow checking." msgstr "" -#: c-api/arg.rst:568 +#: c-api/arg.rst:580 msgid "``i`` (:class:`int`) [int]" msgstr "" -#: c-api/arg.rst:248 +#: c-api/arg.rst:260 msgid "Convert a Python integer to a plain C :c:expr:`int`." msgstr "" -#: c-api/arg.rst:586 +#: c-api/arg.rst:598 msgid "``I`` (:class:`int`) [unsigned int]" msgstr "" -#: c-api/arg.rst:251 +#: c-api/arg.rst:263 msgid "" "Convert a Python integer to a C :c:expr:`unsigned int`, without overflow " "checking." msgstr "" -#: c-api/arg.rst:577 +#: c-api/arg.rst:589 msgid "``l`` (:class:`int`) [long int]" msgstr "" -#: c-api/arg.rst:255 +#: c-api/arg.rst:267 msgid "Convert a Python integer to a C :c:expr:`long int`." msgstr "" -#: c-api/arg.rst:589 +#: c-api/arg.rst:601 msgid "``k`` (:class:`int`) [unsigned long]" msgstr "" -#: c-api/arg.rst:258 +#: c-api/arg.rst:270 msgid "" "Convert a Python integer to a C :c:expr:`unsigned long` without overflow " "checking." msgstr "" -#: c-api/arg.rst:592 +#: c-api/arg.rst:604 msgid "``L`` (:class:`int`) [long long]" msgstr "" -#: c-api/arg.rst:262 +#: c-api/arg.rst:274 msgid "Convert a Python integer to a C :c:expr:`long long`." msgstr "" -#: c-api/arg.rst:595 +#: c-api/arg.rst:607 msgid "``K`` (:class:`int`) [unsigned long long]" msgstr "" -#: c-api/arg.rst:265 +#: c-api/arg.rst:277 msgid "" "Convert a Python integer to a C :c:expr:`unsigned long long` without " "overflow checking." msgstr "" -#: c-api/arg.rst:598 +#: c-api/arg.rst:610 msgid "``n`` (:class:`int`) [:c:type:`Py_ssize_t`]" msgstr "" -#: c-api/arg.rst:269 +#: c-api/arg.rst:281 msgid "Convert a Python integer to a C :c:type:`Py_ssize_t`." msgstr "" -#: c-api/arg.rst:271 +#: c-api/arg.rst:283 msgid "``c`` (:class:`bytes` or :class:`bytearray` of length 1) [char]" msgstr "" -#: c-api/arg.rst:272 +#: c-api/arg.rst:284 msgid "" "Convert a Python byte, represented as a :class:`bytes` or :class:`bytearray` " "object of length 1, to a C :c:expr:`char`." msgstr "" -#: c-api/arg.rst:275 +#: c-api/arg.rst:287 msgid "Allow :class:`bytearray` objects." msgstr "" -#: c-api/arg.rst:605 +#: c-api/arg.rst:617 msgid "``C`` (:class:`str` of length 1) [int]" msgstr "" -#: c-api/arg.rst:279 +#: c-api/arg.rst:291 msgid "" "Convert a Python character, represented as a :class:`str` object of length " "1, to a C :c:expr:`int`." msgstr "" -#: c-api/arg.rst:612 +#: c-api/arg.rst:624 msgid "``f`` (:class:`float`) [float]" msgstr "" -#: c-api/arg.rst:283 +#: c-api/arg.rst:295 msgid "Convert a Python floating-point number to a C :c:expr:`float`." msgstr "" -#: c-api/arg.rst:609 +#: c-api/arg.rst:621 msgid "``d`` (:class:`float`) [double]" msgstr "" -#: c-api/arg.rst:286 +#: c-api/arg.rst:298 msgid "Convert a Python floating-point number to a C :c:expr:`double`." msgstr "" -#: c-api/arg.rst:288 +#: c-api/arg.rst:300 msgid "``D`` (:class:`complex`) [Py_complex]" msgstr "" -#: c-api/arg.rst:289 +#: c-api/arg.rst:301 msgid "Convert a Python complex number to a C :c:type:`Py_complex` structure." msgstr "" -#: c-api/arg.rst:292 +#: c-api/arg.rst:304 msgid "Other objects" msgstr "" -#: c-api/arg.rst:618 +#: c-api/arg.rst:630 msgid "``O`` (object) [PyObject \\*]" msgstr "" -#: c-api/arg.rst:295 +#: c-api/arg.rst:307 msgid "" "Store a Python object (without any conversion) in a C object pointer. The C " "program thus receives the actual object that was passed. A new :term:" @@ -577,11 +594,11 @@ msgid "" "not increased). The pointer stored is not ``NULL``." msgstr "" -#: c-api/arg.rst:301 +#: c-api/arg.rst:313 msgid "``O!`` (object) [*typeobject*, PyObject \\*]" msgstr "" -#: c-api/arg.rst:302 +#: c-api/arg.rst:314 msgid "" "Store a Python object in a C object pointer. This is similar to ``O``, but " "takes two C arguments: the first is the address of a Python type object, the " @@ -590,11 +607,11 @@ msgid "" "required type, :exc:`TypeError` is raised." msgstr "" -#: c-api/arg.rst:636 -msgid "``O&`` (object) [*converter*, *anything*]" +#: c-api/arg.rst:322 +msgid "``O&`` (object) [*converter*, *address*]" msgstr "" -#: c-api/arg.rst:311 +#: c-api/arg.rst:323 msgid "" "Convert a Python object to a C variable through a *converter* function. " "This takes two arguments: the first is a function, the second is the address " @@ -602,11 +619,11 @@ msgid "" "*converter* function in turn is called as follows::" msgstr "" -#: c-api/arg.rst:316 +#: c-api/arg.rst:328 msgid "status = converter(object, address);" msgstr "" -#: c-api/arg.rst:318 +#: c-api/arg.rst:330 msgid "" "where *object* is the Python object to be converted and *address* is the :c:" "expr:`void*` argument that was passed to the ``PyArg_Parse*`` function. The " @@ -616,24 +633,30 @@ msgid "" "unmodified." msgstr "" -#: c-api/arg.rst:324 +#: c-api/arg.rst:339 msgid "" -"If the *converter* returns ``Py_CLEANUP_SUPPORTED``, it may get called a " -"second time if the argument parsing eventually fails, giving the converter a " -"chance to release any memory that it had already allocated. In this second " -"call, the *object* parameter will be ``NULL``; *address* will have the same " -"value as in the original call." +"If the *converter* returns :c:macro:`!Py_CLEANUP_SUPPORTED`, it may get " +"called a second time if the argument parsing eventually fails, giving the " +"converter a chance to release any memory that it had already allocated. In " +"this second call, the *object* parameter will be ``NULL``; *address* will " +"have the same value as in the original call." msgstr "" -#: c-api/arg.rst:330 -msgid "``Py_CLEANUP_SUPPORTED`` was added." +#: c-api/arg.rst:345 +msgid "" +"Examples of converters: :c:func:`PyUnicode_FSConverter` and :c:func:" +"`PyUnicode_FSDecoder`." +msgstr "" + +#: c-api/arg.rst:348 +msgid ":c:macro:`!Py_CLEANUP_SUPPORTED` was added." msgstr "" -#: c-api/arg.rst:333 +#: c-api/arg.rst:351 msgid "``p`` (:class:`bool`) [int]" msgstr "" -#: c-api/arg.rst:334 +#: c-api/arg.rst:352 msgid "" "Tests the value passed in for truth (a boolean **p**\\ redicate) and " "converts the result to its equivalent C true/false integer value. Sets the " @@ -642,37 +665,28 @@ msgid "" "how Python tests values for truth." msgstr "" -#: c-api/arg.rst:642 +#: c-api/arg.rst:654 msgid "``(items)`` (:class:`tuple`) [*matching-items*]" msgstr "" -#: c-api/arg.rst:343 +#: c-api/arg.rst:361 msgid "" "The object must be a Python sequence whose length is the number of format " "units in *items*. The C arguments must correspond to the individual format " "units in *items*. Format units for sequences may be nested." msgstr "" -#: c-api/arg.rst:347 -msgid "" -"It is possible to pass \"long\" integers (integers whose value exceeds the " -"platform's :c:macro:`LONG_MAX`) however no proper range checking is done --- " -"the most significant bits are silently truncated when the receiving field is " -"too small to receive the value (actually, the semantics are inherited from " -"downcasts in C --- your mileage may vary)." -msgstr "" - -#: c-api/arg.rst:353 +#: c-api/arg.rst:365 msgid "" "A few other characters have a meaning in a format string. These may not " "occur inside nested parentheses. They are:" msgstr "" -#: c-api/arg.rst:356 +#: c-api/arg.rst:368 msgid "``|``" msgstr "" -#: c-api/arg.rst:357 +#: c-api/arg.rst:369 msgid "" "Indicates that the remaining arguments in the Python argument list are " "optional. The C variables corresponding to optional arguments should be " @@ -681,11 +695,11 @@ msgid "" "corresponding C variable(s)." msgstr "" -#: c-api/arg.rst:363 +#: c-api/arg.rst:375 msgid "``$``" msgstr "" -#: c-api/arg.rst:364 +#: c-api/arg.rst:376 msgid "" ":c:func:`PyArg_ParseTupleAndKeywords` only: Indicates that the remaining " "arguments in the Python argument list are keyword-only. Currently, all " @@ -693,36 +707,36 @@ msgid "" "be specified before ``$`` in the format string." msgstr "" -#: c-api/arg.rst:372 +#: c-api/arg.rst:384 msgid "``:``" msgstr "" -#: c-api/arg.rst:373 +#: c-api/arg.rst:385 msgid "" "The list of format units ends here; the string after the colon is used as " "the function name in error messages (the \"associated value\" of the " "exception that :c:func:`PyArg_ParseTuple` raises)." msgstr "" -#: c-api/arg.rst:377 +#: c-api/arg.rst:389 msgid "``;``" msgstr "" -#: c-api/arg.rst:378 +#: c-api/arg.rst:390 msgid "" "The list of format units ends here; the string after the semicolon is used " "as the error message *instead* of the default error message. ``:`` and ``;" "`` mutually exclude each other." msgstr "" -#: c-api/arg.rst:382 +#: c-api/arg.rst:394 msgid "" "Note that any Python object references which are provided to the caller are " "*borrowed* references; do not release them (i.e. do not decrement their " "reference count)!" msgstr "" -#: c-api/arg.rst:386 +#: c-api/arg.rst:398 msgid "" "Additional arguments passed to these functions must be addresses of " "variables whose type is determined by the format string; these are used to " @@ -732,7 +746,7 @@ msgid "" "unit in that case." msgstr "" -#: c-api/arg.rst:392 +#: c-api/arg.rst:404 msgid "" "For the conversion to succeed, the *arg* object must match the format and " "the format must be exhausted. On success, the ``PyArg_Parse*`` functions " @@ -742,24 +756,24 @@ msgid "" "the following format units are left untouched." msgstr "" -#: c-api/arg.rst:401 +#: c-api/arg.rst:413 msgid "API Functions" msgstr "" -#: c-api/arg.rst:405 +#: c-api/arg.rst:417 msgid "" "Parse the parameters of a function that takes only positional parameters " "into local variables. Returns true on success; on failure, it returns false " "and raises the appropriate exception." msgstr "" -#: c-api/arg.rst:412 +#: c-api/arg.rst:424 msgid "" "Identical to :c:func:`PyArg_ParseTuple`, except that it accepts a va_list " "rather than a variable number of arguments." msgstr "" -#: c-api/arg.rst:418 +#: c-api/arg.rst:430 msgid "" "Parse the parameters of a function that takes both positional and keyword " "parameters into local variables. The *keywords* argument is a ``NULL``-" @@ -768,26 +782,26 @@ msgid "" "success; on failure, it returns false and raises the appropriate exception." msgstr "" -#: c-api/arg.rst:425 +#: c-api/arg.rst:437 msgid "" "Added support for :ref:`positional-only parameters `." msgstr "" -#: c-api/arg.rst:432 +#: c-api/arg.rst:444 msgid "" "Identical to :c:func:`PyArg_ParseTupleAndKeywords`, except that it accepts a " "va_list rather than a variable number of arguments." msgstr "" -#: c-api/arg.rst:438 +#: c-api/arg.rst:450 msgid "" "Ensure that the keys in the keywords argument dictionary are strings. This " "is only needed if :c:func:`PyArg_ParseTupleAndKeywords` is not used, since " "the latter already does this check." msgstr "" -#: c-api/arg.rst:448 +#: c-api/arg.rst:460 msgid "" "Function used to deconstruct the argument lists of \"old-style\" functions " "--- these are functions which use the :const:`METH_OLDARGS` parameter " @@ -798,7 +812,7 @@ msgid "" "continue to be used for that purpose." msgstr "" -#: c-api/arg.rst:459 +#: c-api/arg.rst:471 msgid "" "A simpler form of parameter retrieval which does not use a format string to " "specify the types of the arguments. Functions which use this method to " @@ -816,13 +830,13 @@ msgid "" "if there was a failure." msgstr "" -#: c-api/arg.rst:474 +#: c-api/arg.rst:486 msgid "" "This is an example of the use of this function, taken from the sources for " "the :mod:`!_weakref` helper module for weak references::" msgstr "" -#: c-api/arg.rst:477 +#: c-api/arg.rst:489 msgid "" "static PyObject *\n" "weakref_ref(PyObject *self, PyObject *args)\n" @@ -838,21 +852,21 @@ msgid "" "}" msgstr "" -#: c-api/arg.rst:490 +#: c-api/arg.rst:502 msgid "" "The call to :c:func:`PyArg_UnpackTuple` in this example is entirely " "equivalent to this call to :c:func:`PyArg_ParseTuple`::" msgstr "" -#: c-api/arg.rst:493 +#: c-api/arg.rst:505 msgid "PyArg_ParseTuple(args, \"O|O:ref\", &object, &callback)" msgstr "" -#: c-api/arg.rst:498 +#: c-api/arg.rst:510 msgid "Building values" msgstr "" -#: c-api/arg.rst:502 +#: c-api/arg.rst:514 msgid "" "Create a new value based on a format string similar to those accepted by the " "``PyArg_Parse*`` family of functions and a sequence of values. Returns the " @@ -860,7 +874,7 @@ msgid "" "``NULL`` is returned." msgstr "" -#: c-api/arg.rst:507 +#: c-api/arg.rst:519 msgid "" ":c:func:`Py_BuildValue` does not always build a tuple. It builds a tuple " "only if its format string contains two or more format units. If the format " @@ -869,7 +883,7 @@ msgid "" "it to return a tuple of size 0 or one, parenthesize the format string." msgstr "" -#: c-api/arg.rst:513 +#: c-api/arg.rst:525 msgid "" "When memory buffers are passed as parameters to supply data to build " "objects, as for the ``s`` and ``s#`` formats, the required data is copied. " @@ -880,7 +894,7 @@ msgid "" "`Py_BuildValue` returns." msgstr "" -#: c-api/arg.rst:521 +#: c-api/arg.rst:533 msgid "" "In the following description, the quoted form is the format unit; the entry " "in (round) parentheses is the Python object type that the format unit will " @@ -888,180 +902,180 @@ msgid "" "be passed." msgstr "" -#: c-api/arg.rst:525 +#: c-api/arg.rst:537 msgid "" "The characters space, tab, colon and comma are ignored in format strings " "(but not within format units such as ``s#``). This can be used to make long " "format strings a tad more readable." msgstr "" -#: c-api/arg.rst:529 +#: c-api/arg.rst:541 msgid "``s`` (:class:`str` or ``None``) [const char \\*]" msgstr "" -#: c-api/arg.rst:530 +#: c-api/arg.rst:542 msgid "" "Convert a null-terminated C string to a Python :class:`str` object using " "``'utf-8'`` encoding. If the C string pointer is ``NULL``, ``None`` is used." msgstr "" -#: c-api/arg.rst:533 +#: c-api/arg.rst:545 msgid "" "``s#`` (:class:`str` or ``None``) [const char \\*, :c:type:`Py_ssize_t`]" msgstr "" -#: c-api/arg.rst:534 +#: c-api/arg.rst:546 msgid "" "Convert a C string and its length to a Python :class:`str` object using " "``'utf-8'`` encoding. If the C string pointer is ``NULL``, the length is " "ignored and ``None`` is returned." msgstr "" -#: c-api/arg.rst:538 +#: c-api/arg.rst:550 msgid "``y`` (:class:`bytes`) [const char \\*]" msgstr "" -#: c-api/arg.rst:539 +#: c-api/arg.rst:551 msgid "" "This converts a C string to a Python :class:`bytes` object. If the C string " "pointer is ``NULL``, ``None`` is returned." msgstr "" -#: c-api/arg.rst:542 +#: c-api/arg.rst:554 msgid "``y#`` (:class:`bytes`) [const char \\*, :c:type:`Py_ssize_t`]" msgstr "" -#: c-api/arg.rst:543 +#: c-api/arg.rst:555 msgid "" "This converts a C string and its lengths to a Python object. If the C " "string pointer is ``NULL``, ``None`` is returned." msgstr "" -#: c-api/arg.rst:563 +#: c-api/arg.rst:575 msgid "Same as ``s``." msgstr "" -#: c-api/arg.rst:549 +#: c-api/arg.rst:561 msgid "" "``z#`` (:class:`str` or ``None``) [const char \\*, :c:type:`Py_ssize_t`]" msgstr "" -#: c-api/arg.rst:566 +#: c-api/arg.rst:578 msgid "Same as ``s#``." msgstr "" -#: c-api/arg.rst:552 +#: c-api/arg.rst:564 msgid "``u`` (:class:`str`) [const wchar_t \\*]" msgstr "" -#: c-api/arg.rst:553 +#: c-api/arg.rst:565 msgid "" "Convert a null-terminated :c:type:`wchar_t` buffer of Unicode (UTF-16 or " "UCS-4) data to a Python Unicode object. If the Unicode buffer pointer is " "``NULL``, ``None`` is returned." msgstr "" -#: c-api/arg.rst:557 +#: c-api/arg.rst:569 msgid "``u#`` (:class:`str`) [const wchar_t \\*, :c:type:`Py_ssize_t`]" msgstr "" -#: c-api/arg.rst:558 +#: c-api/arg.rst:570 msgid "" "Convert a Unicode (UTF-16 or UCS-4) data buffer and its length to a Python " "Unicode object. If the Unicode buffer pointer is ``NULL``, the length is " "ignored and ``None`` is returned." msgstr "" -#: c-api/arg.rst:562 +#: c-api/arg.rst:574 msgid "``U`` (:class:`str` or ``None``) [const char \\*]" msgstr "" -#: c-api/arg.rst:565 +#: c-api/arg.rst:577 msgid "" "``U#`` (:class:`str` or ``None``) [const char \\*, :c:type:`Py_ssize_t`]" msgstr "" -#: c-api/arg.rst:569 +#: c-api/arg.rst:581 msgid "Convert a plain C :c:expr:`int` to a Python integer object." msgstr "" -#: c-api/arg.rst:571 +#: c-api/arg.rst:583 msgid "``b`` (:class:`int`) [char]" msgstr "" -#: c-api/arg.rst:572 +#: c-api/arg.rst:584 msgid "Convert a plain C :c:expr:`char` to a Python integer object." msgstr "" -#: c-api/arg.rst:575 +#: c-api/arg.rst:587 msgid "Convert a plain C :c:expr:`short int` to a Python integer object." msgstr "" -#: c-api/arg.rst:578 +#: c-api/arg.rst:590 msgid "Convert a C :c:expr:`long int` to a Python integer object." msgstr "" -#: c-api/arg.rst:581 +#: c-api/arg.rst:593 msgid "Convert a C :c:expr:`unsigned char` to a Python integer object." msgstr "" -#: c-api/arg.rst:584 +#: c-api/arg.rst:596 msgid "Convert a C :c:expr:`unsigned short int` to a Python integer object." msgstr "" -#: c-api/arg.rst:587 +#: c-api/arg.rst:599 msgid "Convert a C :c:expr:`unsigned int` to a Python integer object." msgstr "" -#: c-api/arg.rst:590 +#: c-api/arg.rst:602 msgid "Convert a C :c:expr:`unsigned long` to a Python integer object." msgstr "" -#: c-api/arg.rst:593 +#: c-api/arg.rst:605 msgid "Convert a C :c:expr:`long long` to a Python integer object." msgstr "" -#: c-api/arg.rst:596 +#: c-api/arg.rst:608 msgid "Convert a C :c:expr:`unsigned long long` to a Python integer object." msgstr "" -#: c-api/arg.rst:599 +#: c-api/arg.rst:611 msgid "Convert a C :c:type:`Py_ssize_t` to a Python integer." msgstr "" -#: c-api/arg.rst:601 +#: c-api/arg.rst:613 msgid "``c`` (:class:`bytes` of length 1) [char]" msgstr "" -#: c-api/arg.rst:602 +#: c-api/arg.rst:614 msgid "" "Convert a C :c:expr:`int` representing a byte to a Python :class:`bytes` " "object of length 1." msgstr "" -#: c-api/arg.rst:606 +#: c-api/arg.rst:618 msgid "" "Convert a C :c:expr:`int` representing a character to Python :class:`str` " "object of length 1." msgstr "" -#: c-api/arg.rst:610 +#: c-api/arg.rst:622 msgid "Convert a C :c:expr:`double` to a Python floating-point number." msgstr "" -#: c-api/arg.rst:613 +#: c-api/arg.rst:625 msgid "Convert a C :c:expr:`float` to a Python floating-point number." msgstr "" -#: c-api/arg.rst:615 +#: c-api/arg.rst:627 msgid "``D`` (:class:`complex`) [Py_complex \\*]" msgstr "" -#: c-api/arg.rst:616 +#: c-api/arg.rst:628 msgid "Convert a C :c:type:`Py_complex` structure to a Python complex number." msgstr "" -#: c-api/arg.rst:619 +#: c-api/arg.rst:631 msgid "" "Pass a Python object untouched but create a new :term:`strong reference` to " "it (i.e. its reference count is incremented by one). If the object passed in " @@ -1071,26 +1085,30 @@ msgid "" "no exception has been raised yet, :exc:`SystemError` is set." msgstr "" -#: c-api/arg.rst:628 +#: c-api/arg.rst:640 msgid "``S`` (object) [PyObject \\*]" msgstr "" -#: c-api/arg.rst:629 +#: c-api/arg.rst:641 msgid "Same as ``O``." msgstr "" -#: c-api/arg.rst:631 +#: c-api/arg.rst:643 msgid "``N`` (object) [PyObject \\*]" msgstr "" -#: c-api/arg.rst:632 +#: c-api/arg.rst:644 msgid "" "Same as ``O``, except it doesn't create a new :term:`strong reference`. " "Useful when the object is created by a call to an object constructor in the " "argument list." msgstr "" -#: c-api/arg.rst:637 +#: c-api/arg.rst:648 +msgid "``O&`` (object) [*converter*, *anything*]" +msgstr "" + +#: c-api/arg.rst:649 msgid "" "Convert *anything* to a Python object through a *converter* function. The " "function is called with *anything* (which should be compatible with :c:expr:" @@ -1098,40 +1116,40 @@ msgid "" "``NULL`` if an error occurred." msgstr "" -#: c-api/arg.rst:643 +#: c-api/arg.rst:655 msgid "" "Convert a sequence of C values to a Python tuple with the same number of " "items." msgstr "" -#: c-api/arg.rst:645 +#: c-api/arg.rst:657 msgid "``[items]`` (:class:`list`) [*matching-items*]" msgstr "" -#: c-api/arg.rst:646 +#: c-api/arg.rst:658 msgid "" "Convert a sequence of C values to a Python list with the same number of " "items." msgstr "" -#: c-api/arg.rst:648 +#: c-api/arg.rst:660 msgid "``{items}`` (:class:`dict`) [*matching-items*]" msgstr "" -#: c-api/arg.rst:649 +#: c-api/arg.rst:661 msgid "" "Convert a sequence of C values to a Python dictionary. Each pair of " "consecutive C values adds one item to the dictionary, serving as key and " "value, respectively." msgstr "" -#: c-api/arg.rst:653 +#: c-api/arg.rst:665 msgid "" "If there is an error in the format string, the :exc:`SystemError` exception " "is set and ``NULL`` returned." msgstr "" -#: c-api/arg.rst:658 +#: c-api/arg.rst:670 msgid "" "Identical to :c:func:`Py_BuildValue`, except that it accepts a va_list " "rather than a variable number of arguments." diff --git a/c-api/buffer.po b/c-api/buffer.po index fde899100..6d515d5d3 100644 --- a/c-api/buffer.po +++ b/c-api/buffer.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -339,16 +339,17 @@ msgid "" "itemsize`, :c:member:`~Py_buffer.ndim`." msgstr "" -#: c-api/buffer.rst:249 +#: c-api/buffer.rst:248 msgid "readonly, format" msgstr "" -#: c-api/buffer.rst:253 +#: c-api/buffer.rst:252 msgid "" "Controls the :c:member:`~Py_buffer.readonly` field. If set, the exporter " "MUST provide a writable buffer or else report failure. Otherwise, the " "exporter MAY provide either a read-only or writable buffer, but the choice " -"MUST be consistent for all consumers." +"MUST be consistent for all consumers. For example, :c:expr:`PyBUF_SIMPLE | " +"PyBUF_WRITABLE` can be used to request a simple writable buffer." msgstr "" #: c-api/buffer.rst:260 @@ -367,137 +368,138 @@ msgstr "" #: c-api/buffer.rst:268 msgid "" -":c:macro:`PyBUF_FORMAT` can be \\|'d to any of the flags except :c:macro:" -"`PyBUF_SIMPLE`. The latter already implies format ``B`` (unsigned bytes)." +":c:macro:`PyBUF_FORMAT` must be \\|'d to any of the flags except :c:macro:" +"`PyBUF_SIMPLE`, because the latter already implies format ``B`` (unsigned " +"bytes). :c:macro:`!PyBUF_FORMAT` cannot be used on its own." msgstr "" -#: c-api/buffer.rst:273 +#: c-api/buffer.rst:274 msgid "shape, strides, suboffsets" msgstr "" -#: c-api/buffer.rst:275 +#: c-api/buffer.rst:276 msgid "" "The flags that control the logical structure of the memory are listed in " "decreasing order of complexity. Note that each flag contains all bits of the " "flags below it." msgstr "" -#: c-api/buffer.rst:306 c-api/buffer.rst:331 +#: c-api/buffer.rst:307 c-api/buffer.rst:332 msgid "Request" msgstr "" -#: c-api/buffer.rst:306 c-api/buffer.rst:331 +#: c-api/buffer.rst:307 c-api/buffer.rst:332 msgid "shape" msgstr "" -#: c-api/buffer.rst:306 c-api/buffer.rst:331 +#: c-api/buffer.rst:307 c-api/buffer.rst:332 msgid "strides" msgstr "" -#: c-api/buffer.rst:306 c-api/buffer.rst:331 +#: c-api/buffer.rst:307 c-api/buffer.rst:332 msgid "suboffsets" msgstr "" -#: c-api/buffer.rst:286 c-api/buffer.rst:308 c-api/buffer.rst:312 -#: c-api/buffer.rst:333 c-api/buffer.rst:337 c-api/buffer.rst:341 -#: c-api/buffer.rst:345 c-api/buffer.rst:347 +#: c-api/buffer.rst:287 c-api/buffer.rst:309 c-api/buffer.rst:313 +#: c-api/buffer.rst:334 c-api/buffer.rst:338 c-api/buffer.rst:342 +#: c-api/buffer.rst:346 c-api/buffer.rst:348 msgid "yes" msgstr "" -#: c-api/buffer.rst:333 c-api/buffer.rst:335 +#: c-api/buffer.rst:334 c-api/buffer.rst:336 msgid "if needed" msgstr "" -#: c-api/buffer.rst:288 c-api/buffer.rst:308 c-api/buffer.rst:312 -#: c-api/buffer.rst:337 c-api/buffer.rst:341 c-api/buffer.rst:345 -#: c-api/buffer.rst:347 +#: c-api/buffer.rst:289 c-api/buffer.rst:309 c-api/buffer.rst:313 +#: c-api/buffer.rst:338 c-api/buffer.rst:342 c-api/buffer.rst:346 +#: c-api/buffer.rst:348 msgid "NULL" msgstr "" -#: c-api/buffer.rst:297 +#: c-api/buffer.rst:298 msgid "contiguity requests" msgstr "" -#: c-api/buffer.rst:299 +#: c-api/buffer.rst:300 msgid "" "C or Fortran :term:`contiguity ` can be explicitly requested, " "with and without stride information. Without stride information, the buffer " "must be C-contiguous." msgstr "" -#: c-api/buffer.rst:331 +#: c-api/buffer.rst:332 msgid "contig" msgstr "" -#: c-api/buffer.rst:314 c-api/buffer.rst:347 +#: c-api/buffer.rst:315 c-api/buffer.rst:348 msgid "C" msgstr "" -#: c-api/buffer.rst:310 +#: c-api/buffer.rst:311 msgid "F" msgstr "" -#: c-api/buffer.rst:312 +#: c-api/buffer.rst:313 msgid "C or F" msgstr "" -#: c-api/buffer.rst:314 +#: c-api/buffer.rst:315 msgid ":c:macro:`PyBUF_ND`" msgstr "" -#: c-api/buffer.rst:319 +#: c-api/buffer.rst:320 msgid "compound requests" msgstr "" -#: c-api/buffer.rst:321 +#: c-api/buffer.rst:322 msgid "" "All possible requests are fully defined by some combination of the flags in " "the previous section. For convenience, the buffer protocol provides " "frequently used combinations as single flags." msgstr "" -#: c-api/buffer.rst:325 +#: c-api/buffer.rst:326 msgid "" "In the following table *U* stands for undefined contiguity. The consumer " "would have to call :c:func:`PyBuffer_IsContiguous` to determine contiguity." msgstr "" -#: c-api/buffer.rst:331 +#: c-api/buffer.rst:332 msgid "readonly" msgstr "" -#: c-api/buffer.rst:331 +#: c-api/buffer.rst:332 msgid "format" msgstr "" -#: c-api/buffer.rst:335 c-api/buffer.rst:339 c-api/buffer.rst:343 +#: c-api/buffer.rst:336 c-api/buffer.rst:340 c-api/buffer.rst:344 msgid "U" msgstr "" -#: c-api/buffer.rst:337 c-api/buffer.rst:345 +#: c-api/buffer.rst:338 c-api/buffer.rst:346 msgid "0" msgstr "" -#: c-api/buffer.rst:339 c-api/buffer.rst:347 +#: c-api/buffer.rst:340 c-api/buffer.rst:348 msgid "1 or 0" msgstr "" -#: c-api/buffer.rst:352 +#: c-api/buffer.rst:353 msgid "Complex arrays" msgstr "" -#: c-api/buffer.rst:355 +#: c-api/buffer.rst:356 msgid "NumPy-style: shape and strides" msgstr "" -#: c-api/buffer.rst:357 +#: c-api/buffer.rst:358 msgid "" "The logical structure of NumPy-style arrays is defined by :c:member:" "`~Py_buffer.itemsize`, :c:member:`~Py_buffer.ndim`, :c:member:`~Py_buffer." "shape` and :c:member:`~Py_buffer.strides`." msgstr "" -#: c-api/buffer.rst:360 +#: c-api/buffer.rst:361 msgid "" "If ``ndim == 0``, the memory location pointed to by :c:member:`~Py_buffer." "buf` is interpreted as a scalar of size :c:member:`~Py_buffer.itemsize`. In " @@ -505,28 +507,28 @@ msgid "" "strides` are ``NULL``." msgstr "" -#: c-api/buffer.rst:364 +#: c-api/buffer.rst:365 msgid "" "If :c:member:`~Py_buffer.strides` is ``NULL``, the array is interpreted as a " "standard n-dimensional C-array. Otherwise, the consumer must access an n-" "dimensional array as follows:" msgstr "" -#: c-api/buffer.rst:368 +#: c-api/buffer.rst:369 msgid "" "ptr = (char *)buf + indices[0] * strides[0] + ... + indices[n-1] * " "strides[n-1];\n" "item = *((typeof(item) *)ptr);" msgstr "" -#: c-api/buffer.rst:374 +#: c-api/buffer.rst:375 msgid "" "As noted above, :c:member:`~Py_buffer.buf` can point to any location within " "the actual memory block. An exporter can check the validity of a buffer with " "this function:" msgstr "" -#: c-api/buffer.rst:378 +#: c-api/buffer.rst:379 msgid "" "def verify_structure(memlen, itemsize, ndim, shape, strides, offset):\n" " \"\"\"Verify that the parameters represent a valid array within\n" @@ -555,11 +557,11 @@ msgid "" " return 0 <= offset+imin and offset+imax+itemsize <= memlen" msgstr "" -#: c-api/buffer.rst:408 +#: c-api/buffer.rst:409 msgid "PIL-style: shape, strides and suboffsets" msgstr "" -#: c-api/buffer.rst:410 +#: c-api/buffer.rst:411 msgid "" "In addition to the regular items, PIL-style arrays can contain pointers that " "must be followed in order to get to the next element in a dimension. For " @@ -570,14 +572,14 @@ msgid "" "x[2][3]`` arrays that can be located anywhere in memory." msgstr "" -#: c-api/buffer.rst:419 +#: c-api/buffer.rst:420 msgid "" "Here is a function that returns a pointer to the element in an N-D array " "pointed to by an N-dimensional index when there are both non-``NULL`` " "strides and suboffsets::" msgstr "" -#: c-api/buffer.rst:423 +#: c-api/buffer.rst:424 msgid "" "void *get_item_pointer(int ndim, void *buf, Py_ssize_t *strides,\n" " Py_ssize_t *suboffsets, Py_ssize_t *indices) {\n" @@ -593,25 +595,25 @@ msgid "" "}" msgstr "" -#: c-api/buffer.rst:438 +#: c-api/buffer.rst:439 msgid "Buffer-related functions" msgstr "" -#: c-api/buffer.rst:442 +#: c-api/buffer.rst:443 msgid "" "Return ``1`` if *obj* supports the buffer interface otherwise ``0``. When " "``1`` is returned, it doesn't guarantee that :c:func:`PyObject_GetBuffer` " "will succeed. This function always succeeds." msgstr "" -#: c-api/buffer.rst:449 +#: c-api/buffer.rst:450 msgid "" "Send a request to *exporter* to fill in *view* as specified by *flags*. If " "the exporter cannot provide a buffer of the exact type, it MUST raise :exc:" "`BufferError`, set ``view->obj`` to ``NULL`` and return ``-1``." msgstr "" -#: c-api/buffer.rst:454 +#: c-api/buffer.rst:455 msgid "" "On success, fill in *view*, set ``view->obj`` to a new reference to " "*exporter* and return 0. In the case of chained buffer providers that " @@ -619,7 +621,7 @@ msgid "" "instead of *exporter* (See :ref:`Buffer Object Structures `)." msgstr "" -#: c-api/buffer.rst:459 +#: c-api/buffer.rst:460 msgid "" "Successful calls to :c:func:`PyObject_GetBuffer` must be paired with calls " "to :c:func:`PyBuffer_Release`, similar to :c:func:`malloc` and :c:func:" @@ -627,7 +629,7 @@ msgid "" "`PyBuffer_Release` must be called exactly once." msgstr "" -#: c-api/buffer.rst:467 +#: c-api/buffer.rst:468 msgid "" "Release the buffer *view* and release the :term:`strong reference` (i.e. " "decrement the reference count) to the view's supporting object, ``view-" @@ -635,19 +637,19 @@ msgid "" "used, otherwise reference leaks may occur." msgstr "" -#: c-api/buffer.rst:472 +#: c-api/buffer.rst:473 msgid "" "It is an error to call this function on a buffer that was not obtained via :" "c:func:`PyObject_GetBuffer`." msgstr "" -#: c-api/buffer.rst:478 +#: c-api/buffer.rst:479 msgid "" "Return the implied :c:member:`~Py_buffer.itemsize` from :c:member:" "`~Py_buffer.format`. On error, raise an exception and return -1." msgstr "" -#: c-api/buffer.rst:486 +#: c-api/buffer.rst:487 msgid "" "Return ``1`` if the memory defined by the *view* is C-style (*order* is " "``'C'``) or Fortran-style (*order* is ``'F'``) :term:`contiguous` or either " @@ -655,69 +657,69 @@ msgid "" "succeeds." msgstr "" -#: c-api/buffer.rst:493 +#: c-api/buffer.rst:494 msgid "" "Get the memory area pointed to by the *indices* inside the given *view*. " "*indices* must point to an array of ``view->ndim`` indices." msgstr "" -#: c-api/buffer.rst:499 +#: c-api/buffer.rst:500 msgid "" "Copy contiguous *len* bytes from *buf* to *view*. *fort* can be ``'C'`` or " "``'F'`` (for C-style or Fortran-style ordering). ``0`` is returned on " "success, ``-1`` on error." msgstr "" -#: c-api/buffer.rst:506 +#: c-api/buffer.rst:507 msgid "" "Copy *len* bytes from *src* to its contiguous representation in *buf*. " "*order* can be ``'C'`` or ``'F'`` or ``'A'`` (for C-style or Fortran-style " "ordering or either one). ``0`` is returned on success, ``-1`` on error." msgstr "" -#: c-api/buffer.rst:510 +#: c-api/buffer.rst:511 msgid "This function fails if *len* != *src->len*." msgstr "" -#: c-api/buffer.rst:515 +#: c-api/buffer.rst:516 msgid "" "Copy data from *src* to *dest* buffer. Can convert between C-style and or " "Fortran-style buffers." msgstr "" -#: c-api/buffer.rst:518 +#: c-api/buffer.rst:519 msgid "``0`` is returned on success, ``-1`` on error." msgstr "" -#: c-api/buffer.rst:522 +#: c-api/buffer.rst:523 msgid "" "Fill the *strides* array with byte-strides of a :term:`contiguous` (C-style " "if *order* is ``'C'`` or Fortran-style if *order* is ``'F'``) array of the " "given shape with the given number of bytes per element." msgstr "" -#: c-api/buffer.rst:529 +#: c-api/buffer.rst:530 msgid "" "Handle buffer requests for an exporter that wants to expose *buf* of size " "*len* with writability set according to *readonly*. *buf* is interpreted as " "a sequence of unsigned bytes." msgstr "" -#: c-api/buffer.rst:533 +#: c-api/buffer.rst:534 msgid "" "The *flags* argument indicates the request type. This function always fills " "in *view* as specified by flags, unless *buf* has been designated as read-" "only and :c:macro:`PyBUF_WRITABLE` is set in *flags*." msgstr "" -#: c-api/buffer.rst:537 +#: c-api/buffer.rst:538 msgid "" "On success, set ``view->obj`` to a new reference to *exporter* and return 0. " "Otherwise, raise :exc:`BufferError`, set ``view->obj`` to ``NULL`` and " "return ``-1``;" msgstr "" -#: c-api/buffer.rst:541 +#: c-api/buffer.rst:542 msgid "" "If this function is used as part of a :ref:`getbufferproc `, " "*exporter* MUST be set to the exporting object and *flags* must be passed " @@ -744,14 +746,14 @@ msgstr "" msgid "PyBufferProcs (C type)" msgstr "" -#: c-api/buffer.rst:294 +#: c-api/buffer.rst:295 msgid "contiguous" msgstr "" -#: c-api/buffer.rst:294 +#: c-api/buffer.rst:295 msgid "C-contiguous" msgstr "" -#: c-api/buffer.rst:294 +#: c-api/buffer.rst:295 msgid "Fortran contiguous" msgstr "" diff --git a/c-api/function.po b/c-api/function.po index 455b19286..4a1d890d4 100644 --- a/c-api/function.po +++ b/c-api/function.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-01-01 00:16+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -154,18 +154,34 @@ msgid "" msgstr "" #: c-api/function.rst:148 -msgid "" -"Enumeration of possible function watcher events: - " -"``PyFunction_EVENT_CREATE`` - ``PyFunction_EVENT_DESTROY`` - " -"``PyFunction_EVENT_MODIFY_CODE`` - ``PyFunction_EVENT_MODIFY_DEFAULTS`` - " -"``PyFunction_EVENT_MODIFY_KWDEFAULTS``" +msgid "Enumeration of possible function watcher events:" +msgstr "" + +#: c-api/function.rst:150 +msgid "``PyFunction_EVENT_CREATE``" +msgstr "" + +#: c-api/function.rst:151 +msgid "``PyFunction_EVENT_DESTROY``" +msgstr "" + +#: c-api/function.rst:152 +msgid "``PyFunction_EVENT_MODIFY_CODE``" +msgstr "" + +#: c-api/function.rst:153 +msgid "``PyFunction_EVENT_MODIFY_DEFAULTS``" +msgstr "" + +#: c-api/function.rst:154 +msgid "``PyFunction_EVENT_MODIFY_KWDEFAULTS``" msgstr "" -#: c-api/function.rst:160 +#: c-api/function.rst:161 msgid "Type of a function watcher callback function." msgstr "" -#: c-api/function.rst:162 +#: c-api/function.rst:163 msgid "" "If *event* is ``PyFunction_EVENT_CREATE`` or ``PyFunction_EVENT_DESTROY`` " "then *new_value* will be ``NULL``. Otherwise, *new_value* will hold a :term:" @@ -173,13 +189,13 @@ msgid "" "for the attribute that is being modified." msgstr "" -#: c-api/function.rst:167 +#: c-api/function.rst:168 msgid "" "The callback may inspect but must not modify *func*; doing so could have " "unpredictable effects, including infinite recursion." msgstr "" -#: c-api/function.rst:170 +#: c-api/function.rst:171 msgid "" "If *event* is ``PyFunction_EVENT_CREATE``, then the callback is invoked " "after `func` has been fully initialized. Otherwise, the callback is invoked " @@ -191,7 +207,7 @@ msgid "" "semantics of the Python code being executed." msgstr "" -#: c-api/function.rst:179 +#: c-api/function.rst:180 msgid "" "If *event* is ``PyFunction_EVENT_DESTROY``, Taking a reference in the " "callback to the about-to-be-destroyed function will resurrect it, preventing " @@ -199,14 +215,14 @@ msgid "" "later, any watcher callbacks active at that time will be called again." msgstr "" -#: c-api/function.rst:184 +#: c-api/function.rst:185 msgid "" "If the callback sets an exception, it must return ``-1``; this exception " "will be printed as an unraisable exception using :c:func:" "`PyErr_WriteUnraisable`. Otherwise it should return ``0``." msgstr "" -#: c-api/function.rst:188 +#: c-api/function.rst:189 msgid "" "There may already be a pending exception set on entry to the callback. In " "this case, the callback should return ``0`` with the same exception still " diff --git a/c-api/init.po b/c-api/init.po index e5fceca7a..3cf6f1c40 100644 --- a/c-api/init.po +++ b/c-api/init.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -680,10 +680,10 @@ msgid "" "this storage." msgstr "" -#: c-api/init.rst:494 +#: c-api/init.rst:760 c-api/init.rst:822 msgid "" "Use :c:func:`Py_DecodeLocale` to decode a bytes string to get a :c:expr:" -"`wchar_t *` string." +"`wchar_t*` string." msgstr "" #: c-api/init.rst:504 @@ -811,7 +811,7 @@ msgid "" "required after calling :c:func:`Py_Initialize`." msgstr "" -#: c-api/init.rst:760 c-api/init.rst:822 +#: c-api/init.rst:645 msgid "" "Use :c:func:`Py_DecodeLocale` to decode a bytes string to get a :c:expr:" "`wchar_*` string." @@ -1907,10 +1907,14 @@ msgid "" " .check_multi_interp_extensions = 1,\n" " .gil = PyInterpreterConfig_OWN_GIL,\n" "};\n" -"PyThreadState *tstate = Py_NewInterpreterFromConfig(&config);" +"PyThreadState *tstate = NULL;\n" +"PyStatus status = Py_NewInterpreterFromConfig(&tstate, &config);\n" +"if (PyStatus_Exception(status)) {\n" +" Py_ExitStatusException(status);\n" +"}" msgstr "" -#: c-api/init.rst:1649 +#: c-api/init.rst:1653 msgid "" "Note that the config is used only briefly and does not get modified. During " "initialization the config's values are converted into various :c:type:" @@ -1918,11 +1922,11 @@ msgid "" "internally on the :c:type:`PyInterpreterState`." msgstr "" -#: c-api/init.rst:1658 +#: c-api/init.rst:1662 msgid "Extension modules are shared between (sub-)interpreters as follows:" msgstr "" -#: c-api/init.rst:1660 +#: c-api/init.rst:1664 msgid "" "For modules using multi-phase initialization, e.g. :c:func:" "`PyModule_FromDefAndSpec`, a separate module object is created and " @@ -1930,7 +1934,7 @@ msgid "" "are shared between these module objects." msgstr "" -#: c-api/init.rst:1666 +#: c-api/init.rst:1670 msgid "" "For modules using single-phase initialization, e.g. :c:func:" "`PyModule_Create`, the first time a particular extension is imported, it is " @@ -1942,7 +1946,7 @@ msgid "" "might cause unwanted behavior (see `Bugs and caveats`_ below)." msgstr "" -#: c-api/init.rst:1677 +#: c-api/init.rst:1681 msgid "" "Note that this is different from what happens when an extension is imported " "after the interpreter has been completely re-initialized by calling :c:func:" @@ -1952,7 +1956,7 @@ msgid "" "shared between these modules." msgstr "" -#: c-api/init.rst:1697 +#: c-api/init.rst:1701 msgid "" "Create a new sub-interpreter. This is essentially just a wrapper around :c:" "func:`Py_NewInterpreterFromConfig` with a config that preserves the existing " @@ -1961,7 +1965,7 @@ msgid "" "single-phase init modules." msgstr "" -#: c-api/init.rst:1709 +#: c-api/init.rst:1713 msgid "" "Destroy the (sub-)interpreter represented by the given thread state. The " "given thread state must be the current thread state. See the discussion of " @@ -1971,17 +1975,17 @@ msgid "" "be held before calling this function. No GIL is held when it returns." msgstr "" -#: c-api/init.rst:1717 +#: c-api/init.rst:1721 msgid "" ":c:func:`Py_FinalizeEx` will destroy all sub-interpreters that haven't been " "explicitly destroyed at that point." msgstr "" -#: c-api/init.rst:1722 +#: c-api/init.rst:1726 msgid "A Per-Interpreter GIL" msgstr "" -#: c-api/init.rst:1724 +#: c-api/init.rst:1728 msgid "" "Using :c:func:`Py_NewInterpreterFromConfig` you can create a sub-interpreter " "that is completely isolated from other interpreters, including having its " @@ -1993,7 +1997,7 @@ msgid "" "just using threads. (See :pep:`554`.)" msgstr "" -#: c-api/init.rst:1734 +#: c-api/init.rst:1738 msgid "" "Using an isolated interpreter requires vigilance in preserving that " "isolation. That especially means not sharing any objects or mutable state " @@ -2007,7 +2011,7 @@ msgid "" "builtin objects." msgstr "" -#: c-api/init.rst:1745 +#: c-api/init.rst:1749 msgid "" "If you preserve isolation then you will have access to proper multi-core " "computing without the complications that come with free-threading. Failure " @@ -2015,7 +2019,7 @@ msgid "" "threading, including races and hard-to-debug crashes." msgstr "" -#: c-api/init.rst:1750 +#: c-api/init.rst:1754 msgid "" "Aside from that, one of the main challenges of using multiple isolated " "interpreters is how to communicate between them safely (not break isolation) " @@ -2025,11 +2029,11 @@ msgid "" "sharing) data between interpreters." msgstr "" -#: c-api/init.rst:1761 +#: c-api/init.rst:1765 msgid "Bugs and caveats" msgstr "" -#: c-api/init.rst:1763 +#: c-api/init.rst:1767 msgid "" "Because sub-interpreters (and the main interpreter) are part of the same " "process, the insulation between them isn't perfect --- for example, using " @@ -2042,7 +2046,7 @@ msgid "" "should be avoided if possible." msgstr "" -#: c-api/init.rst:1773 +#: c-api/init.rst:1777 msgid "" "Special care should be taken to avoid sharing user-defined functions, " "methods, instances or classes between sub-interpreters, since import " @@ -2051,7 +2055,7 @@ msgid "" "objects from which the above are reachable." msgstr "" -#: c-api/init.rst:1779 +#: c-api/init.rst:1783 msgid "" "Also note that combining this functionality with ``PyGILState_*`` APIs is " "delicate, because these APIs assume a bijection between Python thread states " @@ -2063,25 +2067,25 @@ msgid "" "created threads will probably be broken when using sub-interpreters." msgstr "" -#: c-api/init.rst:1790 +#: c-api/init.rst:1794 msgid "Asynchronous Notifications" msgstr "" -#: c-api/init.rst:1792 +#: c-api/init.rst:1796 msgid "" "A mechanism is provided to make asynchronous notifications to the main " "interpreter thread. These notifications take the form of a function pointer " "and a void pointer argument." msgstr "" -#: c-api/init.rst:1799 +#: c-api/init.rst:1803 msgid "" "Schedule a function to be called from the main interpreter thread. On " "success, ``0`` is returned and *func* is queued for being called in the main " "thread. On failure, ``-1`` is returned without setting any exception." msgstr "" -#: c-api/init.rst:1803 +#: c-api/init.rst:1807 msgid "" "When successfully queued, *func* will be *eventually* called from the main " "interpreter thread with the argument *arg*. It will be called " @@ -2089,17 +2093,17 @@ msgid "" "these conditions met:" msgstr "" -#: c-api/init.rst:1808 +#: c-api/init.rst:1812 msgid "on a :term:`bytecode` boundary;" msgstr "" -#: c-api/init.rst:1809 +#: c-api/init.rst:1813 msgid "" "with the main thread holding the :term:`global interpreter lock` (*func* can " "therefore use the full C API)." msgstr "" -#: c-api/init.rst:1812 +#: c-api/init.rst:1816 msgid "" "*func* must return ``0`` on success, or ``-1`` on failure with an exception " "set. *func* won't be interrupted to perform another asynchronous " @@ -2107,20 +2111,20 @@ msgid "" "if the global interpreter lock is released." msgstr "" -#: c-api/init.rst:1817 +#: c-api/init.rst:1821 msgid "" "This function doesn't need a current thread state to run, and it doesn't " "need the global interpreter lock." msgstr "" -#: c-api/init.rst:1820 +#: c-api/init.rst:1824 msgid "" "To call this function in a subinterpreter, the caller must hold the GIL. " "Otherwise, the function *func* can be scheduled to be called from the wrong " "interpreter." msgstr "" -#: c-api/init.rst:1825 +#: c-api/init.rst:1829 msgid "" "This is a low-level function, only useful for very special cases. There is " "no guarantee that *func* will be called as quick as possible. If the main " @@ -2130,7 +2134,7 @@ msgid "" "`PyGILState API`." msgstr "" -#: c-api/init.rst:1834 +#: c-api/init.rst:1838 msgid "" "If this function is called in a subinterpreter, the function *func* is now " "scheduled to be called from the subinterpreter, rather than being called " @@ -2138,18 +2142,18 @@ msgid "" "scheduled calls." msgstr "" -#: c-api/init.rst:1843 +#: c-api/init.rst:1847 msgid "Profiling and Tracing" msgstr "" -#: c-api/init.rst:1848 +#: c-api/init.rst:1852 msgid "" "The Python interpreter provides some low-level support for attaching " "profiling and execution tracing facilities. These are used for profiling, " "debugging, and coverage analysis tools." msgstr "" -#: c-api/init.rst:1852 +#: c-api/init.rst:1856 msgid "" "This C interface allows the profiling or tracing code to avoid the overhead " "of calling through Python-level callable objects, making a direct C function " @@ -2159,7 +2163,7 @@ msgid "" "reported to the Python-level trace functions in previous versions." msgstr "" -#: c-api/init.rst:1862 +#: c-api/init.rst:1866 msgid "" "The type of the trace function registered using :c:func:`PyEval_SetProfile` " "and :c:func:`PyEval_SetTrace`. The first parameter is the object passed to " @@ -2171,64 +2175,64 @@ msgid "" "value of *what*:" msgstr "" -#: c-api/init.rst:1871 +#: c-api/init.rst:1875 msgid "Value of *what*" msgstr "" -#: c-api/init.rst:1871 +#: c-api/init.rst:1875 msgid "Meaning of *arg*" msgstr "" -#: c-api/init.rst:1873 +#: c-api/init.rst:1877 msgid ":c:data:`PyTrace_CALL`" msgstr "" -#: c-api/init.rst:1878 c-api/init.rst:1889 +#: c-api/init.rst:1882 c-api/init.rst:1893 msgid "Always :c:data:`Py_None`." msgstr "" -#: c-api/init.rst:1875 +#: c-api/init.rst:1879 msgid ":c:data:`PyTrace_EXCEPTION`" msgstr "" -#: c-api/init.rst:1875 +#: c-api/init.rst:1879 msgid "Exception information as returned by :func:`sys.exc_info`." msgstr "" -#: c-api/init.rst:1878 +#: c-api/init.rst:1882 msgid ":c:data:`PyTrace_LINE`" msgstr "" -#: c-api/init.rst:1880 +#: c-api/init.rst:1884 msgid ":c:data:`PyTrace_RETURN`" msgstr "" -#: c-api/init.rst:1880 +#: c-api/init.rst:1884 msgid "" "Value being returned to the caller, or ``NULL`` if caused by an exception." msgstr "" -#: c-api/init.rst:1883 +#: c-api/init.rst:1887 msgid ":c:data:`PyTrace_C_CALL`" msgstr "" -#: c-api/init.rst:1885 c-api/init.rst:1887 +#: c-api/init.rst:1889 c-api/init.rst:1891 msgid "Function object being called." msgstr "" -#: c-api/init.rst:1885 +#: c-api/init.rst:1889 msgid ":c:data:`PyTrace_C_EXCEPTION`" msgstr "" -#: c-api/init.rst:1887 +#: c-api/init.rst:1891 msgid ":c:data:`PyTrace_C_RETURN`" msgstr "" -#: c-api/init.rst:1889 +#: c-api/init.rst:1893 msgid ":c:data:`PyTrace_OPCODE`" msgstr "" -#: c-api/init.rst:1894 +#: c-api/init.rst:1898 msgid "" "The value of the *what* parameter to a :c:type:`Py_tracefunc` function when " "a new call to a function or method is being reported, or a new entry into a " @@ -2237,7 +2241,7 @@ msgid "" "the corresponding frame." msgstr "" -#: c-api/init.rst:1903 +#: c-api/init.rst:1907 msgid "" "The value of the *what* parameter to a :c:type:`Py_tracefunc` function when " "an exception has been raised. The callback function is called with this " @@ -2249,7 +2253,7 @@ msgid "" "profiler." msgstr "" -#: c-api/init.rst:1914 +#: c-api/init.rst:1918 msgid "" "The value passed as the *what* parameter to a :c:type:`Py_tracefunc` " "function (but not a profiling function) when a line-number event is being " @@ -2257,31 +2261,31 @@ msgid "" "f_trace_lines` to *0* on that frame." msgstr "" -#: c-api/init.rst:1922 +#: c-api/init.rst:1926 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " "a call is about to return." msgstr "" -#: c-api/init.rst:1928 +#: c-api/init.rst:1932 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " "a C function is about to be called." msgstr "" -#: c-api/init.rst:1934 +#: c-api/init.rst:1938 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " "a C function has raised an exception." msgstr "" -#: c-api/init.rst:1940 +#: c-api/init.rst:1944 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " "a C function has returned." msgstr "" -#: c-api/init.rst:1946 +#: c-api/init.rst:1950 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions (but " "not profiling functions) when a new opcode is about to be executed. This " @@ -2289,7 +2293,7 @@ msgid "" "attr:`~frame.f_trace_opcodes` to *1* on the frame." msgstr "" -#: c-api/init.rst:1954 +#: c-api/init.rst:1958 msgid "" "Set the profiler function to *func*. The *obj* parameter is passed to the " "function as its first parameter, and may be any Python object, or ``NULL``. " @@ -2299,28 +2303,28 @@ msgid "" "`PyTrace_LINE` :c:data:`PyTrace_OPCODE` and :c:data:`PyTrace_EXCEPTION`." msgstr "" -#: c-api/init.rst:1961 +#: c-api/init.rst:1965 msgid "See also the :func:`sys.setprofile` function." msgstr "" -#: c-api/init.rst:1970 c-api/init.rst:1996 +#: c-api/init.rst:1974 c-api/init.rst:2000 msgid "The caller must hold the :term:`GIL`." msgstr "" -#: c-api/init.rst:1967 +#: c-api/init.rst:1971 msgid "" "Like :c:func:`PyEval_SetProfile` but sets the profile function in all " "running threads belonging to the current interpreter instead of the setting " "it only on the current thread." msgstr "" -#: c-api/init.rst:1972 +#: c-api/init.rst:1976 msgid "" "As :c:func:`PyEval_SetProfile`, this function ignores any exceptions raised " "while setting the profile functions in all threads." msgstr "" -#: c-api/init.rst:1980 +#: c-api/init.rst:1984 msgid "" "Set the tracing function to *func*. This is similar to :c:func:" "`PyEval_SetProfile`, except the tracing function does receive line-number " @@ -2331,65 +2335,65 @@ msgid "" "*what* parameter." msgstr "" -#: c-api/init.rst:1987 +#: c-api/init.rst:1991 msgid "See also the :func:`sys.settrace` function." msgstr "" -#: c-api/init.rst:1993 +#: c-api/init.rst:1997 msgid "" "Like :c:func:`PyEval_SetTrace` but sets the tracing function in all running " "threads belonging to the current interpreter instead of the setting it only " "on the current thread." msgstr "" -#: c-api/init.rst:1998 +#: c-api/init.rst:2002 msgid "" "As :c:func:`PyEval_SetTrace`, this function ignores any exceptions raised " "while setting the trace functions in all threads." msgstr "" -#: c-api/init.rst:2007 +#: c-api/init.rst:2011 msgid "Advanced Debugger Support" msgstr "" -#: c-api/init.rst:2012 +#: c-api/init.rst:2016 msgid "" "These functions are only intended to be used by advanced debugging tools." msgstr "" -#: c-api/init.rst:2017 +#: c-api/init.rst:2021 msgid "" "Return the interpreter state object at the head of the list of all such " "objects." msgstr "" -#: c-api/init.rst:2022 +#: c-api/init.rst:2026 msgid "Return the main interpreter state object." msgstr "" -#: c-api/init.rst:2027 +#: c-api/init.rst:2031 msgid "" "Return the next interpreter state object after *interp* from the list of all " "such objects." msgstr "" -#: c-api/init.rst:2033 +#: c-api/init.rst:2037 msgid "" "Return the pointer to the first :c:type:`PyThreadState` object in the list " "of threads associated with the interpreter *interp*." msgstr "" -#: c-api/init.rst:2039 +#: c-api/init.rst:2043 msgid "" "Return the next thread state object after *tstate* from the list of all such " "objects belonging to the same :c:type:`PyInterpreterState` object." msgstr "" -#: c-api/init.rst:2046 +#: c-api/init.rst:2050 msgid "Thread Local Storage Support" msgstr "" -#: c-api/init.rst:2050 +#: c-api/init.rst:2054 msgid "" "The Python interpreter provides low-level support for thread-local storage " "(TLS) which wraps the underlying native TLS implementation to support the " @@ -2399,19 +2403,19 @@ msgid "" "thread." msgstr "" -#: c-api/init.rst:2057 +#: c-api/init.rst:2061 msgid "" "The GIL does *not* need to be held when calling these functions; they supply " "their own locking." msgstr "" -#: c-api/init.rst:2060 +#: c-api/init.rst:2064 msgid "" "Note that :file:`Python.h` does not include the declaration of the TLS APIs, " "you need to include :file:`pythread.h` to use thread-local storage." msgstr "" -#: c-api/init.rst:2064 +#: c-api/init.rst:2068 msgid "" "None of these API functions handle memory management on behalf of the :c:" "expr:`void*` values. You need to allocate and deallocate them yourself. If " @@ -2419,22 +2423,22 @@ msgid "" "don't do refcount operations on them either." msgstr "" -#: c-api/init.rst:2072 +#: c-api/init.rst:2076 msgid "Thread Specific Storage (TSS) API" msgstr "" -#: c-api/init.rst:2074 +#: c-api/init.rst:2078 msgid "" "TSS API is introduced to supersede the use of the existing TLS API within " "the CPython interpreter. This API uses a new type :c:type:`Py_tss_t` " "instead of :c:expr:`int` to represent thread keys." msgstr "" -#: c-api/init.rst:2080 +#: c-api/init.rst:2084 msgid "\"A New C-API for Thread-Local Storage in CPython\" (:pep:`539`)" msgstr "" -#: c-api/init.rst:2085 +#: c-api/init.rst:2089 msgid "" "This data structure represents the state of a thread key, the definition of " "which may depend on the underlying TLS implementation, and it has an " @@ -2442,52 +2446,52 @@ msgid "" "public members in this structure." msgstr "" -#: c-api/init.rst:2090 +#: c-api/init.rst:2094 msgid "" "When :ref:`Py_LIMITED_API ` is not defined, static allocation of " "this type by :c:macro:`Py_tss_NEEDS_INIT` is allowed." msgstr "" -#: c-api/init.rst:2096 +#: c-api/init.rst:2100 msgid "" "This macro expands to the initializer for :c:type:`Py_tss_t` variables. Note " "that this macro won't be defined with :ref:`Py_LIMITED_API `." msgstr "" -#: c-api/init.rst:2101 +#: c-api/init.rst:2105 msgid "Dynamic Allocation" msgstr "" -#: c-api/init.rst:2103 +#: c-api/init.rst:2107 msgid "" "Dynamic allocation of the :c:type:`Py_tss_t`, required in extension modules " "built with :ref:`Py_LIMITED_API `, where static allocation of this " "type is not possible due to its implementation being opaque at build time." msgstr "" -#: c-api/init.rst:2110 +#: c-api/init.rst:2114 msgid "" "Return a value which is the same state as a value initialized with :c:macro:" "`Py_tss_NEEDS_INIT`, or ``NULL`` in the case of dynamic allocation failure." msgstr "" -#: c-api/init.rst:2117 +#: c-api/init.rst:2121 msgid "" "Free the given *key* allocated by :c:func:`PyThread_tss_alloc`, after first " "calling :c:func:`PyThread_tss_delete` to ensure any associated thread locals " "have been unassigned. This is a no-op if the *key* argument is ``NULL``." msgstr "" -#: c-api/init.rst:2123 +#: c-api/init.rst:2127 msgid "" "A freed key becomes a dangling pointer. You should reset the key to ``NULL``." msgstr "" -#: c-api/init.rst:2128 +#: c-api/init.rst:2132 msgid "Methods" msgstr "" -#: c-api/init.rst:2130 +#: c-api/init.rst:2134 msgid "" "The parameter *key* of these functions must not be ``NULL``. Moreover, the " "behaviors of :c:func:`PyThread_tss_set` and :c:func:`PyThread_tss_get` are " @@ -2495,13 +2499,13 @@ msgid "" "func:`PyThread_tss_create`." msgstr "" -#: c-api/init.rst:2138 +#: c-api/init.rst:2142 msgid "" "Return a non-zero value if the given :c:type:`Py_tss_t` has been initialized " "by :c:func:`PyThread_tss_create`." msgstr "" -#: c-api/init.rst:2144 +#: c-api/init.rst:2148 msgid "" "Return a zero value on successful initialization of a TSS key. The behavior " "is undefined if the value pointed to by the *key* argument is not " @@ -2510,7 +2514,7 @@ msgid "" "no-op and immediately returns success." msgstr "" -#: c-api/init.rst:2153 +#: c-api/init.rst:2157 msgid "" "Destroy a TSS key to forget the values associated with the key across all " "threads, and change the key's initialization state to uninitialized. A " @@ -2519,31 +2523,31 @@ msgid "" "key -- calling it on an already destroyed key is a no-op." msgstr "" -#: c-api/init.rst:2162 +#: c-api/init.rst:2166 msgid "" "Return a zero value to indicate successfully associating a :c:expr:`void*` " "value with a TSS key in the current thread. Each thread has a distinct " "mapping of the key to a :c:expr:`void*` value." msgstr "" -#: c-api/init.rst:2169 +#: c-api/init.rst:2173 msgid "" "Return the :c:expr:`void*` value associated with a TSS key in the current " "thread. This returns ``NULL`` if no value is associated with the key in the " "current thread." msgstr "" -#: c-api/init.rst:2177 +#: c-api/init.rst:2181 msgid "Thread Local Storage (TLS) API" msgstr "" -#: c-api/init.rst:2179 +#: c-api/init.rst:2183 msgid "" "This API is superseded by :ref:`Thread Specific Storage (TSS) API `." msgstr "" -#: c-api/init.rst:2184 +#: c-api/init.rst:2188 msgid "" "This version of the API does not support platforms where the native TLS key " "is defined in a way that cannot be safely cast to ``int``. On such " @@ -2552,7 +2556,7 @@ msgid "" "platforms." msgstr "" -#: c-api/init.rst:2189 +#: c-api/init.rst:2193 msgid "" "Due to the compatibility problem noted above, this version of the API should " "not be used in new code." @@ -2574,19 +2578,19 @@ msgstr "" msgid "path (in module sys)" msgstr "" -#: c-api/init.rst:596 c-api/init.rst:1063 c-api/init.rst:1689 +#: c-api/init.rst:596 c-api/init.rst:1063 c-api/init.rst:1693 msgid "module" msgstr "" -#: c-api/init.rst:1594 c-api/init.rst:1689 +#: c-api/init.rst:1594 c-api/init.rst:1693 msgid "builtins" msgstr "" -#: c-api/init.rst:1594 c-api/init.rst:1689 +#: c-api/init.rst:1594 c-api/init.rst:1693 msgid "__main__" msgstr "" -#: c-api/init.rst:1594 c-api/init.rst:1689 +#: c-api/init.rst:1594 c-api/init.rst:1693 msgid "sys" msgstr "" @@ -2606,7 +2610,7 @@ msgstr "" msgid "PySys_SetArgvEx (C function)" msgstr "" -#: c-api/init.rst:1654 c-api/init.rst:1707 +#: c-api/init.rst:1658 c-api/init.rst:1711 msgid "Py_FinalizeEx (C function)" msgstr "" @@ -2718,22 +2722,22 @@ msgstr "" msgid "_thread" msgstr "" -#: c-api/init.rst:1689 +#: c-api/init.rst:1693 msgid "stdout (in module sys)" msgstr "" -#: c-api/init.rst:1689 +#: c-api/init.rst:1693 msgid "stderr (in module sys)" msgstr "" -#: c-api/init.rst:1689 +#: c-api/init.rst:1693 msgid "stdin (in module sys)" msgstr "" -#: c-api/init.rst:1654 +#: c-api/init.rst:1658 msgid "Py_Initialize (C function)" msgstr "" -#: c-api/init.rst:1684 +#: c-api/init.rst:1688 msgid "close (in module os)" msgstr "" diff --git a/c-api/long.po b/c-api/long.po index 076f15090..59e3eac18 100644 --- a/c-api/long.po +++ b/c-api/long.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -136,7 +136,7 @@ msgid "" "retrieved from the resulting value using :c:func:`PyLong_AsVoidPtr`." msgstr "" -#: c-api/long.rst:141 +#: c-api/long.rst:151 msgid "" "Return a C :c:expr:`long` representation of *obj*. If *obj* is not an " "instance of :c:type:`PyLongObject`, first call its :meth:`~object.__index__` " @@ -149,19 +149,30 @@ msgid "" "expr:`long`." msgstr "" -#: c-api/long.rst:150 c-api/long.rst:191 c-api/long.rst:214 +#: c-api/long.rst:160 c-api/long.rst:201 c-api/long.rst:224 msgid "Returns ``-1`` on error. Use :c:func:`PyErr_Occurred` to disambiguate." msgstr "" -#: c-api/long.rst:152 c-api/long.rst:195 c-api/long.rst:299 +#: c-api/long.rst:162 c-api/long.rst:205 c-api/long.rst:309 msgid "Use :meth:`~object.__index__` if available." msgstr "" -#: c-api/long.rst:155 c-api/long.rst:198 c-api/long.rst:302 +#: c-api/long.rst:165 c-api/long.rst:208 c-api/long.rst:312 msgid "This function will no longer use :meth:`~object.__int__`." msgstr "" -#: c-api/long.rst:145 +#: c-api/long.rst:142 +msgid "" +"A :term:`soft deprecated` alias. Exactly equivalent to the preferred " +"``PyLong_AsLong``. In particular, it can fail with :exc:`OverflowError` or " +"another exception." +msgstr "" + +#: c-api/long.rst:146 +msgid "The function is soft deprecated." +msgstr "" + +#: c-api/long.rst:155 msgid "" "If the value of *obj* is greater than :c:macro:`LONG_MAX` or less than :c:" "macro:`LONG_MIN`, set *\\*overflow* to ``1`` or ``-1``, respectively, and " @@ -169,20 +180,20 @@ msgid "" "exception occurs set *\\*overflow* to ``0`` and return ``-1`` as usual." msgstr "" -#: c-api/long.rst:182 +#: c-api/long.rst:192 msgid "" "Return a C :c:expr:`long long` representation of *obj*. If *obj* is not an " "instance of :c:type:`PyLongObject`, first call its :meth:`~object.__index__` " "method (if present) to convert it to a :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:168 +#: c-api/long.rst:178 msgid "" "Raise :exc:`OverflowError` if the value of *obj* is out of range for a :c:" "expr:`long long`." msgstr "" -#: c-api/long.rst:186 +#: c-api/long.rst:196 msgid "" "If the value of *obj* is greater than :c:macro:`LLONG_MAX` or less than :c:" "macro:`LLONG_MIN`, set *\\*overflow* to ``1`` or ``-1``, respectively, and " @@ -190,133 +201,133 @@ msgid "" "exception occurs set *\\*overflow* to ``0`` and return ``-1`` as usual." msgstr "" -#: c-api/long.rst:208 +#: c-api/long.rst:218 msgid "" "Return a C :c:type:`Py_ssize_t` representation of *pylong*. *pylong* must " "be an instance of :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:211 +#: c-api/long.rst:221 msgid "" "Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:" "type:`Py_ssize_t`." msgstr "" -#: c-api/long.rst:223 +#: c-api/long.rst:233 msgid "" "Return a C :c:expr:`unsigned long` representation of *pylong*. *pylong* " "must be an instance of :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:226 +#: c-api/long.rst:236 msgid "" "Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:" "expr:`unsigned long`." msgstr "" -#: c-api/long.rst:229 +#: c-api/long.rst:239 msgid "" "Returns ``(unsigned long)-1`` on error. Use :c:func:`PyErr_Occurred` to " "disambiguate." msgstr "" -#: c-api/long.rst:239 +#: c-api/long.rst:249 msgid "" "Return a C :c:type:`size_t` representation of *pylong*. *pylong* must be an " "instance of :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:242 +#: c-api/long.rst:252 msgid "" "Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:" "type:`size_t`." msgstr "" -#: c-api/long.rst:245 +#: c-api/long.rst:255 msgid "" "Returns ``(size_t)-1`` on error. Use :c:func:`PyErr_Occurred` to " "disambiguate." msgstr "" -#: c-api/long.rst:254 +#: c-api/long.rst:264 msgid "" "Return a C :c:expr:`unsigned long long` representation of *pylong*. " "*pylong* must be an instance of :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:257 +#: c-api/long.rst:267 msgid "" "Raise :exc:`OverflowError` if the value of *pylong* is out of range for an :" "c:expr:`unsigned long long`." msgstr "" -#: c-api/long.rst:260 +#: c-api/long.rst:270 msgid "" "Returns ``(unsigned long long)-1`` on error. Use :c:func:`PyErr_Occurred` to " "disambiguate." msgstr "" -#: c-api/long.rst:263 +#: c-api/long.rst:273 msgid "" "A negative *pylong* now raises :exc:`OverflowError`, not :exc:`TypeError`." msgstr "" -#: c-api/long.rst:269 +#: c-api/long.rst:279 msgid "" "Return a C :c:expr:`unsigned long` representation of *obj*. If *obj* is not " "an instance of :c:type:`PyLongObject`, first call its :meth:`~object." "__index__` method (if present) to convert it to a :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:273 +#: c-api/long.rst:283 msgid "" "If the value of *obj* is out of range for an :c:expr:`unsigned long`, return " "the reduction of that value modulo ``ULONG_MAX + 1``." msgstr "" -#: c-api/long.rst:276 +#: c-api/long.rst:286 msgid "" "Returns ``(unsigned long)-1`` on error. Use :c:func:`PyErr_Occurred` to " "disambiguate." msgstr "" -#: c-api/long.rst:288 +#: c-api/long.rst:298 msgid "" "Return a C :c:expr:`unsigned long long` representation of *obj*. If *obj* " "is not an instance of :c:type:`PyLongObject`, first call its :meth:`~object." "__index__` method (if present) to convert it to a :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:293 +#: c-api/long.rst:303 msgid "" "If the value of *obj* is out of range for an :c:expr:`unsigned long long`, " "return the reduction of that value modulo ``ULLONG_MAX + 1``." msgstr "" -#: c-api/long.rst:296 +#: c-api/long.rst:306 msgid "" "Returns ``(unsigned long long)-1`` on error. Use :c:func:`PyErr_Occurred` " "to disambiguate." msgstr "" -#: c-api/long.rst:308 +#: c-api/long.rst:318 msgid "" "Return a C :c:expr:`double` representation of *pylong*. *pylong* must be an " "instance of :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:311 +#: c-api/long.rst:321 msgid "" "Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:" "expr:`double`." msgstr "" -#: c-api/long.rst:314 +#: c-api/long.rst:324 msgid "" "Returns ``-1.0`` on error. Use :c:func:`PyErr_Occurred` to disambiguate." msgstr "" -#: c-api/long.rst:319 +#: c-api/long.rst:329 msgid "" "Convert a Python integer *pylong* to a C :c:expr:`void` pointer. If *pylong* " "cannot be converted, an :exc:`OverflowError` will be raised. This is only " @@ -324,27 +335,27 @@ msgid "" "c:func:`PyLong_FromVoidPtr`." msgstr "" -#: c-api/long.rst:324 +#: c-api/long.rst:334 msgid "" "Returns ``NULL`` on error. Use :c:func:`PyErr_Occurred` to disambiguate." msgstr "" -#: c-api/long.rst:329 +#: c-api/long.rst:339 msgid "" "On success, return a read only :term:`named tuple`, that holds information " "about Python's internal representation of integers. See :data:`sys.int_info` " "for description of individual fields." msgstr "" -#: c-api/long.rst:333 +#: c-api/long.rst:343 msgid "On failure, return ``NULL`` with an exception set." msgstr "" -#: c-api/long.rst:340 +#: c-api/long.rst:350 msgid "Return 1 if *op* is compact, 0 otherwise." msgstr "" -#: c-api/long.rst:342 +#: c-api/long.rst:352 msgid "" "This function makes it possible for performance-critical code to implement a " "“fast path” for small integers. For compact values use :c:func:" @@ -353,23 +364,23 @@ msgid "" "` :meth:`int.to_bytes`." msgstr "" -#: c-api/long.rst:348 +#: c-api/long.rst:358 msgid "The speedup is expected to be negligible for most users." msgstr "" -#: c-api/long.rst:350 +#: c-api/long.rst:360 msgid "" "Exactly what values are considered compact is an implementation detail and " "is subject to change." msgstr "" -#: c-api/long.rst:358 +#: c-api/long.rst:368 msgid "" "If *op* is compact, as determined by :c:func:`PyUnstable_Long_IsCompact`, " "return its value." msgstr "" -#: c-api/long.rst:361 +#: c-api/long.rst:371 msgid "Otherwise, the return value is undefined." msgstr "" @@ -389,18 +400,18 @@ msgstr "" msgid "LONG_MAX (C macro)" msgstr "" -#: c-api/long.rst:161 c-api/long.rst:219 c-api/long.rst:251 +#: c-api/long.rst:171 c-api/long.rst:229 c-api/long.rst:261 msgid "OverflowError (built-in exception)" msgstr "" -#: c-api/long.rst:204 +#: c-api/long.rst:214 msgid "PY_SSIZE_T_MAX (C macro)" msgstr "" -#: c-api/long.rst:219 +#: c-api/long.rst:229 msgid "ULONG_MAX (C macro)" msgstr "" -#: c-api/long.rst:235 +#: c-api/long.rst:245 msgid "SIZE_MAX (C macro)" msgstr "" diff --git a/c-api/module.po b/c-api/module.po index 3669cf476..e2c51f404 100644 --- a/c-api/module.po +++ b/c-api/module.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -462,7 +462,7 @@ msgstr "" #: c-api/module.rst:417 msgid "" "If ``Py_mod_multiple_interpreters`` is not specified, the import machinery " -"defaults to ``Py_MOD_MULTIPLE_INTERPRETERS_NOT_SUPPORTED``." +"defaults to ``Py_MOD_MULTIPLE_INTERPRETERS_SUPPORTED``." msgstr "" #: c-api/module.rst:422 @@ -548,17 +548,11 @@ msgid "" "On success, return ``0``. On error, raise an exception and return ``-1``." msgstr "" -#: c-api/module.rst:499 -msgid "" -"Return ``-1`` if *value* is ``NULL``. It must be called with an exception " -"raised in this case." -msgstr "" - -#: c-api/module.rst:559 +#: c-api/module.rst:560 msgid "Example usage::" msgstr "" -#: c-api/module.rst:504 +#: c-api/module.rst:501 msgid "" "static int\n" "add_spam(PyObject *module, int value)\n" @@ -573,13 +567,20 @@ msgid "" " }" msgstr "" -#: c-api/module.rst:577 +#: c-api/module.rst:513 +msgid "" +"To be convenient, the function accepts ``NULL`` *value* with an exception " +"set. In this case, return ``-1`` and just leave the raised exception " +"unchanged." +msgstr "" + +#: c-api/module.rst:578 msgid "" "The example can also be written without checking explicitly if *obj* is " "``NULL``::" msgstr "" -#: c-api/module.rst:519 +#: c-api/module.rst:520 msgid "" "static int\n" "add_spam(PyObject *module, int value)\n" @@ -591,13 +592,13 @@ msgid "" " }" msgstr "" -#: c-api/module.rst:593 +#: c-api/module.rst:594 msgid "" "Note that ``Py_XDECREF()`` should be used instead of ``Py_DECREF()`` in this " "case, since *obj* can be ``NULL``." msgstr "" -#: c-api/module.rst:531 +#: c-api/module.rst:532 msgid "" "The number of different *name* strings passed to this function should be " "kept small, usually by only using statically allocated strings as *name*. " @@ -607,32 +608,32 @@ msgid "" "internally to create a key object." msgstr "" -#: c-api/module.rst:544 +#: c-api/module.rst:545 msgid "" "Similar to :c:func:`PyModule_AddObjectRef`, but steals a reference to " "*value* on success (if it returns ``0``)." msgstr "" -#: c-api/module.rst:547 +#: c-api/module.rst:548 msgid "" "The new :c:func:`PyModule_AddObjectRef` function is recommended, since it is " "easy to introduce reference leaks by misusing the :c:func:" "`PyModule_AddObject` function." msgstr "" -#: c-api/module.rst:553 +#: c-api/module.rst:554 msgid "" "Unlike other functions that steal references, ``PyModule_AddObject()`` only " "releases the reference to *value* **on success**." msgstr "" -#: c-api/module.rst:556 +#: c-api/module.rst:557 msgid "" "This means that its return value must be checked, and calling code must :c:" "func:`Py_DECREF` *value* manually on error." msgstr "" -#: c-api/module.rst:561 +#: c-api/module.rst:562 msgid "" "static int\n" "add_spam(PyObject *module, int value)\n" @@ -651,7 +652,7 @@ msgid "" "}" msgstr "" -#: c-api/module.rst:580 +#: c-api/module.rst:581 msgid "" "static int\n" "add_spam(PyObject *module, int value)\n" @@ -667,20 +668,20 @@ msgid "" "}" msgstr "" -#: c-api/module.rst:599 +#: c-api/module.rst:600 msgid "" "Add an integer constant to *module* as *name*. This convenience function " "can be used from the module's initialization function. Return ``-1`` with an " "exception set on error, ``0`` on success." msgstr "" -#: c-api/module.rst:603 +#: c-api/module.rst:604 msgid "" "This is a convenience function that calls :c:func:`PyLong_FromLong` and :c:" "func:`PyModule_AddObjectRef`; see their documentation for details." msgstr "" -#: c-api/module.rst:609 +#: c-api/module.rst:610 msgid "" "Add a string constant to *module* as *name*. This convenience function can " "be used from the module's initialization function. The string *value* must " @@ -688,14 +689,14 @@ msgid "" "on success." msgstr "" -#: c-api/module.rst:614 +#: c-api/module.rst:615 msgid "" "This is a convenience function that calls :c:func:" "`PyUnicode_InternFromString` and :c:func:`PyModule_AddObjectRef`; see their " "documentation for details." msgstr "" -#: c-api/module.rst:621 +#: c-api/module.rst:622 msgid "" "Add an int constant to *module*. The name and the value are taken from " "*macro*. For example ``PyModule_AddIntMacro(module, AF_INET)`` adds the int " @@ -703,11 +704,11 @@ msgid "" "with an exception set on error, ``0`` on success." msgstr "" -#: c-api/module.rst:629 +#: c-api/module.rst:630 msgid "Add a string constant to *module*." msgstr "" -#: c-api/module.rst:633 +#: c-api/module.rst:634 msgid "" "Add a type object to *module*. The type object is finalized by calling " "internally :c:func:`PyType_Ready`. The name of the type object is taken from " @@ -715,25 +716,25 @@ msgid "" "``-1`` with an exception set on error, ``0`` on success." msgstr "" -#: c-api/module.rst:643 +#: c-api/module.rst:644 msgid "Module lookup" msgstr "" -#: c-api/module.rst:645 +#: c-api/module.rst:646 msgid "" "Single-phase initialization creates singleton modules that can be looked up " "in the context of the current interpreter. This allows the module object to " "be retrieved later with only a reference to the module definition." msgstr "" -#: c-api/module.rst:649 +#: c-api/module.rst:650 msgid "" "These functions will not work on modules created using multi-phase " "initialization, since multiple such modules can be created from a single " "definition." msgstr "" -#: c-api/module.rst:654 +#: c-api/module.rst:655 msgid "" "Returns the module object that was created from *def* for the current " "interpreter. This method requires that the module object has been attached " @@ -742,18 +743,18 @@ msgid "" "to the interpreter state yet, it returns ``NULL``." msgstr "" -#: c-api/module.rst:661 +#: c-api/module.rst:662 msgid "" "Attaches the module object passed to the function to the interpreter state. " "This allows the module object to be accessible via :c:func:" "`PyState_FindModule`." msgstr "" -#: c-api/module.rst:664 +#: c-api/module.rst:665 msgid "Only effective on modules created using single-phase initialization." msgstr "" -#: c-api/module.rst:666 +#: c-api/module.rst:667 msgid "" "Python calls ``PyState_AddModule`` automatically after importing a module, " "so it is unnecessary (but harmless) to call it from module initialization " @@ -764,15 +765,15 @@ msgid "" "state updates)." msgstr "" -#: c-api/module.rst:685 +#: c-api/module.rst:686 msgid "The caller must hold the GIL." msgstr "" -#: c-api/module.rst:676 +#: c-api/module.rst:677 msgid "Return ``-1`` with an exception set on error, ``0`` on success." msgstr "" -#: c-api/module.rst:682 +#: c-api/module.rst:683 msgid "" "Removes the module object created from *def* from the interpreter state. " "Return ``-1`` with an exception set on error, ``0`` on success." diff --git a/c-api/object.po b/c-api/object.po index 90f26d646..64e3aa0df 100644 --- a/c-api/object.po +++ b/c-api/object.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -431,6 +431,13 @@ msgstr "" #: c-api/object.rst:398 msgid "" +"This is the same as :c:func:`PyObject_DelItem`, but *key* is specified as a :" +"c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" +"`PyObject*`." +msgstr "" + +#: c-api/object.rst:405 +msgid "" "This is equivalent to the Python expression ``dir(o)``, returning a " "(possibly empty) list of strings appropriate for the object argument, or " "``NULL`` if there was an error. If the argument is ``NULL``, this is like " @@ -439,7 +446,7 @@ msgid "" "`PyErr_Occurred` will return false." msgstr "" -#: c-api/object.rst:407 +#: c-api/object.rst:414 msgid "" "This is equivalent to the Python expression ``iter(o)``. It returns a new " "iterator for the object argument, or the object itself if the object is " @@ -447,7 +454,14 @@ msgid "" "object cannot be iterated." msgstr "" -#: c-api/object.rst:415 +#: c-api/object.rst:422 +msgid "" +"This is equivalent to the Python ``__iter__(self): return self`` method. It " +"is intended for :term:`iterator` types, to be used in the :c:member:" +"`PyTypeObject.tp_iter` slot." +msgstr "" + +#: c-api/object.rst:428 msgid "" "This is the equivalent to the Python expression ``aiter(o)``. Takes an :" "class:`AsyncIterable` object and returns an :class:`AsyncIterator` for it. " @@ -456,51 +470,51 @@ msgid "" "``NULL`` if the object cannot be iterated." msgstr "" -#: c-api/object.rst:425 +#: c-api/object.rst:438 msgid "Get a pointer to subclass-specific data reserved for *cls*." msgstr "" -#: c-api/object.rst:427 +#: c-api/object.rst:440 msgid "" "The object *o* must be an instance of *cls*, and *cls* must have been " "created using negative :c:member:`PyType_Spec.basicsize`. Python does not " "check this." msgstr "" -#: c-api/object.rst:431 +#: c-api/object.rst:444 msgid "On error, set an exception and return ``NULL``." msgstr "" -#: c-api/object.rst:437 +#: c-api/object.rst:450 msgid "" "Return the size of the instance memory space reserved for *cls*, i.e. the " "size of the memory :c:func:`PyObject_GetTypeData` returns." msgstr "" -#: c-api/object.rst:440 +#: c-api/object.rst:453 msgid "" "This may be larger than requested using :c:member:`-PyType_Spec.basicsize " "`; it is safe to use this larger size (e.g. with :c:" "func:`!memset`)." msgstr "" -#: c-api/object.rst:443 +#: c-api/object.rst:456 msgid "" "The type *cls* **must** have been created using negative :c:member:" "`PyType_Spec.basicsize`. Python does not check this." msgstr "" -#: c-api/object.rst:447 +#: c-api/object.rst:460 msgid "On error, set an exception and return a negative value." msgstr "" -#: c-api/object.rst:453 +#: c-api/object.rst:466 msgid "" "Get a pointer to per-item data for a class with :c:macro:" "`Py_TPFLAGS_ITEMS_AT_END`." msgstr "" -#: c-api/object.rst:456 +#: c-api/object.rst:469 msgid "" "On error, set an exception and return ``NULL``. :py:exc:`TypeError` is " "raised if *o* does not have :c:macro:`Py_TPFLAGS_ITEMS_AT_END` set." diff --git a/c-api/slice.po b/c-api/slice.po index 67cd8a81a..ccf0e161e 100644 --- a/c-api/slice.po +++ b/c-api/slice.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -157,11 +157,17 @@ msgstr "" #: c-api/slice.rst:123 msgid "" +"The type of Python :const:`Ellipsis` object. Same as :class:`types." +"EllipsisType` in the Python layer." +msgstr "" + +#: c-api/slice.rst:129 +msgid "" "The Python ``Ellipsis`` object. This object has no methods. Like :c:data:" "`Py_None`, it is an `immortal `_. " "singleton object." msgstr "" -#: c-api/slice.rst:127 +#: c-api/slice.rst:133 msgid ":c:data:`Py_Ellipsis` is immortal." msgstr "" diff --git a/c-api/stable.po b/c-api/stable.po index 492e001d8..1db042d7e 100644 --- a/c-api/stable.po +++ b/c-api/stable.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-02-24 17:22+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -108,8 +108,8 @@ msgstr "" #: c-api/stable.rst:67 msgid "" "Python 3.2 introduced the *Limited API*, a subset of Python's C API. " -"Extensions that only use the Limited API can be compiled once and work with " -"multiple versions of Python. Contents of the Limited API are :ref:`listed " +"Extensions that only use the Limited API can be compiled once and be loaded " +"on multiple versions of Python. Contents of the Limited API are :ref:`listed " "below `." msgstr "" @@ -123,9 +123,8 @@ msgstr "" msgid "" "Define ``Py_LIMITED_API`` to the value of :c:macro:`PY_VERSION_HEX` " "corresponding to the lowest Python version your extension supports. The " -"extension will work without recompilation with all Python 3 releases from " -"the specified one onward, and can use Limited API introduced up to that " -"version." +"extension will be ABI-compatible with all Python 3 releases from the " +"specified one onward, and can use Limited API introduced up to that version." msgstr "" #: c-api/stable.rst:83 @@ -148,24 +147,33 @@ msgstr "" #: c-api/stable.rst:96 msgid "" "To enable this, Python provides a *Stable ABI*: a set of symbols that will " -"remain compatible across Python 3.x versions." +"remain ABI-compatible across Python 3.x versions." msgstr "" -#: c-api/stable.rst:99 +#: c-api/stable.rst:101 +msgid "" +"The Stable ABI prevents ABI issues, like linker errors due to missing " +"symbols or data corruption due to changes in structure layouts or function " +"signatures. However, other changes in Python can change the *behavior* of " +"extensions. See Python's Backwards Compatibility Policy (:pep:`387`) for " +"details." +msgstr "" + +#: c-api/stable.rst:107 msgid "" "The Stable ABI contains symbols exposed in the :ref:`Limited API `, but also other ones – for example, functions necessary to support " "older versions of the Limited API." msgstr "" -#: c-api/stable.rst:103 +#: c-api/stable.rst:111 msgid "" "On Windows, extensions that use the Stable ABI should be linked against " "``python3.dll`` rather than a version-specific library such as ``python39." "dll``." msgstr "" -#: c-api/stable.rst:107 +#: c-api/stable.rst:115 msgid "" "On some platforms, Python will look for and load shared library files named " "with the ``abi3`` tag (e.g. ``mymodule.abi3.so``). It does not check if such " @@ -174,31 +182,31 @@ msgid "" "not installed for lower versions of Python." msgstr "" -#: c-api/stable.rst:114 +#: c-api/stable.rst:122 msgid "" "All functions in the Stable ABI are present as functions in Python's shared " "library, not solely as macros. This makes them usable from languages that " "don't use the C preprocessor." msgstr "" -#: c-api/stable.rst:120 +#: c-api/stable.rst:128 msgid "Limited API Scope and Performance" msgstr "" -#: c-api/stable.rst:122 +#: c-api/stable.rst:130 msgid "" "The goal for the Limited API is to allow everything that is possible with " "the full C API, but possibly with a performance penalty." msgstr "" -#: c-api/stable.rst:125 +#: c-api/stable.rst:133 msgid "" "For example, while :c:func:`PyList_GetItem` is available, its “unsafe” macro " "variant :c:func:`PyList_GET_ITEM` is not. The macro can be faster because it " "can rely on version-specific implementation details of the list object." msgstr "" -#: c-api/stable.rst:130 +#: c-api/stable.rst:138 msgid "" "Without ``Py_LIMITED_API`` defined, some C API functions are inlined or " "replaced by macros. Defining ``Py_LIMITED_API`` disables this inlining, " @@ -206,7 +214,7 @@ msgid "" "reducing performance." msgstr "" -#: c-api/stable.rst:135 +#: c-api/stable.rst:143 msgid "" "By leaving out the ``Py_LIMITED_API`` definition, it is possible to compile " "a Limited API extension with a version-specific ABI. This can improve " @@ -216,11 +224,11 @@ msgid "" "of an upcoming Python version." msgstr "" -#: c-api/stable.rst:144 +#: c-api/stable.rst:152 msgid "Limited API Caveats" msgstr "" -#: c-api/stable.rst:146 +#: c-api/stable.rst:154 msgid "" "Note that compiling with ``Py_LIMITED_API`` is *not* a complete guarantee " "that code conforms to the :ref:`Limited API ` or the :ref:" @@ -228,7 +236,7 @@ msgid "" "an API also includes other issues, such as expected semantics." msgstr "" -#: c-api/stable.rst:151 +#: c-api/stable.rst:159 msgid "" "One issue that ``Py_LIMITED_API`` does not guard against is calling a " "function with arguments that are invalid in a lower Python version. For " @@ -238,19 +246,19 @@ msgid "" "crash. A similar argument works for fields of structs." msgstr "" -#: c-api/stable.rst:158 +#: c-api/stable.rst:166 msgid "" "Another issue is that some struct fields are currently not hidden when " "``Py_LIMITED_API`` is defined, even though they're part of the Limited API." msgstr "" -#: c-api/stable.rst:161 +#: c-api/stable.rst:169 msgid "" "For these reasons, we recommend testing an extension with *all* minor Python " "versions it supports, and preferably to build with the *lowest* such version." msgstr "" -#: c-api/stable.rst:164 +#: c-api/stable.rst:172 msgid "" "We also recommend reviewing documentation of all used API to check if it is " "explicitly part of the Limited API. Even with ``Py_LIMITED_API`` defined, a " @@ -258,7 +266,7 @@ msgid "" "unintentionally, as bugs)." msgstr "" -#: c-api/stable.rst:169 +#: c-api/stable.rst:177 msgid "" "Also note that the Limited API is not necessarily stable: compiling with " "``Py_LIMITED_API`` with Python 3.8 means that the extension will run with " @@ -267,11 +275,11 @@ msgid "" "that the Stable ABI stays stable." msgstr "" -#: c-api/stable.rst:179 +#: c-api/stable.rst:187 msgid "Platform Considerations" msgstr "" -#: c-api/stable.rst:181 +#: c-api/stable.rst:189 msgid "" "ABI stability depends not only on Python, but also on the compiler used, " "lower-level libraries and compiler options. For the purposes of the :ref:" @@ -279,7 +287,7 @@ msgid "" "depend on the OS type and processor architecture" msgstr "" -#: c-api/stable.rst:186 +#: c-api/stable.rst:194 msgid "" "It is the responsibility of each particular distributor of Python to ensure " "that all Python versions on a particular platform are built in a way that " @@ -287,11 +295,11 @@ msgid "" "releases from ``python.org`` and many third-party distributors." msgstr "" -#: c-api/stable.rst:196 +#: c-api/stable.rst:204 msgid "Contents of Limited API" msgstr "" -#: c-api/stable.rst:199 +#: c-api/stable.rst:207 msgid "" "Currently, the :ref:`Limited API ` includes the following " "items:" diff --git a/c-api/structures.po b/c-api/structures.po index a9f816dfe..94d0b6ca0 100644 --- a/c-api/structures.po +++ b/c-api/structures.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -93,103 +93,108 @@ msgstr "" #: c-api/structures.rst:68 msgid "" +"The base class of all other objects, the same as :class:`object` in Python." +msgstr "" + +#: c-api/structures.rst:73 +msgid "" "Test if the *x* object is the *y* object, the same as ``x is y`` in Python." msgstr "" -#: c-api/structures.rst:75 +#: c-api/structures.rst:80 msgid "" "Test if an object is the ``None`` singleton, the same as ``x is None`` in " "Python." msgstr "" -#: c-api/structures.rst:83 +#: c-api/structures.rst:88 msgid "" "Test if an object is the ``True`` singleton, the same as ``x is True`` in " "Python." msgstr "" -#: c-api/structures.rst:91 +#: c-api/structures.rst:96 msgid "" "Test if an object is the ``False`` singleton, the same as ``x is False`` in " "Python." msgstr "" -#: c-api/structures.rst:99 +#: c-api/structures.rst:104 msgid "Get the type of the Python object *o*." msgstr "" -#: c-api/structures.rst:101 +#: c-api/structures.rst:106 msgid "Return a :term:`borrowed reference`." msgstr "" -#: c-api/structures.rst:103 +#: c-api/structures.rst:108 msgid "Use the :c:func:`Py_SET_TYPE` function to set an object type." msgstr "" -#: c-api/structures.rst:105 +#: c-api/structures.rst:110 msgid "" ":c:func:`Py_TYPE()` is changed to an inline static function. The parameter " "type is no longer :c:expr:`const PyObject*`." msgstr "" -#: c-api/structures.rst:112 +#: c-api/structures.rst:117 msgid "" "Return non-zero if the object *o* type is *type*. Return zero otherwise. " "Equivalent to: ``Py_TYPE(o) == type``." msgstr "" -#: c-api/structures.rst:120 +#: c-api/structures.rst:125 msgid "Set the object *o* type to *type*." msgstr "" -#: c-api/structures.rst:127 +#: c-api/structures.rst:132 msgid "Get the size of the Python object *o*." msgstr "" -#: c-api/structures.rst:129 +#: c-api/structures.rst:134 msgid "Use the :c:func:`Py_SET_SIZE` function to set an object size." msgstr "" -#: c-api/structures.rst:131 +#: c-api/structures.rst:136 msgid "" ":c:func:`Py_SIZE()` is changed to an inline static function. The parameter " "type is no longer :c:expr:`const PyVarObject*`." msgstr "" -#: c-api/structures.rst:138 +#: c-api/structures.rst:143 msgid "Set the object *o* size to *size*." msgstr "" -#: c-api/structures.rst:145 +#: c-api/structures.rst:150 msgid "" "This is a macro which expands to initialization values for a new :c:type:" "`PyObject` type. This macro expands to::" msgstr "" -#: c-api/structures.rst:148 +#: c-api/structures.rst:153 msgid "" "_PyObject_EXTRA_INIT\n" "1, type," msgstr "" -#: c-api/structures.rst:154 +#: c-api/structures.rst:159 msgid "" "This is a macro which expands to initialization values for a new :c:type:" "`PyVarObject` type, including the :c:member:`~PyVarObject.ob_size` field. " "This macro expands to::" msgstr "" -#: c-api/structures.rst:158 +#: c-api/structures.rst:163 msgid "" "_PyObject_EXTRA_INIT\n" "1, type, size," msgstr "" -#: c-api/structures.rst:163 +#: c-api/structures.rst:168 msgid "Implementing functions and methods" msgstr "" -#: c-api/structures.rst:167 +#: c-api/structures.rst:172 msgid "" "Type of the functions used to implement most Python callables in C. " "Functions of this type take two :c:expr:`PyObject*` parameters and return " @@ -199,51 +204,51 @@ msgid "" "reference." msgstr "" -#: c-api/structures.rst:174 +#: c-api/structures.rst:179 msgid "The function signature is::" msgstr "" -#: c-api/structures.rst:176 +#: c-api/structures.rst:181 msgid "" "PyObject *PyCFunction(PyObject *self,\n" " PyObject *args);" msgstr "" -#: c-api/structures.rst:181 +#: c-api/structures.rst:186 msgid "" "Type of the functions used to implement Python callables in C with " "signature :ref:`METH_VARARGS | METH_KEYWORDS `. " "The function signature is::" msgstr "" -#: c-api/structures.rst:185 +#: c-api/structures.rst:190 msgid "" "PyObject *PyCFunctionWithKeywords(PyObject *self,\n" " PyObject *args,\n" " PyObject *kwargs);" msgstr "" -#: c-api/structures.rst:192 +#: c-api/structures.rst:197 msgid "" "Type of the functions used to implement Python callables in C with " "signature :c:macro:`METH_FASTCALL`. The function signature is::" msgstr "" -#: c-api/structures.rst:196 +#: c-api/structures.rst:201 msgid "" "PyObject *_PyCFunctionFast(PyObject *self,\n" " PyObject *const *args,\n" " Py_ssize_t nargs);" msgstr "" -#: c-api/structures.rst:202 +#: c-api/structures.rst:207 msgid "" "Type of the functions used to implement Python callables in C with " "signature :ref:`METH_FASTCALL | METH_KEYWORDS `. The function signature is::" msgstr "" -#: c-api/structures.rst:206 +#: c-api/structures.rst:211 msgid "" "PyObject *_PyCFunctionFastWithKeywords(PyObject *self,\n" " PyObject *const *args,\n" @@ -251,14 +256,14 @@ msgid "" " PyObject *kwnames);" msgstr "" -#: c-api/structures.rst:213 +#: c-api/structures.rst:218 msgid "" "Type of the functions used to implement Python callables in C with " "signature :ref:`METH_METHOD | METH_FASTCALL | METH_KEYWORDS `. The function signature is::" msgstr "" -#: c-api/structures.rst:217 +#: c-api/structures.rst:222 msgid "" "PyObject *PyCMethod(PyObject *self,\n" " PyTypeObject *defining_class,\n" @@ -267,29 +272,29 @@ msgid "" " PyObject *kwnames)" msgstr "" -#: c-api/structures.rst:228 +#: c-api/structures.rst:233 msgid "" "Structure used to describe a method of an extension type. This structure " "has four fields:" msgstr "" -#: c-api/structures.rst:233 +#: c-api/structures.rst:238 msgid "Name of the method." msgstr "" -#: c-api/structures.rst:237 +#: c-api/structures.rst:242 msgid "Pointer to the C implementation." msgstr "" -#: c-api/structures.rst:241 +#: c-api/structures.rst:246 msgid "Flags bits indicating how the call should be constructed." msgstr "" -#: c-api/structures.rst:245 +#: c-api/structures.rst:250 msgid "Points to the contents of the docstring." msgstr "" -#: c-api/structures.rst:247 +#: c-api/structures.rst:252 msgid "" "The :c:member:`~PyMethodDef.ml_meth` is a C function pointer. The functions " "may be of different types, but they always return :c:expr:`PyObject*`. If " @@ -299,18 +304,18 @@ msgid "" "implementation uses the specific C type of the *self* object." msgstr "" -#: c-api/structures.rst:255 +#: c-api/structures.rst:260 msgid "" "The :c:member:`~PyMethodDef.ml_flags` field is a bitfield which can include " "the following flags. The individual flags indicate either a calling " "convention or a binding convention." msgstr "" -#: c-api/structures.rst:260 +#: c-api/structures.rst:265 msgid "There are these calling conventions:" msgstr "" -#: c-api/structures.rst:264 +#: c-api/structures.rst:269 msgid "" "This is the typical calling convention, where the methods have the type :c:" "type:`PyCFunction`. The function expects two :c:expr:`PyObject*` values. The " @@ -320,7 +325,7 @@ msgid "" "func:`PyArg_ParseTuple` or :c:func:`PyArg_UnpackTuple`." msgstr "" -#: c-api/structures.rst:274 +#: c-api/structures.rst:279 msgid "" "Can only be used in certain combinations with other flags: :ref:" "`METH_VARARGS | METH_KEYWORDS `, :ref:" @@ -329,11 +334,11 @@ msgid "" "METH_KEYWORDS>`." msgstr "" -#: c-api/structures.rst:282 +#: c-api/structures.rst:287 msgid ":c:expr:`METH_VARARGS | METH_KEYWORDS`" msgstr "" -#: c-api/structures.rst:283 +#: c-api/structures.rst:288 msgid "" "Methods with these flags must be of type :c:type:`PyCFunctionWithKeywords`. " "The function expects three parameters: *self*, *args*, *kwargs* where " @@ -342,7 +347,7 @@ msgid "" "using :c:func:`PyArg_ParseTupleAndKeywords`." msgstr "" -#: c-api/structures.rst:292 +#: c-api/structures.rst:297 msgid "" "Fast calling convention supporting only positional arguments. The methods " "have the type :c:type:`_PyCFunctionFast`. The first parameter is *self*, the " @@ -351,15 +356,15 @@ msgid "" "the array)." msgstr "" -#: c-api/structures.rst:302 +#: c-api/structures.rst:307 msgid "``METH_FASTCALL`` is now part of the :ref:`stable ABI `." msgstr "" -#: c-api/structures.rst:307 +#: c-api/structures.rst:312 msgid ":c:expr:`METH_FASTCALL | METH_KEYWORDS`" msgstr "" -#: c-api/structures.rst:308 +#: c-api/structures.rst:313 msgid "" "Extension of :c:macro:`METH_FASTCALL` supporting also keyword arguments, " "with methods of type :c:type:`_PyCFunctionFastWithKeywords`. Keyword " @@ -371,17 +376,17 @@ msgid "" "the positional arguments." msgstr "" -#: c-api/structures.rst:323 +#: c-api/structures.rst:328 msgid "" "Can only be used in the combination with other flags: :ref:`METH_METHOD | " "METH_FASTCALL | METH_KEYWORDS `." msgstr "" -#: c-api/structures.rst:329 +#: c-api/structures.rst:334 msgid ":c:expr:`METH_METHOD | METH_FASTCALL | METH_KEYWORDS`" msgstr "" -#: c-api/structures.rst:330 +#: c-api/structures.rst:335 msgid "" "Extension of :ref:`METH_FASTCALL | METH_KEYWORDS ` supporting the *defining class*, that is, the class that " @@ -389,14 +394,14 @@ msgid "" "``Py_TYPE(self)``." msgstr "" -#: c-api/structures.rst:335 +#: c-api/structures.rst:340 msgid "" "The method needs to be of type :c:type:`PyCMethod`, the same as for " "``METH_FASTCALL | METH_KEYWORDS`` with ``defining_class`` argument added " "after ``self``." msgstr "" -#: c-api/structures.rst:344 +#: c-api/structures.rst:349 msgid "" "Methods without parameters don't need to check whether arguments are given " "if they are listed with the :c:macro:`METH_NOARGS` flag. They need to be of " @@ -405,13 +410,13 @@ msgid "" "the second parameter will be ``NULL``." msgstr "" -#: c-api/structures.rst:350 +#: c-api/structures.rst:355 msgid "" "The function must have 2 parameters. Since the second parameter is unused, :" "c:macro:`Py_UNUSED` can be used to prevent a compiler warning." msgstr "" -#: c-api/structures.rst:356 +#: c-api/structures.rst:361 msgid "" "Methods with a single object argument can be listed with the :c:macro:" "`METH_O` flag, instead of invoking :c:func:`PyArg_ParseTuple` with a " @@ -420,7 +425,7 @@ msgid "" "single argument." msgstr "" -#: c-api/structures.rst:362 +#: c-api/structures.rst:367 msgid "" "These two constants are not used to indicate the calling convention but the " "binding when use with methods of classes. These may not be used for " @@ -428,27 +433,27 @@ msgid "" "any given method." msgstr "" -#: c-api/structures.rst:372 +#: c-api/structures.rst:377 msgid "" "The method will be passed the type object as the first parameter rather than " "an instance of the type. This is used to create *class methods*, similar to " "what is created when using the :func:`classmethod` built-in function." msgstr "" -#: c-api/structures.rst:382 +#: c-api/structures.rst:387 msgid "" "The method will be passed ``NULL`` as the first parameter rather than an " "instance of the type. This is used to create *static methods*, similar to " "what is created when using the :func:`staticmethod` built-in function." msgstr "" -#: c-api/structures.rst:386 +#: c-api/structures.rst:391 msgid "" "One other constant controls whether a method is loaded in place of another " "definition with the same method name." msgstr "" -#: c-api/structures.rst:392 +#: c-api/structures.rst:397 msgid "" "The method will be loaded in place of existing definitions. Without " "*METH_COEXIST*, the default is to skip repeated definitions. Since slot " @@ -461,20 +466,20 @@ msgid "" "wrapper object calls." msgstr "" -#: c-api/structures.rst:404 +#: c-api/structures.rst:409 msgid "" "Turn *ml* into a Python :term:`callable` object. The caller must ensure that " "*ml* outlives the :term:`callable`. Typically, *ml* is defined as a static " "variable." msgstr "" -#: c-api/structures.rst:408 +#: c-api/structures.rst:413 msgid "" "The *self* parameter will be passed as the *self* argument to the C function " "in ``ml->ml_meth`` when invoked. *self* can be ``NULL``." msgstr "" -#: c-api/structures.rst:412 +#: c-api/structures.rst:417 msgid "" "The :term:`callable` object's ``__module__`` attribute can be set from the " "given *module* argument. *module* should be a Python string, which will be " @@ -482,71 +487,71 @@ msgid "" "can be set to :const:`None` or ``NULL``." msgstr "" -#: c-api/structures.rst:418 +#: c-api/structures.rst:423 msgid ":attr:`function.__module__`" msgstr "" -#: c-api/structures.rst:420 +#: c-api/structures.rst:425 msgid "" "The *cls* parameter will be passed as the *defining_class* argument to the C " "function. Must be set if :c:macro:`METH_METHOD` is set on ``ml->ml_flags``." msgstr "" -#: c-api/structures.rst:429 +#: c-api/structures.rst:434 msgid "Equivalent to ``PyCMethod_New(ml, self, module, NULL)``." msgstr "" -#: c-api/structures.rst:434 +#: c-api/structures.rst:439 msgid "Equivalent to ``PyCMethod_New(ml, self, NULL, NULL)``." msgstr "" -#: c-api/structures.rst:438 +#: c-api/structures.rst:443 msgid "Accessing attributes of extension types" msgstr "" -#: c-api/structures.rst:442 +#: c-api/structures.rst:447 msgid "" "Structure which describes an attribute of a type which corresponds to a C " "struct member. When defining a class, put a NULL-terminated array of these " "structures in the :c:member:`~PyTypeObject.tp_members` slot." msgstr "" -#: c-api/structures.rst:447 +#: c-api/structures.rst:452 msgid "Its fields are, in order:" msgstr "" -#: c-api/structures.rst:451 +#: c-api/structures.rst:456 msgid "" "Name of the member. A NULL value marks the end of a ``PyMemberDef[]`` array." msgstr "" -#: c-api/structures.rst:454 +#: c-api/structures.rst:459 msgid "The string should be static, no copy is made of it." msgstr "" -#: c-api/structures.rst:458 +#: c-api/structures.rst:463 msgid "" "The type of the member in the C struct. See :ref:`PyMemberDef-types` for the " "possible values." msgstr "" -#: c-api/structures.rst:463 +#: c-api/structures.rst:468 msgid "" "The offset in bytes that the member is located on the type’s object struct." msgstr "" -#: c-api/structures.rst:467 +#: c-api/structures.rst:472 msgid "" "Zero or more of the :ref:`PyMemberDef-flags`, combined using bitwise OR." msgstr "" -#: c-api/structures.rst:471 +#: c-api/structures.rst:476 msgid "" "The docstring, or NULL. The string should be static, no copy is made of it. " "Typically, it is defined using :c:macro:`PyDoc_STR`." msgstr "" -#: c-api/structures.rst:475 +#: c-api/structures.rst:480 msgid "" "By default (when :c:member:`~PyMemberDef.flags` is ``0``), members allow " "both read and write access. Use the :c:macro:`Py_READONLY` flag for read-" @@ -555,7 +560,7 @@ msgid "" "`T_OBJECT`) members can be deleted." msgstr "" -#: c-api/structures.rst:484 +#: c-api/structures.rst:489 msgid "" "For heap-allocated types (created using :c:func:`PyType_FromSpec` or " "similar), ``PyMemberDef`` may contain a definition for the special member " @@ -564,7 +569,7 @@ msgid "" "``Py_T_PYSSIZET`` and ``Py_READONLY``, for example::" msgstr "" -#: c-api/structures.rst:490 +#: c-api/structures.rst:495 msgid "" "static PyMemberDef spam_type_members[] = {\n" " {\"__vectorcalloffset__\", Py_T_PYSSIZET,\n" @@ -573,11 +578,11 @@ msgid "" "};" msgstr "" -#: c-api/structures.rst:496 +#: c-api/structures.rst:501 msgid "(You may need to ``#include `` for :c:func:`!offsetof`.)" msgstr "" -#: c-api/structures.rst:498 +#: c-api/structures.rst:503 msgid "" "The legacy offsets :c:member:`~PyTypeObject.tp_dictoffset` and :c:member:" "`~PyTypeObject.tp_weaklistoffset` can be defined similarly using " @@ -586,77 +591,77 @@ msgid "" "and :c:macro:`Py_TPFLAGS_MANAGED_WEAKREF` instead." msgstr "" -#: c-api/structures.rst:506 +#: c-api/structures.rst:511 msgid "" "``PyMemberDef`` is always available. Previously, it required including " "``\"structmember.h\"``." msgstr "" -#: c-api/structures.rst:511 +#: c-api/structures.rst:516 msgid "" "Get an attribute belonging to the object at address *obj_addr*. The " "attribute is described by ``PyMemberDef`` *m*. Returns ``NULL`` on error." msgstr "" -#: c-api/structures.rst:517 +#: c-api/structures.rst:522 msgid "" "``PyMember_GetOne`` is always available. Previously, it required including " "``\"structmember.h\"``." msgstr "" -#: c-api/structures.rst:522 +#: c-api/structures.rst:527 msgid "" "Set an attribute belonging to the object at address *obj_addr* to object " "*o*. The attribute to set is described by ``PyMemberDef`` *m*. Returns " "``0`` if successful and a negative value on failure." msgstr "" -#: c-api/structures.rst:528 +#: c-api/structures.rst:533 msgid "" "``PyMember_SetOne`` is always available. Previously, it required including " "``\"structmember.h\"``." msgstr "" -#: c-api/structures.rst:534 +#: c-api/structures.rst:539 msgid "Member flags" msgstr "" -#: c-api/structures.rst:536 +#: c-api/structures.rst:541 msgid "The following flags can be used with :c:member:`PyMemberDef.flags`:" msgstr "" -#: c-api/structures.rst:540 +#: c-api/structures.rst:545 msgid "Not writable." msgstr "" -#: c-api/structures.rst:544 +#: c-api/structures.rst:549 msgid "" "Emit an ``object.__getattr__`` :ref:`audit event ` before " "reading." msgstr "" -#: c-api/structures.rst:549 +#: c-api/structures.rst:554 msgid "" "Indicates that the :c:member:`~PyMemberDef.offset` of this ``PyMemberDef`` " "entry indicates an offset from the subclass-specific data, rather than from " "``PyObject``." msgstr "" -#: c-api/structures.rst:553 +#: c-api/structures.rst:558 msgid "" "Can only be used as part of :c:member:`Py_tp_members ` :c:type:`slot ` when creating a class using " "negative :c:member:`~PyType_Spec.basicsize`. It is mandatory in that case." msgstr "" -#: c-api/structures.rst:558 +#: c-api/structures.rst:563 msgid "" "This flag is only used in :c:type:`PyType_Slot`. When setting :c:member:" "`~PyTypeObject.tp_members` during class creation, Python clears it and sets :" "c:member:`PyMemberDef.offset` to the offset from the ``PyObject`` struct." msgstr "" -#: c-api/structures.rst:570 +#: c-api/structures.rst:575 msgid "" "The :c:macro:`!RESTRICTED`, :c:macro:`!READ_RESTRICTED` and :c:macro:`!" "WRITE_RESTRICTED` macros available with ``#include \"structmember.h\"`` are " @@ -665,7 +670,7 @@ msgid "" "nothing." msgstr "" -#: c-api/structures.rst:581 +#: c-api/structures.rst:586 msgid "" "The :c:macro:`!READONLY` macro was renamed to :c:macro:`Py_READONLY`. The :c:" "macro:`!PY_AUDIT_READ` macro was renamed with the ``Py_`` prefix. The new " @@ -674,11 +679,11 @@ msgid "" "names." msgstr "" -#: c-api/structures.rst:590 +#: c-api/structures.rst:595 msgid "Member types" msgstr "" -#: c-api/structures.rst:592 +#: c-api/structures.rst:597 msgid "" ":c:member:`PyMemberDef.type` can be one of the following macros " "corresponding to various C types. When the member is accessed in Python, it " @@ -687,143 +692,143 @@ msgid "" "exception such as :exc:`TypeError` or :exc:`ValueError` is raised." msgstr "" -#: c-api/structures.rst:600 +#: c-api/structures.rst:605 msgid "" "Unless marked (D), attributes defined this way cannot be deleted using e.g. :" "keyword:`del` or :py:func:`delattr`." msgstr "" -#: c-api/structures.rst:604 +#: c-api/structures.rst:609 msgid "Macro name" msgstr "" -#: c-api/structures.rst:604 +#: c-api/structures.rst:609 msgid "C type" msgstr "" -#: c-api/structures.rst:604 +#: c-api/structures.rst:609 msgid "Python type" msgstr "" -#: c-api/structures.rst:606 +#: c-api/structures.rst:611 msgid ":c:expr:`char`" msgstr "" -#: c-api/structures.rst:607 c-api/structures.rst:609 c-api/structures.rst:611 -#: c-api/structures.rst:613 c-api/structures.rst:615 c-api/structures.rst:616 +#: c-api/structures.rst:612 c-api/structures.rst:614 c-api/structures.rst:616 +#: c-api/structures.rst:618 c-api/structures.rst:620 c-api/structures.rst:621 msgid ":py:class:`int`" msgstr "" -#: c-api/structures.rst:607 +#: c-api/structures.rst:612 msgid ":c:expr:`short`" msgstr "" -#: c-api/structures.rst:608 +#: c-api/structures.rst:613 msgid ":c:expr:`int`" msgstr "" -#: c-api/structures.rst:609 +#: c-api/structures.rst:614 msgid ":c:expr:`long`" msgstr "" -#: c-api/structures.rst:610 +#: c-api/structures.rst:615 msgid ":c:expr:`long long`" msgstr "" -#: c-api/structures.rst:611 +#: c-api/structures.rst:616 msgid ":c:expr:`unsigned char`" msgstr "" -#: c-api/structures.rst:612 +#: c-api/structures.rst:617 msgid ":c:expr:`unsigned int`" msgstr "" -#: c-api/structures.rst:613 +#: c-api/structures.rst:618 msgid ":c:expr:`unsigned short`" msgstr "" -#: c-api/structures.rst:614 +#: c-api/structures.rst:619 msgid ":c:expr:`unsigned long`" msgstr "" -#: c-api/structures.rst:615 +#: c-api/structures.rst:620 msgid ":c:expr:`unsigned long long`" msgstr "" -#: c-api/structures.rst:616 +#: c-api/structures.rst:621 msgid ":c:expr:`Py_ssize_t`" msgstr "" -#: c-api/structures.rst:617 +#: c-api/structures.rst:622 msgid ":c:expr:`float`" msgstr "" -#: c-api/structures.rst:618 +#: c-api/structures.rst:623 msgid ":py:class:`float`" msgstr "" -#: c-api/structures.rst:618 +#: c-api/structures.rst:623 msgid ":c:expr:`double`" msgstr "" -#: c-api/structures.rst:619 +#: c-api/structures.rst:624 msgid ":c:expr:`char` (written as 0 or 1)" msgstr "" -#: c-api/structures.rst:619 +#: c-api/structures.rst:624 msgid ":py:class:`bool`" msgstr "" -#: c-api/structures.rst:621 +#: c-api/structures.rst:626 msgid ":c:expr:`const char *` (*)" msgstr "" -#: c-api/structures.rst:622 +#: c-api/structures.rst:627 msgid ":py:class:`str` (RO)" msgstr "" -#: c-api/structures.rst:622 +#: c-api/structures.rst:627 msgid ":c:expr:`const char[]` (*)" msgstr "" -#: c-api/structures.rst:623 +#: c-api/structures.rst:628 msgid ":c:expr:`char` (0-127)" msgstr "" -#: c-api/structures.rst:623 +#: c-api/structures.rst:628 msgid ":py:class:`str` (**)" msgstr "" -#: c-api/structures.rst:624 +#: c-api/structures.rst:629 msgid ":c:expr:`PyObject *`" msgstr "" -#: c-api/structures.rst:624 +#: c-api/structures.rst:629 msgid ":py:class:`object` (D)" msgstr "" -#: c-api/structures.rst:627 +#: c-api/structures.rst:632 msgid "" "(*): Zero-terminated, UTF8-encoded C string. With :c:macro:`!Py_T_STRING` " "the C representation is a pointer; with :c:macro:`!Py_T_STRING_INPLACE` the " "string is stored directly in the structure." msgstr "" -#: c-api/structures.rst:632 +#: c-api/structures.rst:637 msgid "(**): String of length 1. Only ASCII is accepted." msgstr "" -#: c-api/structures.rst:634 +#: c-api/structures.rst:639 msgid "(RO): Implies :c:macro:`Py_READONLY`." msgstr "" -#: c-api/structures.rst:636 +#: c-api/structures.rst:641 msgid "" "(D): Can be deleted, in which case the pointer is set to ``NULL``. Reading a " "``NULL`` pointer raises :py:exc:`AttributeError`." msgstr "" -#: c-api/structures.rst:662 +#: c-api/structures.rst:667 msgid "" "In previous versions, the macros were only available with ``#include " "\"structmember.h\"`` and were named without the ``Py_`` prefix (e.g. as " @@ -831,174 +836,174 @@ msgid "" "with the following deprecated types:" msgstr "" -#: c-api/structures.rst:670 +#: c-api/structures.rst:675 msgid "" "Like ``Py_T_OBJECT_EX``, but ``NULL`` is converted to ``None``. This results " "in surprising behavior in Python: deleting the attribute effectively sets it " "to ``None``." msgstr "" -#: c-api/structures.rst:676 +#: c-api/structures.rst:681 msgid "Always ``None``. Must be used with :c:macro:`Py_READONLY`." msgstr "" -#: c-api/structures.rst:679 +#: c-api/structures.rst:684 msgid "Defining Getters and Setters" msgstr "" -#: c-api/structures.rst:683 +#: c-api/structures.rst:688 msgid "" "Structure to define property-like access for a type. See also description of " "the :c:member:`PyTypeObject.tp_getset` slot." msgstr "" -#: c-api/structures.rst:688 +#: c-api/structures.rst:693 msgid "attribute name" msgstr "" -#: c-api/structures.rst:692 +#: c-api/structures.rst:697 msgid "C function to get the attribute." msgstr "" -#: c-api/structures.rst:696 +#: c-api/structures.rst:701 msgid "" "Optional C function to set or delete the attribute. If ``NULL``, the " "attribute is read-only." msgstr "" -#: c-api/structures.rst:701 +#: c-api/structures.rst:706 msgid "optional docstring" msgstr "" -#: c-api/structures.rst:705 +#: c-api/structures.rst:710 msgid "" "Optional user data pointer, providing additional data for getter and setter." msgstr "" -#: c-api/structures.rst:709 +#: c-api/structures.rst:714 msgid "" "The ``get`` function takes one :c:expr:`PyObject*` parameter (the instance) " "and a user data pointer (the associated ``closure``):" msgstr "" -#: c-api/structures.rst:712 +#: c-api/structures.rst:717 msgid "" "It should return a new reference on success or ``NULL`` with a set exception " "on failure." msgstr "" -#: c-api/structures.rst:717 +#: c-api/structures.rst:722 msgid "" "``set`` functions take two :c:expr:`PyObject*` parameters (the instance and " "the value to be set) and a user data pointer (the associated ``closure``):" msgstr "" -#: c-api/structures.rst:720 +#: c-api/structures.rst:725 msgid "" "In case the attribute should be deleted the second parameter is ``NULL``. " "Should return ``0`` on success or ``-1`` with a set exception on failure." msgstr "" -#: c-api/structures.rst:380 +#: c-api/structures.rst:385 msgid "built-in function" msgstr "" -#: c-api/structures.rst:370 +#: c-api/structures.rst:375 msgid "classmethod" msgstr "" -#: c-api/structures.rst:380 +#: c-api/structures.rst:385 msgid "staticmethod" msgstr "" -#: c-api/structures.rst:563 +#: c-api/structures.rst:568 msgid "READ_RESTRICTED (C macro)" msgstr "" -#: c-api/structures.rst:563 +#: c-api/structures.rst:568 msgid "WRITE_RESTRICTED (C macro)" msgstr "" -#: c-api/structures.rst:563 +#: c-api/structures.rst:568 msgid "RESTRICTED (C macro)" msgstr "" -#: c-api/structures.rst:576 +#: c-api/structures.rst:581 msgid "READONLY (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_BYTE (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_SHORT (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_INT (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_LONG (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_LONGLONG (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_UBYTE (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_USHORT (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_UINT (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_ULONG (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_ULONGULONG (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_PYSSIZET (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_FLOAT (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_DOUBLE (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_BOOL (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_CHAR (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_STRING (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_STRING_INPLACE (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "T_OBJECT_EX (C macro)" msgstr "" -#: c-api/structures.rst:639 +#: c-api/structures.rst:644 msgid "structmember.h" msgstr "" diff --git a/c-api/type.po b/c-api/type.po index e1315de41..dde11489f 100644 --- a/c-api/type.po +++ b/c-api/type.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -436,20 +436,22 @@ msgid "" "If negative, the absolute value specifies how much space instances of the " "class need *in addition* to the superclass. Use :c:func:" "`PyObject_GetTypeData` to get a pointer to subclass-specific memory reserved " -"this way." +"this way. For negative :c:member:`!basicsize`, Python will insert padding " +"when needed to meet :c:member:`~PyTypeObject.tp_basicsize`'s alignment " +"requirements." msgstr "" -#: c-api/type.rst:403 +#: c-api/type.rst:406 msgid "Previously, this field could not be negative." msgstr "" -#: c-api/type.rst:407 +#: c-api/type.rst:410 msgid "" "Size of one element of a variable-size type, in bytes. Used to set :c:member:" "`PyTypeObject.tp_itemsize`. See ``tp_itemsize`` documentation for caveats." msgstr "" -#: c-api/type.rst:411 +#: c-api/type.rst:414 msgid "" "If zero, :c:member:`~PyTypeObject.tp_itemsize` is inherited. Extending " "arbitrary variable-sized classes is dangerous, since some types use a fixed " @@ -458,58 +460,58 @@ msgid "" "only possible in the following situations:" msgstr "" -#: c-api/type.rst:418 +#: c-api/type.rst:421 msgid "" "The base is not variable-sized (its :c:member:`~PyTypeObject.tp_itemsize`)." msgstr "" -#: c-api/type.rst:420 +#: c-api/type.rst:423 msgid "" "The requested :c:member:`PyType_Spec.basicsize` is positive, suggesting that " "the memory layout of the base class is known." msgstr "" -#: c-api/type.rst:422 +#: c-api/type.rst:425 msgid "" "The requested :c:member:`PyType_Spec.basicsize` is zero, suggesting that the " "subclass does not access the instance's memory directly." msgstr "" -#: c-api/type.rst:425 +#: c-api/type.rst:428 msgid "With the :c:macro:`Py_TPFLAGS_ITEMS_AT_END` flag." msgstr "" -#: c-api/type.rst:429 +#: c-api/type.rst:432 msgid "Type flags, used to set :c:member:`PyTypeObject.tp_flags`." msgstr "" -#: c-api/type.rst:431 +#: c-api/type.rst:434 msgid "" "If the ``Py_TPFLAGS_HEAPTYPE`` flag is not set, :c:func:" "`PyType_FromSpecWithBases` sets it automatically." msgstr "" -#: c-api/type.rst:436 +#: c-api/type.rst:439 msgid "" "Array of :c:type:`PyType_Slot` structures. Terminated by the special slot " "value ``{0, NULL}``." msgstr "" -#: c-api/type.rst:439 +#: c-api/type.rst:442 msgid "Each slot ID should be specified at most once." msgstr "" -#: c-api/type.rst:449 +#: c-api/type.rst:452 msgid "" "Structure defining optional functionality of a type, containing a slot ID " "and a value pointer." msgstr "" -#: c-api/type.rst:454 +#: c-api/type.rst:457 msgid "A slot ID." msgstr "" -#: c-api/type.rst:456 +#: c-api/type.rst:459 msgid "" "Slot IDs are named like the field names of the structures :c:type:" "`PyTypeObject`, :c:type:`PyNumberMethods`, :c:type:`PySequenceMethods`, :c:" @@ -517,42 +519,42 @@ msgid "" "prefix. For example, use:" msgstr "" -#: c-api/type.rst:462 +#: c-api/type.rst:465 msgid "``Py_tp_dealloc`` to set :c:member:`PyTypeObject.tp_dealloc`" msgstr "" -#: c-api/type.rst:463 +#: c-api/type.rst:466 msgid "``Py_nb_add`` to set :c:member:`PyNumberMethods.nb_add`" msgstr "" -#: c-api/type.rst:464 +#: c-api/type.rst:467 msgid "``Py_sq_length`` to set :c:member:`PySequenceMethods.sq_length`" msgstr "" -#: c-api/type.rst:466 +#: c-api/type.rst:469 msgid "" "The following “offset” fields cannot be set using :c:type:`PyType_Slot`:" msgstr "" -#: c-api/type.rst:468 +#: c-api/type.rst:471 msgid "" ":c:member:`~PyTypeObject.tp_weaklistoffset` (use :c:macro:" "`Py_TPFLAGS_MANAGED_WEAKREF` instead if possible)" msgstr "" -#: c-api/type.rst:470 +#: c-api/type.rst:473 msgid "" ":c:member:`~PyTypeObject.tp_dictoffset` (use :c:macro:" "`Py_TPFLAGS_MANAGED_DICT` instead if possible)" msgstr "" -#: c-api/type.rst:472 +#: c-api/type.rst:475 msgid "" ":c:member:`~PyTypeObject.tp_vectorcall_offset` (use " "``\"__vectorcalloffset__\"`` in :ref:`PyMemberDef `)" msgstr "" -#: c-api/type.rst:476 +#: c-api/type.rst:479 msgid "" "If it is not possible to switch to a ``MANAGED`` flag (for example, for " "vectorcall or to support Python older than 3.12), specify the offset in :c:" @@ -560,48 +562,48 @@ msgid "" "documentation ` for details." msgstr "" -#: c-api/type.rst:482 +#: c-api/type.rst:485 msgid "The following fields cannot be set at all when creating a heap type:" msgstr "" -#: c-api/type.rst:484 +#: c-api/type.rst:487 msgid "" ":c:member:`~PyTypeObject.tp_vectorcall` (use :c:member:`~PyTypeObject." "tp_new` and/or :c:member:`~PyTypeObject.tp_init`)" msgstr "" -#: c-api/type.rst:488 +#: c-api/type.rst:491 msgid "" "Internal fields: :c:member:`~PyTypeObject.tp_dict`, :c:member:`~PyTypeObject." "tp_mro`, :c:member:`~PyTypeObject.tp_cache`, :c:member:`~PyTypeObject." "tp_subclasses`, and :c:member:`~PyTypeObject.tp_weaklist`." msgstr "" -#: c-api/type.rst:495 +#: c-api/type.rst:498 msgid "" "Setting :c:data:`Py_tp_bases` or :c:data:`Py_tp_base` may be problematic on " "some platforms. To avoid issues, use the *bases* argument of :c:func:" "`PyType_FromSpecWithBases` instead." msgstr "" -#: c-api/type.rst:502 +#: c-api/type.rst:503 msgid "Slots in :c:type:`PyBufferProcs` may be set in the unlimited API." msgstr "" -#: c-api/type.rst:504 +#: c-api/type.rst:506 msgid "" ":c:member:`~PyBufferProcs.bf_getbuffer` and :c:member:`~PyBufferProcs." "bf_releasebuffer` are now available under the :ref:`limited API `." msgstr "" -#: c-api/type.rst:511 +#: c-api/type.rst:513 msgid "" "The desired value of the slot. In most cases, this is a pointer to a " "function." msgstr "" -#: c-api/type.rst:514 +#: c-api/type.rst:516 msgid "Slots other than ``Py_tp_doc`` may not be ``NULL``." msgstr "" diff --git a/c-api/typeobj.po b/c-api/typeobj.po index 43276425f..db29f675b 100644 --- a/c-api/typeobj.po +++ b/c-api/typeobj.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -17,7 +17,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: c-api/typeobj.rst:6 -msgid "Type Objects" +msgid "Type Object Structures" msgstr "" #: c-api/typeobj.rst:8 @@ -1117,7 +1117,7 @@ msgstr "" #: c-api/typeobj.rst:475 msgid "" "The structure definition for :c:type:`PyTypeObject` can be found in :file:" -"`Include/object.h`. For convenience of reference, this repeats the " +"`Include/cpython/object.h`. For convenience of reference, this repeats the " "definition found there:" msgstr "" @@ -1235,21 +1235,21 @@ msgid "" "instances *do* count as references." msgstr "" -#: c-api/typeobj.rst:526 c-api/typeobj.rst:562 c-api/typeobj.rst:649 -#: c-api/typeobj.rst:762 c-api/typeobj.rst:796 c-api/typeobj.rst:838 -#: c-api/typeobj.rst:867 c-api/typeobj.rst:912 c-api/typeobj.rst:950 -#: c-api/typeobj.rst:997 c-api/typeobj.rst:1032 c-api/typeobj.rst:1082 -#: c-api/typeobj.rst:1102 c-api/typeobj.rst:1134 c-api/typeobj.rst:1172 -#: c-api/typeobj.rst:1207 c-api/typeobj.rst:1272 c-api/typeobj.rst:1321 -#: c-api/typeobj.rst:1369 c-api/typeobj.rst:1505 c-api/typeobj.rst:1602 -#: c-api/typeobj.rst:1650 c-api/typeobj.rst:1678 c-api/typeobj.rst:1722 -#: c-api/typeobj.rst:1780 c-api/typeobj.rst:1827 c-api/typeobj.rst:1888 -#: c-api/typeobj.rst:1951 c-api/typeobj.rst:2011 c-api/typeobj.rst:2034 -#: c-api/typeobj.rst:2068 c-api/typeobj.rst:2117 c-api/typeobj.rst:2140 +#: c-api/typeobj.rst:526 c-api/typeobj.rst:565 c-api/typeobj.rst:687 +#: c-api/typeobj.rst:804 c-api/typeobj.rst:838 c-api/typeobj.rst:880 +#: c-api/typeobj.rst:909 c-api/typeobj.rst:954 c-api/typeobj.rst:992 +#: c-api/typeobj.rst:1039 c-api/typeobj.rst:1074 c-api/typeobj.rst:1124 +#: c-api/typeobj.rst:1144 c-api/typeobj.rst:1176 c-api/typeobj.rst:1214 +#: c-api/typeobj.rst:1249 c-api/typeobj.rst:1314 c-api/typeobj.rst:1363 +#: c-api/typeobj.rst:1411 c-api/typeobj.rst:1547 c-api/typeobj.rst:1644 +#: c-api/typeobj.rst:1692 c-api/typeobj.rst:1720 c-api/typeobj.rst:1764 +#: c-api/typeobj.rst:1822 c-api/typeobj.rst:1869 c-api/typeobj.rst:1930 +#: c-api/typeobj.rst:1993 c-api/typeobj.rst:2053 c-api/typeobj.rst:2076 +#: c-api/typeobj.rst:2110 c-api/typeobj.rst:2159 c-api/typeobj.rst:2182 msgid "**Inheritance:**" msgstr "" -#: c-api/typeobj.rst:564 c-api/typeobj.rst:608 +#: c-api/typeobj.rst:567 c-api/typeobj.rst:611 msgid "This field is not inherited by subtypes." msgstr "" @@ -1277,8 +1277,8 @@ msgid "" "class. :c:func:`PyType_Ready` will not change this field if it is non-zero." msgstr "" -#: c-api/typeobj.rst:723 c-api/typeobj.rst:932 c-api/typeobj.rst:1629 -#: c-api/typeobj.rst:1782 c-api/typeobj.rst:1873 c-api/typeobj.rst:2119 +#: c-api/typeobj.rst:765 c-api/typeobj.rst:974 c-api/typeobj.rst:1671 +#: c-api/typeobj.rst:1824 c-api/typeobj.rst:1915 c-api/typeobj.rst:2161 msgid "This field is inherited by subtypes." msgstr "" @@ -1320,11 +1320,17 @@ msgid "" "types>`, this field has a special internal meaning." msgstr "" -#: c-api/typeobj.rst:568 +#: c-api/typeobj.rst:562 +msgid "" +"This field should be accessed using the :c:func:`Py_SIZE()` and :c:func:" +"`Py_SET_SIZE()` macros." +msgstr "" + +#: c-api/typeobj.rst:571 msgid "PyTypeObject Slots" msgstr "" -#: c-api/typeobj.rst:570 +#: c-api/typeobj.rst:573 msgid "" "Each slot has a section describing inheritance. If :c:func:`PyType_Ready` " "may set a value when the field is set to ``NULL`` then there will also be a " @@ -1332,7 +1338,7 @@ msgid "" "`PyBaseObject_Type` and :c:data:`PyType_Type` effectively act as defaults.)" msgstr "" -#: c-api/typeobj.rst:577 +#: c-api/typeobj.rst:580 msgid "" "Pointer to a NUL-terminated string containing the name of the type. For " "types that are accessible as module globals, the string should be the full " @@ -1344,14 +1350,14 @@ msgid "" "tp_name` initializer ``\"P.Q.M.T\"``." msgstr "" -#: c-api/typeobj.rst:585 +#: c-api/typeobj.rst:588 msgid "" "For :ref:`dynamically allocated type objects `, this should just " "be the type name, and the module name explicitly stored in the type dict as " "the value for key ``'__module__'``." msgstr "" -#: c-api/typeobj.rst:590 +#: c-api/typeobj.rst:593 msgid "" "For :ref:`statically allocated type objects `, the *tp_name* " "field should contain a dot. Everything before the last dot is made " @@ -1359,7 +1365,7 @@ msgid "" "the last dot is made accessible as the :attr:`~type.__name__` attribute." msgstr "" -#: c-api/typeobj.rst:596 +#: c-api/typeobj.rst:599 msgid "" "If no dot is present, the entire :c:member:`~PyTypeObject.tp_name` field is " "made accessible as the :attr:`~type.__name__` attribute, and the :attr:" @@ -1369,80 +1375,136 @@ msgid "" "created with pydoc." msgstr "" -#: c-api/typeobj.rst:602 +#: c-api/typeobj.rst:605 msgid "" "This field must not be ``NULL``. It is the only required field in :c:func:" "`PyTypeObject` (other than potentially :c:member:`~PyTypeObject." "tp_itemsize`)." msgstr "" -#: c-api/typeobj.rst:614 +#: c-api/typeobj.rst:617 msgid "" "These fields allow calculating the size in bytes of instances of the type." msgstr "" -#: c-api/typeobj.rst:616 +#: c-api/typeobj.rst:619 msgid "" "There are two kinds of types: types with fixed-length instances have a zero :" -"c:member:`~PyTypeObject.tp_itemsize` field, types with variable-length " -"instances have a non-zero :c:member:`~PyTypeObject.tp_itemsize` field. For " -"a type with fixed-length instances, all instances have the same size, given " -"in :c:member:`~PyTypeObject.tp_basicsize`." +"c:member:`!tp_itemsize` field, types with variable-length instances have a " +"non-zero :c:member:`!tp_itemsize` field. For a type with fixed-length " +"instances, all instances have the same size, given in :c:member:`!" +"tp_basicsize`. (Exceptions to this rule can be made using :c:func:" +"`PyUnstable_Object_GC_NewWithExtraData`.)" msgstr "" -#: c-api/typeobj.rst:621 +#: c-api/typeobj.rst:626 msgid "" "For a type with variable-length instances, the instances must have an :c:" -"member:`~PyVarObject.ob_size` field, and the instance size is :c:member:" -"`~PyTypeObject.tp_basicsize` plus N times :c:member:`~PyTypeObject." -"tp_itemsize`, where N is the \"length\" of the object. The value of N is " -"typically stored in the instance's :c:member:`~PyVarObject.ob_size` field. " -"There are exceptions: for example, ints use a negative :c:member:" -"`~PyVarObject.ob_size` to indicate a negative number, and N is " -"``abs(ob_size)`` there. Also, the presence of an :c:member:`~PyVarObject." -"ob_size` field in the instance layout doesn't mean that the instance " -"structure is variable-length (for example, the structure for the list type " -"has fixed-length instances, yet those instances have a meaningful :c:member:" -"`~PyVarObject.ob_size` field)." +"member:`~PyVarObject.ob_size` field, and the instance size is :c:member:`!" +"tp_basicsize` plus N times :c:member:`!tp_itemsize`, where N is the " +"\"length\" of the object." msgstr "" -#: c-api/typeobj.rst:632 +#: c-api/typeobj.rst:631 msgid "" -"The basic size includes the fields in the instance declared by the macro :c:" -"macro:`PyObject_HEAD` or :c:macro:`PyObject_VAR_HEAD` (whichever is used to " -"declare the instance struct) and this in turn includes the :c:member:" -"`~PyObject._ob_prev` and :c:member:`~PyObject._ob_next` fields if they are " -"present. This means that the only correct way to get an initializer for " -"the :c:member:`~PyTypeObject.tp_basicsize` is to use the ``sizeof`` operator " -"on the struct used to declare the instance layout. The basic size does not " -"include the GC header size." +"Functions like :c:func:`PyObject_NewVar` will take the value of N as an " +"argument, and store in the instance's :c:member:`~PyVarObject.ob_size` " +"field. Note that the :c:member:`~PyVarObject.ob_size` field may later be " +"used for other purposes. For example, :py:type:`int` instances use the bits " +"of :c:member:`~PyVarObject.ob_size` in an implementation-defined way; the " +"underlying storage and its size should be acessed using :c:func:" +"`PyLong_Export`." msgstr "" -#: c-api/typeobj.rst:640 +#: c-api/typeobj.rst:641 msgid "" -"A note about alignment: if the variable items require a particular " -"alignment, this should be taken care of by the value of :c:member:" -"`~PyTypeObject.tp_basicsize`. Example: suppose a type implements an array " -"of ``double``. :c:member:`~PyTypeObject.tp_itemsize` is ``sizeof(double)``. " -"It is the programmer's responsibility that :c:member:`~PyTypeObject." -"tp_basicsize` is a multiple of ``sizeof(double)`` (assuming this is the " -"alignment requirement for ``double``)." +"The :c:member:`~PyVarObject.ob_size` field should be accessed using the :c:" +"func:`Py_SIZE()` and :c:func:`Py_SET_SIZE()` macros." msgstr "" -#: c-api/typeobj.rst:647 +#: c-api/typeobj.rst:644 msgid "" -"For any type with variable-length instances, this field must not be ``NULL``." +"Also, the presence of an :c:member:`~PyVarObject.ob_size` field in the " +"instance layout doesn't mean that the instance structure is variable-length. " +"For example, the :py:type:`list` type has fixed-length instances, yet those " +"instances have a :c:member:`~PyVarObject.ob_size` field. (As with :py:type:" +"`int`, avoid reading lists' :c:member:`!ob_size` directly. Call :c:func:" +"`PyList_Size` instead.)" msgstr "" #: c-api/typeobj.rst:651 msgid "" -"These fields are inherited separately by subtypes. If the base type has a " -"non-zero :c:member:`~PyTypeObject.tp_itemsize`, it is generally not safe to " -"set :c:member:`~PyTypeObject.tp_itemsize` to a different non-zero value in a " -"subtype (though this depends on the implementation of the base type)." +"The :c:member:`!tp_basicsize` includes size needed for data of the type's :c:" +"member:`~PyTypeObject.tp_base`, plus any extra data needed by each instance." +msgstr "" + +#: c-api/typeobj.rst:655 +msgid "" +"The correct way to set :c:member:`!tp_basicsize` is to use the ``sizeof`` " +"operator on the struct used to declare the instance layout. This struct must " +"include the struct used to declare the base type. In other words, :c:member:" +"`!tp_basicsize` must be greater than or equal to the base's :c:member:`!" +"tp_basicsize`." +msgstr "" + +#: c-api/typeobj.rst:661 +msgid "" +"Since every type is a subtype of :py:type:`object`, this struct must " +"include :c:type:`PyObject` or :c:type:`PyVarObject` (depending on whether :c:" +"member:`~PyVarObject.ob_size` should be included). These are usually defined " +"by the macro :c:macro:`PyObject_HEAD` or :c:macro:`PyObject_VAR_HEAD`, " +"respectively." +msgstr "" + +#: c-api/typeobj.rst:667 +msgid "" +"The basic size does not include the GC header size, as that header is not " +"part of :c:macro:`PyObject_HEAD`." +msgstr "" + +#: c-api/typeobj.rst:670 +msgid "" +"For cases where struct used to declare the base type is unknown, see :c:" +"member:`PyType_Spec.basicsize` and :c:func:`PyType_FromMetaclass`." +msgstr "" + +#: c-api/typeobj.rst:673 +msgid "Notes about alignment:" +msgstr "" + +#: c-api/typeobj.rst:675 +msgid "" +":c:member:`!tp_basicsize` must be a multiple of ``_Alignof(PyObject)``. When " +"using ``sizeof`` on a ``struct`` that includes :c:macro:`PyObject_HEAD`, as " +"recommended, the compiler ensures this. When not using a C ``struct``, or " +"when using compiler extensions like ``__attribute__((packed))``, it is up to " +"you." +msgstr "" + +#: c-api/typeobj.rst:680 +msgid "" +"If the variable items require a particular alignment, :c:member:`!" +"tp_basicsize` and :c:member:`!tp_itemsize` must each be a multiple of that " +"alignment. For example, if a type's variable part stores a ``double``, it is " +"your responsibility that both fields are a multiple of ``_Alignof(double)``." +msgstr "" + +#: c-api/typeobj.rst:689 +msgid "" +"These fields are inherited separately by subtypes. (That is, if the field is " +"set to zero, :c:func:`PyType_Ready` will copy the value from the base type, " +"indicating that the instances do not need additional storage.)" msgstr "" -#: c-api/typeobj.rst:659 +#: c-api/typeobj.rst:694 +msgid "" +"If the base type has a non-zero :c:member:`~PyTypeObject.tp_itemsize`, it is " +"generally not safe to set :c:member:`~PyTypeObject.tp_itemsize` to a " +"different non-zero value in a subtype (though this depends on the " +"implementation of the base type)." +msgstr "" + +#: c-api/typeobj.rst:701 msgid "" "A pointer to the instance destructor function. This function must be " "defined unless the type guarantees that its instances will never be " @@ -1450,11 +1512,11 @@ msgid "" "The function signature is::" msgstr "" -#: c-api/typeobj.rst:663 +#: c-api/typeobj.rst:705 msgid "void tp_dealloc(PyObject *self);" msgstr "" -#: c-api/typeobj.rst:665 +#: c-api/typeobj.rst:707 msgid "" "The destructor function is called by the :c:func:`Py_DECREF` and :c:func:" "`Py_XDECREF` macros when the new reference count is zero. At this point, " @@ -1472,14 +1534,14 @@ msgid "" "allocated using :c:macro:`PyObject_GC_New` or :c:macro:`PyObject_GC_NewVar`." msgstr "" -#: c-api/typeobj.rst:680 +#: c-api/typeobj.rst:722 msgid "" "If the type supports garbage collection (has the :c:macro:" "`Py_TPFLAGS_HAVE_GC` flag bit set), the destructor should call :c:func:" "`PyObject_GC_UnTrack` before clearing any member fields." msgstr "" -#: c-api/typeobj.rst:684 +#: c-api/typeobj.rst:726 msgid "" "static void foo_dealloc(foo_object *self) {\n" " PyObject_GC_UnTrack(self);\n" @@ -1488,7 +1550,7 @@ msgid "" "}" msgstr "" -#: c-api/typeobj.rst:692 +#: c-api/typeobj.rst:734 msgid "" "Finally, if the type is heap allocated (:c:macro:`Py_TPFLAGS_HEAPTYPE`), the " "deallocator should release the owned reference to its type object (via :c:" @@ -1496,7 +1558,7 @@ msgid "" "dangling pointers, the recommended way to achieve this is:" msgstr "" -#: c-api/typeobj.rst:698 +#: c-api/typeobj.rst:740 msgid "" "static void foo_dealloc(foo_object *self) {\n" " PyTypeObject *tp = Py_TYPE(self);\n" @@ -1506,7 +1568,7 @@ msgid "" "}" msgstr "" -#: c-api/typeobj.rst:709 +#: c-api/typeobj.rst:751 msgid "" "In a garbage collected Python, :c:member:`!tp_dealloc` may be called from " "any Python thread, not just the thread which created the object (if the " @@ -1519,28 +1581,28 @@ msgid "" "member:`!tp_dealloc` will not violate any assumptions of the library." msgstr "" -#: c-api/typeobj.rst:728 +#: c-api/typeobj.rst:770 msgid "" "An optional offset to a per-instance function that implements calling the " "object using the :ref:`vectorcall protocol `, a more efficient " "alternative of the simpler :c:member:`~PyTypeObject.tp_call`." msgstr "" -#: c-api/typeobj.rst:733 +#: c-api/typeobj.rst:775 msgid "" "This field is only used if the flag :c:macro:`Py_TPFLAGS_HAVE_VECTORCALL` is " "set. If so, this must be a positive integer containing the offset in the " "instance of a :c:type:`vectorcallfunc` pointer." msgstr "" -#: c-api/typeobj.rst:737 +#: c-api/typeobj.rst:779 msgid "" "The *vectorcallfunc* pointer may be ``NULL``, in which case the instance " "behaves as if :c:macro:`Py_TPFLAGS_HAVE_VECTORCALL` was not set: calling the " "instance falls back to :c:member:`~PyTypeObject.tp_call`." msgstr "" -#: c-api/typeobj.rst:741 +#: c-api/typeobj.rst:783 msgid "" "Any class that sets ``Py_TPFLAGS_HAVE_VECTORCALL`` must also set :c:member:" "`~PyTypeObject.tp_call` and make sure its behaviour is consistent with the " @@ -1548,13 +1610,13 @@ msgid "" "`PyVectorcall_Call`." msgstr "" -#: c-api/typeobj.rst:748 +#: c-api/typeobj.rst:790 msgid "" "Before version 3.8, this slot was named ``tp_print``. In Python 2.x, it was " "used for printing to a file. In Python 3.0 to 3.7, it was unused." msgstr "" -#: c-api/typeobj.rst:754 +#: c-api/typeobj.rst:796 msgid "" "Before version 3.12, it was not recommended for :ref:`mutable heap types " "` to implement the vectorcall protocol. When a user sets :attr:" @@ -1564,7 +1626,7 @@ msgid "" "`Py_TPFLAGS_HAVE_VECTORCALL` flag." msgstr "" -#: c-api/typeobj.rst:764 +#: c-api/typeobj.rst:806 msgid "" "This field is always inherited. However, the :c:macro:" "`Py_TPFLAGS_HAVE_VECTORCALL` flag is not always inherited. If it's not set, " @@ -1572,11 +1634,11 @@ msgid "" "func:`PyVectorcall_Call` is explicitly called." msgstr "" -#: c-api/typeobj.rst:773 +#: c-api/typeobj.rst:815 msgid "An optional pointer to the get-attribute-string function." msgstr "" -#: c-api/typeobj.rst:775 +#: c-api/typeobj.rst:817 msgid "" "This field is deprecated. When it is defined, it should point to a function " "that acts the same as the :c:member:`~PyTypeObject.tp_getattro` function, " @@ -1584,13 +1646,13 @@ msgid "" "attribute name." msgstr "" -#: c-api/typeobj.rst:973 +#: c-api/typeobj.rst:1015 msgid "" "Group: :c:member:`~PyTypeObject.tp_getattr`, :c:member:`~PyTypeObject." "tp_getattro`" msgstr "" -#: c-api/typeobj.rst:783 +#: c-api/typeobj.rst:825 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_getattro`: a subtype inherits both :c:member:`~PyTypeObject.tp_getattr` " @@ -1599,12 +1661,12 @@ msgid "" "tp_getattro` are both ``NULL``." msgstr "" -#: c-api/typeobj.rst:986 +#: c-api/typeobj.rst:1028 msgid "" "An optional pointer to the function for setting and deleting attributes." msgstr "" -#: c-api/typeobj.rst:792 +#: c-api/typeobj.rst:834 msgid "" "This field is deprecated. When it is defined, it should point to a function " "that acts the same as the :c:member:`~PyTypeObject.tp_setattro` function, " @@ -1612,13 +1674,13 @@ msgid "" "attribute name." msgstr "" -#: c-api/typeobj.rst:999 +#: c-api/typeobj.rst:1041 msgid "" "Group: :c:member:`~PyTypeObject.tp_setattr`, :c:member:`~PyTypeObject." "tp_setattro`" msgstr "" -#: c-api/typeobj.rst:800 +#: c-api/typeobj.rst:842 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_setattro`: a subtype inherits both :c:member:`~PyTypeObject.tp_setattr` " @@ -1627,38 +1689,38 @@ msgid "" "tp_setattro` are both ``NULL``." msgstr "" -#: c-api/typeobj.rst:807 +#: c-api/typeobj.rst:849 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement :term:`awaitable` and :term:`asynchronous iterator` " "protocols at the C-level. See :ref:`async-structs` for details." msgstr "" -#: c-api/typeobj.rst:811 +#: c-api/typeobj.rst:853 msgid "Formerly known as ``tp_compare`` and ``tp_reserved``." msgstr "" -#: c-api/typeobj.rst:816 +#: c-api/typeobj.rst:858 msgid "" "The :c:member:`~PyTypeObject.tp_as_async` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: c-api/typeobj.rst:824 +#: c-api/typeobj.rst:866 msgid "" "An optional pointer to a function that implements the built-in function :" "func:`repr`." msgstr "" -#: c-api/typeobj.rst:827 +#: c-api/typeobj.rst:869 msgid "The signature is the same as for :c:func:`PyObject_Repr`::" msgstr "" -#: c-api/typeobj.rst:829 +#: c-api/typeobj.rst:871 msgid "PyObject *tp_repr(PyObject *self);" msgstr "" -#: c-api/typeobj.rst:831 +#: c-api/typeobj.rst:873 msgid "" "The function must return a string or a Unicode object. Ideally, this " "function should return a string that, when passed to :func:`eval`, given a " @@ -1667,80 +1729,80 @@ msgid "" "``'>'`` from which both the type and the value of the object can be deduced." msgstr "" -#: c-api/typeobj.rst:954 c-api/typeobj.rst:1005 c-api/typeobj.rst:1575 -#: c-api/typeobj.rst:1726 c-api/typeobj.rst:1834 c-api/typeobj.rst:1893 -#: c-api/typeobj.rst:1956 c-api/typeobj.rst:1987 +#: c-api/typeobj.rst:996 c-api/typeobj.rst:1047 c-api/typeobj.rst:1617 +#: c-api/typeobj.rst:1768 c-api/typeobj.rst:1876 c-api/typeobj.rst:1935 +#: c-api/typeobj.rst:1998 c-api/typeobj.rst:2029 msgid "**Default:**" msgstr "" -#: c-api/typeobj.rst:844 +#: c-api/typeobj.rst:886 msgid "" "When this field is not set, a string of the form ``<%s object at %p>`` is " "returned, where ``%s`` is replaced by the type name, and ``%p`` by the " "object's memory address." msgstr "" -#: c-api/typeobj.rst:851 +#: c-api/typeobj.rst:893 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement the number protocol. These fields are documented " "in :ref:`number-structs`." msgstr "" -#: c-api/typeobj.rst:857 +#: c-api/typeobj.rst:899 msgid "" "The :c:member:`~PyTypeObject.tp_as_number` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: c-api/typeobj.rst:863 +#: c-api/typeobj.rst:905 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement the sequence protocol. These fields are documented " "in :ref:`sequence-structs`." msgstr "" -#: c-api/typeobj.rst:869 +#: c-api/typeobj.rst:911 msgid "" "The :c:member:`~PyTypeObject.tp_as_sequence` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: c-api/typeobj.rst:875 +#: c-api/typeobj.rst:917 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement the mapping protocol. These fields are documented " "in :ref:`mapping-structs`." msgstr "" -#: c-api/typeobj.rst:881 +#: c-api/typeobj.rst:923 msgid "" "The :c:member:`~PyTypeObject.tp_as_mapping` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: c-api/typeobj.rst:889 +#: c-api/typeobj.rst:931 msgid "" "An optional pointer to a function that implements the built-in function :" "func:`hash`." msgstr "" -#: c-api/typeobj.rst:892 +#: c-api/typeobj.rst:934 msgid "The signature is the same as for :c:func:`PyObject_Hash`::" msgstr "" -#: c-api/typeobj.rst:894 +#: c-api/typeobj.rst:936 msgid "Py_hash_t tp_hash(PyObject *);" msgstr "" -#: c-api/typeobj.rst:896 +#: c-api/typeobj.rst:938 msgid "" "The value ``-1`` should not be returned as a normal return value; when an " "error occurs during the computation of the hash value, the function should " "set an exception and return ``-1``." msgstr "" -#: c-api/typeobj.rst:900 +#: c-api/typeobj.rst:942 msgid "" "When this field is not set (*and* :c:member:`~PyTypeObject.tp_richcompare` " "is not set), an attempt to take the hash of the object raises :exc:" @@ -1748,7 +1810,7 @@ msgid "" "`PyObject_HashNotImplemented`." msgstr "" -#: c-api/typeobj.rst:904 +#: c-api/typeobj.rst:946 msgid "" "This field can be set explicitly to :c:func:`PyObject_HashNotImplemented` to " "block inheritance of the hash method from a parent type. This is interpreted " @@ -1759,13 +1821,13 @@ msgid "" "`PyObject_HashNotImplemented`." msgstr "" -#: c-api/typeobj.rst:1568 +#: c-api/typeobj.rst:1610 msgid "" "Group: :c:member:`~PyTypeObject.tp_hash`, :c:member:`~PyTypeObject." "tp_richcompare`" msgstr "" -#: c-api/typeobj.rst:916 +#: c-api/typeobj.rst:958 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_richcompare`: a subtype inherits both of :c:member:`~PyTypeObject." @@ -1774,18 +1836,18 @@ msgid "" "are both ``NULL``." msgstr "" -#: c-api/typeobj.rst:924 +#: c-api/typeobj.rst:966 msgid "" "An optional pointer to a function that implements calling the object. This " "should be ``NULL`` if the object is not callable. The signature is the same " "as for :c:func:`PyObject_Call`::" msgstr "" -#: c-api/typeobj.rst:928 +#: c-api/typeobj.rst:970 msgid "PyObject *tp_call(PyObject *self, PyObject *args, PyObject *kwargs);" msgstr "" -#: c-api/typeobj.rst:937 +#: c-api/typeobj.rst:979 msgid "" "An optional pointer to a function that implements the built-in operation :" "func:`str`. (Note that :class:`str` is a type now, and :func:`str` calls " @@ -1794,15 +1856,15 @@ msgid "" "this handler.)" msgstr "" -#: c-api/typeobj.rst:942 +#: c-api/typeobj.rst:984 msgid "The signature is the same as for :c:func:`PyObject_Str`::" msgstr "" -#: c-api/typeobj.rst:944 +#: c-api/typeobj.rst:986 msgid "PyObject *tp_str(PyObject *self);" msgstr "" -#: c-api/typeobj.rst:946 +#: c-api/typeobj.rst:988 msgid "" "The function must return a string or a Unicode object. It should be a " "\"friendly\" string representation of the object, as this is the " @@ -1810,32 +1872,32 @@ msgid "" "function." msgstr "" -#: c-api/typeobj.rst:956 +#: c-api/typeobj.rst:998 msgid "" "When this field is not set, :c:func:`PyObject_Repr` is called to return a " "string representation." msgstr "" -#: c-api/typeobj.rst:962 +#: c-api/typeobj.rst:1004 msgid "An optional pointer to the get-attribute function." msgstr "" -#: c-api/typeobj.rst:964 +#: c-api/typeobj.rst:1006 msgid "The signature is the same as for :c:func:`PyObject_GetAttr`::" msgstr "" -#: c-api/typeobj.rst:966 +#: c-api/typeobj.rst:1008 msgid "PyObject *tp_getattro(PyObject *self, PyObject *attr);" msgstr "" -#: c-api/typeobj.rst:968 +#: c-api/typeobj.rst:1010 msgid "" "It is usually convenient to set this field to :c:func:" "`PyObject_GenericGetAttr`, which implements the normal way of looking for " "object attributes." msgstr "" -#: c-api/typeobj.rst:975 +#: c-api/typeobj.rst:1017 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_getattr`: a subtype inherits both :c:member:`~PyTypeObject.tp_getattr` " @@ -1844,19 +1906,19 @@ msgid "" "tp_getattro` are both ``NULL``." msgstr "" -#: c-api/typeobj.rst:981 +#: c-api/typeobj.rst:1023 msgid ":c:data:`PyBaseObject_Type` uses :c:func:`PyObject_GenericGetAttr`." msgstr "" -#: c-api/typeobj.rst:988 +#: c-api/typeobj.rst:1030 msgid "The signature is the same as for :c:func:`PyObject_SetAttr`::" msgstr "" -#: c-api/typeobj.rst:990 +#: c-api/typeobj.rst:1032 msgid "int tp_setattro(PyObject *self, PyObject *attr, PyObject *value);" msgstr "" -#: c-api/typeobj.rst:992 +#: c-api/typeobj.rst:1034 msgid "" "In addition, setting *value* to ``NULL`` to delete an attribute must be " "supported. It is usually convenient to set this field to :c:func:" @@ -1864,7 +1926,7 @@ msgid "" "attributes." msgstr "" -#: c-api/typeobj.rst:1001 +#: c-api/typeobj.rst:1043 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_setattr`: a subtype inherits both :c:member:`~PyTypeObject.tp_setattr` " @@ -1873,24 +1935,24 @@ msgid "" "tp_setattro` are both ``NULL``." msgstr "" -#: c-api/typeobj.rst:1007 +#: c-api/typeobj.rst:1049 msgid ":c:data:`PyBaseObject_Type` uses :c:func:`PyObject_GenericSetAttr`." msgstr "" -#: c-api/typeobj.rst:1012 +#: c-api/typeobj.rst:1054 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement the buffer interface. These fields are documented " "in :ref:`buffer-structs`." msgstr "" -#: c-api/typeobj.rst:1018 +#: c-api/typeobj.rst:1060 msgid "" "The :c:member:`~PyTypeObject.tp_as_buffer` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: c-api/typeobj.rst:1024 +#: c-api/typeobj.rst:1066 msgid "" "This field is a bit mask of various flags. Some flags indicate variant " "semantics for certain situations; others are used to indicate that certain " @@ -1902,7 +1964,7 @@ msgid "" "accessed and must be considered to have a zero or ``NULL`` value instead." msgstr "" -#: c-api/typeobj.rst:1034 +#: c-api/typeobj.rst:1076 msgid "" "Inheritance of this field is complicated. Most flag bits are inherited " "individually, i.e. if the base type has a flag bit set, the subtype inherits " @@ -1918,17 +1980,17 @@ msgid "" "*really* inherited individually?" msgstr "" -#: c-api/typeobj.rst:1048 +#: c-api/typeobj.rst:1090 msgid "" ":c:data:`PyBaseObject_Type` uses ``Py_TPFLAGS_DEFAULT | " "Py_TPFLAGS_BASETYPE``." msgstr "" -#: c-api/typeobj.rst:1051 +#: c-api/typeobj.rst:1093 msgid "**Bit Masks:**" msgstr "" -#: c-api/typeobj.rst:1055 +#: c-api/typeobj.rst:1097 msgid "" "The following bit masks are currently defined; these can be ORed together " "using the ``|`` operator to form the value of the :c:member:`~PyTypeObject." @@ -1937,7 +1999,7 @@ msgid "" "zero." msgstr "" -#: c-api/typeobj.rst:1062 +#: c-api/typeobj.rst:1104 msgid "" "This bit is set when the type object itself is allocated on the heap, for " "example, types created dynamically using :c:func:`PyType_FromSpec`. In this " @@ -1950,30 +2012,30 @@ msgid "" "reference cycle with their own module object." msgstr "" -#: c-api/typeobj.rst:1084 c-api/typeobj.rst:1104 c-api/typeobj.rst:1136 +#: c-api/typeobj.rst:1126 c-api/typeobj.rst:1146 c-api/typeobj.rst:1178 msgid "???" msgstr "" -#: c-api/typeobj.rst:1078 +#: c-api/typeobj.rst:1120 msgid "" "This bit is set when the type can be used as the base type of another type. " "If this bit is clear, the type cannot be subtyped (similar to a \"final\" " "class in Java)." msgstr "" -#: c-api/typeobj.rst:1089 +#: c-api/typeobj.rst:1131 msgid "" "This bit is set when the type object has been fully initialized by :c:func:" "`PyType_Ready`." msgstr "" -#: c-api/typeobj.rst:1099 +#: c-api/typeobj.rst:1141 msgid "" "This bit is set while :c:func:`PyType_Ready` is in the process of " "initializing the type object." msgstr "" -#: c-api/typeobj.rst:1109 +#: c-api/typeobj.rst:1151 msgid "" "This bit is set when the object supports garbage collection. If this bit is " "set, instances must be created using :c:macro:`PyObject_GC_New` and " @@ -1983,13 +2045,13 @@ msgid "" "tp_clear` are present in the type object." msgstr "" -#: c-api/typeobj.rst:1439 c-api/typeobj.rst:1507 +#: c-api/typeobj.rst:1481 c-api/typeobj.rst:1549 msgid "" "Group: :c:macro:`Py_TPFLAGS_HAVE_GC`, :c:member:`~PyTypeObject." "tp_traverse`, :c:member:`~PyTypeObject.tp_clear`" msgstr "" -#: c-api/typeobj.rst:1120 +#: c-api/typeobj.rst:1162 msgid "" "The :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit is inherited together with the :c:" "member:`~PyTypeObject.tp_traverse` and :c:member:`~PyTypeObject.tp_clear` " @@ -1999,99 +2061,99 @@ msgid "" "values." msgstr "" -#: c-api/typeobj.rst:1130 +#: c-api/typeobj.rst:1172 msgid "" "This is a bitmask of all the bits that pertain to the existence of certain " "fields in the type object and its extension structures. Currently, it " "includes the following bits: :c:macro:`Py_TPFLAGS_HAVE_STACKLESS_EXTENSION`." msgstr "" -#: c-api/typeobj.rst:1141 +#: c-api/typeobj.rst:1183 msgid "This bit indicates that objects behave like unbound methods." msgstr "" -#: c-api/typeobj.rst:1143 +#: c-api/typeobj.rst:1185 msgid "If this flag is set for ``type(meth)``, then:" msgstr "" -#: c-api/typeobj.rst:1145 +#: c-api/typeobj.rst:1187 msgid "" "``meth.__get__(obj, cls)(*args, **kwds)`` (with ``obj`` not None) must be " "equivalent to ``meth(obj, *args, **kwds)``." msgstr "" -#: c-api/typeobj.rst:1148 +#: c-api/typeobj.rst:1190 msgid "" "``meth.__get__(None, cls)(*args, **kwds)`` must be equivalent to " "``meth(*args, **kwds)``." msgstr "" -#: c-api/typeobj.rst:1151 +#: c-api/typeobj.rst:1193 msgid "" "This flag enables an optimization for typical method calls like ``obj." "meth()``: it avoids creating a temporary \"bound method\" object for ``obj." "meth``." msgstr "" -#: c-api/typeobj.rst:1159 +#: c-api/typeobj.rst:1201 msgid "" "This flag is never inherited by types without the :c:macro:" "`Py_TPFLAGS_IMMUTABLETYPE` flag set. For extension types, it is inherited " "whenever :c:member:`~PyTypeObject.tp_descr_get` is inherited." msgstr "" -#: c-api/typeobj.rst:1165 +#: c-api/typeobj.rst:1207 msgid "" "This bit indicates that instances of the class have a `~object.__dict__` " "attribute, and that the space for the dictionary is managed by the VM." msgstr "" -#: c-api/typeobj.rst:1168 +#: c-api/typeobj.rst:1210 msgid "If this flag is set, :c:macro:`Py_TPFLAGS_HAVE_GC` should also be set." msgstr "" -#: c-api/typeobj.rst:1174 +#: c-api/typeobj.rst:1216 msgid "" "This flag is inherited unless the :c:member:`~PyTypeObject.tp_dictoffset` " "field is set in a superclass." msgstr "" -#: c-api/typeobj.rst:1180 +#: c-api/typeobj.rst:1222 msgid "" "This bit indicates that instances of the class should be weakly " "referenceable." msgstr "" -#: c-api/typeobj.rst:1187 +#: c-api/typeobj.rst:1229 msgid "" "This flag is inherited unless the :c:member:`~PyTypeObject." "tp_weaklistoffset` field is set in a superclass." msgstr "" -#: c-api/typeobj.rst:1193 +#: c-api/typeobj.rst:1235 msgid "" "Only usable with variable-size types, i.e. ones with non-zero :c:member:" "`~PyTypeObject.tp_itemsize`." msgstr "" -#: c-api/typeobj.rst:1196 +#: c-api/typeobj.rst:1238 msgid "" "Indicates that the variable-sized portion of an instance of this type is at " "the end of the instance's memory area, at an offset of ``Py_TYPE(obj)-" ">tp_basicsize`` (which may be different in each subclass)." msgstr "" -#: c-api/typeobj.rst:1201 +#: c-api/typeobj.rst:1243 msgid "" "When setting this flag, be sure that all superclasses either use this memory " "layout, or are not variable-sized. Python does not check this." msgstr "" -#: c-api/typeobj.rst:1209 +#: c-api/typeobj.rst:1251 msgid "This flag is inherited." msgstr "" -#: c-api/typeobj.rst:1223 +#: c-api/typeobj.rst:1265 msgid "" "These flags are used by functions such as :c:func:`PyLong_Check` to quickly " "determine if a type is a subclass of a built-in type; such specific checks " @@ -2101,90 +2163,90 @@ msgid "" "behave differently depending on what kind of check is used." msgstr "" -#: c-api/typeobj.rst:1234 +#: c-api/typeobj.rst:1276 msgid "" "This bit is set when the :c:member:`~PyTypeObject.tp_finalize` slot is " "present in the type structure." msgstr "" -#: c-api/typeobj.rst:1239 +#: c-api/typeobj.rst:1281 msgid "" "This flag isn't necessary anymore, as the interpreter assumes the :c:member:" "`~PyTypeObject.tp_finalize` slot is always present in the type structure." msgstr "" -#: c-api/typeobj.rst:1247 +#: c-api/typeobj.rst:1289 msgid "" "This bit is set when the class implements the :ref:`vectorcall protocol " "`. See :c:member:`~PyTypeObject.tp_vectorcall_offset` for " "details." msgstr "" -#: c-api/typeobj.rst:1253 +#: c-api/typeobj.rst:1295 msgid "" "This bit is inherited if :c:member:`~PyTypeObject.tp_call` is also inherited." msgstr "" -#: c-api/typeobj.rst:1260 +#: c-api/typeobj.rst:1302 msgid "" "This flag is now removed from a class when the class's :py:meth:`~object." "__call__` method is reassigned." msgstr "" -#: c-api/typeobj.rst:1263 +#: c-api/typeobj.rst:1305 msgid "This flag can now be inherited by mutable classes." msgstr "" -#: c-api/typeobj.rst:1267 +#: c-api/typeobj.rst:1309 msgid "" "This bit is set for type objects that are immutable: type attributes cannot " "be set nor deleted." msgstr "" -#: c-api/typeobj.rst:1269 +#: c-api/typeobj.rst:1311 msgid "" ":c:func:`PyType_Ready` automatically applies this flag to :ref:`static types " "`." msgstr "" -#: c-api/typeobj.rst:1274 +#: c-api/typeobj.rst:1316 msgid "This flag is not inherited." msgstr "" -#: c-api/typeobj.rst:1280 +#: c-api/typeobj.rst:1322 msgid "" "Disallow creating instances of the type: set :c:member:`~PyTypeObject." "tp_new` to NULL and don't create the ``__new__`` key in the type dictionary." msgstr "" -#: c-api/typeobj.rst:1284 +#: c-api/typeobj.rst:1326 msgid "" "The flag must be set before creating the type, not after. For example, it " "must be set before :c:func:`PyType_Ready` is called on the type." msgstr "" -#: c-api/typeobj.rst:1287 +#: c-api/typeobj.rst:1329 msgid "" "The flag is set automatically on :ref:`static types ` if :c:" "member:`~PyTypeObject.tp_base` is NULL or ``&PyBaseObject_Type`` and :c:" "member:`~PyTypeObject.tp_new` is NULL." msgstr "" -#: c-api/typeobj.rst:1293 +#: c-api/typeobj.rst:1335 msgid "" "This flag is not inherited. However, subclasses will not be instantiable " "unless they provide a non-NULL :c:member:`~PyTypeObject.tp_new` (which is " "only possible via the C API)." msgstr "" -#: c-api/typeobj.rst:1300 +#: c-api/typeobj.rst:1342 msgid "" "To disallow instantiating a class directly but allow instantiating its " "subclasses (e.g. for an :term:`abstract base class`), do not use this flag. " "Instead, make :c:member:`~PyTypeObject.tp_new` only succeed for subclasses." msgstr "" -#: c-api/typeobj.rst:1311 +#: c-api/typeobj.rst:1353 msgid "" "This bit indicates that instances of the class may match mapping patterns " "when used as the subject of a :keyword:`match` block. It is automatically " @@ -2192,23 +2254,23 @@ msgid "" "unset when registering :class:`collections.abc.Sequence`." msgstr "" -#: c-api/typeobj.rst:1340 +#: c-api/typeobj.rst:1382 msgid "" ":c:macro:`Py_TPFLAGS_MAPPING` and :c:macro:`Py_TPFLAGS_SEQUENCE` are " "mutually exclusive; it is an error to enable both flags simultaneously." msgstr "" -#: c-api/typeobj.rst:1323 +#: c-api/typeobj.rst:1365 msgid "" "This flag is inherited by types that do not already set :c:macro:" "`Py_TPFLAGS_SEQUENCE`." msgstr "" -#: c-api/typeobj.rst:1348 +#: c-api/typeobj.rst:1390 msgid ":pep:`634` -- Structural Pattern Matching: Specification" msgstr "" -#: c-api/typeobj.rst:1333 +#: c-api/typeobj.rst:1375 msgid "" "This bit indicates that instances of the class may match sequence patterns " "when used as the subject of a :keyword:`match` block. It is automatically " @@ -2216,53 +2278,53 @@ msgid "" "unset when registering :class:`collections.abc.Mapping`." msgstr "" -#: c-api/typeobj.rst:1345 +#: c-api/typeobj.rst:1387 msgid "" "This flag is inherited by types that do not already set :c:macro:" "`Py_TPFLAGS_MAPPING`." msgstr "" -#: c-api/typeobj.rst:1355 +#: c-api/typeobj.rst:1397 msgid "" "Internal. Do not set or unset this flag. To indicate that a class has " "changed call :c:func:`PyType_Modified`" msgstr "" -#: c-api/typeobj.rst:1359 +#: c-api/typeobj.rst:1401 msgid "" "This flag is present in header files, but is an internal feature and should " "not be used. It will be removed in a future version of CPython" msgstr "" -#: c-api/typeobj.rst:1365 +#: c-api/typeobj.rst:1407 msgid "" "An optional pointer to a NUL-terminated C string giving the docstring for " "this type object. This is exposed as the :attr:`~type.__doc__` attribute on " "the type and instances of the type." msgstr "" -#: c-api/typeobj.rst:1371 +#: c-api/typeobj.rst:1413 msgid "This field is *not* inherited by subtypes." msgstr "" -#: c-api/typeobj.rst:1376 +#: c-api/typeobj.rst:1418 msgid "" "An optional pointer to a traversal function for the garbage collector. This " "is only used if the :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit is set. The " "signature is::" msgstr "" -#: c-api/typeobj.rst:1379 +#: c-api/typeobj.rst:1421 msgid "int tp_traverse(PyObject *self, visitproc visit, void *arg);" msgstr "" -#: c-api/typeobj.rst:1502 +#: c-api/typeobj.rst:1544 msgid "" "More information about Python's garbage collection scheme can be found in " "section :ref:`supporting-cycle-detection`." msgstr "" -#: c-api/typeobj.rst:1384 +#: c-api/typeobj.rst:1426 msgid "" "The :c:member:`~PyTypeObject.tp_traverse` pointer is used by the garbage " "collector to detect reference cycles. A typical implementation of a :c:" @@ -2272,7 +2334,7 @@ msgid "" "`!_thread` extension module::" msgstr "" -#: c-api/typeobj.rst:1390 +#: c-api/typeobj.rst:1432 msgid "" "static int\n" "local_traverse(localobject *self, visitproc visit, void *arg)\n" @@ -2284,7 +2346,7 @@ msgid "" "}" msgstr "" -#: c-api/typeobj.rst:1399 +#: c-api/typeobj.rst:1441 msgid "" "Note that :c:func:`Py_VISIT` is called only on those members that can " "participate in reference cycles. Although there is also a ``self->key`` " @@ -2292,14 +2354,14 @@ msgid "" "part of a reference cycle." msgstr "" -#: c-api/typeobj.rst:1403 +#: c-api/typeobj.rst:1445 msgid "" "On the other hand, even if you know a member can never be part of a cycle, " "as a debugging aid you may want to visit it anyway just so the :mod:`gc` " "module's :func:`~gc.get_referents` function will include it." msgstr "" -#: c-api/typeobj.rst:1408 +#: c-api/typeobj.rst:1450 msgid "" "When implementing :c:member:`~PyTypeObject.tp_traverse`, only the members " "that the instance *owns* (by having :term:`strong references ` hold a reference to " "their type. Their traversal function must therefore either visit :c:func:" @@ -2328,14 +2390,14 @@ msgid "" "superclass). If they do not, the type object may not be garbage-collected." msgstr "" -#: c-api/typeobj.rst:1432 +#: c-api/typeobj.rst:1474 msgid "" "Heap-allocated types are expected to visit ``Py_TYPE(self)`` in " "``tp_traverse``. In earlier versions of Python, due to `bug 40217 `_, doing this may lead to crashes in subclasses." msgstr "" -#: c-api/typeobj.rst:1441 +#: c-api/typeobj.rst:1483 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_clear` and the :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit: the flag bit, :c:" @@ -2343,18 +2405,18 @@ msgid "" "are all inherited from the base type if they are all zero in the subtype." msgstr "" -#: c-api/typeobj.rst:1449 +#: c-api/typeobj.rst:1491 msgid "" "An optional pointer to a clear function for the garbage collector. This is " "only used if the :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit is set. The " "signature is::" msgstr "" -#: c-api/typeobj.rst:1452 +#: c-api/typeobj.rst:1494 msgid "int tp_clear(PyObject *);" msgstr "" -#: c-api/typeobj.rst:1454 +#: c-api/typeobj.rst:1496 msgid "" "The :c:member:`~PyTypeObject.tp_clear` member function is used to break " "reference cycles in cyclic garbage detected by the garbage collector. Taken " @@ -2369,7 +2431,7 @@ msgid "" "good reason to avoid implementing :c:member:`~PyTypeObject.tp_clear`." msgstr "" -#: c-api/typeobj.rst:1464 +#: c-api/typeobj.rst:1506 msgid "" "Implementations of :c:member:`~PyTypeObject.tp_clear` should drop the " "instance's references to those of its members that may be Python objects, " @@ -2377,7 +2439,7 @@ msgid "" "example::" msgstr "" -#: c-api/typeobj.rst:1468 +#: c-api/typeobj.rst:1510 msgid "" "static int\n" "local_clear(localobject *self)\n" @@ -2390,7 +2452,7 @@ msgid "" "}" msgstr "" -#: c-api/typeobj.rst:1478 +#: c-api/typeobj.rst:1520 msgid "" "The :c:func:`Py_CLEAR` macro should be used, because clearing references is " "delicate: the reference to the contained object must not be released (via :" @@ -2405,7 +2467,7 @@ msgid "" "performs the operations in a safe order." msgstr "" -#: c-api/typeobj.rst:1490 +#: c-api/typeobj.rst:1532 msgid "" "Note that :c:member:`~PyTypeObject.tp_clear` is not *always* called before " "an instance is deallocated. For example, when reference counting is enough " @@ -2413,7 +2475,7 @@ msgid "" "is not involved and :c:member:`~PyTypeObject.tp_dealloc` is called directly." msgstr "" -#: c-api/typeobj.rst:1496 +#: c-api/typeobj.rst:1538 msgid "" "Because the goal of :c:member:`~PyTypeObject.tp_clear` functions is to break " "reference cycles, it's not necessary to clear contained objects like Python " @@ -2423,7 +2485,7 @@ msgid "" "invoke :c:member:`~PyTypeObject.tp_clear`." msgstr "" -#: c-api/typeobj.rst:1509 +#: c-api/typeobj.rst:1551 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_traverse` and the :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit: the flag bit, :" @@ -2431,22 +2493,22 @@ msgid "" "are all inherited from the base type if they are all zero in the subtype." msgstr "" -#: c-api/typeobj.rst:1517 +#: c-api/typeobj.rst:1559 msgid "" "An optional pointer to the rich comparison function, whose signature is::" msgstr "" -#: c-api/typeobj.rst:1519 +#: c-api/typeobj.rst:1561 msgid "PyObject *tp_richcompare(PyObject *self, PyObject *other, int op);" msgstr "" -#: c-api/typeobj.rst:1521 +#: c-api/typeobj.rst:1563 msgid "" "The first parameter is guaranteed to be an instance of the type that is " "defined by :c:type:`PyTypeObject`." msgstr "" -#: c-api/typeobj.rst:1524 +#: c-api/typeobj.rst:1566 msgid "" "The function should return the result of the comparison (usually ``Py_True`` " "or ``Py_False``). If the comparison is undefined, it must return " @@ -2454,50 +2516,50 @@ msgid "" "set an exception condition." msgstr "" -#: c-api/typeobj.rst:1529 +#: c-api/typeobj.rst:1571 msgid "" "The following constants are defined to be used as the third argument for :c:" "member:`~PyTypeObject.tp_richcompare` and for :c:func:`PyObject_RichCompare`:" msgstr "" -#: c-api/typeobj.rst:1535 +#: c-api/typeobj.rst:1577 msgid "Constant" msgstr "" -#: c-api/typeobj.rst:1535 +#: c-api/typeobj.rst:1577 msgid "Comparison" msgstr "" -#: c-api/typeobj.rst:1537 +#: c-api/typeobj.rst:1579 msgid "``<``" msgstr "" -#: c-api/typeobj.rst:1539 +#: c-api/typeobj.rst:1581 msgid "``<=``" msgstr "" -#: c-api/typeobj.rst:1541 +#: c-api/typeobj.rst:1583 msgid "``==``" msgstr "" -#: c-api/typeobj.rst:1543 +#: c-api/typeobj.rst:1585 msgid "``!=``" msgstr "" -#: c-api/typeobj.rst:1545 +#: c-api/typeobj.rst:1587 msgid "``>``" msgstr "" -#: c-api/typeobj.rst:1547 +#: c-api/typeobj.rst:1589 msgid "``>=``" msgstr "" -#: c-api/typeobj.rst:1550 +#: c-api/typeobj.rst:1592 msgid "" "The following macro is defined to ease writing rich comparison functions:" msgstr "" -#: c-api/typeobj.rst:1554 +#: c-api/typeobj.rst:1596 msgid "" "Return ``Py_True`` or ``Py_False`` from the function, depending on the " "result of a comparison. VAL_A and VAL_B must be orderable by C comparison " @@ -2505,15 +2567,15 @@ msgid "" "specifies the requested operation, as for :c:func:`PyObject_RichCompare`." msgstr "" -#: c-api/typeobj.rst:1560 +#: c-api/typeobj.rst:1602 msgid "The returned value is a new :term:`strong reference`." msgstr "" -#: c-api/typeobj.rst:1562 +#: c-api/typeobj.rst:1604 msgid "On error, sets an exception and returns ``NULL`` from the function." msgstr "" -#: c-api/typeobj.rst:1570 +#: c-api/typeobj.rst:1612 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_hash`: a subtype inherits :c:member:`~PyTypeObject.tp_richcompare` and :c:" @@ -2521,7 +2583,7 @@ msgid "" "tp_richcompare` and :c:member:`~PyTypeObject.tp_hash` are both ``NULL``." msgstr "" -#: c-api/typeobj.rst:1577 +#: c-api/typeobj.rst:1619 msgid "" ":c:data:`PyBaseObject_Type` provides a :c:member:`~PyTypeObject." "tp_richcompare` implementation, which may be inherited. However, if only :c:" @@ -2530,13 +2592,13 @@ msgid "" "comparisons." msgstr "" -#: c-api/typeobj.rst:1586 +#: c-api/typeobj.rst:1628 msgid "" "While this field is still supported, :c:macro:`Py_TPFLAGS_MANAGED_WEAKREF` " "should be used instead, if at all possible." msgstr "" -#: c-api/typeobj.rst:1589 +#: c-api/typeobj.rst:1631 msgid "" "If the instances of this type are weakly referenceable, this field is " "greater than zero and contains the offset in the instance structure of the " @@ -2546,19 +2608,19 @@ msgid "" "`PyObject*` which is initialized to ``NULL``." msgstr "" -#: c-api/typeobj.rst:1596 +#: c-api/typeobj.rst:1638 msgid "" "Do not confuse this field with :c:member:`~PyTypeObject.tp_weaklist`; that " "is the list head for weak references to the type object itself." msgstr "" -#: c-api/typeobj.rst:1599 +#: c-api/typeobj.rst:1641 msgid "" "It is an error to set both the :c:macro:`Py_TPFLAGS_MANAGED_WEAKREF` bit " "and :c:member:`~PyTypeObject.tp_weaklistoffset`." msgstr "" -#: c-api/typeobj.rst:1604 +#: c-api/typeobj.rst:1646 msgid "" "This field is inherited by subtypes, but see the rules listed below. A " "subtype may override this offset; this means that the subtype uses a " @@ -2567,7 +2629,7 @@ msgid "" "not be a problem." msgstr "" -#: c-api/typeobj.rst:1611 +#: c-api/typeobj.rst:1653 msgid "" "If the :c:macro:`Py_TPFLAGS_MANAGED_WEAKREF` bit is set in the :c:member:" "`~PyTypeObject.tp_flags` field, then :c:member:`~PyTypeObject." @@ -2575,32 +2637,32 @@ msgid "" "unsafe to use this field." msgstr "" -#: c-api/typeobj.rst:1619 +#: c-api/typeobj.rst:1661 msgid "" "An optional pointer to a function that returns an :term:`iterator` for the " "object. Its presence normally signals that the instances of this type are :" "term:`iterable` (although sequences may be iterable without this function)." msgstr "" -#: c-api/typeobj.rst:1623 +#: c-api/typeobj.rst:1665 msgid "This function has the same signature as :c:func:`PyObject_GetIter`::" msgstr "" -#: c-api/typeobj.rst:1625 +#: c-api/typeobj.rst:1667 msgid "PyObject *tp_iter(PyObject *self);" msgstr "" -#: c-api/typeobj.rst:1634 +#: c-api/typeobj.rst:1676 msgid "" "An optional pointer to a function that returns the next item in an :term:" "`iterator`. The signature is::" msgstr "" -#: c-api/typeobj.rst:1637 +#: c-api/typeobj.rst:1679 msgid "PyObject *tp_iternext(PyObject *self);" msgstr "" -#: c-api/typeobj.rst:1639 +#: c-api/typeobj.rst:1681 msgid "" "When the iterator is exhausted, it must return ``NULL``; a :exc:" "`StopIteration` exception may or may not be set. When another error occurs, " @@ -2608,74 +2670,74 @@ msgid "" "this type are iterators." msgstr "" -#: c-api/typeobj.rst:1644 +#: c-api/typeobj.rst:1686 msgid "" "Iterator types should also define the :c:member:`~PyTypeObject.tp_iter` " "function, and that function should return the iterator instance itself (not " "a new iterator instance)." msgstr "" -#: c-api/typeobj.rst:1648 +#: c-api/typeobj.rst:1690 msgid "This function has the same signature as :c:func:`PyIter_Next`." msgstr "" -#: c-api/typeobj.rst:1657 +#: c-api/typeobj.rst:1699 msgid "" "An optional pointer to a static ``NULL``-terminated array of :c:type:" "`PyMethodDef` structures, declaring regular methods of this type." msgstr "" -#: c-api/typeobj.rst:1660 +#: c-api/typeobj.rst:1702 msgid "" "For each entry in the array, an entry is added to the type's dictionary " "(see :c:member:`~PyTypeObject.tp_dict` below) containing a method descriptor." msgstr "" -#: c-api/typeobj.rst:1665 +#: c-api/typeobj.rst:1707 msgid "" "This field is not inherited by subtypes (methods are inherited through a " "different mechanism)." msgstr "" -#: c-api/typeobj.rst:1671 +#: c-api/typeobj.rst:1713 msgid "" "An optional pointer to a static ``NULL``-terminated array of :c:type:" "`PyMemberDef` structures, declaring regular data members (fields or slots) " "of instances of this type." msgstr "" -#: c-api/typeobj.rst:1675 +#: c-api/typeobj.rst:1717 msgid "" "For each entry in the array, an entry is added to the type's dictionary " "(see :c:member:`~PyTypeObject.tp_dict` below) containing a member descriptor." msgstr "" -#: c-api/typeobj.rst:1680 +#: c-api/typeobj.rst:1722 msgid "" "This field is not inherited by subtypes (members are inherited through a " "different mechanism)." msgstr "" -#: c-api/typeobj.rst:1686 +#: c-api/typeobj.rst:1728 msgid "" "An optional pointer to a static ``NULL``-terminated array of :c:type:" "`PyGetSetDef` structures, declaring computed attributes of instances of this " "type." msgstr "" -#: c-api/typeobj.rst:1689 +#: c-api/typeobj.rst:1731 msgid "" "For each entry in the array, an entry is added to the type's dictionary " "(see :c:member:`~PyTypeObject.tp_dict` below) containing a getset descriptor." msgstr "" -#: c-api/typeobj.rst:1694 +#: c-api/typeobj.rst:1736 msgid "" "This field is not inherited by subtypes (computed attributes are inherited " "through a different mechanism)." msgstr "" -#: c-api/typeobj.rst:1700 +#: c-api/typeobj.rst:1742 msgid "" "An optional pointer to a base type from which type properties are " "inherited. At this level, only single inheritance is supported; multiple " @@ -2683,7 +2745,7 @@ msgid "" "metatype." msgstr "" -#: c-api/typeobj.rst:1708 +#: c-api/typeobj.rst:1750 msgid "" "Slot initialization is subject to the rules of initializing globals. C99 " "requires the initializers to be \"address constants\". Function designators " @@ -2691,7 +2753,7 @@ msgid "" "valid C99 address constants." msgstr "" -#: c-api/typeobj.rst:1713 +#: c-api/typeobj.rst:1755 msgid "" "However, the unary '&' operator applied to a non-static variable like :c:" "data:`PyBaseObject_Type` is not required to produce an address constant. " @@ -2699,27 +2761,27 @@ msgid "" "strictly standard conforming in this particular behavior." msgstr "" -#: c-api/typeobj.rst:1719 +#: c-api/typeobj.rst:1761 msgid "" "Consequently, :c:member:`~PyTypeObject.tp_base` should be set in the " "extension module's init function." msgstr "" -#: c-api/typeobj.rst:1724 +#: c-api/typeobj.rst:1766 msgid "This field is not inherited by subtypes (obviously)." msgstr "" -#: c-api/typeobj.rst:1728 +#: c-api/typeobj.rst:1770 msgid "" "This field defaults to ``&PyBaseObject_Type`` (which to Python programmers " "is known as the type :class:`object`)." msgstr "" -#: c-api/typeobj.rst:1734 +#: c-api/typeobj.rst:1776 msgid "The type's dictionary is stored here by :c:func:`PyType_Ready`." msgstr "" -#: c-api/typeobj.rst:1736 +#: c-api/typeobj.rst:1778 msgid "" "This field should normally be initialized to ``NULL`` before PyType_Ready is " "called; it may also be initialized to a dictionary containing initial " @@ -2730,70 +2792,70 @@ msgid "" "be treated as read-only." msgstr "" -#: c-api/typeobj.rst:1744 +#: c-api/typeobj.rst:1786 msgid "" "Some types may not store their dictionary in this slot. Use :c:func:" "`PyType_GetDict` to retrieve the dictionary for an arbitrary type." msgstr "" -#: c-api/typeobj.rst:1750 +#: c-api/typeobj.rst:1792 msgid "" "Internals detail: For static builtin types, this is always ``NULL``. " "Instead, the dict for such types is stored on ``PyInterpreterState``. Use :c:" "func:`PyType_GetDict` to get the dict for an arbitrary type." msgstr "" -#: c-api/typeobj.rst:1756 +#: c-api/typeobj.rst:1798 msgid "" "This field is not inherited by subtypes (though the attributes defined in " "here are inherited through a different mechanism)." msgstr "" -#: c-api/typeobj.rst:1761 +#: c-api/typeobj.rst:1803 msgid "" "If this field is ``NULL``, :c:func:`PyType_Ready` will assign a new " "dictionary to it." msgstr "" -#: c-api/typeobj.rst:1766 +#: c-api/typeobj.rst:1808 msgid "" "It is not safe to use :c:func:`PyDict_SetItem` on or otherwise modify :c:" "member:`~PyTypeObject.tp_dict` with the dictionary C-API." msgstr "" -#: c-api/typeobj.rst:1772 +#: c-api/typeobj.rst:1814 msgid "An optional pointer to a \"descriptor get\" function." msgstr "" -#: c-api/typeobj.rst:1790 c-api/typeobj.rst:1884 c-api/typeobj.rst:1908 +#: c-api/typeobj.rst:1832 c-api/typeobj.rst:1926 c-api/typeobj.rst:1950 msgid "The function signature is::" msgstr "" -#: c-api/typeobj.rst:1776 +#: c-api/typeobj.rst:1818 msgid "PyObject * tp_descr_get(PyObject *self, PyObject *obj, PyObject *type);" msgstr "" -#: c-api/typeobj.rst:1787 +#: c-api/typeobj.rst:1829 msgid "" "An optional pointer to a function for setting and deleting a descriptor's " "value." msgstr "" -#: c-api/typeobj.rst:1792 +#: c-api/typeobj.rst:1834 msgid "int tp_descr_set(PyObject *self, PyObject *obj, PyObject *value);" msgstr "" -#: c-api/typeobj.rst:1794 +#: c-api/typeobj.rst:1836 msgid "The *value* argument is set to ``NULL`` to delete the value." msgstr "" -#: c-api/typeobj.rst:1805 +#: c-api/typeobj.rst:1847 msgid "" "While this field is still supported, :c:macro:`Py_TPFLAGS_MANAGED_DICT` " "should be used instead, if at all possible." msgstr "" -#: c-api/typeobj.rst:1808 +#: c-api/typeobj.rst:1850 msgid "" "If the instances of this type have a dictionary containing instance " "variables, this field is non-zero and contains the offset in the instances " @@ -2801,19 +2863,19 @@ msgid "" "func:`PyObject_GenericGetAttr`." msgstr "" -#: c-api/typeobj.rst:1813 +#: c-api/typeobj.rst:1855 msgid "" "Do not confuse this field with :c:member:`~PyTypeObject.tp_dict`; that is " "the dictionary for attributes of the type object itself." msgstr "" -#: c-api/typeobj.rst:1816 +#: c-api/typeobj.rst:1858 msgid "" "The value specifies the offset of the dictionary from the start of the " "instance structure." msgstr "" -#: c-api/typeobj.rst:1818 +#: c-api/typeobj.rst:1860 msgid "" "The :c:member:`~PyTypeObject.tp_dictoffset` should be regarded as write-" "only. To get the pointer to the dictionary call :c:func:" @@ -2822,13 +2884,13 @@ msgid "" "to call :c:func:`PyObject_GetAttr` when accessing an attribute on the object." msgstr "" -#: c-api/typeobj.rst:1824 +#: c-api/typeobj.rst:1866 msgid "" -"It is an error to set both the :c:macro:`Py_TPFLAGS_MANAGED_WEAKREF` bit " -"and :c:member:`~PyTypeObject.tp_dictoffset`." +"It is an error to set both the :c:macro:`Py_TPFLAGS_MANAGED_DICT` bit and :c:" +"member:`~PyTypeObject.tp_dictoffset`." msgstr "" -#: c-api/typeobj.rst:1829 +#: c-api/typeobj.rst:1871 msgid "" "This field is inherited by subtypes. A subtype should not override this " "offset; doing so could be unsafe, if C code tries to access the dictionary " @@ -2836,25 +2898,25 @@ msgid "" "`Py_TPFLAGS_MANAGED_DICT`." msgstr "" -#: c-api/typeobj.rst:1836 +#: c-api/typeobj.rst:1878 msgid "" "This slot has no default. For :ref:`static types `, if the " "field is ``NULL`` then no :attr:`~object.__dict__` gets created for " "instances." msgstr "" -#: c-api/typeobj.rst:1839 +#: c-api/typeobj.rst:1881 msgid "" "If the :c:macro:`Py_TPFLAGS_MANAGED_DICT` bit is set in the :c:member:" "`~PyTypeObject.tp_dict` field, then :c:member:`~PyTypeObject.tp_dictoffset` " "will be set to ``-1``, to indicate that it is unsafe to use this field." msgstr "" -#: c-api/typeobj.rst:1847 +#: c-api/typeobj.rst:1889 msgid "An optional pointer to an instance initialization function." msgstr "" -#: c-api/typeobj.rst:1849 +#: c-api/typeobj.rst:1891 msgid "" "This function corresponds to the :meth:`~object.__init__` method of " "classes. Like :meth:`!__init__`, it is possible to create an instance " @@ -2862,18 +2924,18 @@ msgid "" "instance by calling its :meth:`!__init__` method again." msgstr "" -#: c-api/typeobj.rst:1856 +#: c-api/typeobj.rst:1898 msgid "int tp_init(PyObject *self, PyObject *args, PyObject *kwds);" msgstr "" -#: c-api/typeobj.rst:1858 +#: c-api/typeobj.rst:1900 msgid "" "The self argument is the instance to be initialized; the *args* and *kwds* " "arguments represent positional and keyword arguments of the call to :meth:" "`~object.__init__`." msgstr "" -#: c-api/typeobj.rst:1862 +#: c-api/typeobj.rst:1904 msgid "" "The :c:member:`~PyTypeObject.tp_init` function, if not ``NULL``, is called " "when an instance is created normally by calling its type, after the type's :" @@ -2885,52 +2947,52 @@ msgid "" "subtype's :c:member:`~PyTypeObject.tp_init` is called." msgstr "" -#: c-api/typeobj.rst:1869 +#: c-api/typeobj.rst:1911 msgid "Returns ``0`` on success, ``-1`` and sets an exception on error." msgstr "" -#: c-api/typeobj.rst:1877 +#: c-api/typeobj.rst:1919 msgid "" "For :ref:`static types ` this field does not have a default." msgstr "" -#: c-api/typeobj.rst:1882 +#: c-api/typeobj.rst:1924 msgid "An optional pointer to an instance allocation function." msgstr "" -#: c-api/typeobj.rst:1886 +#: c-api/typeobj.rst:1928 msgid "PyObject *tp_alloc(PyTypeObject *self, Py_ssize_t nitems);" msgstr "" -#: c-api/typeobj.rst:1890 +#: c-api/typeobj.rst:1932 msgid "" "This field is inherited by static subtypes, but not by dynamic subtypes " "(subtypes created by a class statement)." msgstr "" -#: c-api/typeobj.rst:1895 +#: c-api/typeobj.rst:1937 msgid "" "For dynamic subtypes, this field is always set to :c:func:" "`PyType_GenericAlloc`, to force a standard heap allocation strategy." msgstr "" -#: c-api/typeobj.rst:1899 +#: c-api/typeobj.rst:1941 msgid "" "For static subtypes, :c:data:`PyBaseObject_Type` uses :c:func:" "`PyType_GenericAlloc`. That is the recommended value for all statically " "defined types." msgstr "" -#: c-api/typeobj.rst:1906 +#: c-api/typeobj.rst:1948 msgid "An optional pointer to an instance creation function." msgstr "" -#: c-api/typeobj.rst:1910 +#: c-api/typeobj.rst:1952 msgid "" "PyObject *tp_new(PyTypeObject *subtype, PyObject *args, PyObject *kwds);" msgstr "" -#: c-api/typeobj.rst:1912 +#: c-api/typeobj.rst:1954 msgid "" "The *subtype* argument is the type of the object being created; the *args* " "and *kwds* arguments represent positional and keyword arguments of the call " @@ -2939,7 +3001,7 @@ msgid "" "that type (but not an unrelated type)." msgstr "" -#: c-api/typeobj.rst:1918 +#: c-api/typeobj.rst:1960 msgid "" "The :c:member:`~PyTypeObject.tp_new` function should call ``subtype-" ">tp_alloc(subtype, nitems)`` to allocate space for the object, and then do " @@ -2951,20 +3013,20 @@ msgid "" "be deferred to :c:member:`~PyTypeObject.tp_init`." msgstr "" -#: c-api/typeobj.rst:1926 +#: c-api/typeobj.rst:1968 msgid "" "Set the :c:macro:`Py_TPFLAGS_DISALLOW_INSTANTIATION` flag to disallow " "creating instances of the type in Python." msgstr "" -#: c-api/typeobj.rst:1931 +#: c-api/typeobj.rst:1973 msgid "" "This field is inherited by subtypes, except it is not inherited by :ref:" "`static types ` whose :c:member:`~PyTypeObject.tp_base` is " "``NULL`` or ``&PyBaseObject_Type``." msgstr "" -#: c-api/typeobj.rst:1937 +#: c-api/typeobj.rst:1979 msgid "" "For :ref:`static types ` this field has no default. This means " "if the slot is defined as ``NULL``, the type cannot be called to create new " @@ -2972,44 +3034,44 @@ msgid "" "factory function." msgstr "" -#: c-api/typeobj.rst:1945 +#: c-api/typeobj.rst:1987 msgid "" "An optional pointer to an instance deallocation function. Its signature is::" msgstr "" -#: c-api/typeobj.rst:1947 +#: c-api/typeobj.rst:1989 msgid "void tp_free(void *self);" msgstr "" -#: c-api/typeobj.rst:1949 +#: c-api/typeobj.rst:1991 msgid "" "An initializer that is compatible with this signature is :c:func:" "`PyObject_Free`." msgstr "" -#: c-api/typeobj.rst:1953 +#: c-api/typeobj.rst:1995 msgid "" "This field is inherited by static subtypes, but not by dynamic subtypes " "(subtypes created by a class statement)" msgstr "" -#: c-api/typeobj.rst:1958 +#: c-api/typeobj.rst:2000 msgid "" "In dynamic subtypes, this field is set to a deallocator suitable to match :c:" "func:`PyType_GenericAlloc` and the value of the :c:macro:" "`Py_TPFLAGS_HAVE_GC` flag bit." msgstr "" -#: c-api/typeobj.rst:1962 +#: c-api/typeobj.rst:2004 msgid "" "For static subtypes, :c:data:`PyBaseObject_Type` uses :c:func:`PyObject_Del`." msgstr "" -#: c-api/typeobj.rst:1967 +#: c-api/typeobj.rst:2009 msgid "An optional pointer to a function called by the garbage collector." msgstr "" -#: c-api/typeobj.rst:1969 +#: c-api/typeobj.rst:2011 msgid "" "The garbage collector needs to know whether a particular object is " "collectible or not. Normally, it is sufficient to look at the object's " @@ -3021,91 +3083,91 @@ msgid "" "instance. The signature is::" msgstr "" -#: c-api/typeobj.rst:1977 +#: c-api/typeobj.rst:2019 msgid "int tp_is_gc(PyObject *self);" msgstr "" -#: c-api/typeobj.rst:1979 +#: c-api/typeobj.rst:2021 msgid "" "(The only example of this are types themselves. The metatype, :c:data:" "`PyType_Type`, defines this function to distinguish between statically and :" "ref:`dynamically allocated types `.)" msgstr "" -#: c-api/typeobj.rst:1989 +#: c-api/typeobj.rst:2031 msgid "" "This slot has no default. If this field is ``NULL``, :c:macro:" "`Py_TPFLAGS_HAVE_GC` is used as the functional equivalent." msgstr "" -#: c-api/typeobj.rst:1995 +#: c-api/typeobj.rst:2037 msgid "Tuple of base types." msgstr "" -#: c-api/typeobj.rst:2021 +#: c-api/typeobj.rst:2063 msgid "" "This field should be set to ``NULL`` and treated as read-only. Python will " "fill it in when the type is :c:func:`initialized `." msgstr "" -#: c-api/typeobj.rst:2000 +#: c-api/typeobj.rst:2042 msgid "" "For dynamically created classes, the ``Py_tp_bases`` :c:type:`slot " "` can be used instead of the *bases* argument of :c:func:" "`PyType_FromSpecWithBases`. The argument form is preferred." msgstr "" -#: c-api/typeobj.rst:2007 +#: c-api/typeobj.rst:2049 msgid "" "Multiple inheritance does not work well for statically defined types. If you " "set ``tp_bases`` to a tuple, Python will not raise an error, but some slots " "will only be inherited from the first base." msgstr "" -#: c-api/typeobj.rst:2036 c-api/typeobj.rst:2070 c-api/typeobj.rst:2084 +#: c-api/typeobj.rst:2078 c-api/typeobj.rst:2112 c-api/typeobj.rst:2126 msgid "This field is not inherited." msgstr "" -#: c-api/typeobj.rst:2018 +#: c-api/typeobj.rst:2060 msgid "" "Tuple containing the expanded set of base types, starting with the type " "itself and ending with :class:`object`, in Method Resolution Order." msgstr "" -#: c-api/typeobj.rst:2026 +#: c-api/typeobj.rst:2068 msgid "" "This field is not inherited; it is calculated fresh by :c:func:" "`PyType_Ready`." msgstr "" -#: c-api/typeobj.rst:2032 +#: c-api/typeobj.rst:2074 msgid "Unused. Internal use only." msgstr "" -#: c-api/typeobj.rst:2041 +#: c-api/typeobj.rst:2083 msgid "" "A collection of subclasses. Internal use only. May be an invalid pointer." msgstr "" -#: c-api/typeobj.rst:2043 +#: c-api/typeobj.rst:2085 msgid "" "To get a list of subclasses, call the Python method :py:meth:`~type." "__subclasses__`." msgstr "" -#: c-api/typeobj.rst:2048 +#: c-api/typeobj.rst:2090 msgid "" "For some types, this field does not hold a valid :c:expr:`PyObject*`. The " "type was changed to :c:expr:`void*` to indicate this." msgstr "" -#: c-api/typeobj.rst:2058 +#: c-api/typeobj.rst:2100 msgid "" "Weak reference list head, for weak references to this type object. Not " "inherited. Internal use only." msgstr "" -#: c-api/typeobj.rst:2063 +#: c-api/typeobj.rst:2105 msgid "" "Internals detail: For the static builtin types this is always ``NULL``, even " "if weakrefs are added. Instead, the weakrefs for each are stored on " @@ -3113,25 +3175,25 @@ msgid "" "``_PyObject_GET_WEAKREFS_LISTPTR()`` macro to avoid the distinction." msgstr "" -#: c-api/typeobj.rst:2075 +#: c-api/typeobj.rst:2117 msgid "" "This field is deprecated. Use :c:member:`~PyTypeObject.tp_finalize` instead." msgstr "" -#: c-api/typeobj.rst:2080 +#: c-api/typeobj.rst:2122 msgid "Used to index into the method cache. Internal use only." msgstr "" -#: c-api/typeobj.rst:2089 +#: c-api/typeobj.rst:2131 msgid "" "An optional pointer to an instance finalization function. Its signature is::" msgstr "" -#: c-api/typeobj.rst:2091 +#: c-api/typeobj.rst:2133 msgid "void tp_finalize(PyObject *self);" msgstr "" -#: c-api/typeobj.rst:2093 +#: c-api/typeobj.rst:2135 msgid "" "If :c:member:`~PyTypeObject.tp_finalize` is set, the interpreter calls it " "once when finalizing an instance. It is called either from the garbage " @@ -3141,14 +3203,14 @@ msgid "" "object in a sane state." msgstr "" -#: c-api/typeobj.rst:2100 +#: c-api/typeobj.rst:2142 msgid "" ":c:member:`~PyTypeObject.tp_finalize` should not mutate the current " "exception status; therefore, a recommended way to write a non-trivial " "finalizer is::" msgstr "" -#: c-api/typeobj.rst:2103 +#: c-api/typeobj.rst:2145 msgid "" "static void\n" "local_finalize(PyObject *self)\n" @@ -3165,18 +3227,18 @@ msgid "" "}" msgstr "" -#: c-api/typeobj.rst:2125 +#: c-api/typeobj.rst:2167 msgid "" "Before version 3.8 it was necessary to set the :c:macro:" "`Py_TPFLAGS_HAVE_FINALIZE` flags bit in order for this field to be used. " "This is no longer required." msgstr "" -#: c-api/typeobj.rst:2129 +#: c-api/typeobj.rst:2171 msgid "\"Safe object finalization\" (:pep:`442`)" msgstr "" -#: c-api/typeobj.rst:2134 +#: c-api/typeobj.rst:2176 msgid "" "Vectorcall function to use for calls of this type object. In other words, it " "is used to implement :ref:`vectorcall ` for ``type.__call__``. " @@ -3184,65 +3246,65 @@ msgid "" "meth:`~object.__new__` and :meth:`~object.__init__` is used." msgstr "" -#: c-api/typeobj.rst:2142 +#: c-api/typeobj.rst:2184 msgid "This field is never inherited." msgstr "" -#: c-api/typeobj.rst:2144 +#: c-api/typeobj.rst:2186 msgid "(the field exists since 3.8 but it's only used since 3.9)" msgstr "" -#: c-api/typeobj.rst:2149 +#: c-api/typeobj.rst:2191 msgid "Internal. Do not use." msgstr "" -#: c-api/typeobj.rst:2157 +#: c-api/typeobj.rst:2199 msgid "Static Types" msgstr "" -#: c-api/typeobj.rst:2159 +#: c-api/typeobj.rst:2201 msgid "" "Traditionally, types defined in C code are *static*, that is, a static :c:" "type:`PyTypeObject` structure is defined directly in code and initialized " "using :c:func:`PyType_Ready`." msgstr "" -#: c-api/typeobj.rst:2163 +#: c-api/typeobj.rst:2205 msgid "" "This results in types that are limited relative to types defined in Python:" msgstr "" -#: c-api/typeobj.rst:2165 +#: c-api/typeobj.rst:2207 msgid "" "Static types are limited to one base, i.e. they cannot use multiple " "inheritance." msgstr "" -#: c-api/typeobj.rst:2167 +#: c-api/typeobj.rst:2209 msgid "" "Static type objects (but not necessarily their instances) are immutable. It " "is not possible to add or modify the type object's attributes from Python." msgstr "" -#: c-api/typeobj.rst:2169 +#: c-api/typeobj.rst:2211 msgid "" "Static type objects are shared across :ref:`sub-interpreters `, so they should not include any subinterpreter-" "specific state." msgstr "" -#: c-api/typeobj.rst:2173 +#: c-api/typeobj.rst:2215 msgid "" "Also, since :c:type:`PyTypeObject` is only part of the :ref:`Limited API " "` as an opaque struct, any extension modules using static " "types must be compiled for a specific Python minor version." msgstr "" -#: c-api/typeobj.rst:2181 +#: c-api/typeobj.rst:2223 msgid "Heap Types" msgstr "" -#: c-api/typeobj.rst:2183 +#: c-api/typeobj.rst:2225 msgid "" "An alternative to :ref:`static types ` is *heap-allocated " "types*, or *heap types* for short, which correspond closely to classes " @@ -3250,29 +3312,29 @@ msgid "" "`Py_TPFLAGS_HEAPTYPE` flag set." msgstr "" -#: c-api/typeobj.rst:2188 +#: c-api/typeobj.rst:2230 msgid "" "This is done by filling a :c:type:`PyType_Spec` structure and calling :c:" "func:`PyType_FromSpec`, :c:func:`PyType_FromSpecWithBases`, :c:func:" "`PyType_FromModuleAndSpec`, or :c:func:`PyType_FromMetaclass`." msgstr "" -#: c-api/typeobj.rst:2196 +#: c-api/typeobj.rst:2238 msgid "Number Object Structures" msgstr "" -#: c-api/typeobj.rst:2203 +#: c-api/typeobj.rst:2245 msgid "" "This structure holds pointers to the functions which an object uses to " "implement the number protocol. Each function is used by the function of " "similar name documented in the :ref:`number` section." msgstr "" -#: c-api/typeobj.rst:2533 +#: c-api/typeobj.rst:2575 msgid "Here is the structure definition::" msgstr "" -#: c-api/typeobj.rst:2211 +#: c-api/typeobj.rst:2253 msgid "" "typedef struct {\n" " binaryfunc nb_add;\n" @@ -3318,7 +3380,7 @@ msgid "" "} PyNumberMethods;" msgstr "" -#: c-api/typeobj.rst:2256 +#: c-api/typeobj.rst:2298 msgid "" "Binary and ternary functions must check the type of all their operands, and " "implement the necessary conversions (at least one of the operands is an " @@ -3328,31 +3390,31 @@ msgid "" "and set an exception." msgstr "" -#: c-api/typeobj.rst:2265 +#: c-api/typeobj.rst:2307 msgid "" "The :c:member:`~PyNumberMethods.nb_reserved` field should always be " "``NULL``. It was previously called :c:member:`!nb_long`, and was renamed in " "Python 3.0.1." msgstr "" -#: c-api/typeobj.rst:2310 +#: c-api/typeobj.rst:2352 msgid "Mapping Object Structures" msgstr "" -#: c-api/typeobj.rst:2317 +#: c-api/typeobj.rst:2359 msgid "" "This structure holds pointers to the functions which an object uses to " "implement the mapping protocol. It has three members:" msgstr "" -#: c-api/typeobj.rst:2322 +#: c-api/typeobj.rst:2364 msgid "" "This function is used by :c:func:`PyMapping_Size` and :c:func:" "`PyObject_Size`, and has the same signature. This slot may be set to " "``NULL`` if the object has no defined length." msgstr "" -#: c-api/typeobj.rst:2328 +#: c-api/typeobj.rst:2370 msgid "" "This function is used by :c:func:`PyObject_GetItem` and :c:func:" "`PySequence_GetSlice`, and has the same signature as :c:func:`!" @@ -3360,7 +3422,7 @@ msgid "" "`PyMapping_Check` function to return ``1``, it can be ``NULL`` otherwise." msgstr "" -#: c-api/typeobj.rst:2336 +#: c-api/typeobj.rst:2378 msgid "" "This function is used by :c:func:`PyObject_SetItem`, :c:func:" "`PyObject_DelItem`, :c:func:`PySequence_SetSlice` and :c:func:" @@ -3370,17 +3432,17 @@ msgid "" "deletion." msgstr "" -#: c-api/typeobj.rst:2347 +#: c-api/typeobj.rst:2389 msgid "Sequence Object Structures" msgstr "" -#: c-api/typeobj.rst:2354 +#: c-api/typeobj.rst:2396 msgid "" "This structure holds pointers to the functions which an object uses to " "implement the sequence protocol." msgstr "" -#: c-api/typeobj.rst:2359 +#: c-api/typeobj.rst:2401 msgid "" "This function is used by :c:func:`PySequence_Size` and :c:func:" "`PyObject_Size`, and has the same signature. It is also used for handling " @@ -3388,21 +3450,21 @@ msgid "" "member:`~PySequenceMethods.sq_ass_item` slots." msgstr "" -#: c-api/typeobj.rst:2366 +#: c-api/typeobj.rst:2408 msgid "" "This function is used by :c:func:`PySequence_Concat` and has the same " "signature. It is also used by the ``+`` operator, after trying the numeric " "addition via the :c:member:`~PyNumberMethods.nb_add` slot." msgstr "" -#: c-api/typeobj.rst:2372 +#: c-api/typeobj.rst:2414 msgid "" "This function is used by :c:func:`PySequence_Repeat` and has the same " "signature. It is also used by the ``*`` operator, after trying numeric " "multiplication via the :c:member:`~PyNumberMethods.nb_multiply` slot." msgstr "" -#: c-api/typeobj.rst:2378 +#: c-api/typeobj.rst:2420 msgid "" "This function is used by :c:func:`PySequence_GetItem` and has the same " "signature. It is also used by :c:func:`PyObject_GetItem`, after trying the " @@ -3411,7 +3473,7 @@ msgid "" "``1``, it can be ``NULL`` otherwise." msgstr "" -#: c-api/typeobj.rst:2384 +#: c-api/typeobj.rst:2426 msgid "" "Negative indexes are handled as follows: if the :c:member:" "`~PySequenceMethods.sq_length` slot is filled, it is called and the sequence " @@ -3420,7 +3482,7 @@ msgid "" "index is passed as is to the function." msgstr "" -#: c-api/typeobj.rst:2391 +#: c-api/typeobj.rst:2433 msgid "" "This function is used by :c:func:`PySequence_SetItem` and has the same " "signature. It is also used by :c:func:`PyObject_SetItem` and :c:func:" @@ -3429,14 +3491,14 @@ msgid "" "``NULL`` if the object does not support item assignment and deletion." msgstr "" -#: c-api/typeobj.rst:2400 +#: c-api/typeobj.rst:2442 msgid "" "This function may be used by :c:func:`PySequence_Contains` and has the same " "signature. This slot may be left to ``NULL``, in this case :c:func:`!" "PySequence_Contains` simply traverses the sequence until it finds a match." msgstr "" -#: c-api/typeobj.rst:2407 +#: c-api/typeobj.rst:2449 msgid "" "This function is used by :c:func:`PySequence_InPlaceConcat` and has the same " "signature. It should modify its first operand, and return it. This slot " @@ -3446,7 +3508,7 @@ msgid "" "c:member:`~PyNumberMethods.nb_inplace_add` slot." msgstr "" -#: c-api/typeobj.rst:2416 +#: c-api/typeobj.rst:2458 msgid "" "This function is used by :c:func:`PySequence_InPlaceRepeat` and has the same " "signature. It should modify its first operand, and return it. This slot " @@ -3456,74 +3518,74 @@ msgid "" "via the :c:member:`~PyNumberMethods.nb_inplace_multiply` slot." msgstr "" -#: c-api/typeobj.rst:2427 +#: c-api/typeobj.rst:2469 msgid "Buffer Object Structures" msgstr "" -#: c-api/typeobj.rst:2435 +#: c-api/typeobj.rst:2477 msgid "" "This structure holds pointers to the functions required by the :ref:`Buffer " "protocol `. The protocol defines how an exporter object can " "expose its internal data to consumer objects." msgstr "" -#: c-api/typeobj.rst:2490 c-api/typeobj.rst:2555 c-api/typeobj.rst:2577 +#: c-api/typeobj.rst:2532 c-api/typeobj.rst:2597 c-api/typeobj.rst:2619 msgid "The signature of this function is::" msgstr "" -#: c-api/typeobj.rst:2443 +#: c-api/typeobj.rst:2485 msgid "int (PyObject *exporter, Py_buffer *view, int flags);" msgstr "" -#: c-api/typeobj.rst:2445 +#: c-api/typeobj.rst:2487 msgid "" "Handle a request to *exporter* to fill in *view* as specified by *flags*. " "Except for point (3), an implementation of this function MUST take these " "steps:" msgstr "" -#: c-api/typeobj.rst:2449 +#: c-api/typeobj.rst:2491 msgid "" "Check if the request can be met. If not, raise :exc:`BufferError`, set :c:" "expr:`view->obj` to ``NULL`` and return ``-1``." msgstr "" -#: c-api/typeobj.rst:2452 +#: c-api/typeobj.rst:2494 msgid "Fill in the requested fields." msgstr "" -#: c-api/typeobj.rst:2454 +#: c-api/typeobj.rst:2496 msgid "Increment an internal counter for the number of exports." msgstr "" -#: c-api/typeobj.rst:2456 +#: c-api/typeobj.rst:2498 msgid "" "Set :c:expr:`view->obj` to *exporter* and increment :c:expr:`view->obj`." msgstr "" -#: c-api/typeobj.rst:2458 +#: c-api/typeobj.rst:2500 msgid "Return ``0``." msgstr "" -#: c-api/typeobj.rst:2460 +#: c-api/typeobj.rst:2502 msgid "" "If *exporter* is part of a chain or tree of buffer providers, two main " "schemes can be used:" msgstr "" -#: c-api/typeobj.rst:2463 +#: c-api/typeobj.rst:2505 msgid "" "Re-export: Each member of the tree acts as the exporting object and sets :c:" "expr:`view->obj` to a new reference to itself." msgstr "" -#: c-api/typeobj.rst:2466 +#: c-api/typeobj.rst:2508 msgid "" "Redirect: The buffer request is redirected to the root object of the tree. " "Here, :c:expr:`view->obj` will be a new reference to the root object." msgstr "" -#: c-api/typeobj.rst:2470 +#: c-api/typeobj.rst:2512 msgid "" "The individual fields of *view* are described in section :ref:`Buffer " "structure `, the rules how an exporter must react to " @@ -3531,7 +3593,7 @@ msgid "" "types>`." msgstr "" -#: c-api/typeobj.rst:2475 +#: c-api/typeobj.rst:2517 msgid "" "All memory pointed to in the :c:type:`Py_buffer` structure belongs to the " "exporter and must remain valid until there are no consumers left. :c:member:" @@ -3540,23 +3602,23 @@ msgid "" "internal` are read-only for the consumer." msgstr "" -#: c-api/typeobj.rst:2482 +#: c-api/typeobj.rst:2524 msgid "" ":c:func:`PyBuffer_FillInfo` provides an easy way of exposing a simple bytes " "buffer while dealing correctly with all request types." msgstr "" -#: c-api/typeobj.rst:2485 +#: c-api/typeobj.rst:2527 msgid "" ":c:func:`PyObject_GetBuffer` is the interface for the consumer that wraps " "this function." msgstr "" -#: c-api/typeobj.rst:2492 +#: c-api/typeobj.rst:2534 msgid "void (PyObject *exporter, Py_buffer *view);" msgstr "" -#: c-api/typeobj.rst:2494 +#: c-api/typeobj.rst:2536 msgid "" "Handle a request to release the resources of the buffer. If no resources " "need to be released, :c:member:`PyBufferProcs.bf_releasebuffer` may be " @@ -3564,15 +3626,15 @@ msgid "" "these optional steps:" msgstr "" -#: c-api/typeobj.rst:2499 +#: c-api/typeobj.rst:2541 msgid "Decrement an internal counter for the number of exports." msgstr "" -#: c-api/typeobj.rst:2501 +#: c-api/typeobj.rst:2543 msgid "If the counter is ``0``, free all memory associated with *view*." msgstr "" -#: c-api/typeobj.rst:2503 +#: c-api/typeobj.rst:2545 msgid "" "The exporter MUST use the :c:member:`~Py_buffer.internal` field to keep " "track of buffer-specific resources. This field is guaranteed to remain " @@ -3580,30 +3642,30 @@ msgid "" "*view* argument." msgstr "" -#: c-api/typeobj.rst:2509 +#: c-api/typeobj.rst:2551 msgid "" "This function MUST NOT decrement :c:expr:`view->obj`, since that is done " "automatically in :c:func:`PyBuffer_Release` (this scheme is useful for " "breaking reference cycles)." msgstr "" -#: c-api/typeobj.rst:2514 +#: c-api/typeobj.rst:2556 msgid "" ":c:func:`PyBuffer_Release` is the interface for the consumer that wraps this " "function." msgstr "" -#: c-api/typeobj.rst:2522 +#: c-api/typeobj.rst:2564 msgid "Async Object Structures" msgstr "" -#: c-api/typeobj.rst:2530 +#: c-api/typeobj.rst:2572 msgid "" "This structure holds pointers to the functions required to implement :term:" "`awaitable` and :term:`asynchronous iterator` objects." msgstr "" -#: c-api/typeobj.rst:2535 +#: c-api/typeobj.rst:2577 msgid "" "typedef struct {\n" " unaryfunc am_await;\n" @@ -3613,61 +3675,61 @@ msgid "" "} PyAsyncMethods;" msgstr "" -#: c-api/typeobj.rst:2546 +#: c-api/typeobj.rst:2588 msgid "PyObject *am_await(PyObject *self);" msgstr "" -#: c-api/typeobj.rst:2548 +#: c-api/typeobj.rst:2590 msgid "" "The returned object must be an :term:`iterator`, i.e. :c:func:`PyIter_Check` " "must return ``1`` for it." msgstr "" -#: c-api/typeobj.rst:2551 +#: c-api/typeobj.rst:2593 msgid "" "This slot may be set to ``NULL`` if an object is not an :term:`awaitable`." msgstr "" -#: c-api/typeobj.rst:2557 +#: c-api/typeobj.rst:2599 msgid "PyObject *am_aiter(PyObject *self);" msgstr "" -#: c-api/typeobj.rst:2559 +#: c-api/typeobj.rst:2601 msgid "" "Must return an :term:`asynchronous iterator` object. See :meth:`~object." "__anext__` for details." msgstr "" -#: c-api/typeobj.rst:2562 +#: c-api/typeobj.rst:2604 msgid "" "This slot may be set to ``NULL`` if an object does not implement " "asynchronous iteration protocol." msgstr "" -#: c-api/typeobj.rst:2569 +#: c-api/typeobj.rst:2611 msgid "PyObject *am_anext(PyObject *self);" msgstr "" -#: c-api/typeobj.rst:2571 +#: c-api/typeobj.rst:2613 msgid "" "Must return an :term:`awaitable` object. See :meth:`~object.__anext__` for " "details. This slot may be set to ``NULL``." msgstr "" -#: c-api/typeobj.rst:2579 +#: c-api/typeobj.rst:2621 msgid "PySendResult am_send(PyObject *self, PyObject *arg, PyObject **result);" msgstr "" -#: c-api/typeobj.rst:2581 +#: c-api/typeobj.rst:2623 msgid "" "See :c:func:`PyIter_Send` for details. This slot may be set to ``NULL``." msgstr "" -#: c-api/typeobj.rst:2590 +#: c-api/typeobj.rst:2632 msgid "Slot Type typedefs" msgstr "" -#: c-api/typeobj.rst:2594 +#: c-api/typeobj.rst:2636 msgid "" "The purpose of this function is to separate memory allocation from memory " "initialization. It should return a pointer to a block of memory of adequate " @@ -3681,80 +3743,80 @@ msgid "" "length of the block should be :c:member:`~PyTypeObject.tp_basicsize`." msgstr "" -#: c-api/typeobj.rst:2604 +#: c-api/typeobj.rst:2646 msgid "" "This function should not do any other instance initialization, not even to " "allocate additional memory; that should be done by :c:member:`~PyTypeObject." "tp_new`." msgstr "" -#: c-api/typeobj.rst:2611 +#: c-api/typeobj.rst:2653 msgid "See :c:member:`~PyTypeObject.tp_free`." msgstr "" -#: c-api/typeobj.rst:2615 +#: c-api/typeobj.rst:2657 msgid "See :c:member:`~PyTypeObject.tp_new`." msgstr "" -#: c-api/typeobj.rst:2619 +#: c-api/typeobj.rst:2661 msgid "See :c:member:`~PyTypeObject.tp_init`." msgstr "" -#: c-api/typeobj.rst:2623 +#: c-api/typeobj.rst:2665 msgid "See :c:member:`~PyTypeObject.tp_repr`." msgstr "" -#: c-api/typeobj.rst:2636 +#: c-api/typeobj.rst:2678 msgid "Return the value of the named attribute for the object." msgstr "" -#: c-api/typeobj.rst:2642 +#: c-api/typeobj.rst:2684 msgid "" "Set the value of the named attribute for the object. The value argument is " "set to ``NULL`` to delete the attribute." msgstr "" -#: c-api/typeobj.rst:2638 +#: c-api/typeobj.rst:2680 msgid "See :c:member:`~PyTypeObject.tp_getattro`." msgstr "" -#: c-api/typeobj.rst:2645 +#: c-api/typeobj.rst:2687 msgid "See :c:member:`~PyTypeObject.tp_setattro`." msgstr "" -#: c-api/typeobj.rst:2649 +#: c-api/typeobj.rst:2691 msgid "See :c:member:`~PyTypeObject.tp_descr_get`." msgstr "" -#: c-api/typeobj.rst:2653 +#: c-api/typeobj.rst:2695 msgid "See :c:member:`~PyTypeObject.tp_descr_set`." msgstr "" -#: c-api/typeobj.rst:2657 +#: c-api/typeobj.rst:2699 msgid "See :c:member:`~PyTypeObject.tp_hash`." msgstr "" -#: c-api/typeobj.rst:2661 +#: c-api/typeobj.rst:2703 msgid "See :c:member:`~PyTypeObject.tp_richcompare`." msgstr "" -#: c-api/typeobj.rst:2665 +#: c-api/typeobj.rst:2707 msgid "See :c:member:`~PyTypeObject.tp_iter`." msgstr "" -#: c-api/typeobj.rst:2669 +#: c-api/typeobj.rst:2711 msgid "See :c:member:`~PyTypeObject.tp_iternext`." msgstr "" -#: c-api/typeobj.rst:2683 +#: c-api/typeobj.rst:2725 msgid "See :c:member:`~PyAsyncMethods.am_send`." msgstr "" -#: c-api/typeobj.rst:2699 +#: c-api/typeobj.rst:2741 msgid "Examples" msgstr "" -#: c-api/typeobj.rst:2701 +#: c-api/typeobj.rst:2743 msgid "" "The following are simple examples of Python type definitions. They include " "common usage you may encounter. Some demonstrate tricky corner cases. For " @@ -3762,11 +3824,11 @@ msgid "" "and :ref:`new-types-topics`." msgstr "" -#: c-api/typeobj.rst:2706 +#: c-api/typeobj.rst:2748 msgid "A basic :ref:`static type `::" msgstr "" -#: c-api/typeobj.rst:2708 +#: c-api/typeobj.rst:2750 msgid "" "typedef struct {\n" " PyObject_HEAD\n" @@ -3784,13 +3846,13 @@ msgid "" "};" msgstr "" -#: c-api/typeobj.rst:2723 +#: c-api/typeobj.rst:2765 msgid "" "You may also find older code (especially in the CPython code base) with a " "more verbose initializer::" msgstr "" -#: c-api/typeobj.rst:2726 +#: c-api/typeobj.rst:2768 msgid "" "static PyTypeObject MyObject_Type = {\n" " PyVarObject_HEAD_INIT(NULL, 0)\n" @@ -3834,11 +3896,11 @@ msgid "" "};" msgstr "" -#: c-api/typeobj.rst:2767 +#: c-api/typeobj.rst:2809 msgid "A type that supports weakrefs, instance dicts, and hashing::" msgstr "" -#: c-api/typeobj.rst:2769 +#: c-api/typeobj.rst:2811 msgid "" "typedef struct {\n" " PyObject_HEAD\n" @@ -3864,14 +3926,14 @@ msgid "" "};" msgstr "" -#: c-api/typeobj.rst:2792 +#: c-api/typeobj.rst:2834 msgid "" "A str subclass that cannot be subclassed and cannot be called to create " "instances (e.g. uses a separate factory func) using :c:macro:" "`Py_TPFLAGS_DISALLOW_INSTANTIATION` flag::" msgstr "" -#: c-api/typeobj.rst:2796 +#: c-api/typeobj.rst:2838 msgid "" "typedef struct {\n" " PyUnicodeObject raw;\n" @@ -3889,12 +3951,12 @@ msgid "" "};" msgstr "" -#: c-api/typeobj.rst:2811 +#: c-api/typeobj.rst:2853 msgid "" "The simplest :ref:`static type ` with fixed-length instances::" msgstr "" -#: c-api/typeobj.rst:2813 +#: c-api/typeobj.rst:2855 msgid "" "typedef struct {\n" " PyObject_HEAD\n" @@ -3906,13 +3968,13 @@ msgid "" "};" msgstr "" -#: c-api/typeobj.rst:2822 +#: c-api/typeobj.rst:2864 msgid "" "The simplest :ref:`static type ` with variable-length " "instances::" msgstr "" -#: c-api/typeobj.rst:2824 +#: c-api/typeobj.rst:2866 msgid "" "typedef struct {\n" " PyObject_VAR_HEAD\n" @@ -3927,14 +3989,14 @@ msgid "" "};" msgstr "" -#: c-api/typeobj.rst:887 +#: c-api/typeobj.rst:929 msgid "built-in function" msgstr "" -#: c-api/typeobj.rst:822 +#: c-api/typeobj.rst:864 msgid "repr" msgstr "" -#: c-api/typeobj.rst:887 +#: c-api/typeobj.rst:929 msgid "hash" msgstr "" diff --git a/c-api/unicode.po b/c-api/unicode.po index 3b5a166f0..3bbe7c738 100644 --- a/c-api/unicode.po +++ b/c-api/unicode.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -252,70 +252,65 @@ msgstr "" #: c-api/unicode.rst:257 msgid "" -"Return ``1`` or ``0`` depending on whether *ch* is a printable character. " -"Nonprintable characters are those characters defined in the Unicode " -"character database as \"Other\" or \"Separator\", excepting the ASCII space " -"(0x20) which is considered printable. (Note that printable characters in " -"this context are those which should not be escaped when :func:`repr` is " -"invoked on a string. It has no bearing on the handling of strings written " -"to :data:`sys.stdout` or :data:`sys.stderr`.)" +"Return ``1`` or ``0`` depending on whether *ch* is a printable character, in " +"the sense of :meth:`str.isprintable`." msgstr "" -#: c-api/unicode.rst:266 +#: c-api/unicode.rst:261 msgid "These APIs can be used for fast direct character conversions:" msgstr "" -#: c-api/unicode.rst:271 +#: c-api/unicode.rst:266 msgid "Return the character *ch* converted to lower case." msgstr "" -#: c-api/unicode.rst:281 c-api/unicode.rst:289 +#: c-api/unicode.rst:276 c-api/unicode.rst:284 msgid "This function uses simple case mappings." msgstr "" -#: c-api/unicode.rst:279 +#: c-api/unicode.rst:274 msgid "Return the character *ch* converted to upper case." msgstr "" -#: c-api/unicode.rst:287 +#: c-api/unicode.rst:282 msgid "Return the character *ch* converted to title case." msgstr "" -#: c-api/unicode.rst:295 +#: c-api/unicode.rst:290 msgid "" "Return the character *ch* converted to a decimal positive integer. Return " "``-1`` if this is not possible. This function does not raise exceptions." msgstr "" -#: c-api/unicode.rst:301 +#: c-api/unicode.rst:296 msgid "" "Return the character *ch* converted to a single digit integer. Return ``-1`` " "if this is not possible. This function does not raise exceptions." msgstr "" -#: c-api/unicode.rst:307 +#: c-api/unicode.rst:302 msgid "" "Return the character *ch* converted to a double. Return ``-1.0`` if this is " "not possible. This function does not raise exceptions." msgstr "" -#: c-api/unicode.rst:311 +#: c-api/unicode.rst:306 msgid "These APIs can be used to work with surrogates:" msgstr "" -#: c-api/unicode.rst:315 +#: c-api/unicode.rst:310 msgid "Check if *ch* is a surrogate (``0xD800 <= ch <= 0xDFFF``)." msgstr "" -#: c-api/unicode.rst:319 +#: c-api/unicode.rst:314 msgid "Check if *ch* is a high surrogate (``0xD800 <= ch <= 0xDBFF``)." msgstr "" -#: c-api/unicode.rst:323 +#: c-api/unicode.rst:318 msgid "Check if *ch* is a low surrogate (``0xDC00 <= ch <= 0xDFFF``)." msgstr "" -#: c-api/unicode.rst:327 +#: c-api/unicode.rst:322 msgid "" "Join two surrogate characters and return a single :c:type:`Py_UCS4` value. " "*high* and *low* are respectively the leading and trailing surrogates in a " @@ -323,34 +318,34 @@ msgid "" "be in the range [0xDC00; 0xDFFF]." msgstr "" -#: c-api/unicode.rst:334 +#: c-api/unicode.rst:329 msgid "Creating and accessing Unicode strings" msgstr "" -#: c-api/unicode.rst:336 +#: c-api/unicode.rst:331 msgid "" "To create Unicode objects and access their basic sequence properties, use " "these APIs:" msgstr "" -#: c-api/unicode.rst:341 +#: c-api/unicode.rst:336 msgid "" "Create a new Unicode object. *maxchar* should be the true maximum code " "point to be placed in the string. As an approximation, it can be rounded up " "to the nearest value in the sequence 127, 255, 65535, 1114111." msgstr "" -#: c-api/unicode.rst:345 +#: c-api/unicode.rst:340 msgid "" "This is the recommended way to allocate a new Unicode object. Objects " "created using this function are not resizable." msgstr "" -#: c-api/unicode.rst:348 +#: c-api/unicode.rst:343 msgid "On error, set an exception and return ``NULL``." msgstr "" -#: c-api/unicode.rst:356 +#: c-api/unicode.rst:351 msgid "" "Create a new Unicode object with the given *kind* (possible values are :c:" "macro:`PyUnicode_1BYTE_KIND` etc., as returned by :c:func:" @@ -358,7 +353,7 @@ msgid "" "1, 2 or 4 bytes per character, as given by the kind." msgstr "" -#: c-api/unicode.rst:361 +#: c-api/unicode.rst:356 msgid "" "If necessary, the input *buffer* is copied and transformed into the " "canonical representation. For example, if the *buffer* is a UCS4 string (:c:" @@ -366,7 +361,7 @@ msgid "" "range, it will be transformed into UCS1 (:c:macro:`PyUnicode_1BYTE_KIND`)." msgstr "" -#: c-api/unicode.rst:372 +#: c-api/unicode.rst:367 msgid "" "Create a Unicode object from the char buffer *str*. The bytes will be " "interpreted as being UTF-8 encoded. The buffer is copied into the new " @@ -374,29 +369,29 @@ msgid "" "data is not allowed." msgstr "" -#: c-api/unicode.rst:378 +#: c-api/unicode.rst:373 msgid "This function raises :exc:`SystemError` when:" msgstr "" -#: c-api/unicode.rst:380 +#: c-api/unicode.rst:375 msgid "*size* < 0," msgstr "" -#: c-api/unicode.rst:381 +#: c-api/unicode.rst:376 msgid "*str* is ``NULL`` and *size* > 0" msgstr "" -#: c-api/unicode.rst:383 +#: c-api/unicode.rst:378 msgid "*str* == ``NULL`` with *size* > 0 is not allowed anymore." msgstr "" -#: c-api/unicode.rst:389 +#: c-api/unicode.rst:384 msgid "" "Create a Unicode object from a UTF-8 encoded null-terminated char buffer " "*str*." msgstr "" -#: c-api/unicode.rst:395 +#: c-api/unicode.rst:390 msgid "" "Take a C :c:func:`printf`\\ -style *format* string and a variable number of " "arguments, calculate the size of the resulting Python Unicode string and " @@ -405,23 +400,23 @@ msgid "" "*format* ASCII-encoded string." msgstr "" -#: c-api/unicode.rst:401 +#: c-api/unicode.rst:396 msgid "" "A conversion specifier contains two or more characters and has the following " "components, which must occur in this order:" msgstr "" -#: c-api/unicode.rst:404 +#: c-api/unicode.rst:399 msgid "The ``'%'`` character, which marks the start of the specifier." msgstr "" -#: c-api/unicode.rst:406 +#: c-api/unicode.rst:401 msgid "" "Conversion flags (optional), which affect the result of some conversion " "types." msgstr "" -#: c-api/unicode.rst:409 +#: c-api/unicode.rst:404 msgid "" "Minimum field width (optional). If specified as an ``'*'`` (asterisk), the " "actual width is given in the next argument, which must be of type :c:expr:" @@ -429,7 +424,7 @@ msgid "" "optional precision." msgstr "" -#: c-api/unicode.rst:414 +#: c-api/unicode.rst:409 msgid "" "Precision (optional), given as a ``'.'`` (dot) followed by the precision. If " "specified as ``'*'`` (an asterisk), the actual precision is given in the " @@ -437,268 +432,268 @@ msgid "" "comes after the precision." msgstr "" -#: c-api/unicode.rst:419 +#: c-api/unicode.rst:414 msgid "Length modifier (optional)." msgstr "" -#: c-api/unicode.rst:421 +#: c-api/unicode.rst:416 msgid "Conversion type." msgstr "" -#: c-api/unicode.rst:423 +#: c-api/unicode.rst:418 msgid "The conversion flag characters are:" msgstr "" -#: c-api/unicode.rst:428 +#: c-api/unicode.rst:423 msgid "Flag" msgstr "" -#: c-api/unicode.rst:428 +#: c-api/unicode.rst:423 msgid "Meaning" msgstr "" -#: c-api/unicode.rst:430 +#: c-api/unicode.rst:425 msgid "``0``" msgstr "" -#: c-api/unicode.rst:430 +#: c-api/unicode.rst:425 msgid "The conversion will be zero padded for numeric values." msgstr "" -#: c-api/unicode.rst:432 +#: c-api/unicode.rst:427 msgid "``-``" msgstr "" -#: c-api/unicode.rst:432 +#: c-api/unicode.rst:427 msgid "" "The converted value is left adjusted (overrides the ``0`` flag if both are " "given)." msgstr "" -#: c-api/unicode.rst:436 +#: c-api/unicode.rst:431 msgid "" "The length modifiers for following integer conversions (``d``, ``i``, ``o``, " "``u``, ``x``, or ``X``) specify the type of the argument (:c:expr:`int` by " "default):" msgstr "" -#: c-api/unicode.rst:443 +#: c-api/unicode.rst:438 msgid "Modifier" msgstr "" -#: c-api/unicode.rst:443 +#: c-api/unicode.rst:438 msgid "Types" msgstr "" -#: c-api/unicode.rst:445 +#: c-api/unicode.rst:440 msgid "``l``" msgstr "" -#: c-api/unicode.rst:445 +#: c-api/unicode.rst:440 msgid ":c:expr:`long` or :c:expr:`unsigned long`" msgstr "" -#: c-api/unicode.rst:447 +#: c-api/unicode.rst:442 msgid "``ll``" msgstr "" -#: c-api/unicode.rst:447 +#: c-api/unicode.rst:442 msgid ":c:expr:`long long` or :c:expr:`unsigned long long`" msgstr "" -#: c-api/unicode.rst:449 +#: c-api/unicode.rst:444 msgid "``j``" msgstr "" -#: c-api/unicode.rst:449 +#: c-api/unicode.rst:444 msgid ":c:type:`intmax_t` or :c:type:`uintmax_t`" msgstr "" -#: c-api/unicode.rst:451 +#: c-api/unicode.rst:446 msgid "``z``" msgstr "" -#: c-api/unicode.rst:451 +#: c-api/unicode.rst:446 msgid ":c:type:`size_t` or :c:type:`ssize_t`" msgstr "" -#: c-api/unicode.rst:453 +#: c-api/unicode.rst:448 msgid "``t``" msgstr "" -#: c-api/unicode.rst:453 +#: c-api/unicode.rst:448 msgid ":c:type:`ptrdiff_t`" msgstr "" -#: c-api/unicode.rst:456 +#: c-api/unicode.rst:451 msgid "" "The length modifier ``l`` for following conversions ``s`` or ``V`` specify " "that the type of the argument is :c:expr:`const wchar_t*`." msgstr "" -#: c-api/unicode.rst:459 +#: c-api/unicode.rst:454 msgid "The conversion specifiers are:" msgstr "" -#: c-api/unicode.rst:465 +#: c-api/unicode.rst:460 msgid "Conversion Specifier" msgstr "" -#: c-api/unicode.rst:466 +#: c-api/unicode.rst:461 msgid "Type" msgstr "" -#: c-api/unicode.rst:467 +#: c-api/unicode.rst:462 msgid "Comment" msgstr "" -#: c-api/unicode.rst:469 +#: c-api/unicode.rst:464 msgid "``%``" msgstr "" -#: c-api/unicode.rst:470 +#: c-api/unicode.rst:465 msgid "*n/a*" msgstr "" -#: c-api/unicode.rst:471 +#: c-api/unicode.rst:466 msgid "The literal ``%`` character." msgstr "" -#: c-api/unicode.rst:473 +#: c-api/unicode.rst:468 msgid "``d``, ``i``" msgstr "" -#: c-api/unicode.rst:478 c-api/unicode.rst:486 c-api/unicode.rst:490 +#: c-api/unicode.rst:473 c-api/unicode.rst:481 c-api/unicode.rst:485 msgid "Specified by the length modifier" msgstr "" -#: c-api/unicode.rst:475 +#: c-api/unicode.rst:470 msgid "The decimal representation of a signed C integer." msgstr "" -#: c-api/unicode.rst:477 +#: c-api/unicode.rst:472 msgid "``u``" msgstr "" -#: c-api/unicode.rst:479 +#: c-api/unicode.rst:474 msgid "The decimal representation of an unsigned C integer." msgstr "" -#: c-api/unicode.rst:481 +#: c-api/unicode.rst:476 msgid "``o``" msgstr "" -#: c-api/unicode.rst:483 +#: c-api/unicode.rst:478 msgid "The octal representation of an unsigned C integer." msgstr "" -#: c-api/unicode.rst:485 +#: c-api/unicode.rst:480 msgid "``x``" msgstr "" -#: c-api/unicode.rst:487 +#: c-api/unicode.rst:482 msgid "The hexadecimal representation of an unsigned C integer (lowercase)." msgstr "" -#: c-api/unicode.rst:489 +#: c-api/unicode.rst:484 msgid "``X``" msgstr "" -#: c-api/unicode.rst:491 +#: c-api/unicode.rst:486 msgid "The hexadecimal representation of an unsigned C integer (uppercase)." msgstr "" -#: c-api/unicode.rst:493 +#: c-api/unicode.rst:488 msgid "``c``" msgstr "" -#: c-api/unicode.rst:494 +#: c-api/unicode.rst:489 msgid ":c:expr:`int`" msgstr "" -#: c-api/unicode.rst:495 +#: c-api/unicode.rst:490 msgid "A single character." msgstr "" -#: c-api/unicode.rst:497 +#: c-api/unicode.rst:492 msgid "``s``" msgstr "" -#: c-api/unicode.rst:498 +#: c-api/unicode.rst:493 msgid ":c:expr:`const char*` or :c:expr:`const wchar_t*`" msgstr "" -#: c-api/unicode.rst:499 +#: c-api/unicode.rst:494 msgid "A null-terminated C character array." msgstr "" -#: c-api/unicode.rst:501 +#: c-api/unicode.rst:496 msgid "``p``" msgstr "" -#: c-api/unicode.rst:502 +#: c-api/unicode.rst:497 msgid ":c:expr:`const void*`" msgstr "" -#: c-api/unicode.rst:503 +#: c-api/unicode.rst:498 msgid "" "The hex representation of a C pointer. Mostly equivalent to " "``printf(\"%p\")`` except that it is guaranteed to start with the literal " "``0x`` regardless of what the platform's ``printf`` yields." msgstr "" -#: c-api/unicode.rst:508 +#: c-api/unicode.rst:503 msgid "``A``" msgstr "" -#: c-api/unicode.rst:513 c-api/unicode.rst:527 +#: c-api/unicode.rst:508 c-api/unicode.rst:522 msgid ":c:expr:`PyObject*`" msgstr "" -#: c-api/unicode.rst:510 +#: c-api/unicode.rst:505 msgid "The result of calling :func:`ascii`." msgstr "" -#: c-api/unicode.rst:512 +#: c-api/unicode.rst:507 msgid "``U``" msgstr "" -#: c-api/unicode.rst:514 +#: c-api/unicode.rst:509 msgid "A Unicode object." msgstr "" -#: c-api/unicode.rst:516 +#: c-api/unicode.rst:511 msgid "``V``" msgstr "" -#: c-api/unicode.rst:517 +#: c-api/unicode.rst:512 msgid ":c:expr:`PyObject*`, :c:expr:`const char*` or :c:expr:`const wchar_t*`" msgstr "" -#: c-api/unicode.rst:518 +#: c-api/unicode.rst:513 msgid "" "A Unicode object (which may be ``NULL``) and a null-terminated C character " "array as a second parameter (which will be used, if the first parameter is " "``NULL``)." msgstr "" -#: c-api/unicode.rst:522 +#: c-api/unicode.rst:517 msgid "``S``" msgstr "" -#: c-api/unicode.rst:524 +#: c-api/unicode.rst:519 msgid "The result of calling :c:func:`PyObject_Str`." msgstr "" -#: c-api/unicode.rst:526 +#: c-api/unicode.rst:521 msgid "``R``" msgstr "" -#: c-api/unicode.rst:528 +#: c-api/unicode.rst:523 msgid "The result of calling :c:func:`PyObject_Repr`." msgstr "" -#: c-api/unicode.rst:531 +#: c-api/unicode.rst:526 msgid "" "The width formatter unit is number of characters rather than bytes. The " "precision formatter unit is number of bytes or :c:type:`wchar_t` items (if " @@ -708,28 +703,28 @@ msgid "" "``PyObject*`` argument is not ``NULL``)." msgstr "" -#: c-api/unicode.rst:539 +#: c-api/unicode.rst:534 msgid "" "Unlike to C :c:func:`printf` the ``0`` flag has effect even when a precision " "is given for integer conversions (``d``, ``i``, ``u``, ``o``, ``x``, or " "``X``)." msgstr "" -#: c-api/unicode.rst:543 +#: c-api/unicode.rst:538 msgid "Support for ``\"%lld\"`` and ``\"%llu\"`` added." msgstr "" -#: c-api/unicode.rst:546 +#: c-api/unicode.rst:541 msgid "Support for ``\"%li\"``, ``\"%lli\"`` and ``\"%zi\"`` added." msgstr "" -#: c-api/unicode.rst:549 +#: c-api/unicode.rst:544 msgid "" "Support width and precision formatter for ``\"%s\"``, ``\"%A\"``, " "``\"%U\"``, ``\"%V\"``, ``\"%S\"``, ``\"%R\"`` added." msgstr "" -#: c-api/unicode.rst:553 +#: c-api/unicode.rst:548 msgid "" "Support for conversion specifiers ``o`` and ``X``. Support for length " "modifiers ``j`` and ``t``. Length modifiers are now applied to all integer " @@ -738,36 +733,36 @@ msgid "" "flag ``-``." msgstr "" -#: c-api/unicode.rst:561 +#: c-api/unicode.rst:556 msgid "" "An unrecognized format character now sets a :exc:`SystemError`. In previous " "versions it caused all the rest of the format string to be copied as-is to " "the result string, and any extra arguments discarded." msgstr "" -#: c-api/unicode.rst:568 +#: c-api/unicode.rst:563 msgid "" "Identical to :c:func:`PyUnicode_FromFormat` except that it takes exactly two " "arguments." msgstr "" -#: c-api/unicode.rst:574 +#: c-api/unicode.rst:569 msgid "" "Copy an instance of a Unicode subtype to a new true Unicode object if " "necessary. If *obj* is already a true Unicode object (not a subtype), return " "a new :term:`strong reference` to the object." msgstr "" -#: c-api/unicode.rst:578 +#: c-api/unicode.rst:573 msgid "" "Objects other than Unicode or its subtypes will cause a :exc:`TypeError`." msgstr "" -#: c-api/unicode.rst:584 +#: c-api/unicode.rst:579 msgid "Decode an encoded object *obj* to a Unicode object." msgstr "" -#: c-api/unicode.rst:586 +#: c-api/unicode.rst:581 msgid "" ":class:`bytes`, :class:`bytearray` and other :term:`bytes-like objects " "` are decoded according to the given *encoding* and using " @@ -775,27 +770,39 @@ msgid "" "interface use the default values (see :ref:`builtincodecs` for details)." msgstr "" -#: c-api/unicode.rst:592 +#: c-api/unicode.rst:587 msgid "" "All other objects, including Unicode objects, cause a :exc:`TypeError` to be " "set." msgstr "" -#: c-api/unicode.rst:595 +#: c-api/unicode.rst:590 msgid "" "The API returns ``NULL`` if there was an error. The caller is responsible " "for decref'ing the returned objects." msgstr "" -#: c-api/unicode.rst:601 +#: c-api/unicode.rst:596 +msgid "" +"Return the name of the default string encoding, ``\"utf-8\"``. See :func:" +"`sys.getdefaultencoding`." +msgstr "" + +#: c-api/unicode.rst:599 +msgid "" +"The returned string does not need to be freed, and is valid until " +"interpreter shutdown." +msgstr "" + +#: c-api/unicode.rst:605 msgid "Return the length of the Unicode object, in code points." msgstr "" -#: c-api/unicode.rst:603 +#: c-api/unicode.rst:607 msgid "On error, set an exception and return ``-1``." msgstr "" -#: c-api/unicode.rst:614 +#: c-api/unicode.rst:618 msgid "" "Copy characters from one Unicode object into another. This function " "performs character conversion when necessary and falls back to :c:func:`!" @@ -803,61 +810,61 @@ msgid "" "otherwise returns the number of copied characters." msgstr "" -#: c-api/unicode.rst:625 +#: c-api/unicode.rst:629 msgid "" "Fill a string with a character: write *fill_char* into ``unicode[start:" "start+length]``." msgstr "" -#: c-api/unicode.rst:628 +#: c-api/unicode.rst:632 msgid "" "Fail if *fill_char* is bigger than the string maximum character, or if the " "string has more than 1 reference." msgstr "" -#: c-api/unicode.rst:631 +#: c-api/unicode.rst:635 msgid "" "Return the number of written character, or return ``-1`` and raise an " "exception on error." msgstr "" -#: c-api/unicode.rst:640 +#: c-api/unicode.rst:644 msgid "" "Write a character to a string. The string must have been created through :c:" "func:`PyUnicode_New`. Since Unicode strings are supposed to be immutable, " "the string must not be shared, or have been hashed yet." msgstr "" -#: c-api/unicode.rst:644 +#: c-api/unicode.rst:648 msgid "" "This function checks that *unicode* is a Unicode object, that the index is " "not out of bounds, and that the object can be modified safely (i.e. that it " "its reference count is one)." msgstr "" -#: c-api/unicode.rst:648 +#: c-api/unicode.rst:652 msgid "Return ``0`` on success, ``-1`` on error with an exception set." msgstr "" -#: c-api/unicode.rst:655 +#: c-api/unicode.rst:659 msgid "" "Read a character from a string. This function checks that *unicode* is a " "Unicode object and the index is not out of bounds, in contrast to :c:func:" "`PyUnicode_READ_CHAR`, which performs no error checking." msgstr "" -#: c-api/unicode.rst:659 +#: c-api/unicode.rst:663 msgid "Return character on success, ``-1`` on error with an exception set." msgstr "" -#: c-api/unicode.rst:667 +#: c-api/unicode.rst:671 msgid "" "Return a substring of *unicode*, from character index *start* (included) to " "character index *end* (excluded). Negative indices are not supported. On " "error, set an exception and return ``NULL``." msgstr "" -#: c-api/unicode.rst:677 +#: c-api/unicode.rst:681 msgid "" "Copy the string *unicode* into a UCS4 buffer, including a null character, if " "*copy_null* is set. Returns ``NULL`` and sets an exception on error (in " @@ -865,7 +872,7 @@ msgid "" "*unicode*). *buffer* is returned on success." msgstr "" -#: c-api/unicode.rst:687 +#: c-api/unicode.rst:691 msgid "" "Copy the string *unicode* into a new UCS4 buffer that is allocated using :c:" "func:`PyMem_Malloc`. If this fails, ``NULL`` is returned with a :exc:" @@ -873,17 +880,17 @@ msgid "" "appended." msgstr "" -#: c-api/unicode.rst:696 +#: c-api/unicode.rst:700 msgid "Locale Encoding" msgstr "" -#: c-api/unicode.rst:698 +#: c-api/unicode.rst:702 msgid "" "The current locale encoding can be used to decode text from the operating " "system." msgstr "" -#: c-api/unicode.rst:705 +#: c-api/unicode.rst:709 msgid "" "Decode a string from UTF-8 on Android and VxWorks, or from the current " "locale encoding on other platforms. The supported error handlers are " @@ -892,21 +899,21 @@ msgid "" "null character but cannot contain embedded null characters." msgstr "" -#: c-api/unicode.rst:712 +#: c-api/unicode.rst:716 msgid "" "Use :c:func:`PyUnicode_DecodeFSDefaultAndSize` to decode a string from the :" "term:`filesystem encoding and error handler`." msgstr "" -#: c-api/unicode.rst:750 +#: c-api/unicode.rst:754 msgid "This function ignores the :ref:`Python UTF-8 Mode `." msgstr "" -#: c-api/unicode.rst:816 +#: c-api/unicode.rst:839 msgid "The :c:func:`Py_DecodeLocale` function." msgstr "" -#: c-api/unicode.rst:723 +#: c-api/unicode.rst:727 msgid "" "The function now also uses the current locale encoding for the " "``surrogateescape`` error handler, except on Android. Previously, :c:func:" @@ -914,13 +921,13 @@ msgid "" "locale encoding was used for ``strict``." msgstr "" -#: c-api/unicode.rst:732 +#: c-api/unicode.rst:736 msgid "" "Similar to :c:func:`PyUnicode_DecodeLocaleAndSize`, but compute the string " "length using :c:func:`!strlen`." msgstr "" -#: c-api/unicode.rst:740 +#: c-api/unicode.rst:744 msgid "" "Encode a Unicode object to UTF-8 on Android and VxWorks, or to the current " "locale encoding on other platforms. The supported error handlers are " @@ -929,17 +936,17 @@ msgid "" "`bytes` object. *unicode* cannot contain embedded null characters." msgstr "" -#: c-api/unicode.rst:747 +#: c-api/unicode.rst:751 msgid "" "Use :c:func:`PyUnicode_EncodeFSDefault` to encode a string to the :term:" "`filesystem encoding and error handler`." msgstr "" -#: c-api/unicode.rst:847 +#: c-api/unicode.rst:870 msgid "The :c:func:`Py_EncodeLocale` function." msgstr "" -#: c-api/unicode.rst:758 +#: c-api/unicode.rst:762 msgid "" "The function now also uses the current locale encoding for the " "``surrogateescape`` error handler, except on Android. Previously, :c:func:" @@ -947,102 +954,123 @@ msgid "" "locale encoding was used for ``strict``." msgstr "" -#: c-api/unicode.rst:767 +#: c-api/unicode.rst:771 msgid "File System Encoding" msgstr "" -#: c-api/unicode.rst:769 +#: c-api/unicode.rst:773 msgid "" "Functions encoding to and decoding from the :term:`filesystem encoding and " "error handler` (:pep:`383` and :pep:`529`)." msgstr "" -#: c-api/unicode.rst:772 +#: c-api/unicode.rst:776 msgid "" "To encode file names to :class:`bytes` during argument parsing, the " -"``\"O&\"`` converter should be used, passing :c:func:`PyUnicode_FSConverter` " -"as the conversion function:" +"``\"O&\"`` converter should be used, passing :c:func:`!" +"PyUnicode_FSConverter` as the conversion function:" +msgstr "" + +#: c-api/unicode.rst:782 +msgid "" +":ref:`PyArg_Parse\\* converter `: encode :class:`str` objects " +"-- obtained directly or through the :class:`os.PathLike` interface -- to :" +"class:`bytes` using :c:func:`PyUnicode_EncodeFSDefault`; :class:`bytes` " +"objects are output as-is. *result* must be an address of a C variable of " +"type :c:expr:`PyObject*` (or :c:expr:`PyBytesObject*`). On success, set the " +"variable to a new :term:`strong reference` to a :ref:`bytes object " +"` which must be released when it is no longer used and return " +"a non-zero value (:c:macro:`Py_CLEANUP_SUPPORTED`). Embedded null bytes are " +"not allowed in the result. On failure, return ``0`` with an exception set." msgstr "" -#: c-api/unicode.rst:778 +#: c-api/unicode.rst:794 msgid "" -"ParseTuple converter: encode :class:`str` objects -- obtained directly or " -"through the :class:`os.PathLike` interface -- to :class:`bytes` using :c:" -"func:`PyUnicode_EncodeFSDefault`; :class:`bytes` objects are output as-is. " -"*result* must be a :c:expr:`PyBytesObject*` which must be released when it " -"is no longer used." +"If *obj* is ``NULL``, the function releases a strong reference stored in the " +"variable referred by *result* and returns ``1``." msgstr "" -#: c-api/unicode.rst:803 +#: c-api/unicode.rst:826 msgid "Accepts a :term:`path-like object`." msgstr "" -#: c-api/unicode.rst:789 +#: c-api/unicode.rst:802 msgid "" "To decode file names to :class:`str` during argument parsing, the ``\"O&\"`` " -"converter should be used, passing :c:func:`PyUnicode_FSDecoder` as the " +"converter should be used, passing :c:func:`!PyUnicode_FSDecoder` as the " "conversion function:" msgstr "" -#: c-api/unicode.rst:795 +#: c-api/unicode.rst:808 +msgid "" +":ref:`PyArg_Parse\\* converter `: decode :class:`bytes` objects " +"-- obtained either directly or indirectly through the :class:`os.PathLike` " +"interface -- to :class:`str` using :c:func:" +"`PyUnicode_DecodeFSDefaultAndSize`; :class:`str` objects are output as-is. " +"*result* must be an address of a C variable of type :c:expr:`PyObject*` (or :" +"c:expr:`PyUnicodeObject*`). On success, set the variable to a new :term:" +"`strong reference` to a :ref:`Unicode object ` which must be " +"released when it is no longer used and return a non-zero value (:c:macro:" +"`Py_CLEANUP_SUPPORTED`). Embedded null characters are not allowed in the " +"result. On failure, return ``0`` with an exception set." +msgstr "" + +#: c-api/unicode.rst:821 msgid "" -"ParseTuple converter: decode :class:`bytes` objects -- obtained either " -"directly or indirectly through the :class:`os.PathLike` interface -- to :" -"class:`str` using :c:func:`PyUnicode_DecodeFSDefaultAndSize`; :class:`str` " -"objects are output as-is. *result* must be a :c:expr:`PyUnicodeObject*` " -"which must be released when it is no longer used." +"If *obj* is ``NULL``, release the strong reference to the object referred to " +"by *result* and return ``1``." msgstr "" -#: c-api/unicode.rst:809 +#: c-api/unicode.rst:832 msgid "Decode a string from the :term:`filesystem encoding and error handler`." msgstr "" -#: c-api/unicode.rst:811 +#: c-api/unicode.rst:834 msgid "" "If you need to decode a string from the current locale encoding, use :c:func:" "`PyUnicode_DecodeLocaleAndSize`." msgstr "" -#: c-api/unicode.rst:831 c-api/unicode.rst:851 +#: c-api/unicode.rst:854 c-api/unicode.rst:874 msgid "" "The :term:`filesystem error handler ` " "is now used." msgstr "" -#: c-api/unicode.rst:825 +#: c-api/unicode.rst:848 msgid "" "Decode a null-terminated string from the :term:`filesystem encoding and " "error handler`." msgstr "" -#: c-api/unicode.rst:828 +#: c-api/unicode.rst:851 msgid "" "If the string length is known, use :c:func:" "`PyUnicode_DecodeFSDefaultAndSize`." msgstr "" -#: c-api/unicode.rst:838 +#: c-api/unicode.rst:861 msgid "" "Encode a Unicode object to the :term:`filesystem encoding and error " "handler`, and return :class:`bytes`. Note that the resulting :class:`bytes` " "object can contain null bytes." msgstr "" -#: c-api/unicode.rst:842 +#: c-api/unicode.rst:865 msgid "" "If you need to encode a string to the current locale encoding, use :c:func:" "`PyUnicode_EncodeLocale`." msgstr "" -#: c-api/unicode.rst:856 +#: c-api/unicode.rst:879 msgid "wchar_t Support" msgstr "" -#: c-api/unicode.rst:858 +#: c-api/unicode.rst:881 msgid ":c:type:`wchar_t` support for platforms which support it:" msgstr "" -#: c-api/unicode.rst:862 +#: c-api/unicode.rst:885 msgid "" "Create a Unicode object from the :c:type:`wchar_t` buffer *wstr* of the " "given *size*. Passing ``-1`` as the *size* indicates that the function must " @@ -1050,7 +1078,7 @@ msgid "" "failure." msgstr "" -#: c-api/unicode.rst:870 +#: c-api/unicode.rst:893 msgid "" "Copy the Unicode object contents into the :c:type:`wchar_t` buffer *wstr*. " "At most *size* :c:type:`wchar_t` characters are copied (excluding a possibly " @@ -1058,13 +1086,13 @@ msgid "" "`wchar_t` characters copied or ``-1`` in case of an error." msgstr "" -#: c-api/unicode.rst:875 +#: c-api/unicode.rst:898 msgid "" "When *wstr* is ``NULL``, instead return the *size* that would be required to " "store all of *unicode* including a terminating null." msgstr "" -#: c-api/unicode.rst:878 +#: c-api/unicode.rst:901 msgid "" "Note that the resulting :c:expr:`wchar_t*` string may or may not be null-" "terminated. It is the responsibility of the caller to make sure that the :c:" @@ -1074,7 +1102,7 @@ msgid "" "most C functions." msgstr "" -#: c-api/unicode.rst:888 +#: c-api/unicode.rst:911 msgid "" "Convert the Unicode object to a wide character string. The output string " "always ends with a null character. If *size* is not ``NULL``, write the " @@ -1085,37 +1113,37 @@ msgid "" "`wchar_t*` string contains null characters a :exc:`ValueError` is raised." msgstr "" -#: c-api/unicode.rst:896 +#: c-api/unicode.rst:919 msgid "" "Returns a buffer allocated by :c:macro:`PyMem_New` (use :c:func:`PyMem_Free` " "to free it) on success. On error, returns ``NULL`` and *\\*size* is " "undefined. Raises a :exc:`MemoryError` if memory allocation is failed." msgstr "" -#: c-api/unicode.rst:903 +#: c-api/unicode.rst:926 msgid "" "Raises a :exc:`ValueError` if *size* is ``NULL`` and the :c:expr:`wchar_t*` " "string contains null characters." msgstr "" -#: c-api/unicode.rst:911 +#: c-api/unicode.rst:934 msgid "Built-in Codecs" msgstr "" -#: c-api/unicode.rst:913 +#: c-api/unicode.rst:936 msgid "" "Python provides a set of built-in codecs which are written in C for speed. " "All of these codecs are directly usable via the following functions." msgstr "" -#: c-api/unicode.rst:916 +#: c-api/unicode.rst:939 msgid "" "Many of the following APIs take two arguments encoding and errors, and they " "have the same semantics as the ones of the built-in :func:`str` string " "object constructor." msgstr "" -#: c-api/unicode.rst:920 +#: c-api/unicode.rst:943 msgid "" "Setting encoding to ``NULL`` causes the default encoding to be used which is " "UTF-8. The file system calls should use :c:func:`PyUnicode_FSConverter` for " @@ -1123,28 +1151,28 @@ msgid "" "handler` internally." msgstr "" -#: c-api/unicode.rst:925 +#: c-api/unicode.rst:948 msgid "" "Error handling is set by errors which may also be set to ``NULL`` meaning to " "use the default handling defined for the codec. Default error handling for " "all built-in codecs is \"strict\" (:exc:`ValueError` is raised)." msgstr "" -#: c-api/unicode.rst:929 +#: c-api/unicode.rst:952 msgid "" "The codecs all use a similar interface. Only deviations from the following " "generic ones are documented for simplicity." msgstr "" -#: c-api/unicode.rst:934 +#: c-api/unicode.rst:957 msgid "Generic Codecs" msgstr "" -#: c-api/unicode.rst:936 +#: c-api/unicode.rst:959 msgid "These are the generic codec APIs:" msgstr "" -#: c-api/unicode.rst:942 +#: c-api/unicode.rst:965 msgid "" "Create a Unicode object by decoding *size* bytes of the encoded string " "*str*. *encoding* and *errors* have the same meaning as the parameters of " @@ -1153,7 +1181,7 @@ msgid "" "was raised by the codec." msgstr "" -#: c-api/unicode.rst:952 +#: c-api/unicode.rst:975 msgid "" "Encode a Unicode object and return the result as Python bytes object. " "*encoding* and *errors* have the same meaning as the parameters of the same " @@ -1162,21 +1190,21 @@ msgid "" "was raised by the codec." msgstr "" -#: c-api/unicode.rst:960 +#: c-api/unicode.rst:983 msgid "UTF-8 Codecs" msgstr "" -#: c-api/unicode.rst:962 +#: c-api/unicode.rst:985 msgid "These are the UTF-8 codec APIs:" msgstr "" -#: c-api/unicode.rst:967 +#: c-api/unicode.rst:990 msgid "" "Create a Unicode object by decoding *size* bytes of the UTF-8 encoded string " "*str*. Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:974 +#: c-api/unicode.rst:997 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeUTF8`. If " "*consumed* is not ``NULL``, trailing incomplete UTF-8 byte sequences will " @@ -1184,14 +1212,14 @@ msgid "" "of bytes that have been decoded will be stored in *consumed*." msgstr "" -#: c-api/unicode.rst:982 +#: c-api/unicode.rst:1005 msgid "" "Encode a Unicode object using UTF-8 and return the result as Python bytes " "object. Error handling is \"strict\". Return ``NULL`` if an exception was " "raised by the codec." msgstr "" -#: c-api/unicode.rst:989 +#: c-api/unicode.rst:1012 msgid "" "Return a pointer to the UTF-8 encoding of the Unicode object, and store the " "size of the encoded representation (in bytes) in *size*. The *size* " @@ -1200,13 +1228,13 @@ msgid "" "regardless of whether there are any other null code points." msgstr "" -#: c-api/unicode.rst:995 +#: c-api/unicode.rst:1018 msgid "" "In the case of an error, ``NULL`` is returned with an exception set and no " "*size* is stored." msgstr "" -#: c-api/unicode.rst:998 +#: c-api/unicode.rst:1021 msgid "" "This caches the UTF-8 representation of the string in the Unicode object, " "and subsequent calls will return a pointer to the same buffer. The caller " @@ -1215,47 +1243,57 @@ msgid "" "collected." msgstr "" -#: c-api/unicode.rst:1018 +#: c-api/unicode.rst:1050 msgid "The return type is now ``const char *`` rather of ``char *``." msgstr "" -#: c-api/unicode.rst:1008 +#: c-api/unicode.rst:1031 msgid "This function is a part of the :ref:`limited API `." msgstr "" -#: c-api/unicode.rst:1014 +#: c-api/unicode.rst:1037 msgid "As :c:func:`PyUnicode_AsUTF8AndSize`, but does not store the size." msgstr "" -#: c-api/unicode.rst:1023 +#: c-api/unicode.rst:1041 +msgid "" +"This function does not have any special behavior for `null characters " +"`_ embedded within *unicode*. " +"As a result, strings containing null characters will remain in the returned " +"string, which some C functions might interpret as the end of the string, " +"leading to truncation. If truncation is an issue, it is recommended to use :" +"c:func:`PyUnicode_AsUTF8AndSize` instead." +msgstr "" + +#: c-api/unicode.rst:1055 msgid "UTF-32 Codecs" msgstr "" -#: c-api/unicode.rst:1025 +#: c-api/unicode.rst:1057 msgid "These are the UTF-32 codec APIs:" msgstr "" -#: c-api/unicode.rst:1031 +#: c-api/unicode.rst:1063 msgid "" "Decode *size* bytes from a UTF-32 encoded buffer string and return the " "corresponding Unicode object. *errors* (if non-``NULL``) defines the error " "handling. It defaults to \"strict\"." msgstr "" -#: c-api/unicode.rst:1085 +#: c-api/unicode.rst:1117 msgid "" "If *byteorder* is non-``NULL``, the decoder starts decoding using the given " "byte order::" msgstr "" -#: c-api/unicode.rst:1088 +#: c-api/unicode.rst:1120 msgid "" "*byteorder == -1: little endian\n" "*byteorder == 0: native order\n" "*byteorder == 1: big endian" msgstr "" -#: c-api/unicode.rst:1042 +#: c-api/unicode.rst:1074 msgid "" "If ``*byteorder`` is zero, and the first four bytes of the input data are a " "byte order mark (BOM), the decoder switches to this byte order and the BOM " @@ -1263,21 +1301,21 @@ msgid "" "``-1`` or ``1``, any byte order mark is copied to the output." msgstr "" -#: c-api/unicode.rst:1047 +#: c-api/unicode.rst:1079 msgid "" "After completion, *\\*byteorder* is set to the current byte order at the end " "of input data." msgstr "" -#: c-api/unicode.rst:1101 +#: c-api/unicode.rst:1133 msgid "If *byteorder* is ``NULL``, the codec starts in native order mode." msgstr "" -#: c-api/unicode.rst:1103 +#: c-api/unicode.rst:1135 msgid "Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1058 +#: c-api/unicode.rst:1090 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeUTF32`. If " "*consumed* is not ``NULL``, :c:func:`PyUnicode_DecodeUTF32Stateful` will not " @@ -1286,29 +1324,29 @@ msgid "" "number of bytes that have been decoded will be stored in *consumed*." msgstr "" -#: c-api/unicode.rst:1067 +#: c-api/unicode.rst:1099 msgid "" "Return a Python byte string using the UTF-32 encoding in native byte order. " "The string always starts with a BOM mark. Error handling is \"strict\". " "Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1073 +#: c-api/unicode.rst:1105 msgid "UTF-16 Codecs" msgstr "" -#: c-api/unicode.rst:1075 +#: c-api/unicode.rst:1107 msgid "These are the UTF-16 codec APIs:" msgstr "" -#: c-api/unicode.rst:1081 +#: c-api/unicode.rst:1113 msgid "" "Decode *size* bytes from a UTF-16 encoded buffer string and return the " "corresponding Unicode object. *errors* (if non-``NULL``) defines the error " "handling. It defaults to \"strict\"." msgstr "" -#: c-api/unicode.rst:1092 +#: c-api/unicode.rst:1124 msgid "" "If ``*byteorder`` is zero, and the first two bytes of the input data are a " "byte order mark (BOM), the decoder switches to this byte order and the BOM " @@ -1317,13 +1355,13 @@ msgid "" "result in either a ``\\ufeff`` or a ``\\ufffe`` character)." msgstr "" -#: c-api/unicode.rst:1098 +#: c-api/unicode.rst:1130 msgid "" "After completion, ``*byteorder`` is set to the current byte order at the end " "of input data." msgstr "" -#: c-api/unicode.rst:1109 +#: c-api/unicode.rst:1141 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeUTF16`. If " "*consumed* is not ``NULL``, :c:func:`PyUnicode_DecodeUTF16Stateful` will not " @@ -1333,28 +1371,28 @@ msgid "" "*consumed*." msgstr "" -#: c-api/unicode.rst:1118 +#: c-api/unicode.rst:1150 msgid "" "Return a Python byte string using the UTF-16 encoding in native byte order. " "The string always starts with a BOM mark. Error handling is \"strict\". " "Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1124 +#: c-api/unicode.rst:1156 msgid "UTF-7 Codecs" msgstr "" -#: c-api/unicode.rst:1126 +#: c-api/unicode.rst:1158 msgid "These are the UTF-7 codec APIs:" msgstr "" -#: c-api/unicode.rst:1131 +#: c-api/unicode.rst:1163 msgid "" "Create a Unicode object by decoding *size* bytes of the UTF-7 encoded string " "*str*. Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1138 +#: c-api/unicode.rst:1170 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeUTF7`. If " "*consumed* is not ``NULL``, trailing incomplete UTF-7 base-64 sections will " @@ -1362,101 +1400,101 @@ msgid "" "of bytes that have been decoded will be stored in *consumed*." msgstr "" -#: c-api/unicode.rst:1145 +#: c-api/unicode.rst:1177 msgid "Unicode-Escape Codecs" msgstr "" -#: c-api/unicode.rst:1147 +#: c-api/unicode.rst:1179 msgid "These are the \"Unicode Escape\" codec APIs:" msgstr "" -#: c-api/unicode.rst:1153 +#: c-api/unicode.rst:1185 msgid "" "Create a Unicode object by decoding *size* bytes of the Unicode-Escape " "encoded string *str*. Return ``NULL`` if an exception was raised by the " "codec." msgstr "" -#: c-api/unicode.rst:1159 +#: c-api/unicode.rst:1191 msgid "" "Encode a Unicode object using Unicode-Escape and return the result as a " "bytes object. Error handling is \"strict\". Return ``NULL`` if an " "exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1165 +#: c-api/unicode.rst:1197 msgid "Raw-Unicode-Escape Codecs" msgstr "" -#: c-api/unicode.rst:1167 +#: c-api/unicode.rst:1199 msgid "These are the \"Raw Unicode Escape\" codec APIs:" msgstr "" -#: c-api/unicode.rst:1173 +#: c-api/unicode.rst:1205 msgid "" "Create a Unicode object by decoding *size* bytes of the Raw-Unicode-Escape " "encoded string *str*. Return ``NULL`` if an exception was raised by the " "codec." msgstr "" -#: c-api/unicode.rst:1179 +#: c-api/unicode.rst:1211 msgid "" "Encode a Unicode object using Raw-Unicode-Escape and return the result as a " "bytes object. Error handling is \"strict\". Return ``NULL`` if an " "exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1185 +#: c-api/unicode.rst:1217 msgid "Latin-1 Codecs" msgstr "" -#: c-api/unicode.rst:1187 +#: c-api/unicode.rst:1219 msgid "" "These are the Latin-1 codec APIs: Latin-1 corresponds to the first 256 " "Unicode ordinals and only these are accepted by the codecs during encoding." msgstr "" -#: c-api/unicode.rst:1193 +#: c-api/unicode.rst:1225 msgid "" "Create a Unicode object by decoding *size* bytes of the Latin-1 encoded " "string *str*. Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1199 +#: c-api/unicode.rst:1231 msgid "" "Encode a Unicode object using Latin-1 and return the result as Python bytes " "object. Error handling is \"strict\". Return ``NULL`` if an exception was " "raised by the codec." msgstr "" -#: c-api/unicode.rst:1205 +#: c-api/unicode.rst:1237 msgid "ASCII Codecs" msgstr "" -#: c-api/unicode.rst:1207 +#: c-api/unicode.rst:1239 msgid "" "These are the ASCII codec APIs. Only 7-bit ASCII data is accepted. All " "other codes generate errors." msgstr "" -#: c-api/unicode.rst:1213 +#: c-api/unicode.rst:1245 msgid "" "Create a Unicode object by decoding *size* bytes of the ASCII encoded string " "*str*. Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1219 +#: c-api/unicode.rst:1251 msgid "" "Encode a Unicode object using ASCII and return the result as Python bytes " "object. Error handling is \"strict\". Return ``NULL`` if an exception was " "raised by the codec." msgstr "" -#: c-api/unicode.rst:1225 +#: c-api/unicode.rst:1257 msgid "Character Map Codecs" msgstr "" -#: c-api/unicode.rst:1227 +#: c-api/unicode.rst:1259 msgid "" "This codec is special in that it can be used to implement many different " "codecs (and this is in fact what was done to obtain most of the standard " @@ -1466,18 +1504,18 @@ msgid "" "sequences work well." msgstr "" -#: c-api/unicode.rst:1233 +#: c-api/unicode.rst:1265 msgid "These are the mapping codec APIs:" msgstr "" -#: c-api/unicode.rst:1238 +#: c-api/unicode.rst:1270 msgid "" "Create a Unicode object by decoding *size* bytes of the encoded string *str* " "using the given *mapping* object. Return ``NULL`` if an exception was " "raised by the codec." msgstr "" -#: c-api/unicode.rst:1242 +#: c-api/unicode.rst:1274 msgid "" "If *mapping* is ``NULL``, Latin-1 decoding will be applied. Else *mapping* " "must map bytes ordinals (integers in the range from 0 to 255) to Unicode " @@ -1487,14 +1525,14 @@ msgid "" "treated as undefined mappings and cause an error." msgstr "" -#: c-api/unicode.rst:1253 +#: c-api/unicode.rst:1285 msgid "" "Encode a Unicode object using the given *mapping* object and return the " "result as a bytes object. Error handling is \"strict\". Return ``NULL`` if " "an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1257 +#: c-api/unicode.rst:1289 msgid "" "The *mapping* object must map Unicode ordinal integers to bytes objects, " "integers in the range from 0 to 255 or ``None``. Unmapped character " @@ -1502,41 +1540,41 @@ msgid "" "``None`` are treated as \"undefined mapping\" and cause an error." msgstr "" -#: c-api/unicode.rst:1263 +#: c-api/unicode.rst:1295 msgid "The following codec API is special in that maps Unicode to Unicode." msgstr "" -#: c-api/unicode.rst:1267 +#: c-api/unicode.rst:1299 msgid "" "Translate a string by applying a character mapping table to it and return " "the resulting Unicode object. Return ``NULL`` if an exception was raised by " "the codec." msgstr "" -#: c-api/unicode.rst:1271 +#: c-api/unicode.rst:1303 msgid "" "The mapping table must map Unicode ordinal integers to Unicode ordinal " "integers or ``None`` (causing deletion of the character)." msgstr "" -#: c-api/unicode.rst:1274 +#: c-api/unicode.rst:1306 msgid "" "Mapping tables need only provide the :meth:`~object.__getitem__` interface; " "dictionaries and sequences work well. Unmapped character ordinals (ones " "which cause a :exc:`LookupError`) are left untouched and are copied as-is." msgstr "" -#: c-api/unicode.rst:1278 +#: c-api/unicode.rst:1310 msgid "" "*errors* has the usual meaning for codecs. It may be ``NULL`` which " "indicates to use the default error handling." msgstr "" -#: c-api/unicode.rst:1283 +#: c-api/unicode.rst:1315 msgid "MBCS codecs for Windows" msgstr "" -#: c-api/unicode.rst:1285 +#: c-api/unicode.rst:1317 msgid "" "These are the MBCS codec APIs. They are currently only available on Windows " "and use the Win32 MBCS converters to implement the conversions. Note that " @@ -1544,13 +1582,13 @@ msgid "" "is defined by the user settings on the machine running the codec." msgstr "" -#: c-api/unicode.rst:1292 +#: c-api/unicode.rst:1324 msgid "" "Create a Unicode object by decoding *size* bytes of the MBCS encoded string " "*str*. Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1299 +#: c-api/unicode.rst:1331 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeMBCS`. If " "*consumed* is not ``NULL``, :c:func:`PyUnicode_DecodeMBCSStateful` will not " @@ -1558,44 +1596,50 @@ msgid "" "will be stored in *consumed*." msgstr "" -#: c-api/unicode.rst:1307 +#: c-api/unicode.rst:1340 +msgid "" +"Similar to :c:func:`PyUnicode_DecodeMBCSStateful`, except uses the code page " +"specified by *code_page*." +msgstr "" + +#: c-api/unicode.rst:1346 msgid "" "Encode a Unicode object using MBCS and return the result as Python bytes " "object. Error handling is \"strict\". Return ``NULL`` if an exception was " "raised by the codec." msgstr "" -#: c-api/unicode.rst:1314 +#: c-api/unicode.rst:1353 msgid "" "Encode the Unicode object using the specified code page and return a Python " "bytes object. Return ``NULL`` if an exception was raised by the codec. Use :" "c:macro:`!CP_ACP` code page to get the MBCS encoder." msgstr "" -#: c-api/unicode.rst:1322 +#: c-api/unicode.rst:1361 msgid "Methods & Slots" msgstr "" -#: c-api/unicode.rst:1328 +#: c-api/unicode.rst:1367 msgid "Methods and Slot Functions" msgstr "" -#: c-api/unicode.rst:1330 +#: c-api/unicode.rst:1369 msgid "" "The following APIs are capable of handling Unicode objects and strings on " "input (we refer to them as strings in the descriptions) and return Unicode " "objects or integers as appropriate." msgstr "" -#: c-api/unicode.rst:1334 +#: c-api/unicode.rst:1373 msgid "They all return ``NULL`` or ``-1`` if an exception occurs." msgstr "" -#: c-api/unicode.rst:1339 +#: c-api/unicode.rst:1378 msgid "Concat two strings giving a new Unicode string." msgstr "" -#: c-api/unicode.rst:1344 +#: c-api/unicode.rst:1383 msgid "" "Split a string giving a list of Unicode strings. If *sep* is ``NULL``, " "splitting will be done at all whitespace substrings. Otherwise, splits " @@ -1604,27 +1648,72 @@ msgid "" "list." msgstr "" -#: c-api/unicode.rst:1352 +#: c-api/unicode.rst:1398 c-api/unicode.rst:1432 +msgid "On error, return ``NULL`` with an exception set." +msgstr "" + +#: c-api/unicode.rst:1390 +msgid "Equivalent to :py:meth:`str.split`." +msgstr "" + +#: c-api/unicode.rst:1395 +msgid "" +"Similar to :c:func:`PyUnicode_Split`, but splitting will be done beginning " +"at the end of the string." +msgstr "" + +#: c-api/unicode.rst:1400 +msgid "Equivalent to :py:meth:`str.rsplit`." +msgstr "" + +#: c-api/unicode.rst:1405 msgid "" "Split a Unicode string at line breaks, returning a list of Unicode strings. " "CRLF is considered to be one line break. If *keepends* is ``0``, the Line " "break characters are not included in the resulting strings." msgstr "" -#: c-api/unicode.rst:1359 +#: c-api/unicode.rst:1412 +msgid "" +"Split a Unicode string at the first occurrence of *sep*, and return a 3-" +"tuple containing the part before the separator, the separator itself, and " +"the part after the separator. If the separator is not found, return a 3-" +"tuple containing the string itself, followed by two empty strings." +msgstr "" + +#: c-api/unicode.rst:1430 +msgid "*sep* must not be empty." +msgstr "" + +#: c-api/unicode.rst:1421 +msgid "Equivalent to :py:meth:`str.partition`." +msgstr "" + +#: c-api/unicode.rst:1426 +msgid "" +"Similar to :c:func:`PyUnicode_Partition`, but split a Unicode string at the " +"last occurrence of *sep*. If the separator is not found, return a 3-tuple " +"containing two empty strings, followed by the string itself." +msgstr "" + +#: c-api/unicode.rst:1434 +msgid "Equivalent to :py:meth:`str.rpartition`." +msgstr "" + +#: c-api/unicode.rst:1439 msgid "" "Join a sequence of strings using the given *separator* and return the " "resulting Unicode string." msgstr "" -#: c-api/unicode.rst:1366 +#: c-api/unicode.rst:1446 msgid "" "Return ``1`` if *substr* matches ``unicode[start:end]`` at the given tail " "end (*direction* == ``-1`` means to do a prefix match, *direction* == ``1`` " "a suffix match), ``0`` otherwise. Return ``-1`` if an error occurred." msgstr "" -#: c-api/unicode.rst:1374 +#: c-api/unicode.rst:1454 msgid "" "Return the first position of *substr* in ``unicode[start:end]`` using the " "given *direction* (*direction* == ``1`` means to do a forward search, " @@ -1633,7 +1722,7 @@ msgid "" "``-2`` indicates that an error occurred and an exception has been set." msgstr "" -#: c-api/unicode.rst:1384 +#: c-api/unicode.rst:1464 msgid "" "Return the first position of the character *ch* in ``unicode[start:end]`` " "using the given *direction* (*direction* == ``1`` means to do a forward " @@ -1643,37 +1732,37 @@ msgid "" "set." msgstr "" -#: c-api/unicode.rst:1392 +#: c-api/unicode.rst:1472 msgid "" "*start* and *end* are now adjusted to behave like ``unicode[start:end]``." msgstr "" -#: c-api/unicode.rst:1399 +#: c-api/unicode.rst:1479 msgid "" "Return the number of non-overlapping occurrences of *substr* in " "``unicode[start:end]``. Return ``-1`` if an error occurred." msgstr "" -#: c-api/unicode.rst:1406 +#: c-api/unicode.rst:1486 msgid "" "Replace at most *maxcount* occurrences of *substr* in *unicode* with " "*replstr* and return the resulting Unicode object. *maxcount* == ``-1`` " "means replace all occurrences." msgstr "" -#: c-api/unicode.rst:1413 +#: c-api/unicode.rst:1493 msgid "" "Compare two strings and return ``-1``, ``0``, ``1`` for less than, equal, " "and greater than, respectively." msgstr "" -#: c-api/unicode.rst:1416 +#: c-api/unicode.rst:1496 msgid "" "This function returns ``-1`` upon failure, so one should call :c:func:" "`PyErr_Occurred` to check for errors." msgstr "" -#: c-api/unicode.rst:1422 +#: c-api/unicode.rst:1502 msgid "" "Compare a Unicode object, *unicode*, with *string* and return ``-1``, ``0``, " "``1`` for less than, equal, and greater than, respectively. It is best to " @@ -1681,51 +1770,51 @@ msgid "" "string as ISO-8859-1 if it contains non-ASCII characters." msgstr "" -#: c-api/unicode.rst:1427 +#: c-api/unicode.rst:1507 msgid "This function does not raise exceptions." msgstr "" -#: c-api/unicode.rst:1432 +#: c-api/unicode.rst:1512 msgid "Rich compare two Unicode strings and return one of the following:" msgstr "" -#: c-api/unicode.rst:1434 +#: c-api/unicode.rst:1514 msgid "``NULL`` in case an exception was raised" msgstr "" -#: c-api/unicode.rst:1435 +#: c-api/unicode.rst:1515 msgid ":c:data:`Py_True` or :c:data:`Py_False` for successful comparisons" msgstr "" -#: c-api/unicode.rst:1436 +#: c-api/unicode.rst:1516 msgid ":c:data:`Py_NotImplemented` in case the type combination is unknown" msgstr "" -#: c-api/unicode.rst:1438 +#: c-api/unicode.rst:1518 msgid "" "Possible values for *op* are :c:macro:`Py_GT`, :c:macro:`Py_GE`, :c:macro:" "`Py_EQ`, :c:macro:`Py_NE`, :c:macro:`Py_LT`, and :c:macro:`Py_LE`." msgstr "" -#: c-api/unicode.rst:1444 +#: c-api/unicode.rst:1524 msgid "" "Return a new string object from *format* and *args*; this is analogous to " "``format % args``." msgstr "" -#: c-api/unicode.rst:1450 +#: c-api/unicode.rst:1530 msgid "" "Check whether *substr* is contained in *unicode* and return true or false " "accordingly." msgstr "" -#: c-api/unicode.rst:1453 +#: c-api/unicode.rst:1533 msgid "" "*substr* has to coerce to a one element Unicode string. ``-1`` is returned " "if there was an error." msgstr "" -#: c-api/unicode.rst:1459 +#: c-api/unicode.rst:1539 msgid "" "Intern the argument :c:expr:`*p_unicode` in place. The argument must be the " "address of a pointer variable pointing to a Python Unicode string object. " @@ -1736,7 +1825,7 @@ msgid "" "interns it." msgstr "" -#: c-api/unicode.rst:1466 +#: c-api/unicode.rst:1546 msgid "" "(Clarification: even though there is a lot of talk about references, think " "of this function as reference-neutral. You must own the object you pass in; " @@ -1744,39 +1833,39 @@ msgid "" "the result.)" msgstr "" -#: c-api/unicode.rst:1471 +#: c-api/unicode.rst:1551 msgid "" "This function never raises an exception. On error, it leaves its argument " "unchanged without interning it." msgstr "" -#: c-api/unicode.rst:1474 +#: c-api/unicode.rst:1554 msgid "" "Instances of subclasses of :py:class:`str` may not be interned, that is, :c:" "expr:`PyUnicode_CheckExact(*p_unicode)` must be true. If it is not, then -- " "as with any other error -- the argument is left unchanged." msgstr "" -#: c-api/unicode.rst:1478 +#: c-api/unicode.rst:1558 msgid "" "Note that interned strings are not “immortal”. You must keep a reference to " "the result to benefit from interning." msgstr "" -#: c-api/unicode.rst:1484 +#: c-api/unicode.rst:1564 msgid "" "A combination of :c:func:`PyUnicode_FromString` and :c:func:" "`PyUnicode_InternInPlace`, meant for statically allocated strings." msgstr "" -#: c-api/unicode.rst:1487 +#: c-api/unicode.rst:1567 msgid "" "Return a new (\"owned\") reference to either a new Unicode string object " "that has been interned, or an earlier interned string object with the same " "value." msgstr "" -#: c-api/unicode.rst:1491 +#: c-api/unicode.rst:1571 msgid "" "Python may keep a reference to the result, or prevent it from being garbage-" "collected promptly. For interning an unbounded number of different strings, " diff --git a/deprecations/index.po b/deprecations/index.po index 8a7e89b57..225cd3230 100644 --- a/deprecations/index.po +++ b/deprecations/index.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -198,62 +198,50 @@ msgid "Pending Removal in Python 3.14" msgstr "" #: deprecations/pending-removal-in-3.14.rst:4 -msgid "The import system:" -msgstr "" - -#: deprecations/pending-removal-in-3.14.rst:6 -msgid "" -"Setting :attr:`~module.__loader__` on a module while failing to set :attr:" -"`__spec__.loader ` is deprecated. In " -"Python 3.14, :attr:`!__loader__` will cease to be set or taken into " -"consideration by the import system or the standard library." -msgstr "" - -#: deprecations/pending-removal-in-3.14.rst:11 msgid "" ":mod:`argparse`: The *type*, *choices*, and *metavar* parameters of :class:`!" "argparse.BooleanOptionalAction` are deprecated and will be removed in 3.14. " "(Contributed by Nikita Sobolev in :gh:`92248`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:16 +#: deprecations/pending-removal-in-3.14.rst:9 msgid "" ":mod:`ast`: The following features have been deprecated in documentation " "since Python 3.8, now cause a :exc:`DeprecationWarning` to be emitted at " "runtime when they are accessed or used, and will be removed in Python 3.14:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:20 +#: deprecations/pending-removal-in-3.14.rst:13 msgid ":class:`!ast.Num`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:21 +#: deprecations/pending-removal-in-3.14.rst:14 msgid ":class:`!ast.Str`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:22 +#: deprecations/pending-removal-in-3.14.rst:15 msgid ":class:`!ast.Bytes`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:23 +#: deprecations/pending-removal-in-3.14.rst:16 msgid ":class:`!ast.NameConstant`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:24 +#: deprecations/pending-removal-in-3.14.rst:17 msgid ":class:`!ast.Ellipsis`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:26 +#: deprecations/pending-removal-in-3.14.rst:19 msgid "" "Use :class:`ast.Constant` instead. (Contributed by Serhiy Storchaka in :gh:" "`90953`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:29 +#: deprecations/pending-removal-in-3.14.rst:22 msgid ":mod:`asyncio`:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:31 +#: deprecations/pending-removal-in-3.14.rst:24 msgid "" "The child watcher classes :class:`~asyncio.MultiLoopChildWatcher`, :class:" "`~asyncio.FastChildWatcher`, :class:`~asyncio.AbstractChildWatcher` and :" @@ -261,7 +249,7 @@ msgid "" "Python 3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:37 +#: deprecations/pending-removal-in-3.14.rst:30 msgid "" ":func:`asyncio.set_child_watcher`, :func:`asyncio.get_child_watcher`, :meth:" "`asyncio.AbstractEventLoopPolicy.set_child_watcher` and :meth:`asyncio." @@ -269,7 +257,7 @@ msgid "" "removed in Python 3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:43 +#: deprecations/pending-removal-in-3.14.rst:36 msgid "" "The :meth:`~asyncio.get_event_loop` method of the default event loop policy " "now emits a :exc:`DeprecationWarning` if there is no current event loop set " @@ -277,7 +265,7 @@ msgid "" "Rossum in :gh:`100160`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:48 +#: deprecations/pending-removal-in-3.14.rst:41 msgid "" ":mod:`collections.abc`: Deprecated :class:`~collections.abc.ByteString`. " "Prefer :class:`!Sequence` or :class:`~collections.abc.Buffer`. For use in " @@ -285,51 +273,51 @@ msgid "" "abc.Buffer`. (Contributed by Shantanu Jain in :gh:`91896`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:54 +#: deprecations/pending-removal-in-3.14.rst:47 msgid "" ":mod:`email`: Deprecated the *isdst* parameter in :func:`email.utils." "localtime`. (Contributed by Alan Williams in :gh:`72346`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:57 +#: deprecations/pending-removal-in-3.14.rst:50 msgid "" ":mod:`importlib`: ``__package__`` and ``__cached__`` will cease to be set or " "taken into consideration by the import system (:gh:`97879`)." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:60 +#: deprecations/pending-removal-in-3.14.rst:53 msgid ":mod:`importlib.abc` deprecated classes:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:62 +#: deprecations/pending-removal-in-3.14.rst:55 msgid ":class:`!importlib.abc.ResourceReader`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:63 +#: deprecations/pending-removal-in-3.14.rst:56 msgid ":class:`!importlib.abc.Traversable`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:64 +#: deprecations/pending-removal-in-3.14.rst:57 msgid ":class:`!importlib.abc.TraversableResources`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:66 +#: deprecations/pending-removal-in-3.14.rst:59 msgid "Use :mod:`importlib.resources.abc` classes instead:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:68 +#: deprecations/pending-removal-in-3.14.rst:61 msgid ":class:`importlib.resources.abc.Traversable`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:69 +#: deprecations/pending-removal-in-3.14.rst:62 msgid ":class:`importlib.resources.abc.TraversableResources`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:71 +#: deprecations/pending-removal-in-3.14.rst:64 msgid "(Contributed by Jason R. Coombs and Hugo van Kemenade in :gh:`93963`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:73 +#: deprecations/pending-removal-in-3.14.rst:66 msgid "" ":mod:`itertools` had undocumented, inefficient, historically buggy, and " "inconsistent support for copy, deepcopy, and pickle operations. This will be " @@ -337,7 +325,7 @@ msgid "" "burden. (Contributed by Raymond Hettinger in :gh:`101588`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:79 +#: deprecations/pending-removal-in-3.14.rst:72 msgid "" ":mod:`multiprocessing`: The default start method will change to a safer one " "on Linux, BSDs, and other non-macOS POSIX platforms where ``'fork'`` is " @@ -348,67 +336,53 @@ msgid "" "``'fork'``. See :ref:`multiprocessing-start-methods`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:87 +#: deprecations/pending-removal-in-3.14.rst:80 msgid "" ":mod:`pathlib`: :meth:`~pathlib.PurePath.is_relative_to` and :meth:`~pathlib." "PurePath.relative_to`: passing additional arguments is deprecated." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:91 +#: deprecations/pending-removal-in-3.14.rst:84 msgid "" ":mod:`pkgutil`: :func:`~pkgutil.find_loader` and :func:`~pkgutil.get_loader` " "now raise :exc:`DeprecationWarning`; use :func:`importlib.util.find_spec` " "instead. (Contributed by Nikita Sobolev in :gh:`97850`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:96 +#: deprecations/pending-removal-in-3.14.rst:89 msgid ":mod:`pty`:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:98 +#: deprecations/pending-removal-in-3.14.rst:91 msgid "``master_open()``: use :func:`pty.openpty`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:99 +#: deprecations/pending-removal-in-3.14.rst:92 msgid "``slave_open()``: use :func:`pty.openpty`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:101 +#: deprecations/pending-removal-in-3.14.rst:94 msgid ":mod:`sqlite3`:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:103 +#: deprecations/pending-removal-in-3.14.rst:96 msgid ":data:`~sqlite3.version` and :data:`~sqlite3.version_info`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:105 +#: deprecations/pending-removal-in-3.14.rst:98 msgid "" ":meth:`~sqlite3.Cursor.execute` and :meth:`~sqlite3.Cursor.executemany` if :" "ref:`named placeholders ` are used and *parameters* is " "a sequence instead of a :class:`dict`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:109 -msgid "" -"date and datetime adapter, date and timestamp converter: see the :mod:" -"`sqlite3` documentation for suggested replacement recipes." -msgstr "" - -#: deprecations/pending-removal-in-3.14.rst:112 -msgid "" -":class:`types.CodeType`: Accessing :attr:`~codeobject.co_lnotab` was " -"deprecated in :pep:`626` since 3.10 and was planned to be removed in 3.12, " -"but it only got a proper :exc:`DeprecationWarning` in 3.12. May be removed " -"in 3.14. (Contributed by Nikita Sobolev in :gh:`101866`.)" -msgstr "" - -#: deprecations/pending-removal-in-3.14.rst:119 +#: deprecations/pending-removal-in-3.14.rst:102 msgid "" ":mod:`typing`: :class:`~typing.ByteString`, deprecated since Python 3.9, now " "causes a :exc:`DeprecationWarning` to be emitted when it is used." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:122 +#: deprecations/pending-removal-in-3.14.rst:105 msgid "" ":mod:`urllib`: :class:`!urllib.parse.Quoter` is deprecated: it was not " "intended to be a public API. (Contributed by Gregory P. Smith in :gh:" @@ -429,6 +403,15 @@ msgid "" msgstr "" #: deprecations/pending-removal-in-3.15.rst:9 +#: deprecations/pending-removal-in-future.rst:58 +msgid ":mod:`importlib`:" +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:11 +msgid "``load_module()`` method: use ``exec_module()`` instead." +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:13 msgid "" ":class:`locale`: :func:`locale.getdefaultlocale` was deprecated in Python " "3.11 and originally planned for removal in Python 3.13 (:gh:`90817`), but " @@ -437,21 +420,31 @@ msgid "" "by Hugo van Kemenade in :gh:`111187`.)" msgstr "" -#: deprecations/pending-removal-in-3.15.rst:16 +#: deprecations/pending-removal-in-3.15.rst:20 msgid "" ":mod:`pathlib`: :meth:`pathlib.PurePath.is_reserved` is deprecated and " "scheduled for removal in Python 3.15. From Python 3.13 onwards, use ``os." "path.isreserved`` to detect reserved paths on Windows." msgstr "" -#: deprecations/pending-removal-in-3.15.rst:21 +#: deprecations/pending-removal-in-3.15.rst:25 msgid "" ":mod:`platform`: :func:`~platform.java_ver` is deprecated and will be " "removed in 3.15. It was largely untested, had a confusing API, and was only " "useful for Jython support. (Contributed by Nikita Sobolev in :gh:`116349`.)" msgstr "" -#: deprecations/pending-removal-in-3.15.rst:27 +#: deprecations/pending-removal-in-3.15.rst:31 +msgid ":mod:`sysconfig`:" +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:33 +msgid "" +"The *check_home* argument of :func:`sysconfig.is_python_build` has been " +"deprecated since Python 3.12." +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:36 msgid "" ":mod:`threading`: Passing any arguments to :func:`threading.RLock` is now " "deprecated. C version allows any numbers of args and kwargs, but they are " @@ -460,11 +453,11 @@ msgid "" "Nikita Sobolev in :gh:`102029`.)" msgstr "" -#: deprecations/pending-removal-in-3.15.rst:34 +#: deprecations/pending-removal-in-3.15.rst:43 msgid ":class:`typing.NamedTuple`:" msgstr "" -#: deprecations/pending-removal-in-3.15.rst:36 +#: deprecations/pending-removal-in-3.15.rst:45 msgid "" "The undocumented keyword argument syntax for creating :class:`!NamedTuple` " "classes (``NT = NamedTuple(\"NT\", x=int)``) is deprecated, and will be " @@ -472,7 +465,23 @@ msgid "" "instead." msgstr "" -#: deprecations/pending-removal-in-3.15.rst:40 +#: deprecations/pending-removal-in-3.15.rst:49 +msgid ":mod:`types`:" +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:51 +msgid "" +":class:`types.CodeType`: Accessing :attr:`~codeobject.co_lnotab` was " +"deprecated in :pep:`626` since 3.10 and was planned to be removed in 3.12, " +"but it only got a proper :exc:`DeprecationWarning` in 3.12. May be removed " +"in 3.15. (Contributed by Nikita Sobolev in :gh:`101866`.)" +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:58 +msgid ":mod:`typing`:" +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:60 msgid "" "When using the functional syntax to create a :class:`!NamedTuple` class, " "failing to pass a value to the *fields* parameter (``NT = " @@ -483,7 +492,7 @@ msgid "" "[])``." msgstr "" -#: deprecations/pending-removal-in-3.15.rst:47 +#: deprecations/pending-removal-in-3.15.rst:67 msgid "" ":class:`typing.TypedDict`: When using the functional syntax to create a :" "class:`!TypedDict` class, failing to pass a value to the *fields* parameter " @@ -493,7 +502,7 @@ msgid "" "fields, use ``class TD(TypedDict): pass`` or ``TD = TypedDict(\"TD\", {})``." msgstr "" -#: deprecations/pending-removal-in-3.15.rst:54 +#: deprecations/pending-removal-in-3.15.rst:74 msgid "" ":mod:`wave`: Deprecate the ``getmark()``, ``setmark()`` and ``getmarkers()`` " "methods of the :class:`wave.Wave_read` and :class:`wave.Wave_write` classes. " @@ -506,16 +515,28 @@ msgid "Pending Removal in Python 3.16" msgstr "" #: deprecations/pending-removal-in-3.16.rst:4 +msgid "The import system:" +msgstr "" + +#: deprecations/pending-removal-in-3.16.rst:6 +msgid "" +"Setting :attr:`~module.__loader__` on a module while failing to set :attr:" +"`__spec__.loader ` is deprecated. In " +"Python 3.16, :attr:`!__loader__` will cease to be set or taken into " +"consideration by the import system or the standard library." +msgstr "" + +#: deprecations/pending-removal-in-3.16.rst:11 msgid "" ":mod:`array`: :class:`array.array` ``'u'`` type (:c:type:`wchar_t`): use the " "``'w'`` type instead (``Py_UCS4``)." msgstr "" -#: deprecations/pending-removal-in-3.16.rst:8 +#: deprecations/pending-removal-in-3.16.rst:15 msgid ":mod:`builtins`: ``~bool``, bitwise inversion on bool." msgstr "" -#: deprecations/pending-removal-in-3.16.rst:11 +#: deprecations/pending-removal-in-3.16.rst:18 msgid "" ":mod:`symtable`: Deprecate :meth:`symtable.Class.get_methods` due to the " "lack of interest. (Contributed by Bénédikt Tran in :gh:`119698`.)" @@ -635,50 +656,42 @@ msgstr "" msgid ":mod:`gettext`: Plural value must be an integer." msgstr "" -#: deprecations/pending-removal-in-future.rst:58 -msgid ":mod:`importlib`:" -msgstr "" - #: deprecations/pending-removal-in-future.rst:60 -msgid "``load_module()`` method: use ``exec_module()`` instead." -msgstr "" - -#: deprecations/pending-removal-in-future.rst:61 msgid "" ":func:`~importlib.util.cache_from_source` *debug_override* parameter is " "deprecated: use the *optimization* parameter instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:64 +#: deprecations/pending-removal-in-future.rst:63 msgid ":mod:`importlib.metadata`:" msgstr "" -#: deprecations/pending-removal-in-future.rst:66 +#: deprecations/pending-removal-in-future.rst:65 msgid "``EntryPoints`` tuple interface." msgstr "" -#: deprecations/pending-removal-in-future.rst:67 +#: deprecations/pending-removal-in-future.rst:66 msgid "Implicit ``None`` on return values." msgstr "" -#: deprecations/pending-removal-in-future.rst:69 +#: deprecations/pending-removal-in-future.rst:68 msgid "" ":mod:`mailbox`: Use of StringIO input and text mode is deprecated, use " "BytesIO and binary mode instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:72 +#: deprecations/pending-removal-in-future.rst:71 msgid "" ":mod:`os`: Calling :func:`os.register_at_fork` in multi-threaded process." msgstr "" -#: deprecations/pending-removal-in-future.rst:74 +#: deprecations/pending-removal-in-future.rst:73 msgid "" ":class:`!pydoc.ErrorDuringImport`: A tuple value for *exc_info* parameter is " "deprecated, use an exception instance." msgstr "" -#: deprecations/pending-removal-in-future.rst:77 +#: deprecations/pending-removal-in-future.rst:76 msgid "" ":mod:`re`: More strict rules are now applied for numerical group references " "and group names in regular expressions. Only sequence of ASCII digits is " @@ -687,185 +700,179 @@ msgid "" "underscore. (Contributed by Serhiy Storchaka in :gh:`91760`.)" msgstr "" -#: deprecations/pending-removal-in-future.rst:84 +#: deprecations/pending-removal-in-future.rst:83 msgid "" ":mod:`!sre_compile`, :mod:`!sre_constants` and :mod:`!sre_parse` modules." msgstr "" -#: deprecations/pending-removal-in-future.rst:86 +#: deprecations/pending-removal-in-future.rst:85 msgid "" ":mod:`shutil`: :func:`~shutil.rmtree`'s *onerror* parameter is deprecated in " "Python 3.12; use the *onexc* parameter instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:89 +#: deprecations/pending-removal-in-future.rst:88 msgid ":mod:`ssl` options and protocols:" msgstr "" -#: deprecations/pending-removal-in-future.rst:91 +#: deprecations/pending-removal-in-future.rst:90 msgid ":class:`ssl.SSLContext` without protocol argument is deprecated." msgstr "" -#: deprecations/pending-removal-in-future.rst:92 +#: deprecations/pending-removal-in-future.rst:91 msgid "" ":class:`ssl.SSLContext`: :meth:`~ssl.SSLContext.set_npn_protocols` and :meth:" "`!selected_npn_protocol` are deprecated: use ALPN instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:95 +#: deprecations/pending-removal-in-future.rst:94 msgid "``ssl.OP_NO_SSL*`` options" msgstr "" -#: deprecations/pending-removal-in-future.rst:96 +#: deprecations/pending-removal-in-future.rst:95 msgid "``ssl.OP_NO_TLS*`` options" msgstr "" -#: deprecations/pending-removal-in-future.rst:97 +#: deprecations/pending-removal-in-future.rst:96 msgid "``ssl.PROTOCOL_SSLv3``" msgstr "" -#: deprecations/pending-removal-in-future.rst:98 +#: deprecations/pending-removal-in-future.rst:97 msgid "``ssl.PROTOCOL_TLS``" msgstr "" -#: deprecations/pending-removal-in-future.rst:99 +#: deprecations/pending-removal-in-future.rst:98 msgid "``ssl.PROTOCOL_TLSv1``" msgstr "" -#: deprecations/pending-removal-in-future.rst:100 +#: deprecations/pending-removal-in-future.rst:99 msgid "``ssl.PROTOCOL_TLSv1_1``" msgstr "" -#: deprecations/pending-removal-in-future.rst:101 +#: deprecations/pending-removal-in-future.rst:100 msgid "``ssl.PROTOCOL_TLSv1_2``" msgstr "" -#: deprecations/pending-removal-in-future.rst:102 +#: deprecations/pending-removal-in-future.rst:101 msgid "``ssl.TLSVersion.SSLv3``" msgstr "" -#: deprecations/pending-removal-in-future.rst:103 +#: deprecations/pending-removal-in-future.rst:102 msgid "``ssl.TLSVersion.TLSv1``" msgstr "" -#: deprecations/pending-removal-in-future.rst:104 +#: deprecations/pending-removal-in-future.rst:103 msgid "``ssl.TLSVersion.TLSv1_1``" msgstr "" -#: deprecations/pending-removal-in-future.rst:106 -msgid "" -":func:`sysconfig.is_python_build` *check_home* parameter is deprecated and " -"ignored." -msgstr "" - -#: deprecations/pending-removal-in-future.rst:109 +#: deprecations/pending-removal-in-future.rst:105 msgid ":mod:`threading` methods:" msgstr "" -#: deprecations/pending-removal-in-future.rst:111 +#: deprecations/pending-removal-in-future.rst:107 msgid "" ":meth:`!threading.Condition.notifyAll`: use :meth:`~threading.Condition." "notify_all`." msgstr "" -#: deprecations/pending-removal-in-future.rst:112 +#: deprecations/pending-removal-in-future.rst:108 msgid ":meth:`!threading.Event.isSet`: use :meth:`~threading.Event.is_set`." msgstr "" -#: deprecations/pending-removal-in-future.rst:113 +#: deprecations/pending-removal-in-future.rst:109 msgid "" ":meth:`!threading.Thread.isDaemon`, :meth:`threading.Thread.setDaemon`: use :" "attr:`threading.Thread.daemon` attribute." msgstr "" -#: deprecations/pending-removal-in-future.rst:115 +#: deprecations/pending-removal-in-future.rst:111 msgid "" ":meth:`!threading.Thread.getName`, :meth:`threading.Thread.setName`: use :" "attr:`threading.Thread.name` attribute." msgstr "" -#: deprecations/pending-removal-in-future.rst:117 +#: deprecations/pending-removal-in-future.rst:113 msgid ":meth:`!threading.currentThread`: use :meth:`threading.current_thread`." msgstr "" -#: deprecations/pending-removal-in-future.rst:118 +#: deprecations/pending-removal-in-future.rst:114 msgid ":meth:`!threading.activeCount`: use :meth:`threading.active_count`." msgstr "" -#: deprecations/pending-removal-in-future.rst:120 +#: deprecations/pending-removal-in-future.rst:116 msgid ":class:`typing.Text` (:gh:`92332`)." msgstr "" -#: deprecations/pending-removal-in-future.rst:122 +#: deprecations/pending-removal-in-future.rst:118 msgid "" ":class:`unittest.IsolatedAsyncioTestCase`: it is deprecated to return a " "value that is not ``None`` from a test case." msgstr "" -#: deprecations/pending-removal-in-future.rst:125 +#: deprecations/pending-removal-in-future.rst:121 msgid "" ":mod:`urllib.parse` deprecated functions: :func:`~urllib.parse.urlparse` " "instead" msgstr "" -#: deprecations/pending-removal-in-future.rst:127 +#: deprecations/pending-removal-in-future.rst:123 msgid "``splitattr()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:128 +#: deprecations/pending-removal-in-future.rst:124 msgid "``splithost()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:129 +#: deprecations/pending-removal-in-future.rst:125 msgid "``splitnport()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:130 +#: deprecations/pending-removal-in-future.rst:126 msgid "``splitpasswd()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:131 +#: deprecations/pending-removal-in-future.rst:127 msgid "``splitport()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:132 +#: deprecations/pending-removal-in-future.rst:128 msgid "``splitquery()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:133 +#: deprecations/pending-removal-in-future.rst:129 msgid "``splittag()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:134 +#: deprecations/pending-removal-in-future.rst:130 msgid "``splittype()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:135 +#: deprecations/pending-removal-in-future.rst:131 msgid "``splituser()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:136 +#: deprecations/pending-removal-in-future.rst:132 msgid "``splitvalue()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:137 +#: deprecations/pending-removal-in-future.rst:133 msgid "``to_bytes()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:139 +#: deprecations/pending-removal-in-future.rst:135 msgid "" ":mod:`urllib.request`: :class:`~urllib.request.URLopener` and :class:" "`~urllib.request.FancyURLopener` style of invoking requests is deprecated. " "Use newer :func:`~urllib.request.urlopen` functions and methods." msgstr "" -#: deprecations/pending-removal-in-future.rst:143 +#: deprecations/pending-removal-in-future.rst:139 msgid "" ":mod:`wsgiref`: ``SimpleHandler.stdout.write()`` should not do partial " "writes." msgstr "" -#: deprecations/pending-removal-in-future.rst:146 +#: deprecations/pending-removal-in-future.rst:142 msgid "" ":mod:`xml.etree.ElementTree`: Testing the truth value of an :class:`~xml." "etree.ElementTree.Element` is deprecated. In a future release it will always " @@ -873,7 +880,7 @@ msgid "" "instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:151 +#: deprecations/pending-removal-in-future.rst:147 msgid "" ":meth:`zipimport.zipimporter.load_module` is deprecated: use :meth:" "`~zipimport.zipimporter.exec_module` instead." diff --git a/deprecations/pending-removal-in-3.14.po b/deprecations/pending-removal-in-3.14.po index 8fb8bec31..f05ed2dc7 100644 --- a/deprecations/pending-removal-in-3.14.po +++ b/deprecations/pending-removal-in-3.14.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -22,62 +22,50 @@ msgid "Pending Removal in Python 3.14" msgstr "" #: deprecations/pending-removal-in-3.14.rst:4 -msgid "The import system:" -msgstr "" - -#: deprecations/pending-removal-in-3.14.rst:6 -msgid "" -"Setting :attr:`~module.__loader__` on a module while failing to set :attr:" -"`__spec__.loader ` is deprecated. In " -"Python 3.14, :attr:`!__loader__` will cease to be set or taken into " -"consideration by the import system or the standard library." -msgstr "" - -#: deprecations/pending-removal-in-3.14.rst:11 msgid "" ":mod:`argparse`: The *type*, *choices*, and *metavar* parameters of :class:`!" "argparse.BooleanOptionalAction` are deprecated and will be removed in 3.14. " "(Contributed by Nikita Sobolev in :gh:`92248`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:16 +#: deprecations/pending-removal-in-3.14.rst:9 msgid "" ":mod:`ast`: The following features have been deprecated in documentation " "since Python 3.8, now cause a :exc:`DeprecationWarning` to be emitted at " "runtime when they are accessed or used, and will be removed in Python 3.14:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:20 +#: deprecations/pending-removal-in-3.14.rst:13 msgid ":class:`!ast.Num`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:21 +#: deprecations/pending-removal-in-3.14.rst:14 msgid ":class:`!ast.Str`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:22 +#: deprecations/pending-removal-in-3.14.rst:15 msgid ":class:`!ast.Bytes`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:23 +#: deprecations/pending-removal-in-3.14.rst:16 msgid ":class:`!ast.NameConstant`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:24 +#: deprecations/pending-removal-in-3.14.rst:17 msgid ":class:`!ast.Ellipsis`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:26 +#: deprecations/pending-removal-in-3.14.rst:19 msgid "" "Use :class:`ast.Constant` instead. (Contributed by Serhiy Storchaka in :gh:" "`90953`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:29 +#: deprecations/pending-removal-in-3.14.rst:22 msgid ":mod:`asyncio`:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:31 +#: deprecations/pending-removal-in-3.14.rst:24 msgid "" "The child watcher classes :class:`~asyncio.MultiLoopChildWatcher`, :class:" "`~asyncio.FastChildWatcher`, :class:`~asyncio.AbstractChildWatcher` and :" @@ -85,7 +73,7 @@ msgid "" "Python 3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:37 +#: deprecations/pending-removal-in-3.14.rst:30 msgid "" ":func:`asyncio.set_child_watcher`, :func:`asyncio.get_child_watcher`, :meth:" "`asyncio.AbstractEventLoopPolicy.set_child_watcher` and :meth:`asyncio." @@ -93,7 +81,7 @@ msgid "" "removed in Python 3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:43 +#: deprecations/pending-removal-in-3.14.rst:36 msgid "" "The :meth:`~asyncio.get_event_loop` method of the default event loop policy " "now emits a :exc:`DeprecationWarning` if there is no current event loop set " @@ -101,7 +89,7 @@ msgid "" "Rossum in :gh:`100160`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:48 +#: deprecations/pending-removal-in-3.14.rst:41 msgid "" ":mod:`collections.abc`: Deprecated :class:`~collections.abc.ByteString`. " "Prefer :class:`!Sequence` or :class:`~collections.abc.Buffer`. For use in " @@ -109,51 +97,51 @@ msgid "" "abc.Buffer`. (Contributed by Shantanu Jain in :gh:`91896`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:54 +#: deprecations/pending-removal-in-3.14.rst:47 msgid "" ":mod:`email`: Deprecated the *isdst* parameter in :func:`email.utils." "localtime`. (Contributed by Alan Williams in :gh:`72346`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:57 +#: deprecations/pending-removal-in-3.14.rst:50 msgid "" ":mod:`importlib`: ``__package__`` and ``__cached__`` will cease to be set or " "taken into consideration by the import system (:gh:`97879`)." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:60 +#: deprecations/pending-removal-in-3.14.rst:53 msgid ":mod:`importlib.abc` deprecated classes:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:62 +#: deprecations/pending-removal-in-3.14.rst:55 msgid ":class:`!importlib.abc.ResourceReader`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:63 +#: deprecations/pending-removal-in-3.14.rst:56 msgid ":class:`!importlib.abc.Traversable`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:64 +#: deprecations/pending-removal-in-3.14.rst:57 msgid ":class:`!importlib.abc.TraversableResources`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:66 +#: deprecations/pending-removal-in-3.14.rst:59 msgid "Use :mod:`importlib.resources.abc` classes instead:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:68 +#: deprecations/pending-removal-in-3.14.rst:61 msgid ":class:`importlib.resources.abc.Traversable`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:69 +#: deprecations/pending-removal-in-3.14.rst:62 msgid ":class:`importlib.resources.abc.TraversableResources`" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:71 +#: deprecations/pending-removal-in-3.14.rst:64 msgid "(Contributed by Jason R. Coombs and Hugo van Kemenade in :gh:`93963`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:73 +#: deprecations/pending-removal-in-3.14.rst:66 msgid "" ":mod:`itertools` had undocumented, inefficient, historically buggy, and " "inconsistent support for copy, deepcopy, and pickle operations. This will be " @@ -161,7 +149,7 @@ msgid "" "burden. (Contributed by Raymond Hettinger in :gh:`101588`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:79 +#: deprecations/pending-removal-in-3.14.rst:72 msgid "" ":mod:`multiprocessing`: The default start method will change to a safer one " "on Linux, BSDs, and other non-macOS POSIX platforms where ``'fork'`` is " @@ -172,67 +160,53 @@ msgid "" "``'fork'``. See :ref:`multiprocessing-start-methods`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:87 +#: deprecations/pending-removal-in-3.14.rst:80 msgid "" ":mod:`pathlib`: :meth:`~pathlib.PurePath.is_relative_to` and :meth:`~pathlib." "PurePath.relative_to`: passing additional arguments is deprecated." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:91 +#: deprecations/pending-removal-in-3.14.rst:84 msgid "" ":mod:`pkgutil`: :func:`~pkgutil.find_loader` and :func:`~pkgutil.get_loader` " "now raise :exc:`DeprecationWarning`; use :func:`importlib.util.find_spec` " "instead. (Contributed by Nikita Sobolev in :gh:`97850`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:96 +#: deprecations/pending-removal-in-3.14.rst:89 msgid ":mod:`pty`:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:98 +#: deprecations/pending-removal-in-3.14.rst:91 msgid "``master_open()``: use :func:`pty.openpty`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:99 +#: deprecations/pending-removal-in-3.14.rst:92 msgid "``slave_open()``: use :func:`pty.openpty`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:101 +#: deprecations/pending-removal-in-3.14.rst:94 msgid ":mod:`sqlite3`:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:103 +#: deprecations/pending-removal-in-3.14.rst:96 msgid ":data:`~sqlite3.version` and :data:`~sqlite3.version_info`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:105 +#: deprecations/pending-removal-in-3.14.rst:98 msgid "" ":meth:`~sqlite3.Cursor.execute` and :meth:`~sqlite3.Cursor.executemany` if :" "ref:`named placeholders ` are used and *parameters* is " "a sequence instead of a :class:`dict`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:109 -msgid "" -"date and datetime adapter, date and timestamp converter: see the :mod:" -"`sqlite3` documentation for suggested replacement recipes." -msgstr "" - -#: deprecations/pending-removal-in-3.14.rst:112 -msgid "" -":class:`types.CodeType`: Accessing :attr:`~codeobject.co_lnotab` was " -"deprecated in :pep:`626` since 3.10 and was planned to be removed in 3.12, " -"but it only got a proper :exc:`DeprecationWarning` in 3.12. May be removed " -"in 3.14. (Contributed by Nikita Sobolev in :gh:`101866`.)" -msgstr "" - -#: deprecations/pending-removal-in-3.14.rst:119 +#: deprecations/pending-removal-in-3.14.rst:102 msgid "" ":mod:`typing`: :class:`~typing.ByteString`, deprecated since Python 3.9, now " "causes a :exc:`DeprecationWarning` to be emitted when it is used." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:122 +#: deprecations/pending-removal-in-3.14.rst:105 msgid "" ":mod:`urllib`: :class:`!urllib.parse.Quoter` is deprecated: it was not " "intended to be a public API. (Contributed by Gregory P. Smith in :gh:" diff --git a/deprecations/pending-removal-in-3.15.po b/deprecations/pending-removal-in-3.15.po index 2074d7f0f..e144031f3 100644 --- a/deprecations/pending-removal-in-3.15.po +++ b/deprecations/pending-removal-in-3.15.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -30,6 +30,14 @@ msgid "" msgstr "" #: deprecations/pending-removal-in-3.15.rst:9 +msgid ":mod:`importlib`:" +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:11 +msgid "``load_module()`` method: use ``exec_module()`` instead." +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:13 msgid "" ":class:`locale`: :func:`locale.getdefaultlocale` was deprecated in Python " "3.11 and originally planned for removal in Python 3.13 (:gh:`90817`), but " @@ -38,21 +46,31 @@ msgid "" "by Hugo van Kemenade in :gh:`111187`.)" msgstr "" -#: deprecations/pending-removal-in-3.15.rst:16 +#: deprecations/pending-removal-in-3.15.rst:20 msgid "" ":mod:`pathlib`: :meth:`pathlib.PurePath.is_reserved` is deprecated and " "scheduled for removal in Python 3.15. From Python 3.13 onwards, use ``os." "path.isreserved`` to detect reserved paths on Windows." msgstr "" -#: deprecations/pending-removal-in-3.15.rst:21 +#: deprecations/pending-removal-in-3.15.rst:25 msgid "" ":mod:`platform`: :func:`~platform.java_ver` is deprecated and will be " "removed in 3.15. It was largely untested, had a confusing API, and was only " "useful for Jython support. (Contributed by Nikita Sobolev in :gh:`116349`.)" msgstr "" -#: deprecations/pending-removal-in-3.15.rst:27 +#: deprecations/pending-removal-in-3.15.rst:31 +msgid ":mod:`sysconfig`:" +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:33 +msgid "" +"The *check_home* argument of :func:`sysconfig.is_python_build` has been " +"deprecated since Python 3.12." +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:36 msgid "" ":mod:`threading`: Passing any arguments to :func:`threading.RLock` is now " "deprecated. C version allows any numbers of args and kwargs, but they are " @@ -61,11 +79,11 @@ msgid "" "Nikita Sobolev in :gh:`102029`.)" msgstr "" -#: deprecations/pending-removal-in-3.15.rst:34 +#: deprecations/pending-removal-in-3.15.rst:43 msgid ":class:`typing.NamedTuple`:" msgstr "" -#: deprecations/pending-removal-in-3.15.rst:36 +#: deprecations/pending-removal-in-3.15.rst:45 msgid "" "The undocumented keyword argument syntax for creating :class:`!NamedTuple` " "classes (``NT = NamedTuple(\"NT\", x=int)``) is deprecated, and will be " @@ -73,7 +91,23 @@ msgid "" "instead." msgstr "" -#: deprecations/pending-removal-in-3.15.rst:40 +#: deprecations/pending-removal-in-3.15.rst:49 +msgid ":mod:`types`:" +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:51 +msgid "" +":class:`types.CodeType`: Accessing :attr:`~codeobject.co_lnotab` was " +"deprecated in :pep:`626` since 3.10 and was planned to be removed in 3.12, " +"but it only got a proper :exc:`DeprecationWarning` in 3.12. May be removed " +"in 3.15. (Contributed by Nikita Sobolev in :gh:`101866`.)" +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:58 +msgid ":mod:`typing`:" +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:60 msgid "" "When using the functional syntax to create a :class:`!NamedTuple` class, " "failing to pass a value to the *fields* parameter (``NT = " @@ -84,7 +118,7 @@ msgid "" "[])``." msgstr "" -#: deprecations/pending-removal-in-3.15.rst:47 +#: deprecations/pending-removal-in-3.15.rst:67 msgid "" ":class:`typing.TypedDict`: When using the functional syntax to create a :" "class:`!TypedDict` class, failing to pass a value to the *fields* parameter " @@ -94,7 +128,7 @@ msgid "" "fields, use ``class TD(TypedDict): pass`` or ``TD = TypedDict(\"TD\", {})``." msgstr "" -#: deprecations/pending-removal-in-3.15.rst:54 +#: deprecations/pending-removal-in-3.15.rst:74 msgid "" ":mod:`wave`: Deprecate the ``getmark()``, ``setmark()`` and ``getmarkers()`` " "methods of the :class:`wave.Wave_read` and :class:`wave.Wave_write` classes. " diff --git a/deprecations/pending-removal-in-3.16.po b/deprecations/pending-removal-in-3.16.po index 9526b7b03..df03b58b8 100644 --- a/deprecations/pending-removal-in-3.16.po +++ b/deprecations/pending-removal-in-3.16.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -22,16 +22,28 @@ msgid "Pending Removal in Python 3.16" msgstr "" #: deprecations/pending-removal-in-3.16.rst:4 +msgid "The import system:" +msgstr "" + +#: deprecations/pending-removal-in-3.16.rst:6 +msgid "" +"Setting :attr:`~module.__loader__` on a module while failing to set :attr:" +"`__spec__.loader ` is deprecated. In " +"Python 3.16, :attr:`!__loader__` will cease to be set or taken into " +"consideration by the import system or the standard library." +msgstr "" + +#: deprecations/pending-removal-in-3.16.rst:11 msgid "" ":mod:`array`: :class:`array.array` ``'u'`` type (:c:type:`wchar_t`): use the " "``'w'`` type instead (``Py_UCS4``)." msgstr "" -#: deprecations/pending-removal-in-3.16.rst:8 +#: deprecations/pending-removal-in-3.16.rst:15 msgid ":mod:`builtins`: ``~bool``, bitwise inversion on bool." msgstr "" -#: deprecations/pending-removal-in-3.16.rst:11 +#: deprecations/pending-removal-in-3.16.rst:18 msgid "" ":mod:`symtable`: Deprecate :meth:`symtable.Class.get_methods` due to the " "lack of interest. (Contributed by Bénédikt Tran in :gh:`119698`.)" diff --git a/deprecations/pending-removal-in-future.po b/deprecations/pending-removal-in-future.po index d65a890d5..63d0e6988 100644 --- a/deprecations/pending-removal-in-future.po +++ b/deprecations/pending-removal-in-future.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -135,45 +135,41 @@ msgid ":mod:`importlib`:" msgstr "" #: deprecations/pending-removal-in-future.rst:60 -msgid "``load_module()`` method: use ``exec_module()`` instead." -msgstr "" - -#: deprecations/pending-removal-in-future.rst:61 msgid "" ":func:`~importlib.util.cache_from_source` *debug_override* parameter is " "deprecated: use the *optimization* parameter instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:64 +#: deprecations/pending-removal-in-future.rst:63 msgid ":mod:`importlib.metadata`:" msgstr "" -#: deprecations/pending-removal-in-future.rst:66 +#: deprecations/pending-removal-in-future.rst:65 msgid "``EntryPoints`` tuple interface." msgstr "" -#: deprecations/pending-removal-in-future.rst:67 +#: deprecations/pending-removal-in-future.rst:66 msgid "Implicit ``None`` on return values." msgstr "" -#: deprecations/pending-removal-in-future.rst:69 +#: deprecations/pending-removal-in-future.rst:68 msgid "" ":mod:`mailbox`: Use of StringIO input and text mode is deprecated, use " "BytesIO and binary mode instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:72 +#: deprecations/pending-removal-in-future.rst:71 msgid "" ":mod:`os`: Calling :func:`os.register_at_fork` in multi-threaded process." msgstr "" -#: deprecations/pending-removal-in-future.rst:74 +#: deprecations/pending-removal-in-future.rst:73 msgid "" ":class:`!pydoc.ErrorDuringImport`: A tuple value for *exc_info* parameter is " "deprecated, use an exception instance." msgstr "" -#: deprecations/pending-removal-in-future.rst:77 +#: deprecations/pending-removal-in-future.rst:76 msgid "" ":mod:`re`: More strict rules are now applied for numerical group references " "and group names in regular expressions. Only sequence of ASCII digits is " @@ -182,185 +178,179 @@ msgid "" "underscore. (Contributed by Serhiy Storchaka in :gh:`91760`.)" msgstr "" -#: deprecations/pending-removal-in-future.rst:84 +#: deprecations/pending-removal-in-future.rst:83 msgid "" ":mod:`!sre_compile`, :mod:`!sre_constants` and :mod:`!sre_parse` modules." msgstr "" -#: deprecations/pending-removal-in-future.rst:86 +#: deprecations/pending-removal-in-future.rst:85 msgid "" ":mod:`shutil`: :func:`~shutil.rmtree`'s *onerror* parameter is deprecated in " "Python 3.12; use the *onexc* parameter instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:89 +#: deprecations/pending-removal-in-future.rst:88 msgid ":mod:`ssl` options and protocols:" msgstr "" -#: deprecations/pending-removal-in-future.rst:91 +#: deprecations/pending-removal-in-future.rst:90 msgid ":class:`ssl.SSLContext` without protocol argument is deprecated." msgstr "" -#: deprecations/pending-removal-in-future.rst:92 +#: deprecations/pending-removal-in-future.rst:91 msgid "" ":class:`ssl.SSLContext`: :meth:`~ssl.SSLContext.set_npn_protocols` and :meth:" "`!selected_npn_protocol` are deprecated: use ALPN instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:95 +#: deprecations/pending-removal-in-future.rst:94 msgid "``ssl.OP_NO_SSL*`` options" msgstr "" -#: deprecations/pending-removal-in-future.rst:96 +#: deprecations/pending-removal-in-future.rst:95 msgid "``ssl.OP_NO_TLS*`` options" msgstr "" -#: deprecations/pending-removal-in-future.rst:97 +#: deprecations/pending-removal-in-future.rst:96 msgid "``ssl.PROTOCOL_SSLv3``" msgstr "" -#: deprecations/pending-removal-in-future.rst:98 +#: deprecations/pending-removal-in-future.rst:97 msgid "``ssl.PROTOCOL_TLS``" msgstr "" -#: deprecations/pending-removal-in-future.rst:99 +#: deprecations/pending-removal-in-future.rst:98 msgid "``ssl.PROTOCOL_TLSv1``" msgstr "" -#: deprecations/pending-removal-in-future.rst:100 +#: deprecations/pending-removal-in-future.rst:99 msgid "``ssl.PROTOCOL_TLSv1_1``" msgstr "" -#: deprecations/pending-removal-in-future.rst:101 +#: deprecations/pending-removal-in-future.rst:100 msgid "``ssl.PROTOCOL_TLSv1_2``" msgstr "" -#: deprecations/pending-removal-in-future.rst:102 +#: deprecations/pending-removal-in-future.rst:101 msgid "``ssl.TLSVersion.SSLv3``" msgstr "" -#: deprecations/pending-removal-in-future.rst:103 +#: deprecations/pending-removal-in-future.rst:102 msgid "``ssl.TLSVersion.TLSv1``" msgstr "" -#: deprecations/pending-removal-in-future.rst:104 +#: deprecations/pending-removal-in-future.rst:103 msgid "``ssl.TLSVersion.TLSv1_1``" msgstr "" -#: deprecations/pending-removal-in-future.rst:106 -msgid "" -":func:`sysconfig.is_python_build` *check_home* parameter is deprecated and " -"ignored." -msgstr "" - -#: deprecations/pending-removal-in-future.rst:109 +#: deprecations/pending-removal-in-future.rst:105 msgid ":mod:`threading` methods:" msgstr "" -#: deprecations/pending-removal-in-future.rst:111 +#: deprecations/pending-removal-in-future.rst:107 msgid "" ":meth:`!threading.Condition.notifyAll`: use :meth:`~threading.Condition." "notify_all`." msgstr "" -#: deprecations/pending-removal-in-future.rst:112 +#: deprecations/pending-removal-in-future.rst:108 msgid ":meth:`!threading.Event.isSet`: use :meth:`~threading.Event.is_set`." msgstr "" -#: deprecations/pending-removal-in-future.rst:113 +#: deprecations/pending-removal-in-future.rst:109 msgid "" ":meth:`!threading.Thread.isDaemon`, :meth:`threading.Thread.setDaemon`: use :" "attr:`threading.Thread.daemon` attribute." msgstr "" -#: deprecations/pending-removal-in-future.rst:115 +#: deprecations/pending-removal-in-future.rst:111 msgid "" ":meth:`!threading.Thread.getName`, :meth:`threading.Thread.setName`: use :" "attr:`threading.Thread.name` attribute." msgstr "" -#: deprecations/pending-removal-in-future.rst:117 +#: deprecations/pending-removal-in-future.rst:113 msgid ":meth:`!threading.currentThread`: use :meth:`threading.current_thread`." msgstr "" -#: deprecations/pending-removal-in-future.rst:118 +#: deprecations/pending-removal-in-future.rst:114 msgid ":meth:`!threading.activeCount`: use :meth:`threading.active_count`." msgstr "" -#: deprecations/pending-removal-in-future.rst:120 +#: deprecations/pending-removal-in-future.rst:116 msgid ":class:`typing.Text` (:gh:`92332`)." msgstr "" -#: deprecations/pending-removal-in-future.rst:122 +#: deprecations/pending-removal-in-future.rst:118 msgid "" ":class:`unittest.IsolatedAsyncioTestCase`: it is deprecated to return a " "value that is not ``None`` from a test case." msgstr "" -#: deprecations/pending-removal-in-future.rst:125 +#: deprecations/pending-removal-in-future.rst:121 msgid "" ":mod:`urllib.parse` deprecated functions: :func:`~urllib.parse.urlparse` " "instead" msgstr "" -#: deprecations/pending-removal-in-future.rst:127 +#: deprecations/pending-removal-in-future.rst:123 msgid "``splitattr()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:128 +#: deprecations/pending-removal-in-future.rst:124 msgid "``splithost()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:129 +#: deprecations/pending-removal-in-future.rst:125 msgid "``splitnport()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:130 +#: deprecations/pending-removal-in-future.rst:126 msgid "``splitpasswd()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:131 +#: deprecations/pending-removal-in-future.rst:127 msgid "``splitport()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:132 +#: deprecations/pending-removal-in-future.rst:128 msgid "``splitquery()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:133 +#: deprecations/pending-removal-in-future.rst:129 msgid "``splittag()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:134 +#: deprecations/pending-removal-in-future.rst:130 msgid "``splittype()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:135 +#: deprecations/pending-removal-in-future.rst:131 msgid "``splituser()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:136 +#: deprecations/pending-removal-in-future.rst:132 msgid "``splitvalue()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:137 +#: deprecations/pending-removal-in-future.rst:133 msgid "``to_bytes()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:139 +#: deprecations/pending-removal-in-future.rst:135 msgid "" ":mod:`urllib.request`: :class:`~urllib.request.URLopener` and :class:" "`~urllib.request.FancyURLopener` style of invoking requests is deprecated. " "Use newer :func:`~urllib.request.urlopen` functions and methods." msgstr "" -#: deprecations/pending-removal-in-future.rst:143 +#: deprecations/pending-removal-in-future.rst:139 msgid "" ":mod:`wsgiref`: ``SimpleHandler.stdout.write()`` should not do partial " "writes." msgstr "" -#: deprecations/pending-removal-in-future.rst:146 +#: deprecations/pending-removal-in-future.rst:142 msgid "" ":mod:`xml.etree.ElementTree`: Testing the truth value of an :class:`~xml." "etree.ElementTree.Element` is deprecated. In a future release it will always " @@ -368,7 +358,7 @@ msgid "" "instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:151 +#: deprecations/pending-removal-in-future.rst:147 msgid "" ":meth:`zipimport.zipimporter.load_module` is deprecated: use :meth:" "`~zipimport.zipimporter.exec_module` instead." diff --git a/extending/embedding.po b/extending/embedding.po index 6c91190d5..8618aabb4 100644 --- a/extending/embedding.po +++ b/extending/embedding.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2022-12-29 00:34-0500\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -408,10 +408,11 @@ msgid "" msgstr "" #: extending/embedding.rst:178 +#, fuzzy msgid "" "After initializing the interpreter, the script is loaded using :c:func:" "`PyImport_Import`. This routine needs a Python string as its argument, " -"which is constructed using the :c:func:`PyUnicode_FromString` data " +"which is constructed using the :c:func:`PyUnicode_DecodeFSDefault` data " "conversion routine. ::" msgstr "" "Yorumlayıcıyı başlattıktan sonra komut dosyası :c:func:`PyImport_Import` " diff --git a/faq/general.po b/faq/general.po index a4f73ce1a..16e77061c 100644 --- a/faq/general.po +++ b/faq/general.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -633,7 +633,7 @@ msgstr "" #: faq/general.rst:411 msgid "" ">>> L = []\n" -">>> dir(L) \n" +">>> dir(L)\n" "['__add__', '__class__', '__contains__', '__delattr__', '__delitem__',\n" "'__dir__', '__doc__', '__eq__', '__format__', '__ge__',\n" "'__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__',\n" diff --git a/faq/programming.po b/faq/programming.po index 19a66cad6..162f27715 100644 --- a/faq/programming.po +++ b/faq/programming.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -2874,18 +2874,17 @@ msgstr "" #: faq/programming.rst:1908 msgid "" -"1) As recommended by :pep:`8`, an identity test is the preferred way to " -"check for ``None``. This reads like plain English in code and avoids " -"confusion with other objects that may have boolean values that evaluate to " -"false." +"As recommended by :pep:`8`, an identity test is the preferred way to check " +"for ``None``. This reads like plain English in code and avoids confusion " +"with other objects that may have boolean values that evaluate to false." msgstr "" #: faq/programming.rst:1912 msgid "" -"2) Detecting optional arguments can be tricky when ``None`` is a valid input " +"Detecting optional arguments can be tricky when ``None`` is a valid input " "value. In those situations, you can create a singleton sentinel object " "guaranteed to be distinct from other objects. For example, here is how to " -"implement a method that behaves like :meth:`dict.pop`::" +"implement a method that behaves like :meth:`dict.pop`:" msgstr "" #: faq/programming.rst:1917 @@ -2902,20 +2901,20 @@ msgid "" " return default" msgstr "" -#: faq/programming.rst:1928 +#: faq/programming.rst:1930 msgid "" -"3) Container implementations sometimes need to augment equality tests with " +"Container implementations sometimes need to augment equality tests with " "identity tests. This prevents the code from being confused by objects such " "as ``float('NaN')`` that are not equal to themselves." msgstr "" -#: faq/programming.rst:1932 +#: faq/programming.rst:1934 msgid "" "For example, here is the implementation of :meth:`!collections.abc.Sequence." "__contains__`::" msgstr "" -#: faq/programming.rst:1935 +#: faq/programming.rst:1937 msgid "" "def __contains__(self, value):\n" " for v in self:\n" @@ -2924,12 +2923,12 @@ msgid "" " return False" msgstr "" -#: faq/programming.rst:1943 +#: faq/programming.rst:1945 msgid "" "How can a subclass control what data is stored in an immutable instance?" msgstr "" -#: faq/programming.rst:1945 +#: faq/programming.rst:1947 msgid "" "When subclassing an immutable type, override the :meth:`~object.__new__` " "method instead of the :meth:`~object.__init__` method. The latter only runs " @@ -2937,13 +2936,13 @@ msgid "" "immutable instance." msgstr "" -#: faq/programming.rst:1950 +#: faq/programming.rst:1952 msgid "" "All of these immutable classes have a different signature than their parent " "class:" msgstr "" -#: faq/programming.rst:1953 +#: faq/programming.rst:1955 msgid "" "from datetime import date\n" "\n" @@ -2967,11 +2966,11 @@ msgid "" " return super().__new__(cls, s)" msgstr "" -#: faq/programming.rst:1976 +#: faq/programming.rst:1978 msgid "The classes can be used like this:" msgstr "" -#: faq/programming.rst:1978 +#: faq/programming.rst:1980 msgid "" ">>> FirstOfMonthDate(2012, 2, 14)\n" "FirstOfMonthDate(2012, 2, 1)\n" @@ -2983,25 +2982,25 @@ msgid "" "'blog-why-python-rocks'" msgstr "" -#: faq/programming.rst:1993 +#: faq/programming.rst:1995 msgid "How do I cache method calls?" msgstr "" -#: faq/programming.rst:1995 +#: faq/programming.rst:1997 msgid "" "The two principal tools for caching methods are :func:`functools." "cached_property` and :func:`functools.lru_cache`. The former stores results " "at the instance level and the latter at the class level." msgstr "" -#: faq/programming.rst:2000 +#: faq/programming.rst:2002 msgid "" "The *cached_property* approach only works with methods that do not take any " "arguments. It does not create a reference to the instance. The cached " "method result will be kept only as long as the instance is alive." msgstr "" -#: faq/programming.rst:2004 +#: faq/programming.rst:2006 msgid "" "The advantage is that when an instance is no longer used, the cached method " "result will be released right away. The disadvantage is that if instances " @@ -3009,25 +3008,25 @@ msgid "" "without bound." msgstr "" -#: faq/programming.rst:2009 +#: faq/programming.rst:2011 msgid "" "The *lru_cache* approach works with methods that have :term:`hashable` " "arguments. It creates a reference to the instance unless special efforts " "are made to pass in weak references." msgstr "" -#: faq/programming.rst:2013 +#: faq/programming.rst:2015 msgid "" "The advantage of the least recently used algorithm is that the cache is " "bounded by the specified *maxsize*. The disadvantage is that instances are " "kept alive until they age out of the cache or until the cache is cleared." msgstr "" -#: faq/programming.rst:2018 +#: faq/programming.rst:2020 msgid "This example shows the various techniques::" msgstr "" -#: faq/programming.rst:2020 +#: faq/programming.rst:2022 msgid "" "class Weather:\n" " \"Lookup weather information on a government website\"\n" @@ -3052,21 +3051,21 @@ msgid "" " # Depends on the station_id, date, and units." msgstr "" -#: faq/programming.rst:2042 +#: faq/programming.rst:2044 msgid "" "The above example assumes that the *station_id* never changes. If the " "relevant instance attributes are mutable, the *cached_property* approach " "can't be made to work because it cannot detect changes to the attributes." msgstr "" -#: faq/programming.rst:2047 +#: faq/programming.rst:2049 msgid "" "To make the *lru_cache* approach work when the *station_id* is mutable, the " "class needs to define the :meth:`~object.__eq__` and :meth:`~object." "__hash__` methods so that the cache can detect relevant attribute updates::" msgstr "" -#: faq/programming.rst:2051 +#: faq/programming.rst:2053 msgid "" "class Weather:\n" " \"Example with a mutable station identifier\"\n" @@ -3089,15 +3088,15 @@ msgid "" " # Depends on the station_id, date, and units." msgstr "" -#: faq/programming.rst:2073 +#: faq/programming.rst:2075 msgid "Modules" msgstr "" -#: faq/programming.rst:2076 +#: faq/programming.rst:2078 msgid "How do I create a .pyc file?" msgstr "" -#: faq/programming.rst:2078 +#: faq/programming.rst:2080 msgid "" "When a module is imported for the first time (or when the source file has " "changed since the current compiled file was created) a ``.pyc`` file " @@ -3108,7 +3107,7 @@ msgid "" "particular ``python`` binary that created it. (See :pep:`3147` for details.)" msgstr "" -#: faq/programming.rst:2086 +#: faq/programming.rst:2088 msgid "" "One reason that a ``.pyc`` file may not be created is a permissions problem " "with the directory containing the source file, meaning that the " @@ -3117,7 +3116,7 @@ msgid "" "testing with a web server." msgstr "" -#: faq/programming.rst:2091 +#: faq/programming.rst:2093 msgid "" "Unless the :envvar:`PYTHONDONTWRITEBYTECODE` environment variable is set, " "creation of a .pyc file is automatic if you're importing a module and Python " @@ -3126,7 +3125,7 @@ msgid "" "subdirectory." msgstr "" -#: faq/programming.rst:2096 +#: faq/programming.rst:2098 msgid "" "Running Python on a top level script is not considered an import and no ``." "pyc`` will be created. For example, if you have a top-level module ``foo." @@ -3136,33 +3135,33 @@ msgid "" "for ``foo`` since ``foo.py`` isn't being imported." msgstr "" -#: faq/programming.rst:2103 +#: faq/programming.rst:2105 msgid "" "If you need to create a ``.pyc`` file for ``foo`` -- that is, to create a ``." "pyc`` file for a module that is not imported -- you can, using the :mod:" "`py_compile` and :mod:`compileall` modules." msgstr "" -#: faq/programming.rst:2107 +#: faq/programming.rst:2109 msgid "" "The :mod:`py_compile` module can manually compile any module. One way is to " "use the ``compile()`` function in that module interactively::" msgstr "" -#: faq/programming.rst:2110 +#: faq/programming.rst:2112 msgid "" ">>> import py_compile\n" -">>> py_compile.compile('foo.py') " +">>> py_compile.compile('foo.py')" msgstr "" -#: faq/programming.rst:2113 +#: faq/programming.rst:2115 msgid "" "This will write the ``.pyc`` to a ``__pycache__`` subdirectory in the same " "location as ``foo.py`` (or you can override that with the optional parameter " "``cfile``)." msgstr "" -#: faq/programming.rst:2117 +#: faq/programming.rst:2119 msgid "" "You can also automatically compile all files in a directory or directories " "using the :mod:`compileall` module. You can do it from the shell prompt by " @@ -3170,15 +3169,15 @@ msgid "" "Python files to compile::" msgstr "" -#: faq/programming.rst:2122 +#: faq/programming.rst:2124 msgid "python -m compileall ." msgstr "" -#: faq/programming.rst:2126 +#: faq/programming.rst:2128 msgid "How do I find the current module name?" msgstr "" -#: faq/programming.rst:2128 +#: faq/programming.rst:2130 msgid "" "A module can find out its own module name by looking at the predefined " "global variable ``__name__``. If this has the value ``'__main__'``, the " @@ -3187,7 +3186,7 @@ msgid "" "only execute this code after checking ``__name__``::" msgstr "" -#: faq/programming.rst:2134 +#: faq/programming.rst:2136 msgid "" "def main():\n" " print('Running test...')\n" @@ -3197,91 +3196,91 @@ msgid "" " main()" msgstr "" -#: faq/programming.rst:2143 +#: faq/programming.rst:2145 msgid "How can I have modules that mutually import each other?" msgstr "" -#: faq/programming.rst:2145 +#: faq/programming.rst:2147 msgid "Suppose you have the following modules:" msgstr "" -#: faq/programming.rst:2147 +#: faq/programming.rst:2149 msgid ":file:`foo.py`::" msgstr "" -#: faq/programming.rst:2149 +#: faq/programming.rst:2151 msgid "" "from bar import bar_var\n" "foo_var = 1" msgstr "" -#: faq/programming.rst:2152 +#: faq/programming.rst:2154 msgid ":file:`bar.py`::" msgstr "" -#: faq/programming.rst:2154 +#: faq/programming.rst:2156 msgid "" "from foo import foo_var\n" "bar_var = 2" msgstr "" -#: faq/programming.rst:2157 +#: faq/programming.rst:2159 msgid "The problem is that the interpreter will perform the following steps:" msgstr "" -#: faq/programming.rst:2159 +#: faq/programming.rst:2161 msgid "main imports ``foo``" msgstr "" -#: faq/programming.rst:2160 +#: faq/programming.rst:2162 msgid "Empty globals for ``foo`` are created" msgstr "" -#: faq/programming.rst:2161 +#: faq/programming.rst:2163 msgid "``foo`` is compiled and starts executing" msgstr "" -#: faq/programming.rst:2162 +#: faq/programming.rst:2164 msgid "``foo`` imports ``bar``" msgstr "" -#: faq/programming.rst:2163 +#: faq/programming.rst:2165 msgid "Empty globals for ``bar`` are created" msgstr "" -#: faq/programming.rst:2164 +#: faq/programming.rst:2166 msgid "``bar`` is compiled and starts executing" msgstr "" -#: faq/programming.rst:2165 +#: faq/programming.rst:2167 msgid "" "``bar`` imports ``foo`` (which is a no-op since there already is a module " "named ``foo``)" msgstr "" -#: faq/programming.rst:2166 +#: faq/programming.rst:2168 msgid "" "The import mechanism tries to read ``foo_var`` from ``foo`` globals, to set " "``bar.foo_var = foo.foo_var``" msgstr "" -#: faq/programming.rst:2168 +#: faq/programming.rst:2170 msgid "" "The last step fails, because Python isn't done with interpreting ``foo`` yet " "and the global symbol dictionary for ``foo`` is still empty." msgstr "" -#: faq/programming.rst:2171 +#: faq/programming.rst:2173 msgid "" "The same thing happens when you use ``import foo``, and then try to access " "``foo.foo_var`` in global code." msgstr "" -#: faq/programming.rst:2174 +#: faq/programming.rst:2176 msgid "There are (at least) three possible workarounds for this problem." msgstr "" -#: faq/programming.rst:2176 +#: faq/programming.rst:2178 msgid "" "Guido van Rossum recommends avoiding all uses of ``from import ..." "``, and placing all code inside functions. Initializations of global " @@ -3290,63 +3289,63 @@ msgid "" "``.``." msgstr "" -#: faq/programming.rst:2181 +#: faq/programming.rst:2183 msgid "" "Jim Roskind suggests performing steps in the following order in each module:" msgstr "" -#: faq/programming.rst:2183 +#: faq/programming.rst:2185 msgid "" "exports (globals, functions, and classes that don't need imported base " "classes)" msgstr "" -#: faq/programming.rst:2185 +#: faq/programming.rst:2187 msgid "``import`` statements" msgstr "" -#: faq/programming.rst:2186 +#: faq/programming.rst:2188 msgid "" "active code (including globals that are initialized from imported values)." msgstr "" -#: faq/programming.rst:2188 +#: faq/programming.rst:2190 msgid "" "Van Rossum doesn't like this approach much because the imports appear in a " "strange place, but it does work." msgstr "" -#: faq/programming.rst:2191 +#: faq/programming.rst:2193 msgid "" "Matthias Urlichs recommends restructuring your code so that the recursive " "import is not necessary in the first place." msgstr "" -#: faq/programming.rst:2194 +#: faq/programming.rst:2196 msgid "These solutions are not mutually exclusive." msgstr "" -#: faq/programming.rst:2198 +#: faq/programming.rst:2200 msgid "__import__('x.y.z') returns ; how do I get z?" msgstr "" -#: faq/programming.rst:2200 +#: faq/programming.rst:2202 msgid "" "Consider using the convenience function :func:`~importlib.import_module` " "from :mod:`importlib` instead::" msgstr "" -#: faq/programming.rst:2203 +#: faq/programming.rst:2205 msgid "z = importlib.import_module('x.y.z')" msgstr "" -#: faq/programming.rst:2207 +#: faq/programming.rst:2209 msgid "" "When I edit an imported module and reimport it, the changes don't show up. " "Why does this happen?" msgstr "" -#: faq/programming.rst:2209 +#: faq/programming.rst:2211 msgid "" "For reasons of efficiency as well as consistency, Python only reads the " "module file on the first time a module is imported. If it didn't, in a " @@ -3355,24 +3354,24 @@ msgid "" "re-reading of a changed module, do this::" msgstr "" -#: faq/programming.rst:2215 +#: faq/programming.rst:2217 msgid "" "import importlib\n" "import modname\n" "importlib.reload(modname)" msgstr "" -#: faq/programming.rst:2219 +#: faq/programming.rst:2221 msgid "" "Warning: this technique is not 100% fool-proof. In particular, modules " "containing statements like ::" msgstr "" -#: faq/programming.rst:2222 +#: faq/programming.rst:2224 msgid "from modname import some_objects" msgstr "" -#: faq/programming.rst:2224 +#: faq/programming.rst:2226 msgid "" "will continue to work with the old version of the imported objects. If the " "module contains class definitions, existing class instances will *not* be " @@ -3380,7 +3379,7 @@ msgid "" "paradoxical behaviour::" msgstr "" -#: faq/programming.rst:2229 +#: faq/programming.rst:2231 msgid "" ">>> import importlib\n" ">>> import cls\n" @@ -3391,13 +3390,13 @@ msgid "" "False" msgstr "" -#: faq/programming.rst:2237 +#: faq/programming.rst:2239 msgid "" "The nature of the problem is made clear if you print out the \"identity\" of " "the class objects::" msgstr "" -#: faq/programming.rst:2240 +#: faq/programming.rst:2242 msgid "" ">>> hex(id(c.__class__))\n" "'0x7352a0'\n" diff --git a/glossary.po b/glossary.po index 0dae09fa2..0aa42a835 100644 --- a/glossary.po +++ b/glossary.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2022-12-28 16:12-0500\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -288,10 +288,10 @@ msgstr "" #, fuzzy msgid "" "Each :keyword:`yield` temporarily suspends processing, remembering the " -"location execution state (including local variables and pending try-" -"statements). When the *asynchronous generator iterator* effectively resumes " -"with another awaitable returned by :meth:`~object.__anext__`, it picks up " -"where it left off. See :pep:`492` and :pep:`525`." +"execution state (including local variables and pending try-statements). " +"When the *asynchronous generator iterator* effectively resumes with another " +"awaitable returned by :meth:`~object.__anext__`, it picks up where it left " +"off. See :pep:`492` and :pep:`525`." msgstr "" "Her :keyword:`yield`, konum yürütme durumunu hatırlayarak (yerel değişkenler " "ve bekleyen try ifadeleri dahil) işlemeyi geçici olarak askıya alır. " @@ -1222,11 +1222,12 @@ msgid "An object created by a :term:`generator` function." msgstr "Bir :term:`generator` işlevi tarafından oluşturulan bir nesne." #: glossary.rst:507 +#, fuzzy msgid "" "Each :keyword:`yield` temporarily suspends processing, remembering the " -"location execution state (including local variables and pending try-" -"statements). When the *generator iterator* resumes, it picks up where it " -"left off (in contrast to functions which start fresh on every invocation)." +"execution state (including local variables and pending try-statements). " +"When the *generator iterator* resumes, it picks up where it left off (in " +"contrast to functions which start fresh on every invocation)." msgstr "" "Her :keyword:`yield`, konum yürütme durumunu hatırlayarak (yerel değişkenler " "ve bekleyen try ifadeleri dahil) işlemeyi geçici olarak askıya alır. " @@ -1583,8 +1584,8 @@ msgid "" "iterables include all sequence types (such as :class:`list`, :class:`str`, " "and :class:`tuple`) and some non-sequence types like :class:`dict`, :term:" "`file objects `, and objects of any classes you define with an :" -"meth:`~iterator.__iter__` method or with a :meth:`~object.__getitem__` " -"method that implements :term:`sequence` semantics." +"meth:`~object.__iter__` method or with a :meth:`~object.__getitem__` method " +"that implements :term:`sequence` semantics." msgstr "" "Üyelerini teker teker döndürebilen bir nesne. Yineleme örnekleri, tüm dizi " "türlerini (:class:`list`, :class:`str`, ve :class:`tuple` gibi) ve :class:" @@ -1720,7 +1721,7 @@ msgstr "" msgid "keyword argument" msgstr "anahtar kelime argümanı" -#: glossary.rst:1013 +#: glossary.rst:1024 msgid "See :term:`argument`." msgstr "Bakınız :term:`argument`." @@ -1768,10 +1769,18 @@ msgstr "" "sorun, kilitlerle veya EAFP yaklaşımı kullanılarak çözülebilir." #: glossary.rst:736 +msgid "lexical analyzer" +msgstr "" + +#: glossary.rst:739 +msgid "Formal name for the *tokenizer*; see :term:`token`." +msgstr "" + +#: glossary.rst:740 msgid "list" msgstr "liste" -#: glossary.rst:738 +#: glossary.rst:742 #, fuzzy msgid "" "A built-in Python :term:`sequence`. Despite its name it is more akin to an " @@ -1782,11 +1791,11 @@ msgstr "" "olduğundan, diğer dillerdeki bir diziye, bağlantılı bir listeden daha " "yakındır." -#: glossary.rst:741 +#: glossary.rst:745 msgid "list comprehension" msgstr "liste anlama" -#: glossary.rst:743 +#: glossary.rst:747 msgid "" "A compact way to process all or part of the elements in a sequence and " "return a list with the results. ``result = ['{:#04x}'.format(x) for x in " @@ -1801,39 +1810,41 @@ msgstr "" "tümcesi isteğe bağlıdır. Atlanırsa, \"aralık(256)\" içindeki tüm öğeler " "işlenir." -#: glossary.rst:749 +#: glossary.rst:753 msgid "loader" msgstr "yükleyici" -#: glossary.rst:751 +#: glossary.rst:755 #, fuzzy msgid "" -"An object that loads a module. It must define a method named :meth:" -"`load_module`. A loader is typically returned by a :term:`finder`. See also:" +"An object that loads a module. It must define the :meth:`!exec_module` and :" +"meth:`!create_module` methods to implement the :class:`~importlib.abc." +"Loader` interface. A loader is typically returned by a :term:`finder`. See " +"also:" msgstr "" "Modül yükleyen bir nesne. :meth:`load_module` adında bir yöntem " "tanımlamalıdır. Bir yükleyici genellikle bir :term:`finder` ile döndürülür. " "Ayrıntılar için :pep:`302` ve bir :term:`soyut temel sınıf` için :class:" "`importlib.abc.Loader` bölümüne bakın." -#: glossary.rst:755 +#: glossary.rst:761 msgid ":ref:`finders-and-loaders`" msgstr "" -#: glossary.rst:756 +#: glossary.rst:762 msgid ":class:`importlib.abc.Loader`" msgstr "" -#: glossary.rst:757 +#: glossary.rst:763 #, fuzzy msgid ":pep:`302`" msgstr "Bakınız :pep:`1`." -#: glossary.rst:758 +#: glossary.rst:764 msgid "locale encoding" msgstr "yerel kodlama" -#: glossary.rst:760 +#: glossary.rst:766 msgid "" "On Unix, it is the encoding of the LC_CTYPE locale. It can be set with :func:" "`locale.setlocale(locale.LC_CTYPE, new_locale) `." @@ -1841,38 +1852,38 @@ msgstr "" "Unix'te, LC_CTYPE yerel ayarının kodlamasıdır. :func:`locale." "setlocale(locale.LC_CTYPE, new_locale) ` ile ayarlanabilir." -#: glossary.rst:763 +#: glossary.rst:769 msgid "On Windows, it is the ANSI code page (ex: ``\"cp1252\"``)." msgstr "Windows'ta bu, ANSI kod sayfasıdır (ör. ``\"cp1252\"``)." -#: glossary.rst:765 +#: glossary.rst:771 msgid "" "On Android and VxWorks, Python uses ``\"utf-8\"`` as the locale encoding." msgstr "" "Android ve VxWorks'te Python, yerel kodlama olarak ``\"utf-8\"`` kullanır." -#: glossary.rst:767 +#: glossary.rst:773 #, fuzzy msgid ":func:`locale.getencoding` can be used to get the locale encoding." msgstr "Yerel kodlamayı almak için ``locale.getencoding()`` kullanılabilir." -#: glossary.rst:769 +#: glossary.rst:775 msgid "See also the :term:`filesystem encoding and error handler`." msgstr "Ayrıca :term:`filesystem encoding and error handler` 'ne bakın." -#: glossary.rst:770 +#: glossary.rst:776 msgid "magic method" msgstr "sihirli yöntem" -#: glossary.rst:774 +#: glossary.rst:780 msgid "An informal synonym for :term:`special method`." msgstr ":term:`special method` için gayri resmi bir eşanlamlı." -#: glossary.rst:775 +#: glossary.rst:781 msgid "mapping" msgstr "haritalama" -#: glossary.rst:777 +#: glossary.rst:783 msgid "" "A container object that supports arbitrary key lookups and implements the " "methods specified in the :class:`collections.abc.Mapping` or :class:" @@ -1887,11 +1898,11 @@ msgstr "" "Örnekler arasında :class:`dict`, :class:`collections.defaultdict`, :class:" "`collections.OrderedDict` ve :class:`collections.Counter` sayılabilir." -#: glossary.rst:783 +#: glossary.rst:789 msgid "meta path finder" msgstr "meta yol bulucu" -#: glossary.rst:785 +#: glossary.rst:791 msgid "" "A :term:`finder` returned by a search of :data:`sys.meta_path`. Meta path " "finders are related to, but different from :term:`path entry finders ` ile " "ilişkilidir, ancak onlardan farklıdır." -#: glossary.rst:789 +#: glossary.rst:795 msgid "" "See :class:`importlib.abc.MetaPathFinder` for the methods that meta path " "finders implement." @@ -1909,11 +1920,11 @@ msgstr "" "Meta yol bulucuların uyguladığı yöntemler için :class:`importlib.abc." "MetaPathFinder` bölümüne bakın." -#: glossary.rst:791 +#: glossary.rst:797 msgid "metaclass" msgstr "metasınıf" -#: glossary.rst:793 +#: glossary.rst:799 msgid "" "The class of a class. Class definitions create a class name, a class " "dictionary, and a list of base classes. The metaclass is responsible for " @@ -1935,15 +1946,15 @@ msgstr "" "parçacığı güvenliği eklemek, nesne oluşturmayı izlemek, tekilleri uygulamak " "ve diğer birçok görev için kullanılmışlardır." -#: glossary.rst:803 +#: glossary.rst:809 msgid "More information can be found in :ref:`metaclasses`." msgstr "Daha fazla bilgi :ref:`metaclasses` içinde bulunabilir." -#: glossary.rst:1154 +#: glossary.rst:1165 msgid "method" msgstr "metot" -#: glossary.rst:806 +#: glossary.rst:812 msgid "" "A function which is defined inside a class body. If called as an attribute " "of an instance of that class, the method will get the instance object as its " @@ -1955,11 +1966,11 @@ msgstr "" "(genellikle ``self`` olarak adlandırılır) olarak alır. Bkz. :term:`function` " "ve :term:`nested scope`." -#: glossary.rst:810 +#: glossary.rst:816 msgid "method resolution order" msgstr "metot kalite sıralaması" -#: glossary.rst:812 +#: glossary.rst:818 #, fuzzy msgid "" "Method Resolution Order is the order in which base classes are searched for " @@ -1971,11 +1982,11 @@ msgstr "" "algoritmanın ayrıntıları için bkz. `The Python 2.3 Method Resolution Order " "`_." -#: glossary.rst:815 +#: glossary.rst:821 msgid "module" msgstr "modül" -#: glossary.rst:817 +#: glossary.rst:823 msgid "" "An object that serves as an organizational unit of Python code. Modules " "have a namespace containing arbitrary Python objects. Modules are loaded " @@ -1985,15 +1996,15 @@ msgstr "" "rastgele Python nesneleri içeren bir ad alanına sahiptir. Modüller, :term:" "`importing` işlemiyle Python'a yüklenir." -#: glossary.rst:821 +#: glossary.rst:827 msgid "See also :term:`package`." msgstr "Ayrıca bakınız :term:`package`." -#: glossary.rst:822 +#: glossary.rst:828 msgid "module spec" msgstr "modül özelliği" -#: glossary.rst:824 +#: glossary.rst:830 msgid "" "A namespace containing the import-related information used to load a module. " "An instance of :class:`importlib.machinery.ModuleSpec`." @@ -2001,24 +2012,24 @@ msgstr "" "Bir modülü yüklemek için kullanılan içe aktarmayla ilgili bilgileri içeren " "bir ad alanı. Bir :class:`importlib.machinery.ModuleSpec` örneği." -#: glossary.rst:827 +#: glossary.rst:833 #, fuzzy msgid "See also :ref:`module-specs`." msgstr "Ayrıca bkz. :term:`module`." -#: glossary.rst:828 +#: glossary.rst:834 msgid "MRO" msgstr "MRO" -#: glossary.rst:830 +#: glossary.rst:836 msgid "See :term:`method resolution order`." msgstr "Bakınız :term:`metot çözüm sırası `." -#: glossary.rst:831 +#: glossary.rst:837 msgid "mutable" msgstr "değiştirilebilir" -#: glossary.rst:833 +#: glossary.rst:839 msgid "" "Mutable objects can change their value but keep their :func:`id`. See also :" "term:`immutable`." @@ -2026,11 +2037,11 @@ msgstr "" "Değiştirilebilir (mutable) nesneler değerlerini değiştirebilir ancak :func:" "`idlerini ` koruyabilirler. Ayrıca bkz. :term:`immutable`." -#: glossary.rst:835 +#: glossary.rst:841 msgid "named tuple" msgstr "adlandırılmış demet" -#: glossary.rst:837 +#: glossary.rst:843 msgid "" "The term \"named tuple\" applies to any type or class that inherits from " "tuple and whose indexable elements are also accessible using named " @@ -2040,7 +2051,7 @@ msgstr "" "adlandırılmış nitelikler kullanılarak erişilebilen herhangi bir tür veya " "sınıf için geçerlidir. Tür veya sınıfın başka özellikleri de olabilir." -#: glossary.rst:841 +#: glossary.rst:847 msgid "" "Several built-in types are named tuples, including the values returned by :" "func:`time.localtime` and :func:`os.stat`. Another example is :data:`sys." @@ -2050,7 +2061,7 @@ msgstr "" "tarafından döndürülen değerler de dahil olmak üzere, tanımlama grupları " "olarak adlandırılır. Başka bir örnek :data:`sys.float_info`::" -#: glossary.rst:845 +#: glossary.rst:851 msgid "" ">>> sys.float_info[1] # indexed access\n" "1024\n" @@ -2060,7 +2071,7 @@ msgid "" "True" msgstr "" -#: glossary.rst:852 +#: glossary.rst:858 #, fuzzy msgid "" "Some named tuples are built-in types (such as the above examples). " @@ -2079,11 +2090,11 @@ msgstr "" "yazılmış veya yerleşik adlandırılmış demetlerde bulunmayan bazı ekstra " "yöntemler ekler." -#: glossary.rst:860 +#: glossary.rst:866 msgid "namespace" msgstr "ad alanı" -#: glossary.rst:862 +#: glossary.rst:868 msgid "" "The place where a variable is stored. Namespaces are implemented as " "dictionaries. There are the local, global and built-in namespaces as well " @@ -2105,31 +2116,43 @@ msgstr "" "yazmak, bu işlevlerin sırasıyla :mod:`random` ve :mod:`itertools` modülleri " "tarafından uygulandığını açıkça gösterir." -#: glossary.rst:872 +#: glossary.rst:878 msgid "namespace package" msgstr "ad alanı paketi" -#: glossary.rst:874 +#: glossary.rst:880 +#, fuzzy msgid "" -"A :pep:`420` :term:`package` which serves only as a container for " -"subpackages. Namespace packages may have no physical representation, and " -"specifically are not like a :term:`regular package` because they have no " -"``__init__.py`` file." +"A :term:`package` which serves only as a container for subpackages. " +"Namespace packages may have no physical representation, and specifically are " +"not like a :term:`regular package` because they have no ``__init__.py`` file." msgstr "" "A :pep:`420` :term:`package`, yalnızca alt paketler için bir kap olarak " "hizmet eder. Ad alanı paketlerinin hiçbir fiziksel temsili olmayabilir ve " "``__init__.py`` dosyası olmadığından özellikle :term:`regular package` gibi " "değildirler." -#: glossary.rst:879 +#: glossary.rst:885 +msgid "" +"Namespace packages allow several individually installable packages to have a " +"common parent package. Otherwise, it is recommended to use a :term:`regular " +"package`." +msgstr "" + +#: glossary.rst:888 +msgid "" +"For more information, see :pep:`420` and :ref:`reference-namespace-package`." +msgstr "" + +#: glossary.rst:890 msgid "See also :term:`module`." msgstr "Ayrıca bkz. :term:`module`." -#: glossary.rst:880 +#: glossary.rst:891 msgid "nested scope" msgstr "iç içe kapsam" -#: glossary.rst:882 +#: glossary.rst:893 msgid "" "The ability to refer to a variable in an enclosing definition. For " "instance, a function defined inside another function can refer to variables " @@ -2146,11 +2169,11 @@ msgstr "" "global değişkenler global ad alanını okur ve yazar. :keyword:`nonlocal`, dış " "kapsamlara yazmaya izin verir." -#: glossary.rst:889 +#: glossary.rst:900 msgid "new-style class" msgstr "yeni stil sınıf" -#: glossary.rst:891 +#: glossary.rst:902 #, fuzzy msgid "" "Old name for the flavor of classes now used for all class objects. In " @@ -2164,11 +2187,11 @@ msgstr "" "sınıf yöntemleri ve statik yöntemler gibi daha yeni, çok yönlü özelliklerini " "kullanabilirdi." -#: glossary.rst:896 +#: glossary.rst:907 msgid "object" msgstr "obje" -#: glossary.rst:898 +#: glossary.rst:909 msgid "" "Any data with state (attributes or value) and defined behavior (methods). " "Also the ultimate base class of any :term:`new-style class`." @@ -2177,11 +2200,11 @@ msgstr "" "herhangi bir veri. Ayrıca herhangi bir :term:`yeni tarz sınıfın ` nihai temel sınıfı." -#: glossary.rst:901 +#: glossary.rst:912 msgid "package" msgstr "paket" -#: glossary.rst:903 +#: glossary.rst:914 msgid "" "A Python :term:`module` which can contain submodules or recursively, " "subpackages. Technically, a package is a Python module with a ``__path__`` " @@ -2191,15 +2214,15 @@ msgstr "" "`module`. Teknik olarak bir paket, ``__path__`` özniteliğine sahip bir " "Python modülüdür." -#: glossary.rst:907 +#: glossary.rst:918 msgid "See also :term:`regular package` and :term:`namespace package`." msgstr "Ayrıca bkz. :term:`regular package` ve :term:`namespace package`." -#: glossary.rst:908 +#: glossary.rst:919 msgid "parameter" msgstr "parametre" -#: glossary.rst:910 +#: glossary.rst:921 msgid "" "A named entity in a :term:`function` (or method) definition that specifies " "an :term:`argument` (or in some cases, arguments) that the function can " @@ -2209,7 +2232,7 @@ msgstr "" "term:`argument` (veya bazı durumlarda, argümanlar) belirten adlandırılmış " "bir varlık. Beş çeşit parametre vardır:" -#: glossary.rst:914 +#: glossary.rst:925 msgid "" ":dfn:`positional-or-keyword`: specifies an argument that can be passed " "either :term:`positionally ` or as a :term:`keyword argument " @@ -2220,11 +2243,11 @@ msgstr "" "`keyword argümanı ` olarak iletilebilen bir argüman belirtir. Bu, " "varsayılan parametre türüdür, örneğin aşağıdakilerde *foo* ve *bar*::" -#: glossary.rst:919 +#: glossary.rst:930 msgid "def func(foo, bar=None): ..." msgstr "" -#: glossary.rst:923 +#: glossary.rst:934 msgid "" ":dfn:`positional-only`: specifies an argument that can be supplied only by " "position. Positional-only parameters can be defined by including a ``/`` " @@ -2236,11 +2259,11 @@ msgstr "" "parametre listesine bir ``/`` karakteri eklenerek tanımlanabilir, örneğin " "aşağıdakilerde *posonly1* ve *posonly2*::" -#: glossary.rst:928 +#: glossary.rst:939 msgid "def func(posonly1, posonly2, /, positional_or_keyword): ..." msgstr "" -#: glossary.rst:932 +#: glossary.rst:943 msgid "" ":dfn:`keyword-only`: specifies an argument that can be supplied only by " "keyword. Keyword-only parameters can be defined by including a single var-" @@ -2254,11 +2277,11 @@ msgstr "" "parametre veya çıplak ``*`` dahil edilerek tanımlanabilir, örneğin " "aşağıdakilerde *kw_only1* ve *kw_only2*::" -#: glossary.rst:938 +#: glossary.rst:949 msgid "def func(arg, *, kw_only1, kw_only2): ..." msgstr "" -#: glossary.rst:940 +#: glossary.rst:951 msgid "" ":dfn:`var-positional`: specifies that an arbitrary sequence of positional " "arguments can be provided (in addition to any positional arguments already " @@ -2272,11 +2295,11 @@ msgstr "" "parametre adının başına ``*`` eklenerek tanımlanabilir, örneğin " "aşağıdakilerde *args*::" -#: glossary.rst:946 +#: glossary.rst:957 msgid "def func(*args, **kwargs): ..." msgstr "" -#: glossary.rst:948 +#: glossary.rst:959 msgid "" ":dfn:`var-keyword`: specifies that arbitrarily many keyword arguments can be " "provided (in addition to any keyword arguments already accepted by other " @@ -2289,7 +2312,7 @@ msgstr "" "parametre adının başına ``**``, örneğin yukarıdaki örnekte *kwargs* " "eklenerek tanımlanabilir." -#: glossary.rst:954 +#: glossary.rst:965 msgid "" "Parameters can specify both optional and required arguments, as well as " "default values for some optional arguments." @@ -2297,7 +2320,7 @@ msgstr "" "Parametreler, hem isteğe bağlı hem de gerekli argümanleri ve ayrıca bazı " "isteğe bağlı bağımsız değişkenler için varsayılan değerleri belirtebilir." -#: glossary.rst:957 +#: glossary.rst:968 msgid "" "See also the :term:`argument` glossary entry, the FAQ question on :ref:`the " "difference between arguments and parameters `, " @@ -2308,11 +2331,11 @@ msgstr "" "arasındaki fark `, :class:`inspect.Parameter`, :" "ref:`function` ve :pep:`362`." -#: glossary.rst:961 +#: glossary.rst:972 msgid "path entry" msgstr "yol girişi" -#: glossary.rst:963 +#: glossary.rst:974 msgid "" "A single location on the :term:`import path` which the :term:`path based " "finder` consults to find modules for importing." @@ -2320,11 +2343,11 @@ msgstr "" ":term:`path based finder` içe aktarma modüllerini bulmak için başvurduğu :" "term:`import path` üzerindeki tek bir konum." -#: glossary.rst:965 +#: glossary.rst:976 msgid "path entry finder" msgstr "yol girişi bulucu" -#: glossary.rst:967 +#: glossary.rst:978 msgid "" "A :term:`finder` returned by a callable on :data:`sys.path_hooks` (i.e. a :" "term:`path entry hook`) which knows how to locate modules given a :term:" @@ -2334,7 +2357,7 @@ msgstr "" "kancası`) üzerinde bir çağrılabilir tarafından döndürülür ve :term:`path " "entry` verilen modüllerin nasıl bulunacağını bilir." -#: glossary.rst:971 +#: glossary.rst:982 msgid "" "See :class:`importlib.abc.PathEntryFinder` for the methods that path entry " "finders implement." @@ -2342,11 +2365,11 @@ msgstr "" "Yol girişi bulucularının uyguladığı yöntemler için :class:`importlib.abc." "PathEntryFinder` bölümüne bakın." -#: glossary.rst:973 +#: glossary.rst:984 msgid "path entry hook" msgstr "yol giriş kancası" -#: glossary.rst:975 +#: glossary.rst:986 #, fuzzy msgid "" "A callable on the :data:`sys.path_hooks` list which returns a :term:`path " @@ -2357,11 +2380,11 @@ msgstr "" "entry>` modülleri nasıl bulacağını biliyorsa, bir :term:`yol girişi bulucu " "` döndüren bir çağrılabilir." -#: glossary.rst:978 +#: glossary.rst:989 msgid "path based finder" msgstr "yol tabanlı bulucu" -#: glossary.rst:980 +#: glossary.rst:991 msgid "" "One of the default :term:`meta path finders ` which " "searches an :term:`import path` for modules." @@ -2369,11 +2392,11 @@ msgstr "" "Modüller için bir :term:`import path` arayan varsayılan :term:`meta yol " "buluculardan ` biri." -#: glossary.rst:982 +#: glossary.rst:993 msgid "path-like object" msgstr "yol benzeri nesne" -#: glossary.rst:984 +#: glossary.rst:995 msgid "" "An object representing a file system path. A path-like object is either a :" "class:`str` or :class:`bytes` object representing a path, or an object " @@ -2393,11 +2416,11 @@ msgstr "" "veya :class:`bytes` sonucunu garanti etmek için kullanılabilir. :pep:`519` " "tarafından tanıtıldı." -#: glossary.rst:992 +#: glossary.rst:1003 msgid "PEP" msgstr "PEP" -#: glossary.rst:994 +#: glossary.rst:1005 msgid "" "Python Enhancement Proposal. A PEP is a design document providing " "information to the Python community, or describing a new feature for Python " @@ -2409,7 +2432,7 @@ msgstr "" "tasarım belgesidir. PEP'ler, önerilen özellikler için özlü bir teknik " "şartname ve bir gerekçe sağlamalıdır." -#: glossary.rst:1000 +#: glossary.rst:1011 msgid "" "PEPs are intended to be the primary mechanisms for proposing major new " "features, for collecting community input on an issue, and for documenting " @@ -2422,15 +2445,15 @@ msgstr "" "birincil mekanizmalar olması amaçlanmıştır. PEP yazarı, topluluk içinde " "fikir birliği oluşturmaktan ve muhalif görüşleri belgelemekten sorumludur." -#: glossary.rst:1006 +#: glossary.rst:1017 msgid "See :pep:`1`." msgstr "Bakınız :pep:`1`." -#: glossary.rst:1007 +#: glossary.rst:1018 msgid "portion" msgstr "kısım" -#: glossary.rst:1009 +#: glossary.rst:1020 msgid "" "A set of files in a single directory (possibly stored in a zip file) that " "contribute to a namespace package, as defined in :pep:`420`." @@ -2438,15 +2461,15 @@ msgstr "" ":pep:`420` içinde tanımlandığı gibi, bir ad alanı paketine katkıda bulunan " "tek bir dizindeki (muhtemelen bir zip dosyasında depolanan) bir dizi dosya." -#: glossary.rst:1011 +#: glossary.rst:1022 msgid "positional argument" msgstr "konumsal argüman" -#: glossary.rst:1014 +#: glossary.rst:1025 msgid "provisional API" msgstr "geçici API" -#: glossary.rst:1016 +#: glossary.rst:1027 msgid "" "A provisional API is one which has been deliberately excluded from the " "standard library's backwards compatibility guarantees. While major changes " @@ -2465,7 +2488,7 @@ msgstr "" "yalnızca API'nin eklenmesinden önce gözden kaçan ciddi temel kusurlar ortaya " "çıkarsa gerçekleşecektir." -#: glossary.rst:1025 +#: glossary.rst:1036 msgid "" "Even for provisional APIs, backwards incompatible changes are seen as a " "\"solution of last resort\" - every attempt will still be made to find a " @@ -2475,7 +2498,7 @@ msgstr "" "çözümü\" olarak görülür - tanımlanan herhangi bir soruna geriye dönük uyumlu " "bir çözüm bulmak için her türlü girişimde bulunulacaktır." -#: glossary.rst:1029 +#: glossary.rst:1040 msgid "" "This process allows the standard library to continue to evolve over time, " "without locking in problematic design errors for extended periods of time. " @@ -2485,19 +2508,19 @@ msgstr "" "hatalarına kilitlenmeden zaman içinde gelişmeye devam etmesini sağlar. Daha " "fazla ayrıntı için bkz. :pep:`411`." -#: glossary.rst:1032 +#: glossary.rst:1043 msgid "provisional package" msgstr "geçici paket" -#: glossary.rst:1034 +#: glossary.rst:1045 msgid "See :term:`provisional API`." msgstr "Bakınız :term:`provisional API`." -#: glossary.rst:1035 +#: glossary.rst:1046 msgid "Python 3000" msgstr "Python 3000" -#: glossary.rst:1037 +#: glossary.rst:1048 msgid "" "Nickname for the Python 3.x release line (coined long ago when the release " "of version 3 was something in the distant future.) This is also abbreviated " @@ -2507,11 +2530,11 @@ msgstr "" "sürülmesi uzak bir gelecekte olduğu zaman ortaya çıktı.) Bu aynı zamanda " "\"Py3k\" olarak da kısaltılır." -#: glossary.rst:1040 +#: glossary.rst:1051 msgid "Pythonic" msgstr "Pythonic" -#: glossary.rst:1042 +#: glossary.rst:1053 msgid "" "An idea or piece of code which closely follows the most common idioms of the " "Python language, rather than implementing code using concepts common to " @@ -2527,27 +2550,27 @@ msgstr "" "oluşturmaktır. Diğer birçok dilde bu tür bir yapı yoktur, bu nedenle " "Python'a aşina olmayan kişiler bazen bunun yerine sayısal bir sayaç kullanır:" -#: glossary.rst:1049 +#: glossary.rst:1060 msgid "" "for i in range(len(food)):\n" " print(food[i])" msgstr "" -#: glossary.rst:1052 +#: glossary.rst:1063 msgid "As opposed to the cleaner, Pythonic method::" msgstr "Temizleyicinin aksine, Pythonic yöntemi::" -#: glossary.rst:1054 +#: glossary.rst:1065 msgid "" "for piece in food:\n" " print(piece)" msgstr "" -#: glossary.rst:1056 +#: glossary.rst:1067 msgid "qualified name" msgstr "nitelikli isim" -#: glossary.rst:1058 +#: glossary.rst:1069 msgid "" "A dotted name showing the \"path\" from a module's global scope to a class, " "function or method defined in that module, as defined in :pep:`3155`. For " @@ -2559,7 +2582,7 @@ msgstr "" "noktalı ad. Üst düzey işlevler ve sınıflar için nitelikli ad, nesnenin " "adıyla aynıdır::" -#: glossary.rst:1063 +#: glossary.rst:1074 msgid "" ">>> class C:\n" "... class D:\n" @@ -2574,7 +2597,7 @@ msgid "" "'C.D.meth'" msgstr "" -#: glossary.rst:1075 +#: glossary.rst:1086 msgid "" "When used to refer to modules, the *fully qualified name* means the entire " "dotted path to the module, including any parent packages, e.g. ``email.mime." @@ -2584,18 +2607,18 @@ msgstr "" "herhangi bir üst paket de dahil olmak üzere, modüle giden tüm noktalı yol " "anlamına gelir, örn. ``email.mime.text``::" -#: glossary.rst:1079 +#: glossary.rst:1090 msgid "" ">>> import email.mime.text\n" ">>> email.mime.text.__name__\n" "'email.mime.text'" msgstr "" -#: glossary.rst:1082 +#: glossary.rst:1093 msgid "reference count" msgstr "referans sayısı" -#: glossary.rst:1084 +#: glossary.rst:1095 #, fuzzy msgid "" "The number of references to an object. When the reference count of an " @@ -2612,26 +2635,26 @@ msgstr "" "öğesidir. Programcılar, belirli bir nesne için başvuru sayısını döndürmek " "için :func:`sys.getrefcount` işlevini çağırabilir." -#: glossary.rst:1092 +#: glossary.rst:1103 msgid "regular package" msgstr "sürekli paketleme" -#: glossary.rst:1094 +#: glossary.rst:1105 msgid "" "A traditional :term:`package`, such as a directory containing an ``__init__." "py`` file." msgstr "" "``__init__.py`` dosyası içeren bir dizin gibi geleneksel bir :term:`package`." -#: glossary.rst:1097 +#: glossary.rst:1108 msgid "See also :term:`namespace package`." msgstr "Ayrıca bkz. :term:`ad alanı paketi`." -#: glossary.rst:1098 +#: glossary.rst:1109 msgid "__slots__" msgstr "__slots__" -#: glossary.rst:1100 +#: glossary.rst:1111 msgid "" "A declaration inside a class that saves memory by pre-declaring space for " "instance attributes and eliminating instance dictionaries. Though popular, " @@ -2645,11 +2668,11 @@ msgstr "" "açısından kritik bir uygulamada çok sayıda örneğin bulunduğu nadir durumlar " "için ayrılmıştır." -#: glossary.rst:1105 +#: glossary.rst:1116 msgid "sequence" msgstr "dizi" -#: glossary.rst:1107 +#: glossary.rst:1118 #, fuzzy msgid "" "An :term:`iterable` which supports efficient element access using integer " @@ -2670,7 +2693,7 @@ msgstr "" "`immutable` anahtarları kullandığından bir diziden ziyade bir eşleme olarak " "kabul edilir." -#: glossary.rst:1116 +#: glossary.rst:1127 #, fuzzy msgid "" "The :class:`collections.abc.Sequence` abstract base class defines a much " @@ -2687,11 +2710,11 @@ msgstr "" "arayüzü tanımlar. Bu genişletilmiş arabirimi uygulayan türler, :func:`~abc." "ABCMeta.register` kullanılarak açıkça kaydedilebilir." -#: glossary.rst:1125 +#: glossary.rst:1136 msgid "set comprehension" msgstr "anlamak" -#: glossary.rst:1127 +#: glossary.rst:1138 msgid "" "A compact way to process all or part of the elements in an iterable and " "return a set with the results. ``results = {c for c in 'abracadabra' if c " @@ -2703,11 +2726,11 @@ msgstr "" "for c in 'abracadabra' if c not in 'abc'}``, ``{'r', 'd'}`` dizelerini " "oluşturur. Bakınız :ref:`comprehensions`." -#: glossary.rst:1131 +#: glossary.rst:1142 msgid "single dispatch" msgstr "tek sevk" -#: glossary.rst:1133 +#: glossary.rst:1144 msgid "" "A form of :term:`generic function` dispatch where the implementation is " "chosen based on the type of a single argument." @@ -2715,11 +2738,11 @@ msgstr "" "Uygulamanın tek bir argüman türüne göre seçildiği bir :term:`generic " "function` gönderimi biçimi." -#: glossary.rst:1135 +#: glossary.rst:1146 msgid "slice" msgstr "parçalamak" -#: glossary.rst:1137 +#: glossary.rst:1148 msgid "" "An object usually containing a portion of a :term:`sequence`. A slice is " "created using the subscript notation, ``[]`` with colons between numbers " @@ -2732,34 +2755,34 @@ msgstr "" "gösterimi kullanılarak oluşturulur. Köşeli ayraç (alt simge) gösterimi, " "dahili olarak :class:`slice` nesnelerini kullanır." -#: glossary.rst:1141 +#: glossary.rst:1152 msgid "soft deprecated" msgstr "" -#: glossary.rst:1143 +#: glossary.rst:1154 msgid "" "A soft deprecated API should not be used in new code, but it is safe for " "already existing code to use it. The API remains documented and tested, but " "will not be enhanced further." msgstr "" -#: glossary.rst:1147 +#: glossary.rst:1158 msgid "" "Soft deprecation, unlike normal deprecation, does not plan on removing the " "API and will not emit warnings." msgstr "" -#: glossary.rst:1150 +#: glossary.rst:1161 msgid "" "See `PEP 387: Soft Deprecation `_." msgstr "" -#: glossary.rst:1152 +#: glossary.rst:1163 msgid "special method" msgstr "özel metod" -#: glossary.rst:1156 +#: glossary.rst:1167 msgid "" "A method that is called implicitly by Python to execute a certain operation " "on a type, such as addition. Such methods have names starting and ending " @@ -2771,11 +2794,11 @@ msgstr "" "çizgi ile başlayan ve biten adları vardır. Özel yöntemler :ref:" "`specialnames` içinde belgelenmiştir." -#: glossary.rst:1160 +#: glossary.rst:1171 msgid "statement" msgstr "ifade (değer döndürmez)" -#: glossary.rst:1162 +#: glossary.rst:1173 msgid "" "A statement is part of a suite (a \"block\" of code). A statement is either " "an :term:`expression` or one of several constructs with a keyword, such as :" @@ -2785,22 +2808,22 @@ msgstr "" "`expression` veya :keyword:`if`, :keyword:`while` veya :keyword:`for` gibi " "bir anahtar kelimeye sahip birkaç yapıdan biridir." -#: glossary.rst:1165 +#: glossary.rst:1176 msgid "static type checker" msgstr "" -#: glossary.rst:1167 +#: glossary.rst:1178 msgid "" "An external tool that reads Python code and analyzes it, looking for issues " "such as incorrect types. See also :term:`type hints ` and the :" "mod:`typing` module." msgstr "" -#: glossary.rst:1170 +#: glossary.rst:1181 msgid "strong reference" msgstr "güçlü referans" -#: glossary.rst:1172 +#: glossary.rst:1183 #, fuzzy msgid "" "In Python's C API, a strong reference is a reference to an object which is " @@ -2812,7 +2835,7 @@ msgstr "" "referans sayısını artıran ve silindiğinde nesnenin referans sayısını azaltan " "bir nesneye yapılan referanstır." -#: glossary.rst:1178 +#: glossary.rst:1189 msgid "" "The :c:func:`Py_NewRef` function can be used to create a strong reference to " "an object. Usually, the :c:func:`Py_DECREF` function must be called on the " @@ -2824,15 +2847,15 @@ msgstr "" "referansın sızmasını önlemek için güçlü referans kapsamından çıkmadan önce " "güçlü referansta çağrılmalıdır." -#: glossary.rst:1183 +#: glossary.rst:1194 msgid "See also :term:`borrowed reference`." msgstr "Ayrıca bkz. :term:`ödünç alınan referans `." -#: glossary.rst:1184 +#: glossary.rst:1195 msgid "text encoding" msgstr "yazı çözümleme" -#: glossary.rst:1186 +#: glossary.rst:1197 msgid "" "A string in Python is a sequence of Unicode code points (in range " "``U+0000``--``U+10FFFF``). To store or transfer a string, it needs to be " @@ -2842,7 +2865,7 @@ msgstr "" "``U+10FFFF`` aralığında). Bir dizeyi depolamak veya aktarmak için, bir bayt " "dizisi olarak seri hale getirilmesi gerekir." -#: glossary.rst:1190 +#: glossary.rst:1201 msgid "" "Serializing a string into a sequence of bytes is known as \"encoding\", and " "recreating the string from the sequence of bytes is known as \"decoding\"." @@ -2851,7 +2874,7 @@ msgstr "" "olarak bilinir ve dizeyi bayt dizisinden yeniden oluşturmak \"kod çözme " "(decoding)\" olarak bilinir." -#: glossary.rst:1193 +#: glossary.rst:1204 msgid "" "There are a variety of different text serialization :ref:`codecs `, which are collectively referred to as \"text encodings\"." @@ -2859,11 +2882,11 @@ msgstr "" "Toplu olarak \"metin kodlamaları\" olarak adlandırılan çeşitli farklı metin " "serileştirme :ref:`kodekleri ` vardır." -#: glossary.rst:1196 +#: glossary.rst:1207 msgid "text file" msgstr "yazı dosyası" -#: glossary.rst:1198 +#: glossary.rst:1209 msgid "" "A :term:`file object` able to read and write :class:`str` objects. Often, a " "text file actually accesses a byte-oriented datastream and handles the :term:" @@ -2877,7 +2900,7 @@ msgstr "" "metin modunda açılan dosyalar (``'r'`` veya ``'w'``), :data:`sys.stdin`, :" "data:`sys.stdout` ve :class:`io.StringIO` örnekleri verilebilir." -#: glossary.rst:1205 +#: glossary.rst:1216 msgid "" "See also :term:`binary file` for a file object able to read and write :term:" "`bytes-like objects `." @@ -2885,11 +2908,28 @@ msgstr "" "Ayrıca :term:`ikili dosyaları ` okuyabilen ve yazabilen bir " "dosya nesnesi için :term:`bayt benzeri nesnelere ` bakın." -#: glossary.rst:1207 +#: glossary.rst:1218 +msgid "token" +msgstr "" + +#: glossary.rst:1221 +msgid "" +"A small unit of source code, generated by the :ref:`lexical analyzer " +"` (also called the *tokenizer*). Names, numbers, strings, " +"operators, newlines and similar are represented by tokens." +msgstr "" + +#: glossary.rst:1226 +msgid "" +"The :mod:`tokenize` module exposes Python's lexical analyzer. The :mod:" +"`token` module contains information on the various types of tokens." +msgstr "" + +#: glossary.rst:1229 msgid "triple-quoted string" msgstr "üç tırnaklı dize" -#: glossary.rst:1209 +#: glossary.rst:1231 msgid "" "A string which is bound by three instances of either a quotation mark (\") " "or an apostrophe ('). While they don't provide any functionality not " @@ -2906,11 +2946,11 @@ msgstr "" "yayılabilir, bu da onları özellikle belge dizileri yazarken kullanışlı hale " "getirir." -#: glossary.rst:1216 +#: glossary.rst:1238 msgid "type" msgstr "tip" -#: glossary.rst:1218 +#: glossary.rst:1240 #, fuzzy msgid "" "The type of a Python object determines what kind of object it is; every " @@ -2921,15 +2961,15 @@ msgstr "" "nesnenin bir türü vardır. Bir nesnenin tipine :attr:`~instance.__class__` " "niteliği ile erişilebilir veya ``type(obj)`` ile alınabilir." -#: glossary.rst:1222 +#: glossary.rst:1244 msgid "type alias" msgstr "tip takma adı" -#: glossary.rst:1224 +#: glossary.rst:1246 msgid "A synonym for a type, created by assigning the type to an identifier." msgstr "Bir tanımlayıcıya tür atanarak oluşturulan, bir tür için eş anlamlı." -#: glossary.rst:1226 +#: glossary.rst:1248 msgid "" "Type aliases are useful for simplifying :term:`type hints `. For " "example::" @@ -2937,18 +2977,18 @@ msgstr "" "Tür takma adları, :term:`tür ipuçlarını ` basitleştirmek için " "kullanışlıdır. Örneğin::" -#: glossary.rst:1229 +#: glossary.rst:1251 msgid "" "def remove_gray_shades(\n" " colors: list[tuple[int, int, int]]) -> list[tuple[int, int, int]]:\n" " pass" msgstr "" -#: glossary.rst:1233 +#: glossary.rst:1255 msgid "could be made more readable like this::" msgstr "bu şekilde daha okunaklı hale getirilebilir::" -#: glossary.rst:1235 +#: glossary.rst:1257 msgid "" "Color = tuple[int, int, int]\n" "\n" @@ -2956,15 +2996,15 @@ msgid "" " pass" msgstr "" -#: glossary.rst:1254 +#: glossary.rst:1276 msgid "See :mod:`typing` and :pep:`484`, which describe this functionality." msgstr "Bu işlevi açıklayan :mod:`typing` ve :pep:`484` bölümlerine bakın." -#: glossary.rst:1241 +#: glossary.rst:1263 msgid "type hint" msgstr "tür ipucu" -#: glossary.rst:1243 +#: glossary.rst:1265 msgid "" "An :term:`annotation` that specifies the expected type for a variable, a " "class attribute, or a function parameter or return value." @@ -2972,7 +3012,7 @@ msgstr "" "Bir değişken, bir sınıf niteliği veya bir işlev parametresi veya dönüş " "değeri için beklenen türü belirten bir :term:`ek açıklama `." -#: glossary.rst:1246 +#: glossary.rst:1268 #, fuzzy msgid "" "Type hints are optional and are not enforced by Python but they are useful " @@ -2983,7 +3023,7 @@ msgstr "" "statik tip analiz araçları için faydalıdır ve kod tamamlama ve yeniden " "düzenleme ile IDE'lere yardımcı olur." -#: glossary.rst:1250 +#: glossary.rst:1272 msgid "" "Type hints of global variables, class attributes, and functions, but not " "local variables, can be accessed using :func:`typing.get_type_hints`." @@ -2992,11 +3032,11 @@ msgstr "" "yerel değişkenlere değil, :func:`typing.get_type_hints` kullanılarak " "erişilebilir." -#: glossary.rst:1255 +#: glossary.rst:1277 msgid "universal newlines" msgstr "evrensel yeni satırlar" -#: glossary.rst:1257 +#: glossary.rst:1279 msgid "" "A manner of interpreting text streams in which all of the following are " "recognized as ending a line: the Unix end-of-line convention ``'\\n'``, the " @@ -3009,29 +3049,29 @@ msgstr "" "kuralı ``'\\r\\n'``, ve eski Macintosh kuralı ``'\\r'``. Ek bir kullanım " "için :pep:`278` ve :pep:`3116` ve ayrıca :func:`bytes.splitlines` bakın." -#: glossary.rst:1262 +#: glossary.rst:1284 msgid "variable annotation" msgstr "değişken açıklama" -#: glossary.rst:1264 +#: glossary.rst:1286 msgid "An :term:`annotation` of a variable or a class attribute." msgstr "" "Bir değişkenin veya bir sınıf özniteliğinin :term:`ek açıklaması " "`." -#: glossary.rst:1266 +#: glossary.rst:1288 msgid "" "When annotating a variable or a class attribute, assignment is optional::" msgstr "" "Bir değişkene veya sınıf niteliğine açıklama eklerken atama isteğe bağlıdır::" -#: glossary.rst:1268 +#: glossary.rst:1290 msgid "" "class C:\n" " field: 'annotation'" msgstr "" -#: glossary.rst:1271 +#: glossary.rst:1293 msgid "" "Variable annotations are usually used for :term:`type hints `: " "for example this variable is expected to take :class:`int` values::" @@ -3039,15 +3079,15 @@ msgstr "" "Değişken açıklamaları genellikle :term:`tür ipuçları ` için " "kullanılır: örneğin, bu değişkenin :class:`int` değerlerini alması beklenir::" -#: glossary.rst:1275 +#: glossary.rst:1297 msgid "count: int = 0" msgstr "" -#: glossary.rst:1277 +#: glossary.rst:1299 msgid "Variable annotation syntax is explained in section :ref:`annassign`." msgstr "Değişken açıklama sözdizimi :ref:`annassign` bölümünde açıklanmıştır." -#: glossary.rst:1279 +#: glossary.rst:1301 msgid "" "See :term:`function annotation`, :pep:`484` and :pep:`526`, which describe " "this functionality. Also see :ref:`annotations-howto` for best practices on " @@ -3057,11 +3097,11 @@ msgstr "" "bölümlerine bakın. Ek açıklamalarla çalışmaya ilişkin en iyi uygulamalar " "için ayrıca bkz. :ref:`annotations-howto`." -#: glossary.rst:1283 +#: glossary.rst:1305 msgid "virtual environment" msgstr "sanal ortam" -#: glossary.rst:1285 +#: glossary.rst:1307 msgid "" "A cooperatively isolated runtime environment that allows Python users and " "applications to install and upgrade Python distribution packages without " @@ -3073,15 +3113,15 @@ msgstr "" "paketlerini kurmasına ve yükseltmesine olanak tanıyan, işbirliği içinde " "yalıtılmış bir çalışma zamanı ortamı." -#: glossary.rst:1290 +#: glossary.rst:1312 msgid "See also :mod:`venv`." msgstr "Ayrıca bakınız :mod:`venv`." -#: glossary.rst:1291 +#: glossary.rst:1313 msgid "virtual machine" msgstr "sanal makine" -#: glossary.rst:1293 +#: glossary.rst:1315 msgid "" "A computer defined entirely in software. Python's virtual machine executes " "the :term:`bytecode` emitted by the bytecode compiler." @@ -3089,11 +3129,11 @@ msgstr "" "Tamamen yazılımla tanımlanmış bir bilgisayar. Python'un sanal makinesi, bayt " "kodu derleyicisi tarafından yayınlanan :term:`bytecode` 'u çalıştırır." -#: glossary.rst:1295 +#: glossary.rst:1317 msgid "Zen of Python" msgstr "Python'un Zen'i" -#: glossary.rst:1297 +#: glossary.rst:1319 msgid "" "Listing of Python design principles and philosophies that are helpful in " "understanding and using the language. The listing can be found by typing " @@ -3113,11 +3153,11 @@ msgstr "bitişik" msgid "Fortran contiguous" msgstr "bitişik" -#: glossary.rst:772 +#: glossary.rst:778 msgid "magic" msgstr "" -#: glossary.rst:1154 +#: glossary.rst:1165 #, fuzzy msgid "special" msgstr "özel metod" diff --git a/howto/argparse-optparse.po b/howto/argparse-optparse.po index 2ec77acc0..da40027dc 100644 --- a/howto/argparse-optparse.po +++ b/howto/argparse-optparse.po @@ -8,10 +8,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" +"Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/howto/descriptor.po b/howto/descriptor.po index 15f76fd5c..1aff895d2 100644 --- a/howto/descriptor.po +++ b/howto/descriptor.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -93,8 +93,8 @@ msgstr "" #: howto/descriptor.rst:45 msgid "" -"The :class:`Ten` class is a descriptor whose :meth:`__get__` method always " -"returns the constant ``10``:" +"The :class:`!Ten` class is a descriptor whose :meth:`~object.__get__` method " +"always returns the constant ``10``:" msgstr "" #: howto/descriptor.rst:48 @@ -209,11 +209,11 @@ msgstr "" #: howto/descriptor.rst:122 msgid "" "Besides showing how descriptors can run computations, this example also " -"reveals the purpose of the parameters to :meth:`__get__`. The *self* " -"parameter is *size*, an instance of *DirectorySize*. The *obj* parameter is " -"either *g* or *s*, an instance of *Directory*. It is the *obj* parameter " -"that lets the :meth:`__get__` method learn the target directory. The " -"*objtype* parameter is the class *Directory*." +"reveals the purpose of the parameters to :meth:`~object.__get__`. The " +"*self* parameter is *size*, an instance of *DirectorySize*. The *obj* " +"parameter is either *g* or *s*, an instance of *Directory*. It is the *obj* " +"parameter that lets the :meth:`~object.__get__` method learn the target " +"directory. The *objtype* parameter is the class *Directory*." msgstr "" #: howto/descriptor.rst:131 @@ -225,8 +225,8 @@ msgid "" "A popular use for descriptors is managing access to instance data. The " "descriptor is assigned to a public attribute in the class dictionary while " "the actual data is stored as a private attribute in the instance " -"dictionary. The descriptor's :meth:`__get__` and :meth:`__set__` methods " -"are triggered when the public attribute is accessed." +"dictionary. The descriptor's :meth:`~object.__get__` and :meth:`~object." +"__set__` methods are triggered when the public attribute is accessed." msgstr "" #: howto/descriptor.rst:139 @@ -321,10 +321,10 @@ msgstr "" #: howto/descriptor.rst:218 msgid "" -"In this example, the :class:`Person` class has two descriptor instances, " -"*name* and *age*. When the :class:`Person` class is defined, it makes a " -"callback to :meth:`__set_name__` in *LoggedAccess* so that the field names " -"can be recorded, giving each descriptor its own *public_name* and " +"In this example, the :class:`!Person` class has two descriptor instances, " +"*name* and *age*. When the :class:`!Person` class is defined, it makes a " +"callback to :meth:`~object.__set_name__` in *LoggedAccess* so that the field " +"names can be recorded, giving each descriptor its own *public_name* and " "*private_name*:" msgstr "" @@ -364,9 +364,9 @@ msgstr "" #: howto/descriptor.rst:256 msgid "" -"An interactive session shows that the :class:`Person` class has called :meth:" -"`__set_name__` so that the field names would be recorded. Here we call :" -"func:`vars` to look up the descriptor without triggering it:" +"An interactive session shows that the :class:`!Person` class has called :" +"meth:`~object.__set_name__` so that the field names would be recorded. Here " +"we call :func:`vars` to look up the descriptor without triggering it:" msgstr "" #: howto/descriptor.rst:260 @@ -409,16 +409,16 @@ msgstr "" #: howto/descriptor.rst:297 msgid "" -"A :term:`descriptor` is what we call any object that defines :meth:" -"`__get__`, :meth:`__set__`, or :meth:`__delete__`." +"A :term:`descriptor` is what we call any object that defines :meth:`~object." +"__get__`, :meth:`~object.__set__`, or :meth:`~object.__delete__`." msgstr "" #: howto/descriptor.rst:300 msgid "" -"Optionally, descriptors can have a :meth:`__set_name__` method. This is " -"only used in cases where a descriptor needs to know either the class where " -"it was created or the name of class variable it was assigned to. (This " -"method, if present, is called even if the class is not a descriptor.)" +"Optionally, descriptors can have a :meth:`~object.__set_name__` method. " +"This is only used in cases where a descriptor needs to know either the class " +"where it was created or the name of class variable it was assigned to. " +"(This method, if present, is called even if the class is not a descriptor.)" msgstr "" #: howto/descriptor.rst:305 @@ -479,7 +479,7 @@ msgstr "" #: howto/descriptor.rst:340 msgid "" -"This :class:`Validator` class is both an :term:`abstract base class` and a " +"This :class:`!Validator` class is both an :term:`abstract base class` and a " "managed attribute descriptor:" msgstr "" @@ -506,8 +506,8 @@ msgstr "" #: howto/descriptor.rst:363 msgid "" -"Custom validators need to inherit from :class:`Validator` and must supply a :" -"meth:`validate` method to test various restrictions as needed." +"Custom validators need to inherit from :class:`!Validator` and must supply " +"a :meth:`!validate` method to test various restrictions as needed." msgstr "" #: howto/descriptor.rst:368 @@ -520,19 +520,19 @@ msgstr "" #: howto/descriptor.rst:372 msgid "" -":class:`OneOf` verifies that a value is one of a restricted set of options." +":class:`!OneOf` verifies that a value is one of a restricted set of options." msgstr "" #: howto/descriptor.rst:374 msgid "" -":class:`Number` verifies that a value is either an :class:`int` or :class:" +":class:`!Number` verifies that a value is either an :class:`int` or :class:" "`float`. Optionally, it verifies that a value is between a given minimum or " "maximum." msgstr "" #: howto/descriptor.rst:378 msgid "" -":class:`String` verifies that a value is a :class:`str`. Optionally, it " +":class:`!String` verifies that a value is a :class:`str`. Optionally, it " "validates a given minimum or maximum length. It can validate a user-defined " "`predicate `_ " "as well." @@ -678,9 +678,9 @@ msgstr "" #: howto/descriptor.rst:500 msgid "" "In general, a descriptor is an attribute value that has one of the methods " -"in the descriptor protocol. Those methods are :meth:`__get__`, :meth:" -"`__set__`, and :meth:`__delete__`. If any of those methods are defined for " -"an attribute, it is said to be a :term:`descriptor`." +"in the descriptor protocol. Those methods are :meth:`~object.__get__`, :" +"meth:`~object.__set__`, and :meth:`~object.__delete__`. If any of those " +"methods are defined for an attribute, it is said to be a :term:`descriptor`." msgstr "" #: howto/descriptor.rst:505 @@ -729,10 +729,10 @@ msgstr "" #: howto/descriptor.rst:534 msgid "" -"If an object defines :meth:`__set__` or :meth:`__delete__`, it is considered " -"a data descriptor. Descriptors that only define :meth:`__get__` are called " -"non-data descriptors (they are often used for methods but other uses are " -"possible)." +"If an object defines :meth:`~object.__set__` or :meth:`~object.__delete__`, " +"it is considered a data descriptor. Descriptors that only define :meth:" +"`~object.__get__` are called non-data descriptors (they are often used for " +"methods but other uses are possible)." msgstr "" #: howto/descriptor.rst:539 @@ -746,10 +746,10 @@ msgstr "" #: howto/descriptor.rst:545 msgid "" -"To make a read-only data descriptor, define both :meth:`__get__` and :meth:" -"`__set__` with the :meth:`__set__` raising an :exc:`AttributeError` when " -"called. Defining the :meth:`__set__` method with an exception raising " -"placeholder is enough to make it a data descriptor." +"To make a read-only data descriptor, define both :meth:`~object.__get__` " +"and :meth:`~object.__set__` with the :meth:`~object.__set__` raising an :exc:" +"`AttributeError` when called. Defining the :meth:`~object.__set__` method " +"with an exception raising placeholder is enough to make it a data descriptor." msgstr "" #: howto/descriptor.rst:552 @@ -790,8 +790,8 @@ msgstr "" msgid "" "Instance lookup scans through a chain of namespaces giving data descriptors " "the highest priority, followed by instance variables, then non-data " -"descriptors, then class variables, and lastly :meth:`__getattr__` if it is " -"provided." +"descriptors, then class variables, and lastly :meth:`~object.__getattr__` if " +"it is provided." msgstr "" #: howto/descriptor.rst:577 @@ -837,16 +837,17 @@ msgstr "" #: howto/descriptor.rst:719 msgid "" -"Note, there is no :meth:`__getattr__` hook in the :meth:`__getattribute__` " -"code. That is why calling :meth:`__getattribute__` directly or with " -"``super().__getattribute__`` will bypass :meth:`__getattr__` entirely." +"Note, there is no :meth:`~object.__getattr__` hook in the :meth:`~object." +"__getattribute__` code. That is why calling :meth:`~object." +"__getattribute__` directly or with ``super().__getattribute__`` will bypass :" +"meth:`~object.__getattr__` entirely." msgstr "" #: howto/descriptor.rst:723 msgid "" "Instead, it is the dot operator and the :func:`getattr` function that are " -"responsible for invoking :meth:`__getattr__` whenever :meth:" -"`__getattribute__` raises an :exc:`AttributeError`. Their logic is " +"responsible for invoking :meth:`~object.__getattr__` whenever :meth:`~object." +"__getattribute__` raises an :exc:`AttributeError`. Their logic is " "encapsulated in a helper function:" msgstr "" @@ -868,8 +869,8 @@ msgstr "" #: howto/descriptor.rst:775 msgid "" -"The logic for a dotted lookup such as ``A.x`` is in :meth:`type." -"__getattribute__`. The steps are similar to those for :meth:`object." +"The logic for a dotted lookup such as ``A.x`` is in :meth:`!type." +"__getattribute__`. The steps are similar to those for :meth:`!object." "__getattribute__` but the instance dictionary lookup is replaced by a search " "through the class's :term:`method resolution order`." msgstr "" @@ -890,8 +891,8 @@ msgstr "" #: howto/descriptor.rst:789 msgid "" -"The logic for super's dotted lookup is in the :meth:`__getattribute__` " -"method for object returned by :func:`super`." +"The logic for super's dotted lookup is in the :meth:`~object." +"__getattribute__` method for object returned by :func:`super`." msgstr "" #: howto/descriptor.rst:792 @@ -916,8 +917,9 @@ msgstr "" #: howto/descriptor.rst:806 msgid "" -"The mechanism for descriptors is embedded in the :meth:`__getattribute__` " -"methods for :class:`object`, :class:`type`, and :func:`super`." +"The mechanism for descriptors is embedded in the :meth:`~object." +"__getattribute__` methods for :class:`object`, :class:`type`, and :func:" +"`super`." msgstr "" #: howto/descriptor.rst:809 @@ -925,7 +927,7 @@ msgid "The important points to remember are:" msgstr "" #: howto/descriptor.rst:811 -msgid "Descriptors are invoked by the :meth:`__getattribute__` method." +msgid "Descriptors are invoked by the :meth:`~object.__getattribute__` method." msgstr "" #: howto/descriptor.rst:813 @@ -936,16 +938,16 @@ msgstr "" #: howto/descriptor.rst:816 msgid "" -"Overriding :meth:`__getattribute__` prevents automatic descriptor calls " -"because all the descriptor logic is in that method." +"Overriding :meth:`~object.__getattribute__` prevents automatic descriptor " +"calls because all the descriptor logic is in that method." msgstr "" #: howto/descriptor.rst:819 msgid "" -":meth:`object.__getattribute__` and :meth:`type.__getattribute__` make " -"different calls to :meth:`__get__`. The first includes the instance and may " -"include the class. The second puts in ``None`` for the instance and always " -"includes the class." +":meth:`!object.__getattribute__` and :meth:`!type.__getattribute__` make " +"different calls to :meth:`~object.__get__`. The first includes the instance " +"and may include the class. The second puts in ``None`` for the instance and " +"always includes the class." msgstr "" #: howto/descriptor.rst:824 @@ -965,9 +967,9 @@ msgid "" "Sometimes it is desirable for a descriptor to know what class variable name " "it was assigned to. When a new class is created, the :class:`type` " "metaclass scans the dictionary of the new class. If any of the entries are " -"descriptors and if they define :meth:`__set_name__`, that method is called " -"with two arguments. The *owner* is the class where the descriptor is used, " -"and the *name* is the class variable the descriptor was assigned to." +"descriptors and if they define :meth:`~object.__set_name__`, that method is " +"called with two arguments. The *owner* is the class where the descriptor is " +"used, and the *name* is the class variable the descriptor was assigned to." msgstr "" #: howto/descriptor.rst:839 @@ -978,9 +980,9 @@ msgstr "" #: howto/descriptor.rst:842 msgid "" -"Since the update logic is in :meth:`type.__new__`, notifications only take " +"Since the update logic is in :meth:`!type.__new__`, notifications only take " "place at the time of class creation. If descriptors are added to the class " -"afterwards, :meth:`__set_name__` will need to be called manually." +"afterwards, :meth:`~object.__set_name__` will need to be called manually." msgstr "" #: howto/descriptor.rst:848 @@ -1021,7 +1023,7 @@ msgstr "" #: howto/descriptor.rst:873 msgid "" -"We can use the :class:`Field` class to define `models `_ that describe the schema for each table in a " "database:" msgstr "" @@ -1217,7 +1219,7 @@ msgstr "" #: howto/descriptor.rst:1153 msgid "" -"Either the built-in :func:`property` or our :func:`Property` equivalent " +"Either the built-in :func:`property` or our :func:`!Property` equivalent " "would work in this example." msgstr "" @@ -1263,9 +1265,9 @@ msgstr "" #: howto/descriptor.rst:1185 msgid "" "To support automatic creation of methods, functions include the :meth:" -"`__get__` method for binding methods during attribute access. This means " -"that functions are non-data descriptors that return bound methods during " -"dotted lookup from an instance. Here's how it works:" +"`~object.__get__` method for binding methods during attribute access. This " +"means that functions are non-data descriptors that return bound methods " +"during dotted lookup from an instance. Here's how it works:" msgstr "" #: howto/descriptor.rst:1190 @@ -1307,7 +1309,7 @@ msgstr "" #: howto/descriptor.rst:1217 msgid "" "Accessing the function through the class dictionary does not invoke :meth:" -"`__get__`. Instead, it just returns the underlying function object::" +"`~object.__get__`. Instead, it just returns the underlying function object::" msgstr "" #: howto/descriptor.rst:1220 @@ -1318,8 +1320,8 @@ msgstr "" #: howto/descriptor.rst:1223 msgid "" -"Dotted access from a class calls :meth:`__get__` which just returns the " -"underlying function unchanged::" +"Dotted access from a class calls :meth:`~object.__get__` which just returns " +"the underlying function unchanged::" msgstr "" #: howto/descriptor.rst:1226 @@ -1331,7 +1333,8 @@ msgstr "" #: howto/descriptor.rst:1229 msgid "" "The interesting behavior occurs during dotted access from an instance. The " -"dotted lookup calls :meth:`__get__` which returns a bound method object::" +"dotted lookup calls :meth:`~object.__get__` which returns a bound method " +"object::" msgstr "" #: howto/descriptor.rst:1232 @@ -1374,10 +1377,10 @@ msgstr "" #: howto/descriptor.rst:1255 msgid "" -"To recap, functions have a :meth:`__get__` method so that they can be " -"converted to a method when accessed as attributes. The non-data descriptor " -"transforms an ``obj.f(*args)`` call into ``f(obj, *args)``. Calling ``cls." -"f(*args)`` becomes ``f(*args)``." +"To recap, functions have a :meth:`~object.__get__` method so that they can " +"be converted to a method when accessed as attributes. The non-data " +"descriptor transforms an ``obj.f(*args)`` call into ``f(obj, *args)``. " +"Calling ``cls.f(*args)`` becomes ``f(*args)``." msgstr "" #: howto/descriptor.rst:1260 @@ -1796,8 +1799,8 @@ msgstr "" #: howto/descriptor.rst:1685 msgid "" -"The :meth:`type.__new__` method takes care of adding member objects to class " -"variables:" +"The :meth:`!type.__new__` method takes care of adding member objects to " +"class variables:" msgstr "" #: howto/descriptor.rst:1688 @@ -1855,8 +1858,8 @@ msgstr "" #: howto/descriptor.rst:1736 msgid "" -"To use the simulation in a real class, just inherit from :class:`Object` and " -"set the :term:`metaclass` to :class:`Type`:" +"To use the simulation in a real class, just inherit from :class:`!Object` " +"and set the :term:`metaclass` to :class:`Type`:" msgstr "" #: howto/descriptor.rst:1739 diff --git a/howto/enum.po b/howto/enum.po index f915168b2..5957d328e 100644 --- a/howto/enum.po +++ b/howto/enum.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -16,24 +16,24 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: howto/enum.rst:3 +#: howto/enum.rst:5 msgid "Enum HOWTO" msgstr "" -#: howto/enum.rst:9 +#: howto/enum.rst:11 msgid "" "An :class:`Enum` is a set of symbolic names bound to unique values. They " "are similar to global variables, but they offer a more useful :func:`repr`, " "grouping, type-safety, and a few other features." msgstr "" -#: howto/enum.rst:13 +#: howto/enum.rst:15 msgid "" "They are most useful when you have a variable that can take one of a limited " "selection of values. For example, the days of the week::" msgstr "" -#: howto/enum.rst:16 +#: howto/enum.rst:18 msgid "" ">>> from enum import Enum\n" ">>> class Weekday(Enum):\n" @@ -46,11 +46,11 @@ msgid "" "... SUNDAY = 7" msgstr "" -#: howto/enum.rst:26 +#: howto/enum.rst:28 msgid "Or perhaps the RGB primary colors::" msgstr "" -#: howto/enum.rst:28 +#: howto/enum.rst:30 msgid "" ">>> from enum import Enum\n" ">>> class Color(Enum):\n" @@ -59,17 +59,17 @@ msgid "" "... BLUE = 3" msgstr "" -#: howto/enum.rst:34 +#: howto/enum.rst:36 msgid "" "As you can see, creating an :class:`Enum` is as simple as writing a class " "that inherits from :class:`Enum` itself." msgstr "" -#: howto/enum.rst:37 +#: howto/enum.rst:39 msgid "Case of Enum Members" msgstr "" -#: howto/enum.rst:39 +#: howto/enum.rst:41 msgid "" "Because Enums are used to represent constants, and to help avoid issues with " "name clashes between mixin-class methods/attributes and enum names, we " @@ -77,37 +77,37 @@ msgid "" "that style in our examples." msgstr "" -#: howto/enum.rst:44 +#: howto/enum.rst:46 msgid "" "Depending on the nature of the enum a member's value may or may not be " "important, but either way that value can be used to get the corresponding " "member::" msgstr "" -#: howto/enum.rst:48 +#: howto/enum.rst:50 msgid "" ">>> Weekday(3)\n" "" msgstr "" -#: howto/enum.rst:51 +#: howto/enum.rst:53 msgid "" "As you can see, the ``repr()`` of a member shows the enum name, the member " "name, and the value. The ``str()`` of a member shows only the enum name and " "member name::" msgstr "" -#: howto/enum.rst:55 +#: howto/enum.rst:57 msgid "" ">>> print(Weekday.THURSDAY)\n" "Weekday.THURSDAY" msgstr "" -#: howto/enum.rst:58 +#: howto/enum.rst:60 msgid "The *type* of an enumeration member is the enum it belongs to::" msgstr "" -#: howto/enum.rst:60 +#: howto/enum.rst:62 msgid "" ">>> type(Weekday.MONDAY)\n" "\n" @@ -115,49 +115,50 @@ msgid "" "True" msgstr "" -#: howto/enum.rst:65 -msgid "Enum members have an attribute that contains just their :attr:`name`::" +#: howto/enum.rst:67 +msgid "Enum members have an attribute that contains just their :attr:`!name`::" msgstr "" -#: howto/enum.rst:67 +#: howto/enum.rst:69 msgid "" ">>> print(Weekday.TUESDAY.name)\n" "TUESDAY" msgstr "" -#: howto/enum.rst:70 -msgid "Likewise, they have an attribute for their :attr:`value`::" +#: howto/enum.rst:72 +msgid "Likewise, they have an attribute for their :attr:`!value`::" msgstr "" -#: howto/enum.rst:73 +#: howto/enum.rst:75 msgid "" ">>> Weekday.WEDNESDAY.value\n" "3" msgstr "" -#: howto/enum.rst:76 +#: howto/enum.rst:78 msgid "" "Unlike many languages that treat enumerations solely as name/value pairs, " "Python Enums can have behavior added. For example, :class:`datetime.date` " -"has two methods for returning the weekday: :meth:`weekday` and :meth:" -"`isoweekday`. The difference is that one of them counts from 0-6 and the " -"other from 1-7. Rather than keep track of that ourselves we can add a method " -"to the :class:`Weekday` enum to extract the day from the :class:`date` " -"instance and return the matching enum member::" +"has two methods for returning the weekday: :meth:`~datetime.date.weekday` " +"and :meth:`~datetime.date.isoweekday`. The difference is that one of them " +"counts from 0-6 and the other from 1-7. Rather than keep track of that " +"ourselves we can add a method to the :class:`!Weekday` enum to extract the " +"day from the :class:`~datetime.date` instance and return the matching enum " +"member::" msgstr "" -#: howto/enum.rst:84 +#: howto/enum.rst:87 msgid "" "@classmethod\n" "def from_date(cls, date):\n" " return cls(date.isoweekday())" msgstr "" -#: howto/enum.rst:88 -msgid "The complete :class:`Weekday` enum now looks like this::" +#: howto/enum.rst:91 +msgid "The complete :class:`!Weekday` enum now looks like this::" msgstr "" -#: howto/enum.rst:90 +#: howto/enum.rst:93 msgid "" ">>> class Weekday(Enum):\n" "... MONDAY = 1\n" @@ -173,32 +174,32 @@ msgid "" "... return cls(date.isoweekday())" msgstr "" -#: howto/enum.rst:103 +#: howto/enum.rst:106 msgid "Now we can find out what today is! Observe::" msgstr "" -#: howto/enum.rst:105 +#: howto/enum.rst:108 msgid "" ">>> from datetime import date\n" -">>> Weekday.from_date(date.today()) \n" +">>> Weekday.from_date(date.today())\n" "" msgstr "" -#: howto/enum.rst:109 +#: howto/enum.rst:112 msgid "" "Of course, if you're reading this on some other day, you'll see that day " "instead." msgstr "" -#: howto/enum.rst:111 +#: howto/enum.rst:114 msgid "" -"This :class:`Weekday` enum is great if our variable only needs one day, but " +"This :class:`!Weekday` enum is great if our variable only needs one day, but " "what if we need several? Maybe we're writing a function to plot chores " "during a week, and don't want to use a :class:`list` -- we could use a " "different type of :class:`Enum`::" msgstr "" -#: howto/enum.rst:116 +#: howto/enum.rst:119 msgid "" ">>> from enum import Flag\n" ">>> class Weekday(Flag):\n" @@ -211,43 +212,43 @@ msgid "" "... SUNDAY = 64" msgstr "" -#: howto/enum.rst:126 +#: howto/enum.rst:129 msgid "" "We've changed two things: we're inherited from :class:`Flag`, and the values " "are all powers of 2." msgstr "" -#: howto/enum.rst:129 +#: howto/enum.rst:132 msgid "" -"Just like the original :class:`Weekday` enum above, we can have a single " +"Just like the original :class:`!Weekday` enum above, we can have a single " "selection::" msgstr "" -#: howto/enum.rst:131 +#: howto/enum.rst:134 msgid "" ">>> first_week_day = Weekday.MONDAY\n" ">>> first_week_day\n" "" msgstr "" -#: howto/enum.rst:135 +#: howto/enum.rst:138 msgid "" "But :class:`Flag` also allows us to combine several members into a single " "variable::" msgstr "" -#: howto/enum.rst:138 +#: howto/enum.rst:141 msgid "" ">>> weekend = Weekday.SATURDAY | Weekday.SUNDAY\n" ">>> weekend\n" "" msgstr "" -#: howto/enum.rst:142 +#: howto/enum.rst:145 msgid "You can even iterate over a :class:`Flag` variable::" msgstr "" -#: howto/enum.rst:144 +#: howto/enum.rst:147 msgid "" ">>> for day in weekend:\n" "... print(day)\n" @@ -255,11 +256,11 @@ msgid "" "Weekday.SUNDAY" msgstr "" -#: howto/enum.rst:149 +#: howto/enum.rst:152 msgid "Okay, let's get some chores set up::" msgstr "" -#: howto/enum.rst:151 +#: howto/enum.rst:154 msgid "" ">>> chores_for_ethan = {\n" "... 'feed the cat': Weekday.MONDAY | Weekday.WEDNESDAY | Weekday." @@ -269,11 +270,11 @@ msgid "" "... }" msgstr "" -#: howto/enum.rst:157 +#: howto/enum.rst:160 msgid "And a function to display the chores for a given day::" msgstr "" -#: howto/enum.rst:159 +#: howto/enum.rst:162 msgid "" ">>> def show_chores(chores, day):\n" "... for chore, days in chores.items():\n" @@ -284,13 +285,13 @@ msgid "" "answer SO questions" msgstr "" -#: howto/enum.rst:167 +#: howto/enum.rst:170 msgid "" "In cases where the actual values of the members do not matter, you can save " "yourself some work and use :func:`auto` for the values::" msgstr "" -#: howto/enum.rst:170 +#: howto/enum.rst:173 msgid "" ">>> from enum import auto\n" ">>> class Weekday(Flag):\n" @@ -304,18 +305,18 @@ msgid "" "... WEEKEND = SATURDAY | SUNDAY" msgstr "" -#: howto/enum.rst:186 +#: howto/enum.rst:189 msgid "Programmatic access to enumeration members and their attributes" msgstr "" -#: howto/enum.rst:188 +#: howto/enum.rst:191 msgid "" "Sometimes it's useful to access members in enumerations programmatically (i." "e. situations where ``Color.RED`` won't do because the exact color is not " "known at program-writing time). ``Enum`` allows such access::" msgstr "" -#: howto/enum.rst:192 +#: howto/enum.rst:195 msgid "" ">>> Color(1)\n" "\n" @@ -323,11 +324,11 @@ msgid "" "" msgstr "" -#: howto/enum.rst:197 +#: howto/enum.rst:200 msgid "If you want to access enum members by *name*, use item access::" msgstr "" -#: howto/enum.rst:199 +#: howto/enum.rst:202 msgid "" ">>> Color['RED']\n" "\n" @@ -335,11 +336,12 @@ msgid "" "" msgstr "" -#: howto/enum.rst:204 -msgid "If you have an enum member and need its :attr:`name` or :attr:`value`::" +#: howto/enum.rst:207 +msgid "" +"If you have an enum member and need its :attr:`!name` or :attr:`!value`::" msgstr "" -#: howto/enum.rst:206 +#: howto/enum.rst:209 msgid "" ">>> member = Color.RED\n" ">>> member.name\n" @@ -348,15 +350,15 @@ msgid "" "1" msgstr "" -#: howto/enum.rst:214 +#: howto/enum.rst:217 msgid "Duplicating enum members and values" msgstr "" -#: howto/enum.rst:216 +#: howto/enum.rst:219 msgid "Having two enum members with the same name is invalid::" msgstr "" -#: howto/enum.rst:218 +#: howto/enum.rst:221 msgid "" ">>> class Shape(Enum):\n" "... SQUARE = 2\n" @@ -367,7 +369,7 @@ msgid "" "TypeError: 'SQUARE' already defined as 2" msgstr "" -#: howto/enum.rst:226 +#: howto/enum.rst:229 msgid "" "However, an enum member can have other names associated with it. Given two " "entries ``A`` and ``B`` with the same value (and ``A`` defined first), ``B`` " @@ -376,7 +378,7 @@ msgid "" "member ``A``. By-name lookup of ``B`` will also return the member ``A``::" msgstr "" -#: howto/enum.rst:232 +#: howto/enum.rst:235 msgid "" ">>> class Shape(Enum):\n" "... SQUARE = 2\n" @@ -392,24 +394,24 @@ msgid "" "" msgstr "" -#: howto/enum.rst:247 +#: howto/enum.rst:250 msgid "" "Attempting to create a member with the same name as an already defined " "attribute (another member, a method, etc.) or attempting to create an " "attribute with the same name as a member is not allowed." msgstr "" -#: howto/enum.rst:253 +#: howto/enum.rst:256 msgid "Ensuring unique enumeration values" msgstr "" -#: howto/enum.rst:255 +#: howto/enum.rst:258 msgid "" "By default, enumerations allow multiple names as aliases for the same value. " "When this behavior isn't desired, you can use the :func:`unique` decorator::" msgstr "" -#: howto/enum.rst:258 +#: howto/enum.rst:261 msgid "" ">>> from enum import Enum, unique\n" ">>> @unique\n" @@ -424,15 +426,15 @@ msgid "" "ValueError: duplicate values found in : FOUR -> THREE" msgstr "" -#: howto/enum.rst:272 +#: howto/enum.rst:275 msgid "Using automatic values" msgstr "" -#: howto/enum.rst:274 +#: howto/enum.rst:277 msgid "If the exact value is unimportant you can use :class:`auto`::" msgstr "" -#: howto/enum.rst:276 +#: howto/enum.rst:279 msgid "" ">>> from enum import Enum, auto\n" ">>> class Color(Enum):\n" @@ -444,13 +446,13 @@ msgid "" "[1, 2, 3]" msgstr "" -#: howto/enum.rst:285 +#: howto/enum.rst:288 msgid "" -"The values are chosen by :func:`_generate_next_value_`, which can be " +"The values are chosen by :func:`~Enum._generate_next_value_`, which can be " "overridden::" msgstr "" -#: howto/enum.rst:288 +#: howto/enum.rst:291 msgid "" ">>> class AutoName(Enum):\n" "... @staticmethod\n" @@ -467,20 +469,21 @@ msgid "" "['NORTH', 'SOUTH', 'EAST', 'WEST']" msgstr "" -#: howto/enum.rst:304 +#: howto/enum.rst:307 msgid "" -"The :meth:`_generate_next_value_` method must be defined before any members." +"The :meth:`~Enum._generate_next_value_` method must be defined before any " +"members." msgstr "" -#: howto/enum.rst:307 +#: howto/enum.rst:310 msgid "Iteration" msgstr "" -#: howto/enum.rst:309 +#: howto/enum.rst:312 msgid "Iterating over the members of an enum does not provide the aliases::" msgstr "" -#: howto/enum.rst:311 +#: howto/enum.rst:314 msgid "" ">>> list(Shape)\n" "[, , ]\n" @@ -490,20 +493,20 @@ msgid "" "64>]" msgstr "" -#: howto/enum.rst:316 +#: howto/enum.rst:319 msgid "" "Note that the aliases ``Shape.ALIAS_FOR_SQUARE`` and ``Weekday.WEEKEND`` " "aren't shown." msgstr "" -#: howto/enum.rst:318 +#: howto/enum.rst:321 msgid "" "The special attribute ``__members__`` is a read-only ordered mapping of " "names to members. It includes all names defined in the enumeration, " "including the aliases::" msgstr "" -#: howto/enum.rst:322 +#: howto/enum.rst:325 msgid "" ">>> for name, member in Shape.__members__.items():\n" "... name, member\n" @@ -514,34 +517,34 @@ msgid "" "('ALIAS_FOR_SQUARE', )" msgstr "" -#: howto/enum.rst:330 +#: howto/enum.rst:333 msgid "" "The ``__members__`` attribute can be used for detailed programmatic access " "to the enumeration members. For example, finding all the aliases::" msgstr "" -#: howto/enum.rst:333 +#: howto/enum.rst:336 msgid "" ">>> [name for name, member in Shape.__members__.items() if member.name != " "name]\n" "['ALIAS_FOR_SQUARE']" msgstr "" -#: howto/enum.rst:338 +#: howto/enum.rst:341 msgid "" "Aliases for flags include values with multiple flags set, such as ``3``, and " "no flags set, i.e. ``0``." msgstr "" -#: howto/enum.rst:343 +#: howto/enum.rst:346 msgid "Comparisons" msgstr "" -#: howto/enum.rst:345 +#: howto/enum.rst:348 msgid "Enumeration members are compared by identity::" msgstr "" -#: howto/enum.rst:347 +#: howto/enum.rst:350 msgid "" ">>> Color.RED is Color.RED\n" "True\n" @@ -551,13 +554,13 @@ msgid "" "True" msgstr "" -#: howto/enum.rst:354 +#: howto/enum.rst:357 msgid "" "Ordered comparisons between enumeration values are *not* supported. Enum " "members are not integers (but see `IntEnum`_ below)::" msgstr "" -#: howto/enum.rst:357 +#: howto/enum.rst:360 msgid "" ">>> Color.RED < Color.BLUE\n" "Traceback (most recent call last):\n" @@ -565,11 +568,11 @@ msgid "" "TypeError: '<' not supported between instances of 'Color' and 'Color'" msgstr "" -#: howto/enum.rst:362 +#: howto/enum.rst:365 msgid "Equality comparisons are defined though::" msgstr "" -#: howto/enum.rst:364 +#: howto/enum.rst:367 msgid "" ">>> Color.BLUE == Color.RED\n" "False\n" @@ -579,31 +582,31 @@ msgid "" "True" msgstr "" -#: howto/enum.rst:371 +#: howto/enum.rst:374 msgid "" "Comparisons against non-enumeration values will always compare not equal " "(again, :class:`IntEnum` was explicitly designed to behave differently, see " "below)::" msgstr "" -#: howto/enum.rst:375 +#: howto/enum.rst:378 msgid "" ">>> Color.BLUE == 2\n" "False" msgstr "" -#: howto/enum.rst:380 +#: howto/enum.rst:383 msgid "" "It is possible to reload modules -- if a reloaded module contains enums, " "they will be recreated, and the new members may not compare identical/equal " "to the original members." msgstr "" -#: howto/enum.rst:385 +#: howto/enum.rst:388 msgid "Allowed members and attributes of enumerations" msgstr "" -#: howto/enum.rst:387 +#: howto/enum.rst:390 msgid "" "Most of the examples above use integers for enumeration values. Using " "integers is short and handy (and provided by default by the `Functional " @@ -612,13 +615,13 @@ msgid "" "*is* important, enumerations can have arbitrary values." msgstr "" -#: howto/enum.rst:393 +#: howto/enum.rst:396 msgid "" "Enumerations are Python classes, and can have methods and special methods as " "usual. If we have this enumeration::" msgstr "" -#: howto/enum.rst:396 +#: howto/enum.rst:399 msgid "" ">>> class Mood(Enum):\n" "... FUNKY = 1\n" @@ -638,11 +641,11 @@ msgid "" "..." msgstr "" -#: howto/enum.rst:413 +#: howto/enum.rst:416 msgid "Then::" msgstr "" -#: howto/enum.rst:415 +#: howto/enum.rst:418 msgid "" ">>> Mood.favorite_mood()\n" "\n" @@ -652,55 +655,55 @@ msgid "" "'my custom str! 1'" msgstr "" -#: howto/enum.rst:422 +#: howto/enum.rst:425 msgid "" "The rules for what is allowed are as follows: names that start and end with " "a single underscore are reserved by enum and cannot be used; all other " "attributes defined within an enumeration will become members of this " -"enumeration, with the exception of special methods (:meth:`__str__`, :meth:" -"`__add__`, etc.), descriptors (methods are also descriptors), and variable " -"names listed in :attr:`_ignore_`." +"enumeration, with the exception of special methods (:meth:`~object." +"__str__`, :meth:`~object.__add__`, etc.), descriptors (methods are also " +"descriptors), and variable names listed in :attr:`~Enum._ignore_`." msgstr "" -#: howto/enum.rst:429 +#: howto/enum.rst:432 msgid "" -"Note: if your enumeration defines :meth:`__new__` and/or :meth:`__init__`, " -"any value(s) given to the enum member will be passed into those methods. See " -"`Planet`_ for an example." +"Note: if your enumeration defines :meth:`~object.__new__` and/or :meth:" +"`~object.__init__`, any value(s) given to the enum member will be passed " +"into those methods. See `Planet`_ for an example." msgstr "" -#: howto/enum.rst:435 +#: howto/enum.rst:438 msgid "" -"The :meth:`__new__` method, if defined, is used during creation of the Enum " -"members; it is then replaced by Enum's :meth:`__new__` which is used after " -"class creation for lookup of existing members. See :ref:`new-vs-init` for " -"more details." +"The :meth:`~object.__new__` method, if defined, is used during creation of " +"the Enum members; it is then replaced by Enum's :meth:`~object.__new__` " +"which is used after class creation for lookup of existing members. See :ref:" +"`new-vs-init` for more details." msgstr "" -#: howto/enum.rst:442 +#: howto/enum.rst:445 msgid "Restricted Enum subclassing" msgstr "" -#: howto/enum.rst:444 +#: howto/enum.rst:447 msgid "" "A new :class:`Enum` class must have one base enum class, up to one concrete " "data type, and as many :class:`object`-based mixin classes as needed. The " "order of these base classes is::" msgstr "" -#: howto/enum.rst:448 +#: howto/enum.rst:451 msgid "" "class EnumName([mix-in, ...,] [data-type,] base-enum):\n" " pass" msgstr "" -#: howto/enum.rst:451 +#: howto/enum.rst:454 msgid "" "Also, subclassing an enumeration is allowed only if the enumeration does not " "define any members. So this is forbidden::" msgstr "" -#: howto/enum.rst:454 +#: howto/enum.rst:457 msgid "" ">>> class MoreColor(Color):\n" "... PINK = 17\n" @@ -710,11 +713,11 @@ msgid "" "TypeError: cannot extend " msgstr "" -#: howto/enum.rst:461 +#: howto/enum.rst:464 msgid "But this is allowed::" msgstr "" -#: howto/enum.rst:463 +#: howto/enum.rst:466 msgid "" ">>> class Foo(Enum):\n" "... def some_behavior(self):\n" @@ -726,7 +729,7 @@ msgid "" "..." msgstr "" -#: howto/enum.rst:472 +#: howto/enum.rst:475 msgid "" "Allowing subclassing of enums that define members would lead to a violation " "of some important invariants of types and instances. On the other hand, it " @@ -734,17 +737,17 @@ msgid "" "enumerations. (See `OrderedEnum`_ for an example.)" msgstr "" -#: howto/enum.rst:481 +#: howto/enum.rst:484 msgid "Dataclass support" msgstr "" -#: howto/enum.rst:483 +#: howto/enum.rst:486 msgid "" "When inheriting from a :class:`~dataclasses.dataclass`, the :meth:`~Enum." "__repr__` omits the inherited class' name. For example::" msgstr "" -#: howto/enum.rst:486 +#: howto/enum.rst:489 msgid "" ">>> from dataclasses import dataclass, field\n" ">>> @dataclass\n" @@ -761,27 +764,27 @@ msgid "" "" msgstr "" -#: howto/enum.rst:500 +#: howto/enum.rst:503 msgid "" "Use the :func:`!dataclass` argument ``repr=False`` to use the standard :func:" "`repr`." msgstr "" -#: howto/enum.rst:503 +#: howto/enum.rst:506 msgid "" "Only the dataclass fields are shown in the value area, not the dataclass' " "name." msgstr "" -#: howto/enum.rst:509 +#: howto/enum.rst:512 msgid "Pickling" msgstr "" -#: howto/enum.rst:511 +#: howto/enum.rst:514 msgid "Enumerations can be pickled and unpickled::" msgstr "" -#: howto/enum.rst:513 +#: howto/enum.rst:516 msgid "" ">>> from test.test_enum import Fruit\n" ">>> from pickle import dumps, loads\n" @@ -789,49 +792,49 @@ msgid "" "True" msgstr "" -#: howto/enum.rst:518 +#: howto/enum.rst:521 msgid "" "The usual restrictions for pickling apply: picklable enums must be defined " "in the top level of a module, since unpickling requires them to be " "importable from that module." msgstr "" -#: howto/enum.rst:524 +#: howto/enum.rst:527 msgid "" "With pickle protocol version 4 it is possible to easily pickle enums nested " "in other classes." msgstr "" -#: howto/enum.rst:527 +#: howto/enum.rst:530 msgid "" "It is possible to modify how enum members are pickled/unpickled by defining :" -"meth:`__reduce_ex__` in the enumeration class. The default method is by-" -"value, but enums with complicated values may want to use by-name::" +"meth:`~object.__reduce_ex__` in the enumeration class. The default method " +"is by-value, but enums with complicated values may want to use by-name::" msgstr "" -#: howto/enum.rst:531 +#: howto/enum.rst:534 msgid "" ">>> import enum\n" ">>> class MyEnum(enum.Enum):\n" "... __reduce_ex__ = enum.pickle_by_enum_name" msgstr "" -#: howto/enum.rst:537 +#: howto/enum.rst:540 msgid "" "Using by-name for flags is not recommended, as unnamed aliases will not " "unpickle." msgstr "" -#: howto/enum.rst:542 +#: howto/enum.rst:545 msgid "Functional API" msgstr "" -#: howto/enum.rst:544 +#: howto/enum.rst:547 msgid "" "The :class:`Enum` class is callable, providing the following functional API::" msgstr "" -#: howto/enum.rst:546 +#: howto/enum.rst:549 msgid "" ">>> Animal = Enum('Animal', 'ANT BEE CAT DOG')\n" ">>> Animal\n" @@ -842,13 +845,13 @@ msgid "" "[, , , ]" msgstr "" -#: howto/enum.rst:554 +#: howto/enum.rst:557 msgid "" "The semantics of this API resemble :class:`~collections.namedtuple`. The " "first argument of the call to :class:`Enum` is the name of the enumeration." msgstr "" -#: howto/enum.rst:557 +#: howto/enum.rst:560 msgid "" "The second argument is the *source* of enumeration member names. It can be " "a whitespace-separated string of names, a sequence of names, a sequence of 2-" @@ -857,10 +860,10 @@ msgid "" "enumerations; the others auto-assign increasing integers starting with 1 " "(use the ``start`` parameter to specify a different starting value). A new " "class derived from :class:`Enum` is returned. In other words, the above " -"assignment to :class:`Animal` is equivalent to::" +"assignment to :class:`!Animal` is equivalent to::" msgstr "" -#: howto/enum.rst:566 +#: howto/enum.rst:569 msgid "" ">>> class Animal(Enum):\n" "... ANT = 1\n" @@ -870,14 +873,14 @@ msgid "" "..." msgstr "" -#: howto/enum.rst:573 +#: howto/enum.rst:576 msgid "" "The reason for defaulting to ``1`` as the starting number and not ``0`` is " "that ``0`` is ``False`` in a boolean sense, but by default enum members all " "evaluate to ``True``." msgstr "" -#: howto/enum.rst:577 +#: howto/enum.rst:580 msgid "" "Pickling enums created with the functional API can be tricky as frame stack " "implementation details are used to try and figure out which module the " @@ -886,18 +889,18 @@ msgid "" "Jython). The solution is to specify the module name explicitly as follows::" msgstr "" -#: howto/enum.rst:583 +#: howto/enum.rst:586 msgid ">>> Animal = Enum('Animal', 'ANT BEE CAT DOG', module=__name__)" msgstr "" -#: howto/enum.rst:587 +#: howto/enum.rst:590 msgid "" "If ``module`` is not supplied, and Enum cannot determine what it is, the new " "Enum members will not be unpicklable; to keep errors closer to the source, " "pickling will be disabled." msgstr "" -#: howto/enum.rst:591 +#: howto/enum.rst:594 msgid "" "The new pickle protocol 4 also, in some circumstances, relies on :attr:" "`~type.__qualname__` being set to the location where pickle will be able to " @@ -905,16 +908,16 @@ msgid "" "SomeData in the global scope::" msgstr "" -#: howto/enum.rst:596 +#: howto/enum.rst:599 msgid "" ">>> Animal = Enum('Animal', 'ANT BEE CAT DOG', qualname='SomeData.Animal')" msgstr "" -#: howto/enum.rst:598 +#: howto/enum.rst:601 msgid "The complete signature is::" msgstr "" -#: howto/enum.rst:600 +#: howto/enum.rst:603 msgid "" "Enum(\n" " value='NewEnumName',\n" @@ -927,73 +930,73 @@ msgid "" " )" msgstr "" -#: howto/enum.rst:610 +#: howto/enum.rst:613 msgid "*value*: What the new enum class will record as its name." msgstr "" -#: howto/enum.rst:612 +#: howto/enum.rst:615 msgid "" "*names*: The enum members. This can be a whitespace- or comma-separated " "string (values will start at 1 unless otherwise specified)::" msgstr "" -#: howto/enum.rst:615 +#: howto/enum.rst:618 msgid "'RED GREEN BLUE' | 'RED,GREEN,BLUE' | 'RED, GREEN, BLUE'" msgstr "" -#: howto/enum.rst:617 +#: howto/enum.rst:620 msgid "or an iterator of names::" msgstr "" -#: howto/enum.rst:619 +#: howto/enum.rst:622 msgid "['RED', 'GREEN', 'BLUE']" msgstr "" -#: howto/enum.rst:621 +#: howto/enum.rst:624 msgid "or an iterator of (name, value) pairs::" msgstr "" -#: howto/enum.rst:623 +#: howto/enum.rst:626 msgid "[('CYAN', 4), ('MAGENTA', 5), ('YELLOW', 6)]" msgstr "" -#: howto/enum.rst:625 +#: howto/enum.rst:628 msgid "or a mapping::" msgstr "" -#: howto/enum.rst:627 +#: howto/enum.rst:630 msgid "{'CHARTREUSE': 7, 'SEA_GREEN': 11, 'ROSEMARY': 42}" msgstr "" -#: howto/enum.rst:629 +#: howto/enum.rst:632 msgid "*module*: name of module where new enum class can be found." msgstr "" -#: howto/enum.rst:631 +#: howto/enum.rst:634 msgid "*qualname*: where in module new enum class can be found." msgstr "" -#: howto/enum.rst:633 +#: howto/enum.rst:636 msgid "*type*: type to mix in to new enum class." msgstr "" -#: howto/enum.rst:635 +#: howto/enum.rst:638 msgid "*start*: number to start counting at if only names are passed in." msgstr "" -#: howto/enum.rst:637 +#: howto/enum.rst:640 msgid "The *start* parameter was added." msgstr "" -#: howto/enum.rst:642 +#: howto/enum.rst:645 msgid "Derived Enumerations" msgstr "" -#: howto/enum.rst:645 +#: howto/enum.rst:648 msgid "IntEnum" msgstr "" -#: howto/enum.rst:647 +#: howto/enum.rst:650 msgid "" "The first variation of :class:`Enum` that is provided is also a subclass of :" "class:`int`. Members of an :class:`IntEnum` can be compared to integers; by " @@ -1001,7 +1004,7 @@ msgid "" "each other::" msgstr "" -#: howto/enum.rst:652 +#: howto/enum.rst:655 msgid "" ">>> from enum import IntEnum\n" ">>> class Shape(IntEnum):\n" @@ -1020,13 +1023,13 @@ msgid "" "True" msgstr "" -#: howto/enum.rst:668 +#: howto/enum.rst:671 msgid "" "However, they still can't be compared to standard :class:`Enum` " "enumerations::" msgstr "" -#: howto/enum.rst:670 +#: howto/enum.rst:673 msgid "" ">>> class Shape(IntEnum):\n" "... CIRCLE = 1\n" @@ -1040,12 +1043,12 @@ msgid "" "False" msgstr "" -#: howto/enum.rst:681 +#: howto/enum.rst:684 msgid "" ":class:`IntEnum` values behave like integers in other ways you'd expect::" msgstr "" -#: howto/enum.rst:683 +#: howto/enum.rst:686 msgid "" ">>> int(Shape.CIRCLE)\n" "1\n" @@ -1055,11 +1058,11 @@ msgid "" "[0, 1]" msgstr "" -#: howto/enum.rst:692 +#: howto/enum.rst:695 msgid "StrEnum" msgstr "" -#: howto/enum.rst:694 +#: howto/enum.rst:697 msgid "" "The second variation of :class:`Enum` that is provided is also a subclass " "of :class:`str`. Members of a :class:`StrEnum` can be compared to strings; " @@ -1067,11 +1070,11 @@ msgid "" "each other." msgstr "" -#: howto/enum.rst:703 +#: howto/enum.rst:706 msgid "IntFlag" msgstr "" -#: howto/enum.rst:705 +#: howto/enum.rst:708 msgid "" "The next variation of :class:`Enum` provided, :class:`IntFlag`, is also " "based on :class:`int`. The difference being :class:`IntFlag` members can be " @@ -1081,23 +1084,23 @@ msgid "" "is used." msgstr "" -#: howto/enum.rst:713 +#: howto/enum.rst:716 msgid "" "Any operation on an :class:`IntFlag` member besides the bit-wise operations " "will lose the :class:`IntFlag` membership." msgstr "" -#: howto/enum.rst:716 +#: howto/enum.rst:719 msgid "" "Bit-wise operations that result in invalid :class:`IntFlag` values will lose " "the :class:`IntFlag` membership. See :class:`FlagBoundary` for details." msgstr "" -#: howto/enum.rst:723 +#: howto/enum.rst:726 msgid "Sample :class:`IntFlag` class::" msgstr "" -#: howto/enum.rst:725 +#: howto/enum.rst:728 msgid "" ">>> from enum import IntFlag\n" ">>> class Perm(IntFlag):\n" @@ -1114,11 +1117,11 @@ msgid "" "True" msgstr "" -#: howto/enum.rst:739 +#: howto/enum.rst:742 msgid "It is also possible to name the combinations::" msgstr "" -#: howto/enum.rst:741 +#: howto/enum.rst:744 msgid "" ">>> class Perm(IntFlag):\n" "... R = 4\n" @@ -1134,20 +1137,20 @@ msgid "" "" msgstr "" -#: howto/enum.rst:756 +#: howto/enum.rst:759 msgid "" "Named combinations are considered aliases. Aliases do not show up during " "iteration, but can be returned from by-value lookups." msgstr "" -#: howto/enum.rst:761 +#: howto/enum.rst:764 msgid "" "Another important difference between :class:`IntFlag` and :class:`Enum` is " "that if no flags are set (the value is 0), its boolean evaluation is :data:" "`False`::" msgstr "" -#: howto/enum.rst:764 +#: howto/enum.rst:767 msgid "" ">>> Perm.R & Perm.X\n" "\n" @@ -1155,13 +1158,13 @@ msgid "" "False" msgstr "" -#: howto/enum.rst:769 +#: howto/enum.rst:772 msgid "" "Because :class:`IntFlag` members are also subclasses of :class:`int` they " "can be combined with them (but may lose :class:`IntFlag` membership::" msgstr "" -#: howto/enum.rst:772 +#: howto/enum.rst:775 msgid "" ">>> Perm.X | 4\n" "\n" @@ -1170,33 +1173,33 @@ msgid "" "9" msgstr "" -#: howto/enum.rst:780 +#: howto/enum.rst:783 msgid "" "The negation operator, ``~``, always returns an :class:`IntFlag` member with " "a positive value::" msgstr "" -#: howto/enum.rst:783 +#: howto/enum.rst:786 msgid "" ">>> (~Perm.X).value == (Perm.R|Perm.W).value == 6\n" "True" msgstr "" -#: howto/enum.rst:786 +#: howto/enum.rst:789 msgid ":class:`IntFlag` members can also be iterated over::" msgstr "" -#: howto/enum.rst:788 +#: howto/enum.rst:791 msgid "" ">>> list(RW)\n" "[, ]" msgstr "" -#: howto/enum.rst:795 +#: howto/enum.rst:798 msgid "Flag" msgstr "" -#: howto/enum.rst:797 +#: howto/enum.rst:800 msgid "" "The last variation is :class:`Flag`. Like :class:`IntFlag`, :class:`Flag` " "members can be combined using the bitwise operators (&, \\|, ^, ~). Unlike :" @@ -1206,13 +1209,13 @@ msgid "" "value and let :class:`Flag` select an appropriate value." msgstr "" -#: howto/enum.rst:806 +#: howto/enum.rst:809 msgid "" "Like :class:`IntFlag`, if a combination of :class:`Flag` members results in " "no flags being set, the boolean evaluation is :data:`False`::" msgstr "" -#: howto/enum.rst:809 +#: howto/enum.rst:812 msgid "" ">>> from enum import Flag, auto\n" ">>> class Color(Flag):\n" @@ -1226,13 +1229,13 @@ msgid "" "False" msgstr "" -#: howto/enum.rst:820 +#: howto/enum.rst:823 msgid "" "Individual flags should have values that are powers of two (1, 2, 4, " "8, ...), while combinations of flags will not::" msgstr "" -#: howto/enum.rst:823 +#: howto/enum.rst:826 msgid "" ">>> class Color(Flag):\n" "... RED = auto()\n" @@ -1244,13 +1247,13 @@ msgid "" "" msgstr "" -#: howto/enum.rst:832 +#: howto/enum.rst:835 msgid "" "Giving a name to the \"no flags set\" condition does not change its boolean " "value::" msgstr "" -#: howto/enum.rst:835 +#: howto/enum.rst:838 msgid "" ">>> class Color(Flag):\n" "... BLACK = 0\n" @@ -1264,18 +1267,18 @@ msgid "" "False" msgstr "" -#: howto/enum.rst:846 +#: howto/enum.rst:849 msgid ":class:`Flag` members can also be iterated over::" msgstr "" -#: howto/enum.rst:848 +#: howto/enum.rst:851 msgid "" ">>> purple = Color.RED | Color.BLUE\n" ">>> list(purple)\n" "[, ]" msgstr "" -#: howto/enum.rst:856 +#: howto/enum.rst:859 msgid "" "For the majority of new code, :class:`Enum` and :class:`Flag` are strongly " "recommended, since :class:`IntEnum` and :class:`IntFlag` break some semantic " @@ -1286,48 +1289,48 @@ msgid "" "enumerations, or for interoperability with other systems." msgstr "" -#: howto/enum.rst:866 +#: howto/enum.rst:869 msgid "Others" msgstr "" -#: howto/enum.rst:868 +#: howto/enum.rst:871 msgid "" "While :class:`IntEnum` is part of the :mod:`enum` module, it would be very " "simple to implement independently::" msgstr "" -#: howto/enum.rst:871 +#: howto/enum.rst:874 msgid "" "class IntEnum(int, Enum):\n" " pass" msgstr "" -#: howto/enum.rst:874 +#: howto/enum.rst:877 msgid "" "This demonstrates how similar derived enumerations can be defined; for " -"example a :class:`FloatEnum` that mixes in :class:`float` instead of :class:" +"example a :class:`!FloatEnum` that mixes in :class:`float` instead of :class:" "`int`." msgstr "" -#: howto/enum.rst:877 +#: howto/enum.rst:880 msgid "Some rules:" msgstr "" -#: howto/enum.rst:879 +#: howto/enum.rst:882 msgid "" "When subclassing :class:`Enum`, mix-in types must appear before :class:" "`Enum` itself in the sequence of bases, as in the :class:`IntEnum` example " "above." msgstr "" -#: howto/enum.rst:882 +#: howto/enum.rst:885 msgid "" "Mix-in types must be subclassable. For example, :class:`bool` and :class:" "`range` are not subclassable and will throw an error during Enum creation if " "used as the mix-in type." msgstr "" -#: howto/enum.rst:885 +#: howto/enum.rst:888 msgid "" "While :class:`Enum` can have members of any type, once you mix in an " "additional type, all the members must have values of that type, e.g. :class:" @@ -1335,57 +1338,60 @@ msgid "" "methods and don't specify another type." msgstr "" -#: howto/enum.rst:889 +#: howto/enum.rst:892 msgid "" -"When another data type is mixed in, the :attr:`value` attribute is *not the " -"same* as the enum member itself, although it is equivalent and will compare " -"equal." +"When another data type is mixed in, the :attr:`~Enum.value` attribute is " +"*not the same* as the enum member itself, although it is equivalent and will " +"compare equal." msgstr "" -#: howto/enum.rst:892 +#: howto/enum.rst:895 msgid "" -"A ``data type`` is a mixin that defines :meth:`__new__`, or a :class:" +"A ``data type`` is a mixin that defines :meth:`~object.__new__`, or a :class:" "`~dataclasses.dataclass`" msgstr "" -#: howto/enum.rst:894 +#: howto/enum.rst:897 msgid "" "%-style formatting: ``%s`` and ``%r`` call the :class:`Enum` class's :meth:" -"`__str__` and :meth:`__repr__` respectively; other codes (such as ``%i`` or " -"``%h`` for IntEnum) treat the enum member as its mixed-in type." +"`~object.__str__` and :meth:`~object.__repr__` respectively; other codes " +"(such as ``%i`` or ``%h`` for IntEnum) treat the enum member as its mixed-in " +"type." msgstr "" -#: howto/enum.rst:897 +#: howto/enum.rst:900 msgid "" ":ref:`Formatted string literals `, :meth:`str.format`, and :func:" -"`format` will use the enum's :meth:`__str__` method." +"`format` will use the enum's :meth:`~object.__str__` method." msgstr "" -#: howto/enum.rst:902 +#: howto/enum.rst:905 msgid "" "Because :class:`IntEnum`, :class:`IntFlag`, and :class:`StrEnum` are " "designed to be drop-in replacements for existing constants, their :meth:" -"`__str__` method has been reset to their data types' :meth:`__str__` method." +"`~object.__str__` method has been reset to their data types' :meth:`~object." +"__str__` method." msgstr "" -#: howto/enum.rst:910 -msgid "When to use :meth:`__new__` vs. :meth:`__init__`" +#: howto/enum.rst:913 +msgid "When to use :meth:`~object.__new__` vs. :meth:`~object.__init__`" msgstr "" -#: howto/enum.rst:912 +#: howto/enum.rst:915 msgid "" -":meth:`__new__` must be used whenever you want to customize the actual value " -"of the :class:`Enum` member. Any other modifications may go in either :meth:" -"`__new__` or :meth:`__init__`, with :meth:`__init__` being preferred." +":meth:`~object.__new__` must be used whenever you want to customize the " +"actual value of the :class:`Enum` member. Any other modifications may go in " +"either :meth:`~object.__new__` or :meth:`~object.__init__`, with :meth:" +"`~object.__init__` being preferred." msgstr "" -#: howto/enum.rst:916 +#: howto/enum.rst:919 msgid "" "For example, if you want to pass several items to the constructor, but only " "want one of them to be the value::" msgstr "" -#: howto/enum.rst:919 +#: howto/enum.rst:922 msgid "" ">>> class Coordinate(bytes, Enum):\n" "... \"\"\"\n" @@ -1410,99 +1416,102 @@ msgid "" "Coordinate.VY" msgstr "" -#: howto/enum.rst:943 +#: howto/enum.rst:946 msgid "" "*Do not* call ``super().__new__()``, as the lookup-only ``__new__`` is the " "one that is found; instead, use the data type directly." msgstr "" -#: howto/enum.rst:948 +#: howto/enum.rst:951 msgid "Finer Points" msgstr "" -#: howto/enum.rst:951 +#: howto/enum.rst:954 msgid "Supported ``__dunder__`` names" msgstr "" -#: howto/enum.rst:953 +#: howto/enum.rst:956 msgid "" -":attr:`__members__` is a read-only ordered mapping of ``member_name``:" -"``member`` items. It is only available on the class." +":attr:`~enum.EnumType.__members__` is a read-only ordered mapping of " +"``member_name``:``member`` items. It is only available on the class." msgstr "" -#: howto/enum.rst:956 +#: howto/enum.rst:959 msgid "" -":meth:`__new__`, if specified, must create and return the enum members; it " -"is also a very good idea to set the member's :attr:`_value_` appropriately. " -"Once all the members are created it is no longer used." +":meth:`~object.__new__`, if specified, must create and return the enum " +"members; it is also a very good idea to set the member's :attr:`~Enum." +"_value_` appropriately. Once all the members are created it is no longer " +"used." msgstr "" -#: howto/enum.rst:962 +#: howto/enum.rst:965 msgid "Supported ``_sunder_`` names" msgstr "" -#: howto/enum.rst:964 -msgid "``_name_`` -- name of the member" +#: howto/enum.rst:967 +msgid ":attr:`~Enum._name_` -- name of the member" msgstr "" -#: howto/enum.rst:965 +#: howto/enum.rst:968 msgid "" -"``_value_`` -- value of the member; can be set / modified in ``__new__``" +":attr:`~Enum._value_` -- value of the member; can be set / modified in " +"``__new__``" msgstr "" -#: howto/enum.rst:967 +#: howto/enum.rst:970 msgid "" -"``_missing_`` -- a lookup function used when a value is not found; may be " -"overridden" +":meth:`~Enum._missing_` -- a lookup function used when a value is not found; " +"may be overridden" msgstr "" -#: howto/enum.rst:969 +#: howto/enum.rst:972 msgid "" -"``_ignore_`` -- a list of names, either as a :class:`list` or a :class:" -"`str`, that will not be transformed into members, and will be removed from " -"the final class" +":attr:`~Enum._ignore_` -- a list of names, either as a :class:`list` or a :" +"class:`str`, that will not be transformed into members, and will be removed " +"from the final class" msgstr "" -#: howto/enum.rst:972 +#: howto/enum.rst:975 msgid "" -"``_order_`` -- used in Python 2/3 code to ensure member order is consistent " -"(class attribute, removed during class creation)" +":attr:`~Enum._order_` -- used in Python 2/3 code to ensure member order is " +"consistent (class attribute, removed during class creation)" msgstr "" -#: howto/enum.rst:974 +#: howto/enum.rst:977 msgid "" -"``_generate_next_value_`` -- used by the `Functional API`_ and by :class:" -"`auto` to get an appropriate value for an enum member; may be overridden" +":meth:`~Enum._generate_next_value_` -- used by the `Functional API`_ and by :" +"class:`auto` to get an appropriate value for an enum member; may be " +"overridden" msgstr "" -#: howto/enum.rst:980 +#: howto/enum.rst:983 msgid "" "For standard :class:`Enum` classes the next value chosen is the last value " "seen incremented by one." msgstr "" -#: howto/enum.rst:983 +#: howto/enum.rst:986 msgid "" "For :class:`Flag` classes the next value chosen will be the next highest " "power-of-two, regardless of the last value seen." msgstr "" -#: howto/enum.rst:986 +#: howto/enum.rst:989 msgid "``_missing_``, ``_order_``, ``_generate_next_value_``" msgstr "" -#: howto/enum.rst:987 +#: howto/enum.rst:990 msgid "``_ignore_``" msgstr "" -#: howto/enum.rst:989 +#: howto/enum.rst:992 msgid "" -"To help keep Python 2 / Python 3 code in sync an :attr:`_order_` attribute " -"can be provided. It will be checked against the actual order of the " -"enumeration and raise an error if the two do not match::" +"To help keep Python 2 / Python 3 code in sync an :attr:`~Enum._order_` " +"attribute can be provided. It will be checked against the actual order of " +"the enumeration and raise an error if the two do not match::" msgstr "" -#: howto/enum.rst:993 +#: howto/enum.rst:996 msgid "" ">>> class Color(Enum):\n" "... _order_ = 'RED GREEN BLUE'\n" @@ -1517,27 +1526,27 @@ msgid "" " ['RED', 'GREEN', 'BLUE']" msgstr "" -#: howto/enum.rst:1007 +#: howto/enum.rst:1010 msgid "" -"In Python 2 code the :attr:`_order_` attribute is necessary as definition " -"order is lost before it can be recorded." +"In Python 2 code the :attr:`~Enum._order_` attribute is necessary as " +"definition order is lost before it can be recorded." msgstr "" -#: howto/enum.rst:1012 +#: howto/enum.rst:1015 msgid "_Private__names" msgstr "" -#: howto/enum.rst:1014 +#: howto/enum.rst:1017 msgid "" ":ref:`Private names ` are not converted to enum " "members, but remain normal attributes." msgstr "" -#: howto/enum.rst:1021 +#: howto/enum.rst:1024 msgid "``Enum`` member type" msgstr "" -#: howto/enum.rst:1023 +#: howto/enum.rst:1026 msgid "" "Enum members are instances of their enum class, and are normally accessed as " "``EnumClass.member``. In certain situations, such as writing custom enum " @@ -1547,18 +1556,18 @@ msgid "" "strongly recommended." msgstr "" -#: howto/enum.rst:1034 +#: howto/enum.rst:1037 msgid "Creating members that are mixed with other data types" msgstr "" -#: howto/enum.rst:1036 +#: howto/enum.rst:1039 msgid "" "When subclassing other data types, such as :class:`int` or :class:`str`, " "with an :class:`Enum`, all values after the ``=`` are passed to that data " "type's constructor. For example::" msgstr "" -#: howto/enum.rst:1040 +#: howto/enum.rst:1043 msgid "" ">>> class MyEnum(IntEnum): # help(int) -> int(x, base=10) -> integer\n" "... example = '11', 16 # so x='11' and base=16\n" @@ -1567,11 +1576,11 @@ msgid "" "17" msgstr "" -#: howto/enum.rst:1048 +#: howto/enum.rst:1051 msgid "Boolean value of ``Enum`` classes and members" msgstr "" -#: howto/enum.rst:1050 +#: howto/enum.rst:1053 msgid "" "Enum classes that are mixed with non-:class:`Enum` types (such as :class:" "`int`, :class:`str`, etc.) are evaluated according to the mixed-in type's " @@ -1580,48 +1589,48 @@ msgid "" "your class::" msgstr "" -#: howto/enum.rst:1056 +#: howto/enum.rst:1059 msgid "" "def __bool__(self):\n" " return bool(self.value)" msgstr "" -#: howto/enum.rst:1059 +#: howto/enum.rst:1062 msgid "Plain :class:`Enum` classes always evaluate as :data:`True`." msgstr "" -#: howto/enum.rst:1063 +#: howto/enum.rst:1066 msgid "``Enum`` classes with methods" msgstr "" -#: howto/enum.rst:1065 +#: howto/enum.rst:1068 msgid "" "If you give your enum subclass extra methods, like the `Planet`_ class " "below, those methods will show up in a :func:`dir` of the member, but not of " "the class::" msgstr "" -#: howto/enum.rst:1069 +#: howto/enum.rst:1072 msgid "" -">>> dir(Planet) \n" +">>> dir(Planet)\n" "['EARTH', 'JUPITER', 'MARS', 'MERCURY', 'NEPTUNE', 'SATURN', 'URANUS', " "'VENUS', '__class__', '__doc__', '__members__', '__module__']\n" -">>> dir(Planet.EARTH) \n" +">>> dir(Planet.EARTH)\n" "['__class__', '__doc__', '__module__', 'mass', 'name', 'radius', " "'surface_gravity', 'value']" msgstr "" -#: howto/enum.rst:1076 +#: howto/enum.rst:1079 msgid "Combining members of ``Flag``" msgstr "" -#: howto/enum.rst:1078 +#: howto/enum.rst:1081 msgid "" "Iterating over a combination of :class:`Flag` members will only return the " "members that are comprised of a single bit::" msgstr "" -#: howto/enum.rst:1081 +#: howto/enum.rst:1084 msgid "" ">>> class Color(Flag):\n" "... RED = auto()\n" @@ -1637,15 +1646,15 @@ msgid "" "" msgstr "" -#: howto/enum.rst:1096 +#: howto/enum.rst:1099 msgid "``Flag`` and ``IntFlag`` minutia" msgstr "" -#: howto/enum.rst:1098 +#: howto/enum.rst:1101 msgid "Using the following snippet for our examples::" msgstr "" -#: howto/enum.rst:1100 +#: howto/enum.rst:1103 msgid "" ">>> class Color(IntFlag):\n" "... BLACK = 0\n" @@ -1657,35 +1666,35 @@ msgid "" "..." msgstr "" -#: howto/enum.rst:1109 +#: howto/enum.rst:1112 msgid "the following are true:" msgstr "" -#: howto/enum.rst:1111 +#: howto/enum.rst:1114 msgid "single-bit flags are canonical" msgstr "" -#: howto/enum.rst:1112 +#: howto/enum.rst:1115 msgid "multi-bit and zero-bit flags are aliases" msgstr "" -#: howto/enum.rst:1113 +#: howto/enum.rst:1116 msgid "only canonical flags are returned during iteration::" msgstr "" -#: howto/enum.rst:1115 +#: howto/enum.rst:1118 msgid "" ">>> list(Color.WHITE)\n" "[, , ]" msgstr "" -#: howto/enum.rst:1118 +#: howto/enum.rst:1121 msgid "" "negating a flag or flag set returns a new flag/flag set with the " "corresponding positive integer value::" msgstr "" -#: howto/enum.rst:1121 +#: howto/enum.rst:1124 msgid "" ">>> Color.BLUE\n" "\n" @@ -1694,11 +1703,11 @@ msgid "" "" msgstr "" -#: howto/enum.rst:1127 +#: howto/enum.rst:1130 msgid "names of pseudo-flags are constructed from their members' names::" msgstr "" -#: howto/enum.rst:1129 +#: howto/enum.rst:1132 msgid "" ">>> (Color.RED | Color.GREEN).name\n" "'RED|GREEN'\n" @@ -1712,11 +1721,11 @@ msgid "" "True" msgstr "" -#: howto/enum.rst:1140 +#: howto/enum.rst:1143 msgid "multi-bit flags, aka aliases, can be returned from operations::" msgstr "" -#: howto/enum.rst:1142 +#: howto/enum.rst:1145 msgid "" ">>> Color.RED | Color.BLUE\n" "\n" @@ -1728,25 +1737,25 @@ msgid "" "" msgstr "" -#: howto/enum.rst:1151 +#: howto/enum.rst:1154 msgid "" "membership / containment checking: zero-valued flags are always considered " "to be contained::" msgstr "" -#: howto/enum.rst:1154 +#: howto/enum.rst:1157 msgid "" ">>> Color.BLACK in Color.WHITE\n" "True" msgstr "" -#: howto/enum.rst:1157 +#: howto/enum.rst:1160 msgid "" "otherwise, only if all bits of one flag are in the other flag will True be " "returned::" msgstr "" -#: howto/enum.rst:1160 +#: howto/enum.rst:1163 msgid "" ">>> Color.PURPLE in Color.WHITE\n" "True\n" @@ -1755,77 +1764,78 @@ msgid "" "False" msgstr "" -#: howto/enum.rst:1166 +#: howto/enum.rst:1169 msgid "" "There is a new boundary mechanism that controls how out-of-range / invalid " "bits are handled: ``STRICT``, ``CONFORM``, ``EJECT``, and ``KEEP``:" msgstr "" -#: howto/enum.rst:1169 +#: howto/enum.rst:1172 msgid "STRICT --> raises an exception when presented with invalid values" msgstr "" -#: howto/enum.rst:1170 +#: howto/enum.rst:1173 msgid "CONFORM --> discards any invalid bits" msgstr "" -#: howto/enum.rst:1171 +#: howto/enum.rst:1174 msgid "EJECT --> lose Flag status and become a normal int with the given value" msgstr "" -#: howto/enum.rst:1172 +#: howto/enum.rst:1175 msgid "KEEP --> keep the extra bits" msgstr "" -#: howto/enum.rst:1174 +#: howto/enum.rst:1177 msgid "keeps Flag status and extra bits" msgstr "" -#: howto/enum.rst:1175 +#: howto/enum.rst:1178 msgid "extra bits do not show up in iteration" msgstr "" -#: howto/enum.rst:1176 +#: howto/enum.rst:1179 msgid "extra bits do show up in repr() and str()" msgstr "" -#: howto/enum.rst:1178 +#: howto/enum.rst:1181 msgid "" "The default for Flag is ``STRICT``, the default for ``IntFlag`` is " "``EJECT``, and the default for ``_convert_`` is ``KEEP`` (see ``ssl." "Options`` for an example of when ``KEEP`` is needed)." msgstr "" -#: howto/enum.rst:1186 +#: howto/enum.rst:1189 msgid "How are Enums and Flags different?" msgstr "" -#: howto/enum.rst:1188 +#: howto/enum.rst:1191 msgid "" "Enums have a custom metaclass that affects many aspects of both derived :" "class:`Enum` classes and their instances (members)." msgstr "" -#: howto/enum.rst:1193 +#: howto/enum.rst:1196 msgid "Enum Classes" msgstr "" -#: howto/enum.rst:1195 +#: howto/enum.rst:1198 msgid "" "The :class:`EnumType` metaclass is responsible for providing the :meth:" -"`__contains__`, :meth:`__dir__`, :meth:`__iter__` and other methods that " -"allow one to do things with an :class:`Enum` class that fail on a typical " -"class, such as ``list(Color)`` or ``some_enum_var in Color``. :class:" -"`EnumType` is responsible for ensuring that various other methods on the " -"final :class:`Enum` class are correct (such as :meth:`__new__`, :meth:" -"`__getnewargs__`, :meth:`__str__` and :meth:`__repr__`)." +"`~object.__contains__`, :meth:`~object.__dir__`, :meth:`~object.__iter__` " +"and other methods that allow one to do things with an :class:`Enum` class " +"that fail on a typical class, such as ``list(Color)`` or ``some_enum_var in " +"Color``. :class:`EnumType` is responsible for ensuring that various other " +"methods on the final :class:`Enum` class are correct (such as :meth:`~object." +"__new__`, :meth:`~object.__getnewargs__`, :meth:`~object.__str__` and :meth:" +"`~object.__repr__`)." msgstr "" -#: howto/enum.rst:1204 +#: howto/enum.rst:1207 msgid "Flag Classes" msgstr "" -#: howto/enum.rst:1206 +#: howto/enum.rst:1209 msgid "" "Flags have an expanded view of aliasing: to be canonical, the value of a " "flag needs to be a power-of-two value, and not a duplicate name. So, in " @@ -1834,68 +1844,68 @@ msgid "" "considered an alias." msgstr "" -#: howto/enum.rst:1212 +#: howto/enum.rst:1215 msgid "Enum Members (aka instances)" msgstr "" -#: howto/enum.rst:1214 +#: howto/enum.rst:1217 msgid "" "The most interesting thing about enum members is that they are singletons. :" "class:`EnumType` creates them all while it is creating the enum class " -"itself, and then puts a custom :meth:`__new__` in place to ensure that no " -"new ones are ever instantiated by returning only the existing member " +"itself, and then puts a custom :meth:`~object.__new__` in place to ensure " +"that no new ones are ever instantiated by returning only the existing member " "instances." msgstr "" -#: howto/enum.rst:1220 +#: howto/enum.rst:1223 msgid "Flag Members" msgstr "" -#: howto/enum.rst:1222 +#: howto/enum.rst:1225 msgid "" "Flag members can be iterated over just like the :class:`Flag` class, and " "only the canonical members will be returned. For example::" msgstr "" -#: howto/enum.rst:1225 +#: howto/enum.rst:1228 msgid "" ">>> list(Color)\n" "[, , ]" msgstr "" -#: howto/enum.rst:1228 +#: howto/enum.rst:1231 msgid "(Note that ``BLACK``, ``PURPLE``, and ``WHITE`` do not show up.)" msgstr "" -#: howto/enum.rst:1230 +#: howto/enum.rst:1233 msgid "" "Inverting a flag member returns the corresponding positive value, rather " "than a negative value --- for example::" msgstr "" -#: howto/enum.rst:1233 +#: howto/enum.rst:1236 msgid "" ">>> ~Color.RED\n" "" msgstr "" -#: howto/enum.rst:1236 +#: howto/enum.rst:1239 msgid "" "Flag members have a length corresponding to the number of power-of-two " "values they contain. For example::" msgstr "" -#: howto/enum.rst:1239 +#: howto/enum.rst:1242 msgid "" ">>> len(Color.PURPLE)\n" "2" msgstr "" -#: howto/enum.rst:1246 +#: howto/enum.rst:1249 msgid "Enum Cookbook" msgstr "" -#: howto/enum.rst:1249 +#: howto/enum.rst:1252 msgid "" "While :class:`Enum`, :class:`IntEnum`, :class:`StrEnum`, :class:`Flag`, and :" "class:`IntFlag` are expected to cover the majority of use-cases, they cannot " @@ -1903,50 +1913,50 @@ msgid "" "that can be used directly, or as examples for creating one's own." msgstr "" -#: howto/enum.rst:1256 +#: howto/enum.rst:1259 msgid "Omitting values" msgstr "" -#: howto/enum.rst:1258 +#: howto/enum.rst:1261 msgid "" "In many use-cases, one doesn't care what the actual value of an enumeration " "is. There are several ways to define this type of simple enumeration:" msgstr "" -#: howto/enum.rst:1261 +#: howto/enum.rst:1264 msgid "use instances of :class:`auto` for the value" msgstr "" -#: howto/enum.rst:1262 +#: howto/enum.rst:1265 msgid "use instances of :class:`object` as the value" msgstr "" -#: howto/enum.rst:1263 +#: howto/enum.rst:1266 msgid "use a descriptive string as the value" msgstr "" -#: howto/enum.rst:1264 +#: howto/enum.rst:1267 msgid "" -"use a tuple as the value and a custom :meth:`__new__` to replace the tuple " -"with an :class:`int` value" +"use a tuple as the value and a custom :meth:`~object.__new__` to replace the " +"tuple with an :class:`int` value" msgstr "" -#: howto/enum.rst:1267 +#: howto/enum.rst:1270 msgid "" "Using any of these methods signifies to the user that these values are not " "important, and also enables one to add, remove, or reorder members without " "having to renumber the remaining members." msgstr "" -#: howto/enum.rst:1273 +#: howto/enum.rst:1276 msgid "Using :class:`auto`" msgstr "" -#: howto/enum.rst:1275 +#: howto/enum.rst:1278 msgid "Using :class:`auto` would look like::" msgstr "" -#: howto/enum.rst:1277 +#: howto/enum.rst:1280 msgid "" ">>> class Color(Enum):\n" "... RED = auto()\n" @@ -1957,32 +1967,32 @@ msgid "" "" msgstr "" -#: howto/enum.rst:1287 +#: howto/enum.rst:1290 msgid "Using :class:`object`" msgstr "" -#: howto/enum.rst:1289 +#: howto/enum.rst:1292 msgid "Using :class:`object` would look like::" msgstr "" -#: howto/enum.rst:1291 +#: howto/enum.rst:1294 msgid "" ">>> class Color(Enum):\n" "... RED = object()\n" "... GREEN = object()\n" "... BLUE = object()\n" "...\n" -">>> Color.GREEN \n" +">>> Color.GREEN\n" ">" msgstr "" -#: howto/enum.rst:1299 +#: howto/enum.rst:1302 msgid "" "This is also a good example of why you might want to write your own :meth:" -"`__repr__`::" +"`~object.__repr__`::" msgstr "" -#: howto/enum.rst:1302 +#: howto/enum.rst:1305 msgid "" ">>> class Color(Enum):\n" "... RED = object()\n" @@ -1995,15 +2005,15 @@ msgid "" "" msgstr "" -#: howto/enum.rst:1315 +#: howto/enum.rst:1318 msgid "Using a descriptive string" msgstr "" -#: howto/enum.rst:1317 +#: howto/enum.rst:1320 msgid "Using a string as the value would look like::" msgstr "" -#: howto/enum.rst:1319 +#: howto/enum.rst:1322 msgid "" ">>> class Color(Enum):\n" "... RED = 'stop'\n" @@ -2014,15 +2024,15 @@ msgid "" "" msgstr "" -#: howto/enum.rst:1329 -msgid "Using a custom :meth:`__new__`" +#: howto/enum.rst:1332 +msgid "Using a custom :meth:`~object.__new__`" msgstr "" -#: howto/enum.rst:1331 -msgid "Using an auto-numbering :meth:`__new__` would look like::" +#: howto/enum.rst:1334 +msgid "Using an auto-numbering :meth:`~object.__new__` would look like::" msgstr "" -#: howto/enum.rst:1333 +#: howto/enum.rst:1336 msgid "" ">>> class AutoNumber(Enum):\n" "... def __new__(cls):\n" @@ -2040,13 +2050,13 @@ msgid "" "" msgstr "" -#: howto/enum.rst:1348 +#: howto/enum.rst:1351 msgid "" "To make a more general purpose ``AutoNumber``, add ``*args`` to the " "signature::" msgstr "" -#: howto/enum.rst:1350 +#: howto/enum.rst:1353 msgid "" ">>> class AutoNumber(Enum):\n" "... def __new__(cls, *args): # this is the only change from above\n" @@ -2057,13 +2067,13 @@ msgid "" "..." msgstr "" -#: howto/enum.rst:1358 +#: howto/enum.rst:1361 msgid "" "Then when you inherit from ``AutoNumber`` you can write your own " "``__init__`` to handle any extra arguments::" msgstr "" -#: howto/enum.rst:1361 +#: howto/enum.rst:1364 msgid "" ">>> class Swatch(AutoNumber):\n" "... def __init__(self, pantone='unknown'):\n" @@ -2080,35 +2090,35 @@ msgid "" "'unknown'" msgstr "" -#: howto/enum.rst:1377 +#: howto/enum.rst:1380 msgid "" -"The :meth:`__new__` method, if defined, is used during creation of the Enum " -"members; it is then replaced by Enum's :meth:`__new__` which is used after " -"class creation for lookup of existing members." +"The :meth:`~object.__new__` method, if defined, is used during creation of " +"the Enum members; it is then replaced by Enum's :meth:`~object.__new__` " +"which is used after class creation for lookup of existing members." msgstr "" -#: howto/enum.rst:1383 +#: howto/enum.rst:1386 msgid "" "*Do not* call ``super().__new__()``, as the lookup-only ``__new__`` is the " "one that is found; instead, use the data type directly -- e.g.::" msgstr "" -#: howto/enum.rst:1386 +#: howto/enum.rst:1389 msgid "obj = int.__new__(cls, value)" msgstr "" -#: howto/enum.rst:1390 +#: howto/enum.rst:1393 msgid "OrderedEnum" msgstr "" -#: howto/enum.rst:1392 +#: howto/enum.rst:1395 msgid "" "An ordered enumeration that is not based on :class:`IntEnum` and so " "maintains the normal :class:`Enum` invariants (such as not being comparable " "to other enumerations)::" msgstr "" -#: howto/enum.rst:1396 +#: howto/enum.rst:1399 msgid "" ">>> class OrderedEnum(Enum):\n" "... def __ge__(self, other):\n" @@ -2139,17 +2149,17 @@ msgid "" "True" msgstr "" -#: howto/enum.rst:1426 +#: howto/enum.rst:1429 msgid "DuplicateFreeEnum" msgstr "" -#: howto/enum.rst:1428 +#: howto/enum.rst:1431 msgid "" "Raises an error if a duplicate member value is found instead of creating an " "alias::" msgstr "" -#: howto/enum.rst:1431 +#: howto/enum.rst:1434 msgid "" ">>> class DuplicateFreeEnum(Enum):\n" "... def __init__(self, *args):\n" @@ -2173,24 +2183,24 @@ msgid "" "ValueError: aliases not allowed in DuplicateFreeEnum: 'GRENE' --> 'GREEN'" msgstr "" -#: howto/enum.rst:1453 +#: howto/enum.rst:1456 msgid "" "This is a useful example for subclassing Enum to add or change other " "behaviors as well as disallowing aliases. If the only desired change is " "disallowing aliases, the :func:`unique` decorator can be used instead." msgstr "" -#: howto/enum.rst:1459 +#: howto/enum.rst:1462 msgid "Planet" msgstr "" -#: howto/enum.rst:1461 +#: howto/enum.rst:1464 msgid "" -"If :meth:`__new__` or :meth:`__init__` is defined, the value of the enum " -"member will be passed to those methods::" +"If :meth:`~object.__new__` or :meth:`~object.__init__` is defined, the value " +"of the enum member will be passed to those methods::" msgstr "" -#: howto/enum.rst:1464 +#: howto/enum.rst:1467 msgid "" ">>> class Planet(Enum):\n" "... MERCURY = (3.303e+23, 2.4397e6)\n" @@ -2216,15 +2226,15 @@ msgid "" "9.802652743337129" msgstr "" -#: howto/enum.rst:1490 +#: howto/enum.rst:1493 msgid "TimePeriod" msgstr "" -#: howto/enum.rst:1492 -msgid "An example to show the :attr:`_ignore_` attribute in use::" +#: howto/enum.rst:1495 +msgid "An example to show the :attr:`~Enum._ignore_` attribute in use::" msgstr "" -#: howto/enum.rst:1494 +#: howto/enum.rst:1497 msgid "" ">>> from datetime import timedelta\n" ">>> class Period(timedelta, Enum):\n" @@ -2242,11 +2252,11 @@ msgid "" "timedelta(days=366)>]" msgstr "" -#: howto/enum.rst:1511 +#: howto/enum.rst:1514 msgid "Subclassing EnumType" msgstr "" -#: howto/enum.rst:1513 +#: howto/enum.rst:1516 msgid "" "While most enum needs can be met by customizing :class:`Enum` subclasses, " "either with class decorators or custom functions, :class:`EnumType` can be " diff --git a/howto/functional.po b/howto/functional.po index 99a128153..0f2580656 100644 --- a/howto/functional.po +++ b/howto/functional.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -16,7 +16,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: howto/functional.rst:3 +#: howto/functional.rst:5 msgid "Functional Programming HOWTO" msgstr "" @@ -24,7 +24,7 @@ msgstr "" msgid "Author" msgstr "" -#: howto/functional.rst:5 +#: howto/functional.rst:7 msgid "A. M. Kuchling" msgstr "" @@ -32,11 +32,11 @@ msgstr "" msgid "Release" msgstr "" -#: howto/functional.rst:6 +#: howto/functional.rst:8 msgid "0.32" msgstr "" -#: howto/functional.rst:8 +#: howto/functional.rst:10 msgid "" "In this document, we'll take a tour of Python's features suitable for " "implementing programs in a functional style. After an introduction to the " @@ -45,30 +45,30 @@ msgid "" "such as :mod:`itertools` and :mod:`functools`." msgstr "" -#: howto/functional.rst:16 +#: howto/functional.rst:18 msgid "Introduction" msgstr "" -#: howto/functional.rst:18 +#: howto/functional.rst:20 msgid "" "This section explains the basic concept of functional programming; if you're " "just interested in learning about Python language features, skip to the next " "section on :ref:`functional-howto-iterators`." msgstr "" -#: howto/functional.rst:22 +#: howto/functional.rst:24 msgid "" "Programming languages support decomposing problems in several different ways:" msgstr "" -#: howto/functional.rst:24 +#: howto/functional.rst:26 msgid "" "Most programming languages are **procedural**: programs are lists of " "instructions that tell the computer what to do with the program's input. C, " "Pascal, and even Unix shells are procedural languages." msgstr "" -#: howto/functional.rst:28 +#: howto/functional.rst:30 msgid "" "In **declarative** languages, you write a specification that describes the " "problem to be solved, and the language implementation figures out how to " @@ -78,7 +78,7 @@ msgid "" "indexes, which subclauses should be performed first, etc." msgstr "" -#: howto/functional.rst:35 +#: howto/functional.rst:37 msgid "" "**Object-oriented** programs manipulate collections of objects. Objects " "have internal state and support methods that query or modify this internal " @@ -87,7 +87,7 @@ msgid "" "force the use of object-oriented features." msgstr "" -#: howto/functional.rst:41 +#: howto/functional.rst:43 msgid "" "**Functional** programming decomposes a problem into a set of functions. " "Ideally, functions only take inputs and produce outputs, and don't have any " @@ -96,7 +96,7 @@ msgid "" "other variants) and Haskell." msgstr "" -#: howto/functional.rst:47 +#: howto/functional.rst:49 msgid "" "The designers of some computer languages choose to emphasize one particular " "approach to programming. This often makes it difficult to write programs " @@ -109,7 +109,7 @@ msgid "" "functional, for example." msgstr "" -#: howto/functional.rst:58 +#: howto/functional.rst:60 msgid "" "In a functional program, input flows through a set of functions. Each " "function operates on its input and produces some output. Functional style " @@ -120,7 +120,7 @@ msgid "" "runs; every function's output must only depend on its input." msgstr "" -#: howto/functional.rst:66 +#: howto/functional.rst:68 msgid "" "Some languages are very strict about purity and don't even have assignment " "statements such as ``a=3`` or ``c = a + b``, but it's difficult to avoid all " @@ -131,7 +131,7 @@ msgid "" "for a second." msgstr "" -#: howto/functional.rst:73 +#: howto/functional.rst:75 msgid "" "Python programs written in functional style usually won't go to the extreme " "of avoiding all I/O or all assignments; instead, they'll provide a " @@ -141,7 +141,7 @@ msgid "" "other side effects." msgstr "" -#: howto/functional.rst:79 +#: howto/functional.rst:81 msgid "" "Functional programming can be considered the opposite of object-oriented " "programming. Objects are little capsules containing some internal state " @@ -153,40 +153,40 @@ msgid "" "objects in your application (e-mail messages, transactions, etc.)." msgstr "" -#: howto/functional.rst:88 +#: howto/functional.rst:90 msgid "" "Functional design may seem like an odd constraint to work under. Why should " "you avoid objects and side effects? There are theoretical and practical " "advantages to the functional style:" msgstr "" -#: howto/functional.rst:92 +#: howto/functional.rst:94 msgid "Formal provability." msgstr "" -#: howto/functional.rst:93 +#: howto/functional.rst:95 msgid "Modularity." msgstr "" -#: howto/functional.rst:94 +#: howto/functional.rst:96 msgid "Composability." msgstr "" -#: howto/functional.rst:95 +#: howto/functional.rst:97 msgid "Ease of debugging and testing." msgstr "" -#: howto/functional.rst:99 +#: howto/functional.rst:101 msgid "Formal provability" msgstr "" -#: howto/functional.rst:101 +#: howto/functional.rst:103 msgid "" "A theoretical benefit is that it's easier to construct a mathematical proof " "that a functional program is correct." msgstr "" -#: howto/functional.rst:104 +#: howto/functional.rst:106 msgid "" "For a long time researchers have been interested in finding ways to " "mathematically prove programs correct. This is different from testing a " @@ -196,7 +196,7 @@ msgid "" "the right result for all possible inputs." msgstr "" -#: howto/functional.rst:111 +#: howto/functional.rst:113 msgid "" "The technique used to prove programs correct is to write down " "**invariants**, properties of the input data and of the program's variables " @@ -207,7 +207,7 @@ msgid "" "invariants should match the desired conditions on the program's output." msgstr "" -#: howto/functional.rst:119 +#: howto/functional.rst:121 msgid "" "Functional programming's avoidance of assignments arose because assignments " "are difficult to handle with this technique; assignments can break " @@ -215,7 +215,7 @@ msgid "" "invariants that can be propagated onward." msgstr "" -#: howto/functional.rst:124 +#: howto/functional.rst:126 msgid "" "Unfortunately, proving programs correct is largely impractical and not " "relevant to Python software. Even trivial programs require proofs that are " @@ -227,11 +227,11 @@ msgid "" "wrongly believe you've proved the program correct." msgstr "" -#: howto/functional.rst:135 +#: howto/functional.rst:137 msgid "Modularity" msgstr "" -#: howto/functional.rst:137 +#: howto/functional.rst:139 msgid "" "A more practical benefit of functional programming is that it forces you to " "break apart your problem into small pieces. Programs are more modular as a " @@ -240,15 +240,15 @@ msgid "" "Small functions are also easier to read and to check for errors." msgstr "" -#: howto/functional.rst:145 +#: howto/functional.rst:147 msgid "Ease of debugging and testing" msgstr "" -#: howto/functional.rst:147 +#: howto/functional.rst:149 msgid "Testing and debugging a functional-style program is easier." msgstr "" -#: howto/functional.rst:149 +#: howto/functional.rst:151 msgid "" "Debugging is simplified because functions are generally small and clearly " "specified. When a program doesn't work, each function is an interface point " @@ -257,7 +257,7 @@ msgid "" "responsible for a bug." msgstr "" -#: howto/functional.rst:154 +#: howto/functional.rst:156 msgid "" "Testing is easier because each function is a potential subject for a unit " "test. Functions don't depend on system state that needs to be replicated " @@ -265,11 +265,11 @@ msgid "" "and then check that the output matches expectations." msgstr "" -#: howto/functional.rst:161 +#: howto/functional.rst:163 msgid "Composability" msgstr "" -#: howto/functional.rst:163 +#: howto/functional.rst:165 msgid "" "As you work on a functional-style program, you'll write a number of " "functions with varying inputs and outputs. Some of these functions will be " @@ -280,24 +280,24 @@ msgid "" "different situations." msgstr "" -#: howto/functional.rst:170 +#: howto/functional.rst:172 msgid "" "Over time you'll form a personal library of utilities. Often you'll " "assemble new programs by arranging existing functions in a new configuration " "and writing a few functions specialized for the current task." msgstr "" -#: howto/functional.rst:178 +#: howto/functional.rst:180 msgid "Iterators" msgstr "" -#: howto/functional.rst:180 +#: howto/functional.rst:182 msgid "" "I'll start by looking at a Python language feature that's an important " "foundation for writing functional-style programs: iterators." msgstr "" -#: howto/functional.rst:183 +#: howto/functional.rst:185 msgid "" "An iterator is an object representing a stream of data; this object returns " "the data one element at a time. A Python iterator must support a method " @@ -308,7 +308,7 @@ msgid "" "reasonable to write an iterator that produces an infinite stream of data." msgstr "" -#: howto/functional.rst:191 +#: howto/functional.rst:193 msgid "" "The built-in :func:`iter` function takes an arbitrary object and tries to " "return an iterator that will return the object's contents or elements, " @@ -318,11 +318,11 @@ msgid "" "an iterator for it." msgstr "" -#: howto/functional.rst:198 +#: howto/functional.rst:200 msgid "You can experiment with the iteration interface manually:" msgstr "" -#: howto/functional.rst:216 +#: howto/functional.rst:218 msgid "" "Python expects iterable objects in several different contexts, the most " "important being the :keyword:`for` statement. In the statement ``for X in " @@ -330,7 +330,7 @@ msgid "" "an iterator. These two statements are equivalent::" msgstr "" -#: howto/functional.rst:222 +#: howto/functional.rst:224 msgid "" "for i in iter(obj):\n" " print(i)\n" @@ -339,19 +339,19 @@ msgid "" " print(i)" msgstr "" -#: howto/functional.rst:228 +#: howto/functional.rst:230 msgid "" "Iterators can be materialized as lists or tuples by using the :func:`list` " "or :func:`tuple` constructor functions:" msgstr "" -#: howto/functional.rst:237 +#: howto/functional.rst:239 msgid "" "Sequence unpacking also supports iterators: if you know an iterator will " "return N elements, you can unpack them into an N-tuple:" msgstr "" -#: howto/functional.rst:246 +#: howto/functional.rst:248 msgid "" "Built-in functions such as :func:`max` and :func:`min` can take a single " "iterator argument and will return the largest or smallest element. The " @@ -362,7 +362,7 @@ msgid "" "stream, the ``\"in\"`` and ``\"not in\"`` operators won't return either." msgstr "" -#: howto/functional.rst:254 +#: howto/functional.rst:256 msgid "" "Note that you can only go forward in an iterator; there's no way to get the " "previous element, reset the iterator, or make a copy of it. Iterator " @@ -373,24 +373,24 @@ msgid "" "new iterator." msgstr "" -#: howto/functional.rst:264 +#: howto/functional.rst:266 msgid "Data Types That Support Iterators" msgstr "" -#: howto/functional.rst:266 +#: howto/functional.rst:268 msgid "" "We've already seen how lists and tuples support iterators. In fact, any " "Python sequence type, such as strings, will automatically support creation " "of an iterator." msgstr "" -#: howto/functional.rst:270 +#: howto/functional.rst:272 msgid "" "Calling :func:`iter` on a dictionary returns an iterator that will loop over " "the dictionary's keys::" msgstr "" -#: howto/functional.rst:273 +#: howto/functional.rst:275 msgid "" ">>> m = {'Jan': 1, 'Feb': 2, 'Mar': 3, 'Apr': 4, 'May': 5, 'Jun': 6,\n" "... 'Jul': 7, 'Aug': 8, 'Sep': 9, 'Oct': 10, 'Nov': 11, 'Dec': 12}\n" @@ -410,14 +410,14 @@ msgid "" "Dec 12" msgstr "" -#: howto/functional.rst:290 +#: howto/functional.rst:292 msgid "" "Note that starting with Python 3.7, dictionary iteration order is guaranteed " "to be the same as the insertion order. In earlier versions, the behaviour " "was unspecified and could vary between implementations." msgstr "" -#: howto/functional.rst:294 +#: howto/functional.rst:296 msgid "" "Applying :func:`iter` to a dictionary always loops over the keys, but " "dictionaries have methods that return other iterators. If you want to " @@ -425,33 +425,33 @@ msgid "" "`~dict.values` or :meth:`~dict.items` methods to get an appropriate iterator." msgstr "" -#: howto/functional.rst:300 +#: howto/functional.rst:302 msgid "" "The :func:`dict` constructor can accept an iterator that returns a finite " "stream of ``(key, value)`` tuples:" msgstr "" -#: howto/functional.rst:307 +#: howto/functional.rst:309 msgid "" "Files also support iteration by calling the :meth:`~io.TextIOBase.readline` " "method until there are no more lines in the file. This means you can read " "each line of a file like this::" msgstr "" -#: howto/functional.rst:311 +#: howto/functional.rst:313 msgid "" "for line in file:\n" " # do something for each line\n" " ..." msgstr "" -#: howto/functional.rst:315 +#: howto/functional.rst:317 msgid "" "Sets can take their contents from an iterable and let you iterate over the " "set's elements::" msgstr "" -#: howto/functional.rst:318 +#: howto/functional.rst:320 msgid "" ">>> S = {2, 3, 5, 7, 11, 13}\n" ">>> for i in S:\n" @@ -464,11 +464,11 @@ msgid "" "13" msgstr "" -#: howto/functional.rst:331 +#: howto/functional.rst:333 msgid "Generator expressions and list comprehensions" msgstr "" -#: howto/functional.rst:333 +#: howto/functional.rst:335 msgid "" "Two common operations on an iterator's output are 1) performing some " "operation for every element, 2) selecting a subset of elements that meet " @@ -477,7 +477,7 @@ msgid "" "containing a given substring." msgstr "" -#: howto/functional.rst:339 +#: howto/functional.rst:341 msgid "" "List comprehensions and generator expressions (short form: \"listcomps\" and " "\"genexps\") are a concise notation for such operations, borrowed from the " @@ -485,7 +485,7 @@ msgid "" "strip all the whitespace from a stream of strings with the following code::" msgstr "" -#: howto/functional.rst:344 +#: howto/functional.rst:346 msgid "" ">>> line_list = [' line 1\\n', 'line 2 \\n', ' \\n', '']\n" "\n" @@ -496,18 +496,18 @@ msgid "" ">>> stripped_list = [line.strip() for line in line_list]" msgstr "" -#: howto/functional.rst:352 +#: howto/functional.rst:354 msgid "" "You can select only certain elements by adding an ``\"if\"`` condition::" msgstr "" -#: howto/functional.rst:354 +#: howto/functional.rst:356 msgid "" ">>> stripped_list = [line.strip() for line in line_list\n" "... if line != \"\"]" msgstr "" -#: howto/functional.rst:357 +#: howto/functional.rst:359 msgid "" "With a list comprehension, you get back a Python list; ``stripped_list`` is " "a list containing the resulting lines, not an iterator. Generator " @@ -518,14 +518,14 @@ msgid "" "preferable in these situations." msgstr "" -#: howto/functional.rst:364 +#: howto/functional.rst:366 msgid "" "Generator expressions are surrounded by parentheses (\"()\") and list " "comprehensions are surrounded by square brackets (\"[]\"). Generator " "expressions have the form::" msgstr "" -#: howto/functional.rst:368 +#: howto/functional.rst:370 msgid "" "( expression for expr in sequence1\n" " if condition1\n" @@ -538,13 +538,13 @@ msgid "" " if conditionN )" msgstr "" -#: howto/functional.rst:378 +#: howto/functional.rst:380 msgid "" "Again, for a list comprehension only the outside brackets are different " "(square brackets instead of parentheses)." msgstr "" -#: howto/functional.rst:381 +#: howto/functional.rst:383 msgid "" "The elements of the generated output will be the successive values of " "``expression``. The ``if`` clauses are all optional; if present, " @@ -552,18 +552,18 @@ msgid "" "is true." msgstr "" -#: howto/functional.rst:385 +#: howto/functional.rst:387 msgid "" "Generator expressions always have to be written inside parentheses, but the " "parentheses signalling a function call also count. If you want to create an " "iterator that will be immediately passed to a function you can write::" msgstr "" -#: howto/functional.rst:389 +#: howto/functional.rst:391 msgid "obj_total = sum(obj.count for obj in list_all_objects())" msgstr "" -#: howto/functional.rst:391 +#: howto/functional.rst:393 msgid "" "The ``for...in`` clauses contain the sequences to be iterated over. The " "sequences do not have to be the same length, because they are iterated over " @@ -573,13 +573,13 @@ msgid "" "``sequence2``." msgstr "" -#: howto/functional.rst:397 +#: howto/functional.rst:399 msgid "" "To put it another way, a list comprehension or generator expression is " "equivalent to the following Python code::" msgstr "" -#: howto/functional.rst:400 +#: howto/functional.rst:402 msgid "" "for expr1 in sequence1:\n" " if not (condition1):\n" @@ -596,7 +596,7 @@ msgid "" " # the expression." msgstr "" -#: howto/functional.rst:414 +#: howto/functional.rst:416 msgid "" "This means that when there are multiple ``for...in`` clauses but no ``if`` " "clauses, the length of the resulting output will be equal to the product of " @@ -604,14 +604,14 @@ msgid "" "output list is 9 elements long:" msgstr "" -#: howto/functional.rst:426 +#: howto/functional.rst:428 msgid "" "To avoid introducing an ambiguity into Python's grammar, if ``expression`` " "is creating a tuple, it must be surrounded with parentheses. The first list " "comprehension below is a syntax error, while the second one is correct::" msgstr "" -#: howto/functional.rst:430 +#: howto/functional.rst:432 msgid "" "# Syntax error\n" "[x, y for x in seq1 for y in seq2]\n" @@ -619,18 +619,18 @@ msgid "" "[(x, y) for x in seq1 for y in seq2]" msgstr "" -#: howto/functional.rst:437 +#: howto/functional.rst:439 msgid "Generators" msgstr "" -#: howto/functional.rst:439 +#: howto/functional.rst:441 msgid "" "Generators are a special class of functions that simplify the task of " "writing iterators. Regular functions compute a value and return it, but " "generators return an iterator that returns a stream of values." msgstr "" -#: howto/functional.rst:443 +#: howto/functional.rst:445 msgid "" "You're doubtless familiar with how regular function calls work in Python or " "C. When you call a function, it gets a private namespace where its local " @@ -643,18 +643,18 @@ msgid "" "thought of as resumable functions." msgstr "" -#: howto/functional.rst:452 +#: howto/functional.rst:454 msgid "Here's the simplest example of a generator function:" msgstr "" -#: howto/functional.rst:458 +#: howto/functional.rst:460 msgid "" "Any function containing a :keyword:`yield` keyword is a generator function; " "this is detected by Python's :term:`bytecode` compiler which compiles the " "function specially as a result." msgstr "" -#: howto/functional.rst:462 +#: howto/functional.rst:464 msgid "" "When you call a generator function, it doesn't return a single value; " "instead it returns a generator object that supports the iterator protocol. " @@ -666,17 +666,17 @@ msgid "" "method, the function will resume executing." msgstr "" -#: howto/functional.rst:471 +#: howto/functional.rst:473 msgid "Here's a sample usage of the ``generate_ints()`` generator:" msgstr "" -#: howto/functional.rst:488 +#: howto/functional.rst:490 msgid "" "You could equally write ``for i in generate_ints(5)``, or ``a, b, c = " "generate_ints(3)``." msgstr "" -#: howto/functional.rst:491 +#: howto/functional.rst:493 msgid "" "Inside a generator function, ``return value`` causes " "``StopIteration(value)`` to be raised from the :meth:`~generator.__next__` " @@ -684,7 +684,7 @@ msgid "" "procession of values ends and the generator cannot yield any further values." msgstr "" -#: howto/functional.rst:496 +#: howto/functional.rst:498 msgid "" "You could achieve the effect of generators manually by writing your own " "class and storing all the local variables of the generator as instance " @@ -694,7 +694,7 @@ msgid "" "complicated generator, writing a corresponding class can be much messier." msgstr "" -#: howto/functional.rst:504 +#: howto/functional.rst:506 msgid "" "The test suite included with Python's library, :source:`Lib/test/" "test_generators.py`, contains a number of more interesting examples. Here's " @@ -702,7 +702,7 @@ msgid "" "generators recursively. ::" msgstr "" -#: howto/functional.rst:509 +#: howto/functional.rst:511 msgid "" "# A recursive generator that generates Tree leaves in in-order.\n" "def inorder(t):\n" @@ -716,7 +716,7 @@ msgid "" " yield x" msgstr "" -#: howto/functional.rst:520 +#: howto/functional.rst:522 msgid "" "Two other examples in ``test_generators.py`` produce solutions for the N-" "Queens problem (placing N queens on an NxN chess board so that no queen " @@ -725,11 +725,11 @@ msgid "" "twice)." msgstr "" -#: howto/functional.rst:528 +#: howto/functional.rst:530 msgid "Passing values into a generator" msgstr "" -#: howto/functional.rst:530 +#: howto/functional.rst:532 msgid "" "In Python 2.4 and earlier, generators only produced output. Once a " "generator's code was invoked to create an iterator, there was no way to pass " @@ -739,18 +739,18 @@ msgid "" "these approaches are messy." msgstr "" -#: howto/functional.rst:537 +#: howto/functional.rst:539 msgid "" "In Python 2.5 there's a simple way to pass values into a generator. :keyword:" "`yield` became an expression, returning a value that can be assigned to a " "variable or otherwise operated on::" msgstr "" -#: howto/functional.rst:541 +#: howto/functional.rst:543 msgid "val = (yield i)" msgstr "" -#: howto/functional.rst:543 +#: howto/functional.rst:545 msgid "" "I recommend that you **always** put parentheses around a ``yield`` " "expression when you're doing something with the returned value, as in the " @@ -758,7 +758,7 @@ msgid "" "always add them instead of having to remember when they're needed." msgstr "" -#: howto/functional.rst:548 +#: howto/functional.rst:550 msgid "" "(:pep:`342` explains the exact rules, which are that a ``yield``-expression " "must always be parenthesized except when it occurs at the top-level " @@ -767,7 +767,7 @@ msgid "" "operation, as in ``val = (yield i) + 12``.)" msgstr "" -#: howto/functional.rst:554 +#: howto/functional.rst:556 msgid "" "Values are sent into a generator by calling its :meth:`send(value) " "` method. This method resumes the generator's code and the " @@ -775,13 +775,13 @@ msgid "" "`~generator.__next__` method is called, the ``yield`` returns ``None``." msgstr "" -#: howto/functional.rst:559 +#: howto/functional.rst:561 msgid "" "Here's a simple counter that increments by 1 and allows changing the value " "of the internal counter." msgstr "" -#: howto/functional.rst:562 +#: howto/functional.rst:564 msgid "" "def counter(maximum):\n" " i = 0\n" @@ -794,11 +794,11 @@ msgid "" " i += 1" msgstr "" -#: howto/functional.rst:574 +#: howto/functional.rst:576 msgid "And here's an example of changing the counter:" msgstr "" -#: howto/functional.rst:591 +#: howto/functional.rst:593 msgid "" "Because ``yield`` will often be returning ``None``, you should always check " "for this case. Don't just use its value in expressions unless you're sure " @@ -806,20 +806,20 @@ msgid "" "resume your generator function." msgstr "" -#: howto/functional.rst:596 +#: howto/functional.rst:598 msgid "" "In addition to :meth:`~generator.send`, there are two other methods on " "generators:" msgstr "" -#: howto/functional.rst:599 +#: howto/functional.rst:601 msgid "" ":meth:`throw(value) ` is used to raise an exception inside " "the generator; the exception is raised by the ``yield`` expression where the " "generator's execution is paused." msgstr "" -#: howto/functional.rst:603 +#: howto/functional.rst:605 msgid "" ":meth:`~generator.close` raises a :exc:`GeneratorExit` exception inside the " "generator to terminate the iteration. On receiving this exception, the " @@ -830,20 +830,20 @@ msgid "" "collected." msgstr "" -#: howto/functional.rst:611 +#: howto/functional.rst:613 msgid "" "If you need to run cleanup code when a :exc:`GeneratorExit` occurs, I " "suggest using a ``try: ... finally:`` suite instead of catching :exc:" "`GeneratorExit`." msgstr "" -#: howto/functional.rst:614 +#: howto/functional.rst:616 msgid "" "The cumulative effect of these changes is to turn generators from one-way " "producers of information into both producers and consumers." msgstr "" -#: howto/functional.rst:617 +#: howto/functional.rst:619 msgid "" "Generators also become **coroutines**, a more generalized form of " "subroutines. Subroutines are entered at one point and exited at another " @@ -852,36 +852,36 @@ msgid "" "statements)." msgstr "" -#: howto/functional.rst:624 +#: howto/functional.rst:626 msgid "Built-in functions" msgstr "" -#: howto/functional.rst:626 +#: howto/functional.rst:628 msgid "" "Let's look in more detail at built-in functions often used with iterators." msgstr "" -#: howto/functional.rst:628 +#: howto/functional.rst:630 msgid "" "Two of Python's built-in functions, :func:`map` and :func:`filter` duplicate " "the features of generator expressions:" msgstr "" -#: howto/functional.rst:631 +#: howto/functional.rst:633 msgid "" ":func:`map(f, iterA, iterB, ...) ` returns an iterator over the sequence" msgstr "" -#: howto/functional.rst:632 +#: howto/functional.rst:634 msgid "" "``f(iterA[0], iterB[0]), f(iterA[1], iterB[1]), f(iterA[2], iterB[2]), ...``." msgstr "" -#: howto/functional.rst:642 +#: howto/functional.rst:644 msgid "You can of course achieve the same effect with a list comprehension." msgstr "" -#: howto/functional.rst:644 +#: howto/functional.rst:646 msgid "" ":func:`filter(predicate, iter) ` returns an iterator over all the " "sequence elements that meet a certain condition, and is similarly duplicated " @@ -890,18 +890,18 @@ msgid "" "must take a single value." msgstr "" -#: howto/functional.rst:657 +#: howto/functional.rst:659 msgid "This can also be written as a list comprehension:" msgstr "" -#: howto/functional.rst:663 +#: howto/functional.rst:665 msgid "" ":func:`enumerate(iter, start=0) ` counts off the elements in the " "iterable returning 2-tuples containing the count (from *start*) and each " "element. ::" msgstr "" -#: howto/functional.rst:667 +#: howto/functional.rst:669 msgid "" ">>> for item in enumerate(['subject', 'verb', 'object']):\n" "... print(item)\n" @@ -910,13 +910,13 @@ msgid "" "(2, 'object')" msgstr "" -#: howto/functional.rst:673 +#: howto/functional.rst:675 msgid "" ":func:`enumerate` is often used when looping through a list and recording " "the indexes at which certain conditions are met::" msgstr "" -#: howto/functional.rst:676 +#: howto/functional.rst:678 msgid "" "f = open('data.txt', 'r')\n" "for i, line in enumerate(f):\n" @@ -924,7 +924,7 @@ msgid "" " print('Blank line at line #%i' % i)" msgstr "" -#: howto/functional.rst:681 +#: howto/functional.rst:683 msgid "" ":func:`sorted(iterable, key=None, reverse=False) ` collects all the " "elements of the iterable into a list, sorts the list, and returns the sorted " @@ -932,25 +932,25 @@ msgid "" "constructed list's :meth:`~list.sort` method. ::" msgstr "" -#: howto/functional.rst:686 +#: howto/functional.rst:688 msgid "" ">>> import random\n" ">>> # Generate 8 random numbers between [0, 10000)\n" ">>> rand_list = random.sample(range(10000), 8)\n" -">>> rand_list \n" +">>> rand_list\n" "[769, 7953, 9828, 6431, 8442, 9878, 6213, 2207]\n" -">>> sorted(rand_list) \n" +">>> sorted(rand_list)\n" "[769, 2207, 6213, 6431, 7953, 8442, 9828, 9878]\n" -">>> sorted(rand_list, reverse=True) \n" +">>> sorted(rand_list, reverse=True)\n" "[9878, 9828, 8442, 7953, 6431, 6213, 2207, 769]" msgstr "" -#: howto/functional.rst:696 +#: howto/functional.rst:698 msgid "" "(For a more detailed discussion of sorting, see the :ref:`sortinghowto`.)" msgstr "" -#: howto/functional.rst:699 +#: howto/functional.rst:701 msgid "" "The :func:`any(iter) ` and :func:`all(iter) ` built-ins look at " "the truth values of an iterable's contents. :func:`any` returns ``True`` if " @@ -958,19 +958,19 @@ msgid "" "``True`` if all of the elements are true values:" msgstr "" -#: howto/functional.rst:718 +#: howto/functional.rst:720 msgid "" ":func:`zip(iterA, iterB, ...) ` takes one element from each iterable " "and returns them in a tuple::" msgstr "" -#: howto/functional.rst:721 +#: howto/functional.rst:723 msgid "" "zip(['a', 'b', 'c'], (1, 2, 3)) =>\n" " ('a', 1), ('b', 2), ('c', 3)" msgstr "" -#: howto/functional.rst:724 +#: howto/functional.rst:726 msgid "" "It doesn't construct an in-memory list and exhaust all the input iterators " "before returning; instead tuples are constructed and returned only if " @@ -978,62 +978,62 @@ msgid "" "evaluation `__.)" msgstr "" -#: howto/functional.rst:729 +#: howto/functional.rst:731 msgid "" "This iterator is intended to be used with iterables that are all of the same " "length. If the iterables are of different lengths, the resulting stream " "will be the same length as the shortest iterable. ::" msgstr "" -#: howto/functional.rst:733 +#: howto/functional.rst:735 msgid "" "zip(['a', 'b'], (1, 2, 3)) =>\n" " ('a', 1), ('b', 2)" msgstr "" -#: howto/functional.rst:736 +#: howto/functional.rst:738 msgid "" "You should avoid doing this, though, because an element may be taken from " "the longer iterators and discarded. This means you can't go on to use the " "iterators further because you risk skipping a discarded element." msgstr "" -#: howto/functional.rst:742 +#: howto/functional.rst:744 msgid "The itertools module" msgstr "" -#: howto/functional.rst:744 +#: howto/functional.rst:746 msgid "" "The :mod:`itertools` module contains a number of commonly used iterators as " "well as functions for combining several iterators. This section will " "introduce the module's contents by showing small examples." msgstr "" -#: howto/functional.rst:748 +#: howto/functional.rst:750 msgid "The module's functions fall into a few broad classes:" msgstr "" -#: howto/functional.rst:750 +#: howto/functional.rst:752 msgid "Functions that create a new iterator based on an existing iterator." msgstr "" -#: howto/functional.rst:751 +#: howto/functional.rst:753 msgid "Functions for treating an iterator's elements as function arguments." msgstr "" -#: howto/functional.rst:752 +#: howto/functional.rst:754 msgid "Functions for selecting portions of an iterator's output." msgstr "" -#: howto/functional.rst:753 +#: howto/functional.rst:755 msgid "A function for grouping an iterator's output." msgstr "" -#: howto/functional.rst:756 +#: howto/functional.rst:758 msgid "Creating new iterators" msgstr "" -#: howto/functional.rst:758 +#: howto/functional.rst:760 msgid "" ":func:`itertools.count(start, step) ` returns an infinite " "stream of evenly spaced values. You can optionally supply the starting " @@ -1041,7 +1041,7 @@ msgid "" "defaults to 1::" msgstr "" -#: howto/functional.rst:762 +#: howto/functional.rst:764 msgid "" "itertools.count() =>\n" " 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, ...\n" @@ -1051,7 +1051,7 @@ msgid "" " 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, ..." msgstr "" -#: howto/functional.rst:769 +#: howto/functional.rst:771 msgid "" ":func:`itertools.cycle(iter) ` saves a copy of the contents " "of a provided iterable and returns a new iterator that returns its elements " @@ -1059,20 +1059,20 @@ msgid "" "infinitely. ::" msgstr "" -#: howto/functional.rst:773 +#: howto/functional.rst:775 msgid "" "itertools.cycle([1, 2, 3, 4, 5]) =>\n" " 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ..." msgstr "" -#: howto/functional.rst:776 +#: howto/functional.rst:778 msgid "" ":func:`itertools.repeat(elem, [n]) ` returns the provided " "element *n* times, or returns the element endlessly if *n* is not " "provided. ::" msgstr "" -#: howto/functional.rst:779 +#: howto/functional.rst:781 msgid "" "itertools.repeat('abc') =>\n" " abc, abc, abc, abc, abc, abc, abc, abc, abc, abc, ...\n" @@ -1080,7 +1080,7 @@ msgid "" " abc, abc, abc, abc, abc" msgstr "" -#: howto/functional.rst:784 +#: howto/functional.rst:786 msgid "" ":func:`itertools.chain(iterA, iterB, ...) ` takes an " "arbitrary number of iterables as input, and returns all the elements of the " @@ -1088,13 +1088,13 @@ msgid "" "the iterables have been exhausted. ::" msgstr "" -#: howto/functional.rst:789 +#: howto/functional.rst:791 msgid "" "itertools.chain(['a', 'b', 'c'], (1, 2, 3)) =>\n" " a, b, c, 1, 2, 3" msgstr "" -#: howto/functional.rst:792 +#: howto/functional.rst:794 msgid "" ":func:`itertools.islice(iter, [start], stop, [step]) ` " "returns a stream that's a slice of the iterator. With a single *stop* " @@ -1105,7 +1105,7 @@ msgid "" "*step*. ::" msgstr "" -#: howto/functional.rst:799 +#: howto/functional.rst:801 msgid "" "itertools.islice(range(10), 8) =>\n" " 0, 1, 2, 3, 4, 5, 6, 7\n" @@ -1115,7 +1115,7 @@ msgid "" " 2, 4, 6" msgstr "" -#: howto/functional.rst:806 +#: howto/functional.rst:808 msgid "" ":func:`itertools.tee(iter, [n]) ` replicates an iterator; it " "returns *n* independent iterators that will all return the contents of the " @@ -1125,7 +1125,7 @@ msgid "" "and one of the new iterators is consumed more than the others. ::" msgstr "" -#: howto/functional.rst:814 +#: howto/functional.rst:816 msgid "" "itertools.tee( itertools.count() ) =>\n" " iterA, iterB\n" @@ -1137,11 +1137,11 @@ msgid "" " 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, ..." msgstr "" -#: howto/functional.rst:825 +#: howto/functional.rst:827 msgid "Calling functions on elements" msgstr "" -#: howto/functional.rst:827 +#: howto/functional.rst:829 msgid "" "The :mod:`operator` module contains a set of functions corresponding to " "Python's operators. Some examples are :func:`operator.add(a, b) ` assumes that the " "iterable will return a stream of tuples, and calls *func* using these tuples " "as the arguments::" msgstr "" -#: howto/functional.rst:837 +#: howto/functional.rst:839 msgid "" "itertools.starmap(os.path.join,\n" " [('/bin', 'python'), ('/usr', 'bin', 'java'),\n" @@ -1166,37 +1166,37 @@ msgid "" " /bin/python, /usr/bin/java, /usr/bin/perl, /usr/bin/ruby" msgstr "" -#: howto/functional.rst:845 +#: howto/functional.rst:847 msgid "Selecting elements" msgstr "" -#: howto/functional.rst:847 +#: howto/functional.rst:849 msgid "" "Another group of functions chooses a subset of an iterator's elements based " "on a predicate." msgstr "" -#: howto/functional.rst:850 +#: howto/functional.rst:852 msgid "" ":func:`itertools.filterfalse(predicate, iter) ` is " "the opposite of :func:`filter`, returning all elements for which the " "predicate returns false::" msgstr "" -#: howto/functional.rst:854 +#: howto/functional.rst:856 msgid "" "itertools.filterfalse(is_even, itertools.count()) =>\n" " 1, 3, 5, 7, 9, 11, 13, 15, ..." msgstr "" -#: howto/functional.rst:857 +#: howto/functional.rst:859 msgid "" ":func:`itertools.takewhile(predicate, iter) ` returns " "elements for as long as the predicate returns true. Once the predicate " "returns false, the iterator will signal the end of its results. ::" msgstr "" -#: howto/functional.rst:861 +#: howto/functional.rst:863 msgid "" "def less_than_10(x):\n" " return x < 10\n" @@ -1208,14 +1208,14 @@ msgid "" " 0" msgstr "" -#: howto/functional.rst:870 +#: howto/functional.rst:872 msgid "" ":func:`itertools.dropwhile(predicate, iter) ` discards " "elements while the predicate returns true, and then returns the rest of the " "iterable's results. ::" msgstr "" -#: howto/functional.rst:874 +#: howto/functional.rst:876 msgid "" "itertools.dropwhile(less_than_10, itertools.count()) =>\n" " 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, ...\n" @@ -1224,7 +1224,7 @@ msgid "" " 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, ..." msgstr "" -#: howto/functional.rst:880 +#: howto/functional.rst:882 msgid "" ":func:`itertools.compress(data, selectors) ` takes two " "iterators and returns only those elements of *data* for which the " @@ -1232,24 +1232,24 @@ msgid "" "is exhausted::" msgstr "" -#: howto/functional.rst:884 +#: howto/functional.rst:886 msgid "" "itertools.compress([1, 2, 3, 4, 5], [True, True, False, False, True]) =>\n" " 1, 2, 5" msgstr "" -#: howto/functional.rst:889 +#: howto/functional.rst:891 msgid "Combinatoric functions" msgstr "" -#: howto/functional.rst:891 +#: howto/functional.rst:893 msgid "" "The :func:`itertools.combinations(iterable, r) ` " "returns an iterator giving all possible *r*-tuple combinations of the " "elements contained in *iterable*. ::" msgstr "" -#: howto/functional.rst:895 +#: howto/functional.rst:897 msgid "" "itertools.combinations([1, 2, 3, 4, 5], 2) =>\n" " (1, 2), (1, 3), (1, 4), (1, 5),\n" @@ -1263,7 +1263,7 @@ msgid "" " (3, 4, 5)" msgstr "" -#: howto/functional.rst:906 +#: howto/functional.rst:908 msgid "" "The elements within each tuple remain in the same order as *iterable* " "returned them. For example, the number 1 is always before 2, 3, 4, or 5 in " @@ -1272,7 +1272,7 @@ msgid "" "constraint on the order, returning all possible arrangements of length *r*::" msgstr "" -#: howto/functional.rst:913 +#: howto/functional.rst:915 msgid "" "itertools.permutations([1, 2, 3, 4, 5], 2) =>\n" " (1, 2), (1, 3), (1, 4), (1, 5),\n" @@ -1287,32 +1287,32 @@ msgid "" " (5, 4, 3, 2, 1)" msgstr "" -#: howto/functional.rst:925 +#: howto/functional.rst:927 msgid "" "If you don't supply a value for *r* the length of the iterable is used, " "meaning that all the elements are permuted." msgstr "" -#: howto/functional.rst:928 +#: howto/functional.rst:930 msgid "" "Note that these functions produce all of the possible combinations by " "position and don't require that the contents of *iterable* are unique::" msgstr "" -#: howto/functional.rst:931 +#: howto/functional.rst:933 msgid "" "itertools.permutations('aba', 3) =>\n" " ('a', 'b', 'a'), ('a', 'a', 'b'), ('b', 'a', 'a'),\n" " ('b', 'a', 'a'), ('a', 'a', 'b'), ('a', 'b', 'a')" msgstr "" -#: howto/functional.rst:935 +#: howto/functional.rst:937 msgid "" "The identical tuple ``('a', 'a', 'b')`` occurs twice, but the two 'a' " "strings came from different positions." msgstr "" -#: howto/functional.rst:938 +#: howto/functional.rst:940 msgid "" "The :func:`itertools.combinations_with_replacement(iterable, r) ` function relaxes a different constraint: " @@ -1321,7 +1321,7 @@ msgid "" "the second element is selected. ::" msgstr "" -#: howto/functional.rst:944 +#: howto/functional.rst:946 msgid "" "itertools.combinations_with_replacement([1, 2, 3, 4, 5], 2) =>\n" " (1, 1), (1, 2), (1, 3), (1, 4), (1, 5),\n" @@ -1331,11 +1331,11 @@ msgid "" " (5, 5)" msgstr "" -#: howto/functional.rst:953 +#: howto/functional.rst:955 msgid "Grouping elements" msgstr "" -#: howto/functional.rst:955 +#: howto/functional.rst:957 msgid "" "The last function I'll discuss, :func:`itertools.groupby(iter, " "key_func=None) `, is the most complicated. " @@ -1344,14 +1344,14 @@ msgid "" "key is simply each element itself." msgstr "" -#: howto/functional.rst:960 +#: howto/functional.rst:962 msgid "" ":func:`~itertools.groupby` collects all the consecutive elements from the " "underlying iterable that have the same key value, and returns a stream of 2-" "tuples containing a key value and an iterator for the elements with that key." msgstr "" -#: howto/functional.rst:966 +#: howto/functional.rst:968 msgid "" "city_list = [('Decatur', 'AL'), ('Huntsville', 'AL'), ('Selma', 'AL'),\n" " ('Anchorage', 'AK'), ('Nome', 'AK'),\n" @@ -1376,7 +1376,7 @@ msgid "" " ('Flagstaff', 'AZ'), ('Phoenix', 'AZ'), ('Tucson', 'AZ')" msgstr "" -#: howto/functional.rst:988 +#: howto/functional.rst:990 msgid "" ":func:`~itertools.groupby` assumes that the underlying iterable's contents " "will already be sorted based on the key. Note that the returned iterators " @@ -1384,11 +1384,11 @@ msgid "" "iterator-1 before requesting iterator-2 and its corresponding key." msgstr "" -#: howto/functional.rst:995 +#: howto/functional.rst:997 msgid "The functools module" msgstr "" -#: howto/functional.rst:997 +#: howto/functional.rst:999 msgid "" "The :mod:`functools` module contains some higher-order functions. A **higher-" "order function** takes one or more functions as input and returns a new " @@ -1396,7 +1396,7 @@ msgid "" "partial` function." msgstr "" -#: howto/functional.rst:1002 +#: howto/functional.rst:1004 msgid "" "For programs written in a functional style, you'll sometimes want to " "construct variants of existing functions that have some of the parameters " @@ -1406,7 +1406,7 @@ msgid "" "\"partial function application\"." msgstr "" -#: howto/functional.rst:1008 +#: howto/functional.rst:1010 msgid "" "The constructor for :func:`~functools.partial` takes the arguments " "``(function, arg1, arg2, ..., kwarg1=value1, kwarg2=value2)``. The " @@ -1414,11 +1414,11 @@ msgid "" "with the filled-in arguments." msgstr "" -#: howto/functional.rst:1013 +#: howto/functional.rst:1015 msgid "Here's a small but realistic example::" msgstr "" -#: howto/functional.rst:1015 +#: howto/functional.rst:1017 msgid "" "import functools\n" "\n" @@ -1431,7 +1431,7 @@ msgid "" "server_log('Unable to open socket')" msgstr "" -#: howto/functional.rst:1025 +#: howto/functional.rst:1027 msgid "" ":func:`functools.reduce(func, iter, [initial_value]) ` " "cumulatively performs an operation on all the iterable's elements and, " @@ -1446,7 +1446,7 @@ msgid "" "``func(initial_value, A)`` is the first calculation. ::" msgstr "" -#: howto/functional.rst:1037 +#: howto/functional.rst:1039 msgid "" ">>> import operator, functools\n" ">>> functools.reduce(operator.concat, ['A', 'BB', 'C'])\n" @@ -1461,20 +1461,20 @@ msgid "" "1" msgstr "" -#: howto/functional.rst:1049 +#: howto/functional.rst:1051 msgid "" "If you use :func:`operator.add` with :func:`functools.reduce`, you'll add up " "all the elements of the iterable. This case is so common that there's a " "special built-in called :func:`sum` to compute it:" msgstr "" -#: howto/functional.rst:1061 +#: howto/functional.rst:1063 msgid "" "For many uses of :func:`functools.reduce`, though, it can be clearer to just " "write the obvious :keyword:`for` loop::" msgstr "" -#: howto/functional.rst:1064 +#: howto/functional.rst:1066 msgid "" "import functools\n" "# Instead of:\n" @@ -1486,7 +1486,7 @@ msgid "" " product *= i" msgstr "" -#: howto/functional.rst:1073 +#: howto/functional.rst:1075 msgid "" "A related function is :func:`itertools.accumulate(iterable, func=operator." "add) `. It performs the same calculation, but instead " @@ -1494,7 +1494,7 @@ msgid "" "iterator that also yields each partial result::" msgstr "" -#: howto/functional.rst:1078 +#: howto/functional.rst:1080 msgid "" "itertools.accumulate([1, 2, 3, 4, 5]) =>\n" " 1, 3, 6, 10, 15\n" @@ -1503,11 +1503,11 @@ msgid "" " 1, 2, 6, 24, 120" msgstr "" -#: howto/functional.rst:1086 +#: howto/functional.rst:1088 msgid "The operator module" msgstr "" -#: howto/functional.rst:1088 +#: howto/functional.rst:1090 msgid "" "The :mod:`operator` module was mentioned earlier. It contains a set of " "functions corresponding to Python's operators. These functions are often " @@ -1515,60 +1515,60 @@ msgid "" "functions that perform a single operation." msgstr "" -#: howto/functional.rst:1093 +#: howto/functional.rst:1095 msgid "Some of the functions in this module are:" msgstr "" -#: howto/functional.rst:1095 +#: howto/functional.rst:1097 msgid "" "Math operations: ``add()``, ``sub()``, ``mul()``, ``floordiv()``, " "``abs()``, ..." msgstr "" -#: howto/functional.rst:1096 +#: howto/functional.rst:1098 msgid "Logical operations: ``not_()``, ``truth()``." msgstr "" -#: howto/functional.rst:1097 +#: howto/functional.rst:1099 msgid "Bitwise operations: ``and_()``, ``or_()``, ``invert()``." msgstr "" -#: howto/functional.rst:1098 +#: howto/functional.rst:1100 msgid "" "Comparisons: ``eq()``, ``ne()``, ``lt()``, ``le()``, ``gt()``, and ``ge()``." msgstr "" -#: howto/functional.rst:1099 +#: howto/functional.rst:1101 msgid "Object identity: ``is_()``, ``is_not()``." msgstr "" -#: howto/functional.rst:1101 +#: howto/functional.rst:1103 msgid "Consult the operator module's documentation for a complete list." msgstr "" -#: howto/functional.rst:1105 +#: howto/functional.rst:1107 msgid "Small functions and the lambda expression" msgstr "" -#: howto/functional.rst:1107 +#: howto/functional.rst:1109 msgid "" "When writing functional-style programs, you'll often need little functions " "that act as predicates or that combine elements in some way." msgstr "" -#: howto/functional.rst:1110 +#: howto/functional.rst:1112 msgid "" "If there's a Python built-in or a module function that's suitable, you don't " "need to define a new function at all::" msgstr "" -#: howto/functional.rst:1113 +#: howto/functional.rst:1115 msgid "" "stripped_lines = [line.strip() for line in lines]\n" "existing_files = filter(os.path.exists, file_list)" msgstr "" -#: howto/functional.rst:1116 +#: howto/functional.rst:1118 msgid "" "If the function you need doesn't exist, you need to write it. One way to " "write small functions is to use the :keyword:`lambda` expression. " @@ -1577,20 +1577,20 @@ msgid "" "expression::" msgstr "" -#: howto/functional.rst:1121 +#: howto/functional.rst:1123 msgid "" "adder = lambda x, y: x+y\n" "\n" "print_assign = lambda name, value: name + '=' + str(value)" msgstr "" -#: howto/functional.rst:1125 +#: howto/functional.rst:1127 msgid "" "An alternative is to just use the ``def`` statement and define a function in " "the usual way::" msgstr "" -#: howto/functional.rst:1128 +#: howto/functional.rst:1130 msgid "" "def adder(x, y):\n" " return x + y\n" @@ -1599,13 +1599,13 @@ msgid "" " return name + '=' + str(value)" msgstr "" -#: howto/functional.rst:1134 +#: howto/functional.rst:1136 msgid "" "Which alternative is preferable? That's a style question; my usual course " "is to avoid using ``lambda``." msgstr "" -#: howto/functional.rst:1137 +#: howto/functional.rst:1139 msgid "" "One reason for my preference is that ``lambda`` is quite limited in the " "functions it can define. The result has to be computable as a single " @@ -1615,20 +1615,20 @@ msgid "" "that's hard to read. Quick, what's the following code doing? ::" msgstr "" -#: howto/functional.rst:1144 +#: howto/functional.rst:1146 msgid "" "import functools\n" "total = functools.reduce(lambda a, b: (0, a[1] + b[1]), items)[1]" msgstr "" -#: howto/functional.rst:1147 +#: howto/functional.rst:1149 msgid "" "You can figure it out, but it takes time to disentangle the expression to " "figure out what's going on. Using a short nested ``def`` statements makes " "things a little bit better::" msgstr "" -#: howto/functional.rst:1151 +#: howto/functional.rst:1153 msgid "" "import functools\n" "def combine(a, b):\n" @@ -1637,70 +1637,70 @@ msgid "" "total = functools.reduce(combine, items)[1]" msgstr "" -#: howto/functional.rst:1157 +#: howto/functional.rst:1159 msgid "But it would be best of all if I had simply used a ``for`` loop::" msgstr "" -#: howto/functional.rst:1159 +#: howto/functional.rst:1161 msgid "" "total = 0\n" "for a, b in items:\n" " total += b" msgstr "" -#: howto/functional.rst:1163 +#: howto/functional.rst:1165 msgid "Or the :func:`sum` built-in and a generator expression::" msgstr "" -#: howto/functional.rst:1165 +#: howto/functional.rst:1167 msgid "total = sum(b for a, b in items)" msgstr "" -#: howto/functional.rst:1167 +#: howto/functional.rst:1169 msgid "" "Many uses of :func:`functools.reduce` are clearer when written as ``for`` " "loops." msgstr "" -#: howto/functional.rst:1169 +#: howto/functional.rst:1171 msgid "" "Fredrik Lundh once suggested the following set of rules for refactoring uses " "of ``lambda``:" msgstr "" -#: howto/functional.rst:1172 +#: howto/functional.rst:1174 msgid "Write a lambda function." msgstr "" -#: howto/functional.rst:1173 +#: howto/functional.rst:1175 msgid "Write a comment explaining what the heck that lambda does." msgstr "" -#: howto/functional.rst:1174 +#: howto/functional.rst:1176 msgid "" "Study the comment for a while, and think of a name that captures the essence " "of the comment." msgstr "" -#: howto/functional.rst:1176 +#: howto/functional.rst:1178 msgid "Convert the lambda to a def statement, using that name." msgstr "" -#: howto/functional.rst:1177 +#: howto/functional.rst:1179 msgid "Remove the comment." msgstr "" -#: howto/functional.rst:1179 +#: howto/functional.rst:1181 msgid "" "I really like these rules, but you're free to disagree about whether this " "lambda-free style is better." msgstr "" -#: howto/functional.rst:1184 +#: howto/functional.rst:1186 msgid "Revision History and Acknowledgements" msgstr "" -#: howto/functional.rst:1186 +#: howto/functional.rst:1188 msgid "" "The author would like to thank the following people for offering " "suggestions, corrections and assistance with various drafts of this article: " @@ -1708,40 +1708,40 @@ msgid "" "Krell, Leandro Lameiro, Jussi Salmela, Collin Winter, Blake Winton." msgstr "" -#: howto/functional.rst:1191 +#: howto/functional.rst:1193 msgid "Version 0.1: posted June 30 2006." msgstr "" -#: howto/functional.rst:1193 +#: howto/functional.rst:1195 msgid "Version 0.11: posted July 1 2006. Typo fixes." msgstr "" -#: howto/functional.rst:1195 +#: howto/functional.rst:1197 msgid "" "Version 0.2: posted July 10 2006. Merged genexp and listcomp sections into " "one. Typo fixes." msgstr "" -#: howto/functional.rst:1198 +#: howto/functional.rst:1200 msgid "" "Version 0.21: Added more references suggested on the tutor mailing list." msgstr "" -#: howto/functional.rst:1200 +#: howto/functional.rst:1202 msgid "" "Version 0.30: Adds a section on the ``functional`` module written by Collin " "Winter; adds short section on the operator module; a few other edits." msgstr "" -#: howto/functional.rst:1205 +#: howto/functional.rst:1207 msgid "References" msgstr "" -#: howto/functional.rst:1208 +#: howto/functional.rst:1210 msgid "General" msgstr "" -#: howto/functional.rst:1210 +#: howto/functional.rst:1212 msgid "" "**Structure and Interpretation of Computer Programs**, by Harold Abelson and " "Gerald Jay Sussman with Julie Sussman. The book can be found at https://" @@ -1752,39 +1752,39 @@ msgid "" "functional-style Python code." msgstr "" -#: howto/functional.rst:1218 +#: howto/functional.rst:1220 msgid "" "https://www.defmacro.org/ramblings/fp.html: A general introduction to " "functional programming that uses Java examples and has a lengthy historical " "introduction." msgstr "" -#: howto/functional.rst:1221 +#: howto/functional.rst:1223 msgid "" "https://en.wikipedia.org/wiki/Functional_programming: General Wikipedia " "entry describing functional programming." msgstr "" -#: howto/functional.rst:1224 +#: howto/functional.rst:1226 msgid "https://en.wikipedia.org/wiki/Coroutine: Entry for coroutines." msgstr "" -#: howto/functional.rst:1226 +#: howto/functional.rst:1228 msgid "" "https://en.wikipedia.org/wiki/Partial_application: Entry for the concept of " "partial function application." msgstr "" -#: howto/functional.rst:1228 +#: howto/functional.rst:1230 msgid "" "https://en.wikipedia.org/wiki/Currying: Entry for the concept of currying." msgstr "" -#: howto/functional.rst:1231 +#: howto/functional.rst:1233 msgid "Python-specific" msgstr "" -#: howto/functional.rst:1233 +#: howto/functional.rst:1235 msgid "" "https://gnosis.cx/TPiP/: The first chapter of David Mertz's book :title-" "reference:`Text Processing in Python` discusses functional programming for " @@ -1792,7 +1792,7 @@ msgid "" "Text Processing\"." msgstr "" -#: howto/functional.rst:1238 +#: howto/functional.rst:1240 msgid "" "Mertz also wrote a 3-part series of articles on functional programming for " "IBM's DeveloperWorks site; see `part 1 `__," msgstr "" -#: howto/functional.rst:1246 +#: howto/functional.rst:1248 msgid "Python documentation" msgstr "" -#: howto/functional.rst:1248 +#: howto/functional.rst:1250 msgid "Documentation for the :mod:`itertools` module." msgstr "" -#: howto/functional.rst:1250 +#: howto/functional.rst:1252 msgid "Documentation for the :mod:`functools` module." msgstr "" -#: howto/functional.rst:1252 +#: howto/functional.rst:1254 msgid "Documentation for the :mod:`operator` module." msgstr "" -#: howto/functional.rst:1254 +#: howto/functional.rst:1256 msgid ":pep:`289`: \"Generator Expressions\"" msgstr "" -#: howto/functional.rst:1256 +#: howto/functional.rst:1258 msgid "" ":pep:`342`: \"Coroutines via Enhanced Generators\" describes the new " "generator features in Python 2.5." diff --git a/howto/gdb_helpers.po b/howto/gdb_helpers.po index 1c89be337..e272506ea 100644 --- a/howto/gdb_helpers.po +++ b/howto/gdb_helpers.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: TURKISH \n" @@ -298,13 +298,15 @@ msgstr "" #: howto/gdb_helpers.rst:183 msgid "" "The internal structure can be revealed with a cast to :c:expr:`PyLongObject " -"*`:" +"*`::" msgstr "" #: howto/gdb_helpers.rst:185 msgid "" -"(gdb) p *(PyLongObject*)some_python_integer $5 = {ob_base = {ob_base = " -"{ob_refcnt = 8, ob_type = 0x3dad39f5e0}, ob_size = 1}, ob_digit = {42}}" +"(gdb) p *(PyLongObject*)some_python_integer\n" +"$5 = {ob_base = {ob_base = {ob_refcnt = 8, ob_type = 0x3dad39f5e0}, ob_size " +"= 1},\n" +"ob_digit = {42}}" msgstr "" #: howto/gdb_helpers.rst:189 diff --git a/howto/index.po b/howto/index.po index be0d97d2e..817d97637 100644 --- a/howto/index.po +++ b/howto/index.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-17 01:28+0300\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2023-01-16 04:38+0300\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -21,17 +21,109 @@ msgid "Python HOWTOs" msgstr "Python NASIL'ları" #: howto/index.rst:5 +#, fuzzy msgid "" -"Python HOWTOs are documents that cover a single, specific topic, and attempt " -"to cover it fairly completely. Modelled on the Linux Documentation Project's " -"HOWTO collection, this collection is an effort to foster documentation " -"that's more detailed than the Python Library Reference." +"Python HOWTOs are documents that cover a specific topic in-depth. Modeled on " +"the Linux Documentation Project's HOWTO collection, this collection is an " +"effort to foster documentation that's more detailed than the Python Library " +"Reference." msgstr "" "Python NASIL'ları, tek bir belirli konuyu kapsayan ve onu olabildiğince " "eksiksiz bir şekilde ele almaya çalışan dokümanlardır. Linux Dokümantasyon " "Projesi'nin NASIL koleksiyonu üzerinde modellenen bu koleksiyon, Python " "Kütüphane Referansından daha detaylı dokümantasyonu teşvik etme çabasıdır." -#: howto/index.rst:11 -msgid "Currently, the HOWTOs are:" -msgstr "Şu anda, NASIL'lar şunlardır:" +#: howto/index.rst:35 +msgid "General:" +msgstr "" + +#: howto/index.rst:37 +msgid ":ref:`annotations-howto`" +msgstr "" + +#: howto/index.rst:38 +msgid ":ref:`argparse-tutorial`" +msgstr "" + +#: howto/index.rst:39 +msgid ":ref:`descriptorhowto`" +msgstr "" + +#: howto/index.rst:40 +msgid ":ref:`enum-howto`" +msgstr "" + +#: howto/index.rst:41 +msgid ":ref:`functional-howto`" +msgstr "" + +#: howto/index.rst:42 +msgid ":ref:`ipaddress-howto`" +msgstr "" + +#: howto/index.rst:43 +msgid ":ref:`logging-howto`" +msgstr "" + +#: howto/index.rst:44 +msgid ":ref:`logging-cookbook`" +msgstr "" + +#: howto/index.rst:45 +msgid ":ref:`regex-howto`" +msgstr "" + +#: howto/index.rst:46 +msgid ":ref:`sortinghowto`" +msgstr "" + +#: howto/index.rst:47 +msgid ":ref:`unicode-howto`" +msgstr "" + +#: howto/index.rst:48 +msgid ":ref:`urllib-howto`" +msgstr "" + +#: howto/index.rst:50 +msgid "Advanced development:" +msgstr "" + +#: howto/index.rst:52 +msgid ":ref:`curses-howto`" +msgstr "" + +#: howto/index.rst:53 +msgid ":ref:`isolating-extensions-howto`" +msgstr "" + +#: howto/index.rst:54 +msgid ":ref:`python_2.3_mro`" +msgstr "" + +#: howto/index.rst:55 +msgid ":ref:`socket-howto`" +msgstr "" + +#: howto/index.rst:56 +msgid ":ref:`cporting-howto`" +msgstr "" + +#: howto/index.rst:58 +msgid "Debugging and profiling:" +msgstr "" + +#: howto/index.rst:60 +msgid ":ref:`gdb`" +msgstr "" + +#: howto/index.rst:61 +msgid ":ref:`instrumentation`" +msgstr "" + +#: howto/index.rst:62 +msgid ":ref:`perf_profiling`" +msgstr "" + +#~ msgid "Currently, the HOWTOs are:" +#~ msgstr "Şu anda, NASIL'lar şunlardır:" diff --git a/howto/ipaddress.po b/howto/ipaddress.po index 20a689d22..27e6e7322 100644 --- a/howto/ipaddress.po +++ b/howto/ipaddress.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -286,7 +286,7 @@ msgstr "" msgid "" ">>> net4 = ipaddress.ip_network('192.0.2.0/24')\n" ">>> for x in net4.hosts():\n" -"... print(x) \n" +"... print(x)\n" "192.0.2.1\n" "192.0.2.2\n" "192.0.2.3\n" diff --git a/howto/logging-cookbook.po b/howto/logging-cookbook.po index 2cebdd097..da7b97c32 100644 --- a/howto/logging-cookbook.po +++ b/howto/logging-cookbook.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -1099,11 +1099,32 @@ msgid "" "configured ports clash with something else in your test environment." msgstr "" -#: howto/logging-cookbook.rst:843 +#: howto/logging-cookbook.rst:838 +msgid "" +"The default configuration uses a TCP socket on port 9020. You can use a Unix " +"Domain socket instead of a TCP socket by doing the following:" +msgstr "" + +#: howto/logging-cookbook.rst:841 +msgid "" +"In :file:`listener.json`, add a ``socket`` key with the path to the domain " +"socket you want to use. If this key is present, the listener listens on the " +"corresponding domain socket and not on a TCP socket (the ``port`` key is " +"ignored)." +msgstr "" + +#: howto/logging-cookbook.rst:846 +msgid "" +"In :file:`webapp.json`, change the socket handler configuration dictionary " +"so that the ``host`` value is the path to the domain socket, and set the " +"``port`` value to ``null``." +msgstr "" + +#: howto/logging-cookbook.rst:856 msgid "Adding contextual information to your logging output" msgstr "" -#: howto/logging-cookbook.rst:845 +#: howto/logging-cookbook.rst:858 msgid "" "Sometimes you want logging output to contain contextual information in " "addition to the parameters passed to the logging call. For example, in a " @@ -1119,11 +1140,11 @@ msgid "" "`Logger` instances becomes effectively unbounded." msgstr "" -#: howto/logging-cookbook.rst:860 +#: howto/logging-cookbook.rst:873 msgid "Using LoggerAdapters to impart contextual information" msgstr "" -#: howto/logging-cookbook.rst:862 +#: howto/logging-cookbook.rst:875 msgid "" "An easy way in which you can pass contextual information to be output along " "with logging event information is to use the :class:`LoggerAdapter` class. " @@ -1134,7 +1155,7 @@ msgid "" "types of instances interchangeably." msgstr "" -#: howto/logging-cookbook.rst:870 +#: howto/logging-cookbook.rst:883 msgid "" "When you create an instance of :class:`LoggerAdapter`, you pass it a :class:" "`Logger` instance and a dict-like object which contains your contextual " @@ -1145,7 +1166,7 @@ msgid "" "of :class:`LoggerAdapter`::" msgstr "" -#: howto/logging-cookbook.rst:878 +#: howto/logging-cookbook.rst:891 msgid "" "def debug(self, msg, /, *args, **kwargs):\n" " \"\"\"\n" @@ -1156,7 +1177,7 @@ msgid "" " self.logger.debug(msg, *args, **kwargs)" msgstr "" -#: howto/logging-cookbook.rst:886 +#: howto/logging-cookbook.rst:899 msgid "" "The :meth:`~LoggerAdapter.process` method of :class:`LoggerAdapter` is where " "the contextual information is added to the logging output. It's passed the " @@ -1169,7 +1190,7 @@ msgid "" "be silently overwritten." msgstr "" -#: howto/logging-cookbook.rst:895 +#: howto/logging-cookbook.rst:908 msgid "" "The advantage of using 'extra' is that the values in the dict-like object " "are merged into the :class:`LogRecord` instance's __dict__, allowing you to " @@ -1180,7 +1201,7 @@ msgid "" "`~LoggerAdapter.process` to do what you need. Here is a simple example::" msgstr "" -#: howto/logging-cookbook.rst:903 +#: howto/logging-cookbook.rst:916 msgid "" "class CustomAdapter(logging.LoggerAdapter):\n" " \"\"\"\n" @@ -1191,27 +1212,27 @@ msgid "" " return '[%s] %s' % (self.extra['connid'], msg), kwargs" msgstr "" -#: howto/logging-cookbook.rst:911 +#: howto/logging-cookbook.rst:924 msgid "which you can use like this::" msgstr "" -#: howto/logging-cookbook.rst:913 +#: howto/logging-cookbook.rst:926 msgid "" "logger = logging.getLogger(__name__)\n" "adapter = CustomAdapter(logger, {'connid': some_conn_id})" msgstr "" -#: howto/logging-cookbook.rst:916 +#: howto/logging-cookbook.rst:929 msgid "" "Then any events that you log to the adapter will have the value of " "``some_conn_id`` prepended to the log messages." msgstr "" -#: howto/logging-cookbook.rst:920 +#: howto/logging-cookbook.rst:933 msgid "Using objects other than dicts to pass contextual information" msgstr "" -#: howto/logging-cookbook.rst:922 +#: howto/logging-cookbook.rst:935 msgid "" "You don't need to pass an actual dict to a :class:`LoggerAdapter` - you " "could pass an instance of a class which implements ``__getitem__`` and " @@ -1220,11 +1241,11 @@ msgid "" "would be constant)." msgstr "" -#: howto/logging-cookbook.rst:931 +#: howto/logging-cookbook.rst:944 msgid "Using Filters to impart contextual information" msgstr "" -#: howto/logging-cookbook.rst:933 +#: howto/logging-cookbook.rst:946 msgid "" "You can also add contextual information to log output using a user-defined :" "class:`Filter`. ``Filter`` instances are allowed to modify the " @@ -1233,7 +1254,7 @@ msgid "" "class:`Formatter`." msgstr "" -#: howto/logging-cookbook.rst:938 +#: howto/logging-cookbook.rst:951 msgid "" "For example in a web application, the request being processed (or at least, " "the interesting parts of it) can be stored in a threadlocal (:class:" @@ -1245,7 +1266,7 @@ msgid "" "an example script::" msgstr "" -#: howto/logging-cookbook.rst:947 +#: howto/logging-cookbook.rst:960 msgid "" "import logging\n" "from random import choice\n" @@ -1288,11 +1309,11 @@ msgid "" "'parameters')" msgstr "" -#: howto/logging-cookbook.rst:984 +#: howto/logging-cookbook.rst:997 msgid "which, when run, produces something like:" msgstr "" -#: howto/logging-cookbook.rst:986 +#: howto/logging-cookbook.rst:999 msgid "" "2010-09-06 22:38:15,292 a.b.c DEBUG IP: 123.231.231.123 User: fred A " "debug message\n" @@ -1320,11 +1341,11 @@ msgid "" "message at INFO level with 2 parameters" msgstr "" -#: howto/logging-cookbook.rst:1002 +#: howto/logging-cookbook.rst:1015 msgid "Use of ``contextvars``" msgstr "" -#: howto/logging-cookbook.rst:1004 +#: howto/logging-cookbook.rst:1017 msgid "" "Since Python 3.7, the :mod:`contextvars` module has provided context-local " "storage which works for both :mod:`threading` and :mod:`asyncio` processing " @@ -1334,7 +1355,7 @@ msgid "" "attributes handled by web applications." msgstr "" -#: howto/logging-cookbook.rst:1010 +#: howto/logging-cookbook.rst:1023 msgid "" "For the purposes of illustration, say that you have different web " "applications, each independent of the other but running in the same Python " @@ -1345,11 +1366,11 @@ msgid "" "information such as client IP, HTTP request method and client username?" msgstr "" -#: howto/logging-cookbook.rst:1017 +#: howto/logging-cookbook.rst:1030 msgid "Let's assume that the library can be simulated by the following code:" msgstr "" -#: howto/logging-cookbook.rst:1019 +#: howto/logging-cookbook.rst:1032 msgid "" "# webapplib.py\n" "import logging\n" @@ -1364,14 +1385,14 @@ msgid "" " time.sleep(0.01)" msgstr "" -#: howto/logging-cookbook.rst:1033 +#: howto/logging-cookbook.rst:1046 msgid "" "We can simulate the multiple web applications by means of two simple " "classes, ``Request`` and ``WebApp``. These simulate how real threaded web " "applications work - each request is handled by a thread:" msgstr "" -#: howto/logging-cookbook.rst:1037 +#: howto/logging-cookbook.rst:1050 msgid "" "# main.py\n" "import argparse\n" @@ -1526,7 +1547,7 @@ msgid "" " main()" msgstr "" -#: howto/logging-cookbook.rst:1177 +#: howto/logging-cookbook.rst:1190 msgid "" "If you run the above, you should find that roughly half the requests go " "into :file:`app1.log` and the rest into :file:`app2.log`, and the all the " @@ -1537,7 +1558,7 @@ msgid "" "illustrated by the following shell output:" msgstr "" -#: howto/logging-cookbook.rst:1184 +#: howto/logging-cookbook.rst:1197 msgid "" "~/logging-contextual-webapp$ python main.py\n" "app1 processed 51 requests\n" @@ -1592,11 +1613,11 @@ msgid "" "147" msgstr "" -#: howto/logging-cookbook.rst:1224 +#: howto/logging-cookbook.rst:1237 msgid "Imparting contextual information in handlers" msgstr "" -#: howto/logging-cookbook.rst:1226 +#: howto/logging-cookbook.rst:1239 msgid "" "Each :class:`~Handler` has its own chain of filters. If you want to add " "contextual information to a :class:`LogRecord` without leaking it to other " @@ -1604,7 +1625,7 @@ msgid "" "instead of modifying it in-place, as shown in the following script::" msgstr "" -#: howto/logging-cookbook.rst:1231 +#: howto/logging-cookbook.rst:1244 msgid "" "import copy\n" "import logging\n" @@ -1626,11 +1647,11 @@ msgid "" " logger.info('A log message')" msgstr "" -#: howto/logging-cookbook.rst:1253 +#: howto/logging-cookbook.rst:1266 msgid "Logging to a single file from multiple processes" msgstr "" -#: howto/logging-cookbook.rst:1255 +#: howto/logging-cookbook.rst:1268 msgid "" "Although logging is thread-safe, and logging to a single file from multiple " "threads in a single process *is* supported, logging to a single file from " @@ -1646,7 +1667,7 @@ msgid "" "you to adapt in your own applications." msgstr "" -#: howto/logging-cookbook.rst:1268 +#: howto/logging-cookbook.rst:1281 msgid "" "You could also write your own handler which uses the :class:" "`~multiprocessing.Lock` class from the :mod:`multiprocessing` module to " @@ -1657,7 +1678,7 @@ msgid "" "platforms (see https://bugs.python.org/issue3770)." msgstr "" -#: howto/logging-cookbook.rst:1278 +#: howto/logging-cookbook.rst:1291 msgid "" "Alternatively, you can use a ``Queue`` and a :class:`QueueHandler` to send " "all logging events to one of the processes in your multi-process " @@ -1672,7 +1693,7 @@ msgid "" "requirements::" msgstr "" -#: howto/logging-cookbook.rst:1289 +#: howto/logging-cookbook.rst:1302 msgid "" "# You'll need these imports in your own code\n" "import logging\n" @@ -1792,13 +1813,13 @@ msgid "" " main()" msgstr "" -#: howto/logging-cookbook.rst:1394 +#: howto/logging-cookbook.rst:1407 msgid "" "A variant of the above script keeps the logging in the main process, in a " "separate thread::" msgstr "" -#: howto/logging-cookbook.rst:1397 +#: howto/logging-cookbook.rst:1410 msgid "" "import logging\n" "import logging.config\n" @@ -1895,7 +1916,7 @@ msgid "" " lp.join()" msgstr "" -#: howto/logging-cookbook.rst:1489 +#: howto/logging-cookbook.rst:1502 msgid "" "This variant shows how you can e.g. apply configuration for particular " "loggers - e.g. the ``foo`` logger has a special handler which stores all " @@ -1905,36 +1926,36 @@ msgid "" "appropriate destinations." msgstr "" -#: howto/logging-cookbook.rst:1496 +#: howto/logging-cookbook.rst:1509 msgid "Using concurrent.futures.ProcessPoolExecutor" msgstr "" -#: howto/logging-cookbook.rst:1498 +#: howto/logging-cookbook.rst:1511 msgid "" "If you want to use :class:`concurrent.futures.ProcessPoolExecutor` to start " "your worker processes, you need to create the queue slightly differently. " "Instead of" msgstr "" -#: howto/logging-cookbook.rst:1502 +#: howto/logging-cookbook.rst:1515 msgid "queue = multiprocessing.Queue(-1)" msgstr "" -#: howto/logging-cookbook.rst:1506 +#: howto/logging-cookbook.rst:1519 msgid "you should use" msgstr "" -#: howto/logging-cookbook.rst:1508 +#: howto/logging-cookbook.rst:1521 msgid "" "queue = multiprocessing.Manager().Queue(-1) # also works with the examples " "above" msgstr "" -#: howto/logging-cookbook.rst:1512 +#: howto/logging-cookbook.rst:1525 msgid "and you can then replace the worker creation from this::" msgstr "" -#: howto/logging-cookbook.rst:1514 +#: howto/logging-cookbook.rst:1527 msgid "" "workers = []\n" "for i in range(10):\n" @@ -1946,22 +1967,22 @@ msgid "" " w.join()" msgstr "" -#: howto/logging-cookbook.rst:1523 +#: howto/logging-cookbook.rst:1536 msgid "to this (remembering to first import :mod:`concurrent.futures`)::" msgstr "" -#: howto/logging-cookbook.rst:1525 +#: howto/logging-cookbook.rst:1538 msgid "" "with concurrent.futures.ProcessPoolExecutor(max_workers=10) as executor:\n" " for i in range(10):\n" " executor.submit(worker_process, queue, worker_configurer)" msgstr "" -#: howto/logging-cookbook.rst:1530 +#: howto/logging-cookbook.rst:1543 msgid "Deploying Web applications using Gunicorn and uWSGI" msgstr "" -#: howto/logging-cookbook.rst:1532 +#: howto/logging-cookbook.rst:1545 msgid "" "When deploying Web applications using `Gunicorn `_ or " "`uWSGI `_ (or similar), " @@ -1973,11 +1994,11 @@ msgid "" "listener in production`_ for more details." msgstr "" -#: howto/logging-cookbook.rst:1542 +#: howto/logging-cookbook.rst:1555 msgid "Using file rotation" msgstr "" -#: howto/logging-cookbook.rst:1547 +#: howto/logging-cookbook.rst:1560 msgid "" "Sometimes you want to let a log file grow to a certain size, then open a new " "file and log to that. You may want to keep a certain number of these files, " @@ -1986,7 +2007,7 @@ msgid "" "usage pattern, the logging package provides a :class:`RotatingFileHandler`::" msgstr "" -#: howto/logging-cookbook.rst:1553 +#: howto/logging-cookbook.rst:1566 msgid "" "import glob\n" "import logging\n" @@ -2015,13 +2036,13 @@ msgid "" " print(filename)" msgstr "" -#: howto/logging-cookbook.rst:1579 +#: howto/logging-cookbook.rst:1592 msgid "" "The result should be 6 separate files, each with part of the log history for " "the application:" msgstr "" -#: howto/logging-cookbook.rst:1582 +#: howto/logging-cookbook.rst:1595 msgid "" "logging_rotatingfile_example.out\n" "logging_rotatingfile_example.out.1\n" @@ -2031,7 +2052,7 @@ msgid "" "logging_rotatingfile_example.out.5" msgstr "" -#: howto/logging-cookbook.rst:1591 +#: howto/logging-cookbook.rst:1604 msgid "" "The most current file is always :file:`logging_rotatingfile_example.out`, " "and each time it reaches the size limit it is renamed with the suffix " @@ -2039,17 +2060,17 @@ msgid "" "(``.1`` becomes ``.2``, etc.) and the ``.6`` file is erased." msgstr "" -#: howto/logging-cookbook.rst:1596 +#: howto/logging-cookbook.rst:1609 msgid "" "Obviously this example sets the log length much too small as an extreme " "example. You would want to set *maxBytes* to an appropriate value." msgstr "" -#: howto/logging-cookbook.rst:1604 +#: howto/logging-cookbook.rst:1617 msgid "Use of alternative formatting styles" msgstr "" -#: howto/logging-cookbook.rst:1606 +#: howto/logging-cookbook.rst:1619 msgid "" "When logging was added to the Python standard library, the only way of " "formatting messages with variable content was to use the %-formatting " @@ -2058,7 +2079,7 @@ msgid "" "Python 2.6)." msgstr "" -#: howto/logging-cookbook.rst:1612 +#: howto/logging-cookbook.rst:1625 msgid "" "Logging (as of 3.2) provides improved support for these two additional " "formatting styles. The :class:`Formatter` class been enhanced to take an " @@ -2071,7 +2092,7 @@ msgid "" "session to show the possibilities:" msgstr "" -#: howto/logging-cookbook.rst:1622 +#: howto/logging-cookbook.rst:1635 msgid "" ">>> import logging\n" ">>> root = logging.getLogger()\n" @@ -2096,21 +2117,21 @@ msgid "" ">>>" msgstr "" -#: howto/logging-cookbook.rst:1646 +#: howto/logging-cookbook.rst:1659 msgid "" "Note that the formatting of logging messages for final output to logs is " "completely independent of how an individual logging message is constructed. " "That can still use %-formatting, as shown here::" msgstr "" -#: howto/logging-cookbook.rst:1650 +#: howto/logging-cookbook.rst:1663 msgid "" ">>> logger.error('This is an%s %s %s', 'other,', 'ERROR,', 'message')\n" "2010-10-28 15:19:29,833 foo.bar ERROR This is another, ERROR, message\n" ">>>" msgstr "" -#: howto/logging-cookbook.rst:1654 +#: howto/logging-cookbook.rst:1667 msgid "" "Logging calls (``logger.debug()``, ``logger.info()`` etc.) only take " "positional parameters for the actual logging message itself, with keyword " @@ -2126,7 +2147,7 @@ msgid "" "strings." msgstr "" -#: howto/logging-cookbook.rst:1667 +#: howto/logging-cookbook.rst:1680 msgid "" "There is, however, a way that you can use {}- and $- formatting to construct " "your individual log messages. Recall that for a message you can use an " @@ -2135,7 +2156,7 @@ msgid "" "the following two classes::" msgstr "" -#: howto/logging-cookbook.rst:1673 howto/logging-cookbook.rst:2761 +#: howto/logging-cookbook.rst:1686 howto/logging-cookbook.rst:2774 msgid "" "class BraceMessage:\n" " def __init__(self, fmt, /, *args, **kwargs):\n" @@ -2156,7 +2177,7 @@ msgid "" " return Template(self.fmt).substitute(**self.kwargs)" msgstr "" -#: howto/logging-cookbook.rst:1691 +#: howto/logging-cookbook.rst:1704 msgid "" "Either of these can be used in place of a format string, to allow {}- or $-" "formatting to be used to build the actual \"message\" part which appears in " @@ -2167,14 +2188,14 @@ msgid "" "used as a synonym/alias for :func:`gettext.gettext` or its brethren)." msgstr "" -#: howto/logging-cookbook.rst:1699 +#: howto/logging-cookbook.rst:1712 msgid "" "The above classes are not included in Python, though they're easy enough to " "copy and paste into your own code. They can be used as follows (assuming " "that they're declared in a module called ``wherever``):" msgstr "" -#: howto/logging-cookbook.rst:1703 +#: howto/logging-cookbook.rst:1716 msgid "" ">>> from wherever import BraceMessage as __\n" ">>> print(__('Message with {0} {name}', 2, name='placeholders'))\n" @@ -2193,14 +2214,14 @@ msgid "" ">>>" msgstr "" -#: howto/logging-cookbook.rst:1721 +#: howto/logging-cookbook.rst:1734 msgid "" "While the above examples use ``print()`` to show how the formatting works, " "you would of course use ``logger.debug()`` or similar to actually log using " "this approach." msgstr "" -#: howto/logging-cookbook.rst:1725 +#: howto/logging-cookbook.rst:1738 msgid "" "One thing to note is that you pay no significant performance penalty with " "this approach: the actual formatting happens not when you make the logging " @@ -2211,13 +2232,13 @@ msgid "" "sugar for a constructor call to one of the :samp:`{XXX}Message` classes." msgstr "" -#: howto/logging-cookbook.rst:1733 +#: howto/logging-cookbook.rst:1746 msgid "" "If you prefer, you can use a :class:`LoggerAdapter` to achieve a similar " "effect to the above, as in the following example::" msgstr "" -#: howto/logging-cookbook.rst:1736 +#: howto/logging-cookbook.rst:1749 msgid "" "import logging\n" "\n" @@ -2246,17 +2267,17 @@ msgid "" " main()" msgstr "" -#: howto/logging-cookbook.rst:1762 +#: howto/logging-cookbook.rst:1775 msgid "" "The above script should log the message ``Hello, world!`` when run with " "Python 3.8 or later." msgstr "" -#: howto/logging-cookbook.rst:1771 +#: howto/logging-cookbook.rst:1784 msgid "Customizing ``LogRecord``" msgstr "" -#: howto/logging-cookbook.rst:1773 +#: howto/logging-cookbook.rst:1786 msgid "" "Every logging event is represented by a :class:`LogRecord` instance. When an " "event is logged and not filtered out by a logger's level, a :class:" @@ -2267,13 +2288,13 @@ msgid "" "was done:" msgstr "" -#: howto/logging-cookbook.rst:1780 +#: howto/logging-cookbook.rst:1793 msgid "" ":meth:`Logger.makeRecord`, which is called in the normal process of logging " "an event. This invoked :class:`LogRecord` directly to create an instance." msgstr "" -#: howto/logging-cookbook.rst:1783 +#: howto/logging-cookbook.rst:1796 msgid "" ":func:`makeLogRecord`, which is called with a dictionary containing " "attributes to be added to the LogRecord. This is typically invoked when a " @@ -2282,27 +2303,27 @@ msgid "" "`~handlers.HTTPHandler`)." msgstr "" -#: howto/logging-cookbook.rst:1789 +#: howto/logging-cookbook.rst:1802 msgid "" "This has usually meant that if you need to do anything special with a :class:" "`LogRecord`, you've had to do one of the following." msgstr "" -#: howto/logging-cookbook.rst:1792 +#: howto/logging-cookbook.rst:1805 msgid "" "Create your own :class:`Logger` subclass, which overrides :meth:`Logger." "makeRecord`, and set it using :func:`~logging.setLoggerClass` before any " "loggers that you care about are instantiated." msgstr "" -#: howto/logging-cookbook.rst:1795 +#: howto/logging-cookbook.rst:1808 msgid "" "Add a :class:`Filter` to a logger or handler, which does the necessary " "special manipulation you need when its :meth:`~Filter.filter` method is " "called." msgstr "" -#: howto/logging-cookbook.rst:1799 +#: howto/logging-cookbook.rst:1812 msgid "" "The first approach would be a little unwieldy in the scenario where (say) " "several different libraries wanted to do different things. Each would " @@ -2310,7 +2331,7 @@ msgid "" "last would win." msgstr "" -#: howto/logging-cookbook.rst:1804 +#: howto/logging-cookbook.rst:1817 msgid "" "The second approach works reasonably well for many cases, but does not allow " "you to e.g. use a specialized subclass of :class:`LogRecord`. Library " @@ -2319,11 +2340,11 @@ msgid "" "would do simply by adding new packages or modules and doing ::" msgstr "" -#: howto/logging-cookbook.rst:1810 +#: howto/logging-cookbook.rst:1823 msgid "logger = logging.getLogger(__name__)" msgstr "" -#: howto/logging-cookbook.rst:1812 +#: howto/logging-cookbook.rst:1825 msgid "" "at module level). It's probably one too many things to think about. " "Developers could also add the filter to a :class:`~logging.NullHandler` " @@ -2333,7 +2354,7 @@ msgid "" "developer." msgstr "" -#: howto/logging-cookbook.rst:1818 +#: howto/logging-cookbook.rst:1831 msgid "" "In Python 3.2 and later, :class:`~logging.LogRecord` creation is done " "through a factory, which you can specify. The factory is just a callable you " @@ -2343,7 +2364,7 @@ msgid "" "`LogRecord` is the default setting for the factory." msgstr "" -#: howto/logging-cookbook.rst:1825 +#: howto/logging-cookbook.rst:1838 msgid "" "This approach allows a custom factory to control all aspects of LogRecord " "creation. For example, you could return a subclass, or just add some " @@ -2351,7 +2372,7 @@ msgid "" "this::" msgstr "" -#: howto/logging-cookbook.rst:1829 +#: howto/logging-cookbook.rst:1842 msgid "" "old_factory = logging.getLogRecordFactory()\n" "\n" @@ -2363,7 +2384,7 @@ msgid "" "logging.setLogRecordFactory(record_factory)" msgstr "" -#: howto/logging-cookbook.rst:1838 +#: howto/logging-cookbook.rst:1851 msgid "" "This pattern allows different libraries to chain factories together, and as " "long as they don't overwrite each other's attributes or unintentionally " @@ -2373,22 +2394,22 @@ msgid "" "used when the use of a :class:`Filter` does not provide the desired result." msgstr "" -#: howto/logging-cookbook.rst:1850 +#: howto/logging-cookbook.rst:1863 msgid "Subclassing QueueHandler and QueueListener- a ZeroMQ example" msgstr "" -#: howto/logging-cookbook.rst:1853 howto/logging-cookbook.rst:1986 +#: howto/logging-cookbook.rst:1866 howto/logging-cookbook.rst:1999 msgid "Subclass ``QueueHandler``" msgstr "" -#: howto/logging-cookbook.rst:1855 +#: howto/logging-cookbook.rst:1868 msgid "" "You can use a :class:`QueueHandler` subclass to send messages to other kinds " "of queues, for example a ZeroMQ 'publish' socket. In the example below,the " "socket is created separately and passed to the handler (as its 'queue')::" msgstr "" -#: howto/logging-cookbook.rst:1859 +#: howto/logging-cookbook.rst:1872 msgid "" "import zmq # using pyzmq, the Python binding for ZeroMQ\n" "import json # for serializing records portably\n" @@ -2405,13 +2426,13 @@ msgid "" "handler = ZeroMQSocketHandler(sock)" msgstr "" -#: howto/logging-cookbook.rst:1874 +#: howto/logging-cookbook.rst:1887 msgid "" "Of course there are other ways of organizing this, for example passing in " "the data needed by the handler to create the socket::" msgstr "" -#: howto/logging-cookbook.rst:1877 +#: howto/logging-cookbook.rst:1890 msgid "" "class ZeroMQSocketHandler(QueueHandler):\n" " def __init__(self, uri, socktype=zmq.PUB, ctx=None):\n" @@ -2427,17 +2448,17 @@ msgid "" " self.queue.close()" msgstr "" -#: howto/logging-cookbook.rst:1892 howto/logging-cookbook.rst:1922 +#: howto/logging-cookbook.rst:1905 howto/logging-cookbook.rst:1935 msgid "Subclass ``QueueListener``" msgstr "" -#: howto/logging-cookbook.rst:1894 +#: howto/logging-cookbook.rst:1907 msgid "" "You can also subclass :class:`QueueListener` to get messages from other " "kinds of queues, for example a ZeroMQ 'subscribe' socket. Here's an example::" msgstr "" -#: howto/logging-cookbook.rst:1897 +#: howto/logging-cookbook.rst:1910 msgid "" "class ZeroMQSocketListener(QueueListener):\n" " def __init__(self, uri, /, *handlers, **kwargs):\n" @@ -2453,11 +2474,11 @@ msgid "" " return logging.makeLogRecord(msg)" msgstr "" -#: howto/logging-cookbook.rst:1912 +#: howto/logging-cookbook.rst:1925 msgid "Subclassing QueueHandler and QueueListener- a ``pynng`` example" msgstr "" -#: howto/logging-cookbook.rst:1914 +#: howto/logging-cookbook.rst:1927 msgid "" "In a similar way to the above section, we can implement a listener and " "handler using :pypi:`pynng`, which is a Python binding to `NNG `_ of the Django documentation." msgstr "" -#: howto/logging-cookbook.rst:2160 +#: howto/logging-cookbook.rst:2173 msgid "Using a rotator and namer to customize log rotation processing" msgstr "" -#: howto/logging-cookbook.rst:2162 +#: howto/logging-cookbook.rst:2175 msgid "" "An example of how you can define a namer and rotator is given in the " "following runnable script, which shows gzip compression of the log file::" msgstr "" -#: howto/logging-cookbook.rst:2165 +#: howto/logging-cookbook.rst:2178 msgid "" "import gzip\n" "import logging\n" @@ -2763,12 +2784,12 @@ msgid "" " root.info(f'Message no. {i + 1}')" msgstr "" -#: howto/logging-cookbook.rst:2193 +#: howto/logging-cookbook.rst:2206 msgid "" "After running this, you will see six new files, five of which are compressed:" msgstr "" -#: howto/logging-cookbook.rst:2195 +#: howto/logging-cookbook.rst:2208 msgid "" "$ ls rotated.log*\n" "rotated.log rotated.log.2.gz rotated.log.4.gz\n" @@ -2779,11 +2800,11 @@ msgid "" "2023-01-20 02:28:17,767 Message no. 998" msgstr "" -#: howto/logging-cookbook.rst:2206 +#: howto/logging-cookbook.rst:2219 msgid "A more elaborate multiprocessing example" msgstr "" -#: howto/logging-cookbook.rst:2208 +#: howto/logging-cookbook.rst:2221 msgid "" "The following working example shows how logging can be used with " "multiprocessing using configuration files. The configurations are fairly " @@ -2791,7 +2812,7 @@ msgid "" "in a real multiprocessing scenario." msgstr "" -#: howto/logging-cookbook.rst:2213 +#: howto/logging-cookbook.rst:2226 msgid "" "In the example, the main process spawns a listener process and some worker " "processes. Each of the main process, the listener and the workers have three " @@ -2804,13 +2825,13 @@ msgid "" "own scenario." msgstr "" -#: howto/logging-cookbook.rst:2223 +#: howto/logging-cookbook.rst:2236 msgid "" "Here's the script - the docstrings and the comments hopefully explain how it " "works::" msgstr "" -#: howto/logging-cookbook.rst:2226 +#: howto/logging-cookbook.rst:2239 msgid "" "import logging\n" "import logging.config\n" @@ -3033,11 +3054,11 @@ msgid "" " main()" msgstr "" -#: howto/logging-cookbook.rst:2435 +#: howto/logging-cookbook.rst:2448 msgid "Inserting a BOM into messages sent to a SysLogHandler" msgstr "" -#: howto/logging-cookbook.rst:2437 +#: howto/logging-cookbook.rst:2450 msgid "" ":rfc:`5424` requires that a Unicode message be sent to a syslog daemon as a " "set of bytes which have the following structure: an optional pure-ASCII " @@ -3046,7 +3067,7 @@ msgid "" "<5424#section-6>`.)" msgstr "" -#: howto/logging-cookbook.rst:2443 +#: howto/logging-cookbook.rst:2456 msgid "" "In Python 3.1, code was added to :class:`~logging.handlers.SysLogHandler` to " "insert a BOM into the message, but unfortunately, it was implemented " @@ -3054,7 +3075,7 @@ msgid "" "hence not allowing any pure-ASCII component to appear before it." msgstr "" -#: howto/logging-cookbook.rst:2449 +#: howto/logging-cookbook.rst:2462 msgid "" "As this behaviour is broken, the incorrect BOM insertion code is being " "removed from Python 3.2.4 and later. However, it is not being replaced, and " @@ -3063,37 +3084,37 @@ msgid "" "encoded using UTF-8, then you need to do the following:" msgstr "" -#: howto/logging-cookbook.rst:2455 +#: howto/logging-cookbook.rst:2468 msgid "" "Attach a :class:`~logging.Formatter` instance to your :class:`~logging." "handlers.SysLogHandler` instance, with a format string such as::" msgstr "" -#: howto/logging-cookbook.rst:2459 +#: howto/logging-cookbook.rst:2472 msgid "'ASCII section\\ufeffUnicode section'" msgstr "" -#: howto/logging-cookbook.rst:2461 +#: howto/logging-cookbook.rst:2474 msgid "" "The Unicode code point U+FEFF, when encoded using UTF-8, will be encoded as " "a UTF-8 BOM -- the byte-string ``b'\\xef\\xbb\\xbf'``." msgstr "" -#: howto/logging-cookbook.rst:2464 +#: howto/logging-cookbook.rst:2477 msgid "" "Replace the ASCII section with whatever placeholders you like, but make sure " "that the data that appears in there after substitution is always ASCII (that " "way, it will remain unchanged after UTF-8 encoding)." msgstr "" -#: howto/logging-cookbook.rst:2468 +#: howto/logging-cookbook.rst:2481 msgid "" "Replace the Unicode section with whatever placeholders you like; if the data " "which appears there after substitution contains characters outside the ASCII " "range, that's fine -- it will be encoded using UTF-8." msgstr "" -#: howto/logging-cookbook.rst:2472 +#: howto/logging-cookbook.rst:2485 msgid "" "The formatted message *will* be encoded using UTF-8 encoding by " "``SysLogHandler``. If you follow the above rules, you should be able to " @@ -3102,11 +3123,11 @@ msgid "" "daemon may complain." msgstr "" -#: howto/logging-cookbook.rst:2479 +#: howto/logging-cookbook.rst:2492 msgid "Implementing structured logging" msgstr "" -#: howto/logging-cookbook.rst:2481 +#: howto/logging-cookbook.rst:2494 msgid "" "Although most logging messages are intended for reading by humans, and thus " "not readily machine-parseable, there might be circumstances where you want " @@ -3118,7 +3139,7 @@ msgid "" "machine-parseable manner::" msgstr "" -#: howto/logging-cookbook.rst:2489 +#: howto/logging-cookbook.rst:2502 msgid "" "import json\n" "import logging\n" @@ -3137,29 +3158,29 @@ msgid "" "logging.info(_('message 1', foo='bar', bar='baz', num=123, fnum=123.456))" msgstr "" -#: howto/logging-cookbook.rst:2505 +#: howto/logging-cookbook.rst:2518 msgid "If the above script is run, it prints:" msgstr "" -#: howto/logging-cookbook.rst:2507 +#: howto/logging-cookbook.rst:2520 msgid "" "message 1 >>> {\"fnum\": 123.456, \"num\": 123, \"bar\": \"baz\", \"foo\": " "\"bar\"}" msgstr "" -#: howto/logging-cookbook.rst:2511 howto/logging-cookbook.rst:2553 +#: howto/logging-cookbook.rst:2524 howto/logging-cookbook.rst:2566 msgid "" "Note that the order of items might be different according to the version of " "Python used." msgstr "" -#: howto/logging-cookbook.rst:2514 +#: howto/logging-cookbook.rst:2527 msgid "" "If you need more specialised processing, you can use a custom JSON encoder, " "as in the following complete example::" msgstr "" -#: howto/logging-cookbook.rst:2517 +#: howto/logging-cookbook.rst:2530 msgid "" "import json\n" "import logging\n" @@ -3192,19 +3213,19 @@ msgid "" " main()" msgstr "" -#: howto/logging-cookbook.rst:2547 +#: howto/logging-cookbook.rst:2560 msgid "When the above script is run, it prints:" msgstr "" -#: howto/logging-cookbook.rst:2549 +#: howto/logging-cookbook.rst:2562 msgid "message 1 >>> {\"snowman\": \"\\u2603\", \"set_value\": [1, 2, 3]}" msgstr "" -#: howto/logging-cookbook.rst:2562 +#: howto/logging-cookbook.rst:2575 msgid "Customizing handlers with :func:`dictConfig`" msgstr "" -#: howto/logging-cookbook.rst:2564 +#: howto/logging-cookbook.rst:2577 msgid "" "There are times when you want to customize logging handlers in particular " "ways, and if you use :func:`dictConfig` you may be able to do this without " @@ -3214,7 +3235,7 @@ msgid "" "customize handler creation using a plain function such as::" msgstr "" -#: howto/logging-cookbook.rst:2571 +#: howto/logging-cookbook.rst:2584 msgid "" "def owned_file_handler(filename, mode='a', encoding=None, owner=None):\n" " if owner:\n" @@ -3224,13 +3245,13 @@ msgid "" " return logging.FileHandler(filename, mode, encoding)" msgstr "" -#: howto/logging-cookbook.rst:2578 +#: howto/logging-cookbook.rst:2591 msgid "" "You can then specify, in a logging configuration passed to :func:" "`dictConfig`, that a logging handler be created by calling this function::" msgstr "" -#: howto/logging-cookbook.rst:2581 +#: howto/logging-cookbook.rst:2594 msgid "" "LOGGING = {\n" " 'version': 1,\n" @@ -3263,14 +3284,14 @@ msgid "" "}" msgstr "" -#: howto/logging-cookbook.rst:2611 +#: howto/logging-cookbook.rst:2624 msgid "" "In this example I am setting the ownership using the ``pulse`` user and " "group, just for the purposes of illustration. Putting it together into a " "working script, ``chowntest.py``::" msgstr "" -#: howto/logging-cookbook.rst:2615 +#: howto/logging-cookbook.rst:2628 msgid "" "import logging, logging.config, os, shutil\n" "\n" @@ -3316,11 +3337,11 @@ msgid "" "logger.debug('A debug message')" msgstr "" -#: howto/logging-cookbook.rst:2658 +#: howto/logging-cookbook.rst:2671 msgid "To run this, you will probably need to run as ``root``:" msgstr "" -#: howto/logging-cookbook.rst:2660 +#: howto/logging-cookbook.rst:2673 msgid "" "$ sudo python3.3 chowntest.py\n" "$ cat chowntest.log\n" @@ -3329,7 +3350,7 @@ msgid "" "-rw-r--r-- 1 pulse pulse 55 2013-11-05 09:34 chowntest.log" msgstr "" -#: howto/logging-cookbook.rst:2668 +#: howto/logging-cookbook.rst:2681 msgid "" "Note that this example uses Python 3.3 because that's where :func:`shutil." "chown` makes an appearance. This approach should work with any Python " @@ -3338,25 +3359,25 @@ msgid "" "change using e.g. :func:`os.chown`." msgstr "" -#: howto/logging-cookbook.rst:2674 +#: howto/logging-cookbook.rst:2687 msgid "" "In practice, the handler-creating function may be in a utility module " "somewhere in your project. Instead of the line in the configuration::" msgstr "" -#: howto/logging-cookbook.rst:2677 +#: howto/logging-cookbook.rst:2690 msgid "'()': owned_file_handler," msgstr "" -#: howto/logging-cookbook.rst:2679 +#: howto/logging-cookbook.rst:2692 msgid "you could use e.g.::" msgstr "" -#: howto/logging-cookbook.rst:2681 +#: howto/logging-cookbook.rst:2694 msgid "'()': 'ext://project.util.owned_file_handler'," msgstr "" -#: howto/logging-cookbook.rst:2683 +#: howto/logging-cookbook.rst:2696 msgid "" "where ``project.util`` can be replaced with the actual name of the package " "where the function resides. In the above working script, using ``'ext://" @@ -3364,25 +3385,25 @@ msgid "" "resolved by :func:`dictConfig` from the ``ext://`` specification." msgstr "" -#: howto/logging-cookbook.rst:2688 +#: howto/logging-cookbook.rst:2701 msgid "" "This example hopefully also points the way to how you could implement other " "types of file change - e.g. setting specific POSIX permission bits - in the " "same way, using :func:`os.chmod`." msgstr "" -#: howto/logging-cookbook.rst:2692 +#: howto/logging-cookbook.rst:2705 msgid "" "Of course, the approach could also be extended to types of handler other " "than a :class:`~logging.FileHandler` - for example, one of the rotating file " "handlers, or a different type of handler altogether." msgstr "" -#: howto/logging-cookbook.rst:2702 +#: howto/logging-cookbook.rst:2715 msgid "Using particular formatting styles throughout your application" msgstr "" -#: howto/logging-cookbook.rst:2704 +#: howto/logging-cookbook.rst:2717 msgid "" "In Python 3.2, the :class:`~logging.Formatter` gained a ``style`` keyword " "parameter which, while defaulting to ``%`` for backward compatibility, " @@ -3393,7 +3414,7 @@ msgid "" "is constructed." msgstr "" -#: howto/logging-cookbook.rst:2711 +#: howto/logging-cookbook.rst:2724 msgid "" "Logging calls (:meth:`~Logger.debug`, :meth:`~Logger.info` etc.) only take " "positional parameters for the actual logging message itself, with keyword " @@ -3408,7 +3429,7 @@ msgid "" "calls which are out there in existing code will be using %-format strings." msgstr "" -#: howto/logging-cookbook.rst:2723 +#: howto/logging-cookbook.rst:2736 msgid "" "There have been suggestions to associate format styles with specific " "loggers, but that approach also runs into backward compatibility problems " @@ -3416,7 +3437,7 @@ msgid "" "formatting." msgstr "" -#: howto/logging-cookbook.rst:2727 +#: howto/logging-cookbook.rst:2740 msgid "" "For logging to work interoperably between any third-party libraries and your " "code, decisions about formatting need to be made at the level of the " @@ -3424,11 +3445,11 @@ msgid "" "formatting styles can be accommodated." msgstr "" -#: howto/logging-cookbook.rst:2734 +#: howto/logging-cookbook.rst:2747 msgid "Using LogRecord factories" msgstr "" -#: howto/logging-cookbook.rst:2736 +#: howto/logging-cookbook.rst:2749 msgid "" "In Python 3.2, along with the :class:`~logging.Formatter` changes mentioned " "above, the logging package gained the ability to allow users to set their " @@ -3443,17 +3464,17 @@ msgid "" "implementation does." msgstr "" -#: howto/logging-cookbook.rst:2747 +#: howto/logging-cookbook.rst:2760 msgid "" "Refer to the reference documentation on :func:`setLogRecordFactory` and :" "class:`LogRecord` for more information." msgstr "" -#: howto/logging-cookbook.rst:2752 +#: howto/logging-cookbook.rst:2765 msgid "Using custom message objects" msgstr "" -#: howto/logging-cookbook.rst:2754 +#: howto/logging-cookbook.rst:2767 msgid "" "There is another, perhaps simpler way that you can use {}- and $- formatting " "to construct your individual log messages. You may recall (from :ref:" @@ -3463,7 +3484,7 @@ msgid "" "following two classes::" msgstr "" -#: howto/logging-cookbook.rst:2779 +#: howto/logging-cookbook.rst:2792 msgid "" "Either of these can be used in place of a format string, to allow {}- or $-" "formatting to be used to build the actual \"message\" part which appears in " @@ -3474,13 +3495,13 @@ msgid "" "using ``_`` for localization)." msgstr "" -#: howto/logging-cookbook.rst:2787 +#: howto/logging-cookbook.rst:2800 msgid "" "Examples of this approach are given below. Firstly, formatting with :meth:" "`str.format`::" msgstr "" -#: howto/logging-cookbook.rst:2790 +#: howto/logging-cookbook.rst:2803 msgid "" ">>> __ = BraceMessage\n" ">>> print(__('Message with {0} {1}', 2, 'placeholders'))\n" @@ -3495,11 +3516,11 @@ msgid "" "Message with coordinates: (0.50, 0.50)" msgstr "" -#: howto/logging-cookbook.rst:2801 +#: howto/logging-cookbook.rst:2814 msgid "Secondly, formatting with :class:`string.Template`::" msgstr "" -#: howto/logging-cookbook.rst:2803 +#: howto/logging-cookbook.rst:2816 msgid "" ">>> __ = DollarMessage\n" ">>> print(__('Message with $num $what', num=2, what='placeholders'))\n" @@ -3507,7 +3528,7 @@ msgid "" ">>>" msgstr "" -#: howto/logging-cookbook.rst:2808 +#: howto/logging-cookbook.rst:2821 msgid "" "One thing to note is that you pay no significant performance penalty with " "this approach: the actual formatting happens not when you make the logging " @@ -3519,11 +3540,11 @@ msgid "" "shown above." msgstr "" -#: howto/logging-cookbook.rst:2822 +#: howto/logging-cookbook.rst:2835 msgid "Configuring filters with :func:`dictConfig`" msgstr "" -#: howto/logging-cookbook.rst:2824 +#: howto/logging-cookbook.rst:2837 msgid "" "You *can* configure filters using :func:`~logging.config.dictConfig`, though " "it might not be obvious at first glance how to do it (hence this recipe). " @@ -3538,7 +3559,7 @@ msgid "" "complete example::" msgstr "" -#: howto/logging-cookbook.rst:2835 +#: howto/logging-cookbook.rst:2848 msgid "" "import logging\n" "import logging.config\n" @@ -3583,26 +3604,26 @@ msgid "" " logging.debug('hello - noshow')" msgstr "" -#: howto/logging-cookbook.rst:2877 +#: howto/logging-cookbook.rst:2890 msgid "" "This example shows how you can pass configuration data to the callable which " "constructs the instance, in the form of keyword parameters. When run, the " "above script will print:" msgstr "" -#: howto/logging-cookbook.rst:2881 +#: howto/logging-cookbook.rst:2894 msgid "changed: hello" msgstr "" -#: howto/logging-cookbook.rst:2885 +#: howto/logging-cookbook.rst:2898 msgid "which shows that the filter is working as configured." msgstr "" -#: howto/logging-cookbook.rst:2887 +#: howto/logging-cookbook.rst:2900 msgid "A couple of extra points to note:" msgstr "" -#: howto/logging-cookbook.rst:2889 +#: howto/logging-cookbook.rst:2902 msgid "" "If you can't refer to the callable directly in the configuration (e.g. if it " "lives in a different module, and you can't import it directly where the " @@ -3612,7 +3633,7 @@ msgid "" "the above example." msgstr "" -#: howto/logging-cookbook.rst:2896 +#: howto/logging-cookbook.rst:2909 msgid "" "As well as for filters, this technique can also be used to configure custom " "handlers and formatters. See :ref:`logging-config-dict-userdef` for more " @@ -3621,11 +3642,11 @@ msgid "" "above." msgstr "" -#: howto/logging-cookbook.rst:2905 +#: howto/logging-cookbook.rst:2918 msgid "Customized exception formatting" msgstr "" -#: howto/logging-cookbook.rst:2907 +#: howto/logging-cookbook.rst:2920 msgid "" "There might be times when you want to do customized exception formatting - " "for argument's sake, let's say you want exactly one line per logged event, " @@ -3633,7 +3654,7 @@ msgid "" "formatter class, as shown in the following example::" msgstr "" -#: howto/logging-cookbook.rst:2912 +#: howto/logging-cookbook.rst:2925 msgid "" "import logging\n" "\n" @@ -3672,11 +3693,11 @@ msgid "" " main()" msgstr "" -#: howto/logging-cookbook.rst:2948 +#: howto/logging-cookbook.rst:2961 msgid "When run, this produces a file with exactly two lines:" msgstr "" -#: howto/logging-cookbook.rst:2950 +#: howto/logging-cookbook.rst:2963 msgid "" "28/01/2015 07:21:23|INFO|Sample message|\n" "28/01/2015 07:21:23|ERROR|ZeroDivisionError: integer division or modulo by " @@ -3685,18 +3706,18 @@ msgid "" "zero'|" msgstr "" -#: howto/logging-cookbook.rst:2955 +#: howto/logging-cookbook.rst:2968 msgid "" "While the above treatment is simplistic, it points the way to how exception " "information can be formatted to your liking. The :mod:`traceback` module may " "be helpful for more specialized needs." msgstr "" -#: howto/logging-cookbook.rst:2962 +#: howto/logging-cookbook.rst:2975 msgid "Speaking logging messages" msgstr "" -#: howto/logging-cookbook.rst:2964 +#: howto/logging-cookbook.rst:2977 msgid "" "There might be situations when it is desirable to have logging messages " "rendered in an audible rather than a visible format. This is easy to do if " @@ -3713,7 +3734,7 @@ msgid "" "approach, which assumes that the ``espeak`` TTS package is available::" msgstr "" -#: howto/logging-cookbook.rst:2977 +#: howto/logging-cookbook.rst:2990 msgid "" "import logging\n" "import subprocess\n" @@ -3745,24 +3766,24 @@ msgid "" " sys.exit(main())" msgstr "" -#: howto/logging-cookbook.rst:3006 +#: howto/logging-cookbook.rst:3019 msgid "" "When run, this script should say \"Hello\" and then \"Goodbye\" in a female " "voice." msgstr "" -#: howto/logging-cookbook.rst:3008 +#: howto/logging-cookbook.rst:3021 msgid "" "The above approach can, of course, be adapted to other TTS systems and even " "other systems altogether which can process messages via external programs " "run from a command line." msgstr "" -#: howto/logging-cookbook.rst:3016 +#: howto/logging-cookbook.rst:3029 msgid "Buffering logging messages and outputting them conditionally" msgstr "" -#: howto/logging-cookbook.rst:3018 +#: howto/logging-cookbook.rst:3031 msgid "" "There might be situations where you want to log messages in a temporary area " "and only output them if a certain condition occurs. For example, you may " @@ -3772,7 +3793,7 @@ msgid "" "debug information to be output as well as the error." msgstr "" -#: howto/logging-cookbook.rst:3025 +#: howto/logging-cookbook.rst:3038 msgid "" "Here is an example which shows how you could do this using a decorator for " "your functions where you want logging to behave this way. It makes use of " @@ -3785,7 +3806,7 @@ msgid "" "subclass of ``MemoryHandler`` if you want custom flushing behavior." msgstr "" -#: howto/logging-cookbook.rst:3035 +#: howto/logging-cookbook.rst:3048 msgid "" "The example script has a simple function, ``foo``, which just cycles through " "all the logging levels, writing to ``sys.stderr`` to say what level it's " @@ -3794,7 +3815,7 @@ msgid "" "levels - otherwise, it only logs at DEBUG, INFO and WARNING levels." msgstr "" -#: howto/logging-cookbook.rst:3041 +#: howto/logging-cookbook.rst:3054 msgid "" "The script just arranges to decorate ``foo`` with a decorator which will do " "the conditional logging that's required. The decorator takes a logger as a " @@ -3806,11 +3827,11 @@ msgid "" "respectively." msgstr "" -#: howto/logging-cookbook.rst:3049 +#: howto/logging-cookbook.rst:3062 msgid "Here's the script::" msgstr "" -#: howto/logging-cookbook.rst:3051 +#: howto/logging-cookbook.rst:3064 msgid "" "import logging\n" "from logging.handlers import MemoryHandler\n" @@ -3876,11 +3897,11 @@ msgid "" " assert decorated_foo(True)" msgstr "" -#: howto/logging-cookbook.rst:3112 +#: howto/logging-cookbook.rst:3125 msgid "When this script is run, the following output should be observed:" msgstr "" -#: howto/logging-cookbook.rst:3114 +#: howto/logging-cookbook.rst:3127 msgid "" "Calling undecorated foo with False\n" "about to log at DEBUG ...\n" @@ -3909,29 +3930,29 @@ msgid "" "Actually logged at CRITICAL" msgstr "" -#: howto/logging-cookbook.rst:3142 +#: howto/logging-cookbook.rst:3155 msgid "" "As you can see, actual logging output only occurs when an event is logged " "whose severity is ERROR or greater, but in that case, any previous events at " "lower severities are also logged." msgstr "" -#: howto/logging-cookbook.rst:3146 +#: howto/logging-cookbook.rst:3159 msgid "You can of course use the conventional means of decoration::" msgstr "" -#: howto/logging-cookbook.rst:3148 +#: howto/logging-cookbook.rst:3161 msgid "" "@log_if_errors(logger)\n" "def foo(fail=False):\n" " ..." msgstr "" -#: howto/logging-cookbook.rst:3156 +#: howto/logging-cookbook.rst:3169 msgid "Sending logging messages to email, with buffering" msgstr "" -#: howto/logging-cookbook.rst:3158 +#: howto/logging-cookbook.rst:3171 msgid "" "To illustrate how you can send log messages via email, so that a set number " "of messages are sent per email, you can subclass :class:`~logging.handlers." @@ -3942,7 +3963,7 @@ msgid "" "argument to see the required and optional arguments.)" msgstr "" -#: howto/logging-cookbook.rst:3166 +#: howto/logging-cookbook.rst:3179 msgid "" "import logging\n" "import logging.handlers\n" @@ -4010,7 +4031,7 @@ msgid "" " h.close()" msgstr "" -#: howto/logging-cookbook.rst:3230 +#: howto/logging-cookbook.rst:3243 msgid "" "If you run this script and your SMTP server is correctly set up, you should " "find that it sends eleven emails to the addressee you specify. The first ten " @@ -4018,17 +4039,17 @@ msgid "" "messages. That makes up 102 messages as specified in the script." msgstr "" -#: howto/logging-cookbook.rst:3238 +#: howto/logging-cookbook.rst:3251 msgid "Formatting times using UTC (GMT) via configuration" msgstr "" -#: howto/logging-cookbook.rst:3240 +#: howto/logging-cookbook.rst:3253 msgid "" "Sometimes you want to format times using UTC, which can be done using a " "class such as ``UTCFormatter``, shown below::" msgstr "" -#: howto/logging-cookbook.rst:3243 +#: howto/logging-cookbook.rst:3256 msgid "" "import logging\n" "import time\n" @@ -4037,7 +4058,7 @@ msgid "" " converter = time.gmtime" msgstr "" -#: howto/logging-cookbook.rst:3249 +#: howto/logging-cookbook.rst:3262 msgid "" "and you can then use the ``UTCFormatter`` in your code instead of :class:" "`~logging.Formatter`. If you want to do that via configuration, you can use " @@ -4045,7 +4066,7 @@ msgid "" "the following complete example::" msgstr "" -#: howto/logging-cookbook.rst:3254 +#: howto/logging-cookbook.rst:3267 msgid "" "import logging\n" "import logging.config\n" @@ -4086,27 +4107,27 @@ msgid "" " logging.warning('The local time is %s', time.asctime())" msgstr "" -#: howto/logging-cookbook.rst:3292 +#: howto/logging-cookbook.rst:3305 msgid "When this script is run, it should print something like:" msgstr "" -#: howto/logging-cookbook.rst:3294 +#: howto/logging-cookbook.rst:3307 msgid "" "2015-10-17 12:53:29,501 The local time is Sat Oct 17 13:53:29 2015\n" "2015-10-17 13:53:29,501 The local time is Sat Oct 17 13:53:29 2015" msgstr "" -#: howto/logging-cookbook.rst:3299 +#: howto/logging-cookbook.rst:3312 msgid "" "showing how the time is formatted both as local time and UTC, one for each " "handler." msgstr "" -#: howto/logging-cookbook.rst:3306 +#: howto/logging-cookbook.rst:3319 msgid "Using a context manager for selective logging" msgstr "" -#: howto/logging-cookbook.rst:3308 +#: howto/logging-cookbook.rst:3321 msgid "" "There are times when it would be useful to temporarily change the logging " "configuration and revert it back after doing something. For this, a context " @@ -4116,7 +4137,7 @@ msgid "" "scope of the context manager::" msgstr "" -#: howto/logging-cookbook.rst:3315 +#: howto/logging-cookbook.rst:3328 msgid "" "import logging\n" "import sys\n" @@ -4145,7 +4166,7 @@ msgid "" " # implicit return of None => don't swallow exceptions" msgstr "" -#: howto/logging-cookbook.rst:3341 +#: howto/logging-cookbook.rst:3354 msgid "" "If you specify a level value, the logger's level is set to that value in the " "scope of the with block covered by the context manager. If you specify a " @@ -4154,13 +4175,13 @@ msgid "" "block exit - you could do this if you don't need the handler any more." msgstr "" -#: howto/logging-cookbook.rst:3347 +#: howto/logging-cookbook.rst:3360 msgid "" "To illustrate how it works, we can add the following block of code to the " "above::" msgstr "" -#: howto/logging-cookbook.rst:3350 +#: howto/logging-cookbook.rst:3363 msgid "" "if __name__ == '__main__':\n" " logger = logging.getLogger('foo')\n" @@ -4180,7 +4201,7 @@ msgid "" " logger.debug('7. This should not appear.')" msgstr "" -#: howto/logging-cookbook.rst:3365 +#: howto/logging-cookbook.rst:3378 msgid "" "We initially set the logger's level to ``INFO``, so message #1 appears and " "message #2 doesn't. We then change the level to ``DEBUG`` temporarily in the " @@ -4193,11 +4214,11 @@ msgid "" "(like message #1) whereas message #7 doesn't (just like message #2)." msgstr "" -#: howto/logging-cookbook.rst:3375 +#: howto/logging-cookbook.rst:3388 msgid "If we run the resulting script, the result is as follows:" msgstr "" -#: howto/logging-cookbook.rst:3377 +#: howto/logging-cookbook.rst:3390 msgid "" "$ python logctx.py\n" "1. This should appear just once on stderr.\n" @@ -4207,23 +4228,23 @@ msgid "" "6. This should appear just once on stderr." msgstr "" -#: howto/logging-cookbook.rst:3386 +#: howto/logging-cookbook.rst:3399 msgid "" "If we run it again, but pipe ``stderr`` to ``/dev/null``, we see the " "following, which is the only message written to ``stdout``:" msgstr "" -#: howto/logging-cookbook.rst:3389 +#: howto/logging-cookbook.rst:3402 msgid "" "$ python logctx.py 2>/dev/null\n" "5. This should appear twice - once on stderr and once on stdout." msgstr "" -#: howto/logging-cookbook.rst:3394 +#: howto/logging-cookbook.rst:3407 msgid "Once again, but piping ``stdout`` to ``/dev/null``, we get:" msgstr "" -#: howto/logging-cookbook.rst:3396 +#: howto/logging-cookbook.rst:3409 msgid "" "$ python logctx.py >/dev/null\n" "1. This should appear just once on stderr.\n" @@ -4232,42 +4253,42 @@ msgid "" "6. This should appear just once on stderr." msgstr "" -#: howto/logging-cookbook.rst:3404 +#: howto/logging-cookbook.rst:3417 msgid "" "In this case, the message #5 printed to ``stdout`` doesn't appear, as " "expected." msgstr "" -#: howto/logging-cookbook.rst:3406 +#: howto/logging-cookbook.rst:3419 msgid "" "Of course, the approach described here can be generalised, for example to " "attach logging filters temporarily. Note that the above code works in Python " "2 as well as Python 3." msgstr "" -#: howto/logging-cookbook.rst:3414 +#: howto/logging-cookbook.rst:3427 msgid "A CLI application starter template" msgstr "" -#: howto/logging-cookbook.rst:3416 +#: howto/logging-cookbook.rst:3429 msgid "Here's an example which shows how you can:" msgstr "" -#: howto/logging-cookbook.rst:3418 +#: howto/logging-cookbook.rst:3431 msgid "Use a logging level based on command-line arguments" msgstr "" -#: howto/logging-cookbook.rst:3419 +#: howto/logging-cookbook.rst:3432 msgid "" "Dispatch to multiple subcommands in separate files, all logging at the same " "level in a consistent way" msgstr "" -#: howto/logging-cookbook.rst:3421 +#: howto/logging-cookbook.rst:3434 msgid "Make use of simple, minimal configuration" msgstr "" -#: howto/logging-cookbook.rst:3423 +#: howto/logging-cookbook.rst:3436 msgid "" "Suppose we have a command-line application whose job is to stop, start or " "restart some services. This could be organised for the purposes of " @@ -4278,7 +4299,7 @@ msgid "" "``logging.INFO``. Here's one way that ``app.py`` could be written::" msgstr "" -#: howto/logging-cookbook.rst:3431 +#: howto/logging-cookbook.rst:3444 msgid "" "import argparse\n" "import importlib\n" @@ -4325,13 +4346,13 @@ msgid "" " sys.exit(main())" msgstr "" -#: howto/logging-cookbook.rst:3472 +#: howto/logging-cookbook.rst:3485 msgid "" "And the ``start``, ``stop`` and ``restart`` commands can be implemented in " "separate modules, like so for starting::" msgstr "" -#: howto/logging-cookbook.rst:3475 +#: howto/logging-cookbook.rst:3488 msgid "" "# start.py\n" "import logging\n" @@ -4344,11 +4365,11 @@ msgid "" " logger.info('Started the \\'%s\\' service.', options.name)" msgstr "" -#: howto/logging-cookbook.rst:3485 +#: howto/logging-cookbook.rst:3498 msgid "and thus for stopping::" msgstr "" -#: howto/logging-cookbook.rst:3487 +#: howto/logging-cookbook.rst:3500 msgid "" "# stop.py\n" "import logging\n" @@ -4370,11 +4391,11 @@ msgid "" " logger.info('Stopped the %s service%s.', services, plural)" msgstr "" -#: howto/logging-cookbook.rst:3506 +#: howto/logging-cookbook.rst:3519 msgid "and similarly for restarting::" msgstr "" -#: howto/logging-cookbook.rst:3508 +#: howto/logging-cookbook.rst:3521 msgid "" "# restart.py\n" "import logging\n" @@ -4396,13 +4417,13 @@ msgid "" " logger.info('Restarted the %s service%s.', services, plural)" msgstr "" -#: howto/logging-cookbook.rst:3527 +#: howto/logging-cookbook.rst:3540 msgid "" "If we run this application with the default log level, we get output like " "this:" msgstr "" -#: howto/logging-cookbook.rst:3529 +#: howto/logging-cookbook.rst:3542 msgid "" "$ python app.py start foo\n" "INFO start Started the 'foo' service.\n" @@ -4414,19 +4435,19 @@ msgid "" "INFO restart Restarted the 'foo', 'bar' and 'baz' services." msgstr "" -#: howto/logging-cookbook.rst:3540 +#: howto/logging-cookbook.rst:3553 msgid "" "The first word is the logging level, and the second word is the module or " "package name of the place where the event was logged." msgstr "" -#: howto/logging-cookbook.rst:3543 +#: howto/logging-cookbook.rst:3556 msgid "" "If we change the logging level, then we can change the information sent to " "the log. For example, if we want more information:" msgstr "" -#: howto/logging-cookbook.rst:3546 +#: howto/logging-cookbook.rst:3559 msgid "" "$ python app.py --log-level DEBUG start foo\n" "DEBUG start About to start foo\n" @@ -4441,28 +4462,28 @@ msgid "" "INFO restart Restarted the 'foo', 'bar' and 'baz' services." msgstr "" -#: howto/logging-cookbook.rst:3560 +#: howto/logging-cookbook.rst:3573 msgid "And if we want less:" msgstr "" -#: howto/logging-cookbook.rst:3562 +#: howto/logging-cookbook.rst:3575 msgid "" "$ python app.py --log-level WARNING start foo\n" "$ python app.py --log-level WARNING stop foo bar\n" "$ python app.py --log-level WARNING restart foo bar baz" msgstr "" -#: howto/logging-cookbook.rst:3568 +#: howto/logging-cookbook.rst:3581 msgid "" "In this case, the commands don't print anything to the console, since " "nothing at ``WARNING`` level or above is logged by them." msgstr "" -#: howto/logging-cookbook.rst:3574 +#: howto/logging-cookbook.rst:3587 msgid "A Qt GUI for logging" msgstr "" -#: howto/logging-cookbook.rst:3576 +#: howto/logging-cookbook.rst:3589 msgid "" "A question that comes up from time to time is about how to log to a GUI " "application. The `Qt `_ framework is a popular cross-" @@ -4470,7 +4491,7 @@ msgid "" "`PyQt5` libraries." msgstr "" -#: howto/logging-cookbook.rst:3581 +#: howto/logging-cookbook.rst:3594 msgid "" "The following example shows how to log to a Qt GUI. This introduces a simple " "``QtHandler`` class which takes a callable, which should be a slot in the " @@ -4480,14 +4501,14 @@ msgid "" "logging messages at random levels with random short delays in between)." msgstr "" -#: howto/logging-cookbook.rst:3588 +#: howto/logging-cookbook.rst:3601 msgid "" "The worker thread is implemented using Qt's ``QThread`` class rather than " "the :mod:`threading` module, as there are circumstances where one has to use " "``QThread``, which offers better integration with other ``Qt`` components." msgstr "" -#: howto/logging-cookbook.rst:3592 +#: howto/logging-cookbook.rst:3605 msgid "" "The code should work with recent releases of any of ``PySide6``, ``PyQt6``, " "``PySide2`` or ``PyQt5``. You should be able to adapt the approach to " @@ -4495,7 +4516,7 @@ msgid "" "more detailed information." msgstr "" -#: howto/logging-cookbook.rst:3597 +#: howto/logging-cookbook.rst:3610 msgid "" "import datetime\n" "import logging\n" @@ -4746,11 +4767,11 @@ msgid "" " main()" msgstr "" -#: howto/logging-cookbook.rst:3829 +#: howto/logging-cookbook.rst:3842 msgid "Logging to syslog with RFC5424 support" msgstr "" -#: howto/logging-cookbook.rst:3831 +#: howto/logging-cookbook.rst:3844 msgid "" "Although :rfc:`5424` dates from 2009, most syslog servers are configured by " "default to use the older :rfc:`3164`, which hails from 2001. When " @@ -4760,14 +4781,14 @@ msgid "" "handlers.SysLogHandler` functionality has not been updated." msgstr "" -#: howto/logging-cookbook.rst:3838 +#: howto/logging-cookbook.rst:3851 msgid "" "RFC 5424 contains some useful features such as support for structured data, " "and if you need to be able to log to a syslog server with support for it, " "you can do so with a subclassed handler which looks something like this::" msgstr "" -#: howto/logging-cookbook.rst:3842 +#: howto/logging-cookbook.rst:3855 msgid "" "import datetime\n" "import logging.handlers\n" @@ -4837,7 +4858,7 @@ msgid "" "{sdata} {msg}'" msgstr "" -#: howto/logging-cookbook.rst:3904 +#: howto/logging-cookbook.rst:3917 msgid "" "You'll need to be familiar with RFC 5424 to fully understand the above code, " "and it may be that you have slightly different needs (e.g. for how you pass " @@ -4846,7 +4867,7 @@ msgid "" "using something like this::" msgstr "" -#: howto/logging-cookbook.rst:3909 +#: howto/logging-cookbook.rst:3922 msgid "" "sd = {\n" " 'foo@12345': {'bar': 'baz', 'baz': 'bozz', 'fizz': r'buzz'},\n" @@ -4857,11 +4878,11 @@ msgid "" "logger.debug('Message %d', i, extra=extra)" msgstr "" -#: howto/logging-cookbook.rst:3918 +#: howto/logging-cookbook.rst:3931 msgid "How to treat a logger like an output stream" msgstr "" -#: howto/logging-cookbook.rst:3920 +#: howto/logging-cookbook.rst:3933 msgid "" "Sometimes, you need to interface to a third-party API which expects a file-" "like object to write to, but you want to direct the API's output to a " @@ -4869,7 +4890,7 @@ msgid "" "API. Here's a short script illustrating such a class:" msgstr "" -#: howto/logging-cookbook.rst:3925 +#: howto/logging-cookbook.rst:3938 msgid "" "import logging\n" "\n" @@ -4907,23 +4928,23 @@ msgid "" " main()" msgstr "" -#: howto/logging-cookbook.rst:3960 +#: howto/logging-cookbook.rst:3973 msgid "When this script is run, it prints" msgstr "" -#: howto/logging-cookbook.rst:3962 +#: howto/logging-cookbook.rst:3975 msgid "" "INFO:demo:An INFO message\n" "DEBUG:demo:A DEBUG message" msgstr "" -#: howto/logging-cookbook.rst:3967 +#: howto/logging-cookbook.rst:3980 msgid "" "You could also use ``LoggerWriter`` to redirect ``sys.stdout`` and ``sys." "stderr`` by doing something like this:" msgstr "" -#: howto/logging-cookbook.rst:3970 +#: howto/logging-cookbook.rst:3983 msgid "" "import sys\n" "\n" @@ -4931,7 +4952,7 @@ msgid "" "sys.stderr = LoggerWriter(logger, logging.WARNING)" msgstr "" -#: howto/logging-cookbook.rst:3977 +#: howto/logging-cookbook.rst:3990 msgid "" "You should do this *after* configuring logging for your needs. In the above " "example, the :func:`~logging.basicConfig` call does this (using the ``sys." @@ -4939,7 +4960,7 @@ msgid "" "Then, you'd get this kind of result:" msgstr "" -#: howto/logging-cookbook.rst:3982 +#: howto/logging-cookbook.rst:3995 msgid "" ">>> print('Foo')\n" "INFO:demo:Foo\n" @@ -4948,31 +4969,31 @@ msgid "" ">>>" msgstr "" -#: howto/logging-cookbook.rst:3990 +#: howto/logging-cookbook.rst:4003 msgid "" "Of course, the examples above show output according to the format used by :" "func:`~logging.basicConfig`, but you can use a different formatter when you " "configure logging." msgstr "" -#: howto/logging-cookbook.rst:3994 +#: howto/logging-cookbook.rst:4007 msgid "" "Note that with the above scheme, you are somewhat at the mercy of buffering " "and the sequence of write calls which you are intercepting. For example, " "with the definition of ``LoggerWriter`` above, if you have the snippet" msgstr "" -#: howto/logging-cookbook.rst:3998 +#: howto/logging-cookbook.rst:4011 msgid "" "sys.stderr = LoggerWriter(logger, logging.WARNING)\n" "1 / 0" msgstr "" -#: howto/logging-cookbook.rst:4003 +#: howto/logging-cookbook.rst:4016 msgid "then running the script results in" msgstr "" -#: howto/logging-cookbook.rst:4005 +#: howto/logging-cookbook.rst:4018 msgid "" "WARNING:demo:Traceback (most recent call last):\n" "\n" @@ -4991,7 +5012,7 @@ msgid "" "WARNING:demo:division by zero" msgstr "" -#: howto/logging-cookbook.rst:4021 +#: howto/logging-cookbook.rst:4034 msgid "" "As you can see, this output isn't ideal. That's because the underlying code " "which writes to ``sys.stderr`` makes multiple writes, each of which results " @@ -5001,7 +5022,7 @@ msgid "" "``LoggerWriter``:" msgstr "" -#: howto/logging-cookbook.rst:4027 +#: howto/logging-cookbook.rst:4040 msgid "" "class BufferingLoggerWriter(LoggerWriter):\n" " def __init__(self, logger, level):\n" @@ -5021,13 +5042,13 @@ msgid "" " self.logger.log(self.level, part)" msgstr "" -#: howto/logging-cookbook.rst:4046 +#: howto/logging-cookbook.rst:4059 msgid "" "This just buffers up stuff until a newline is seen, and then logs complete " "lines. With this approach, you get better output:" msgstr "" -#: howto/logging-cookbook.rst:4049 +#: howto/logging-cookbook.rst:4062 msgid "" "WARNING:demo:Traceback (most recent call last):\n" "WARNING:demo: File \"/home/runner/cookbook-loggerwriter/main.py\", line 55, " @@ -5039,11 +5060,11 @@ msgid "" "WARNING:demo:ZeroDivisionError: division by zero" msgstr "" -#: howto/logging-cookbook.rst:4062 +#: howto/logging-cookbook.rst:4075 msgid "Patterns to avoid" msgstr "" -#: howto/logging-cookbook.rst:4064 +#: howto/logging-cookbook.rst:4077 msgid "" "Although the preceding sections have described ways of doing things you " "might need to do or deal with, it is worth mentioning some usage patterns " @@ -5051,11 +5072,11 @@ msgid "" "The following sections are in no particular order." msgstr "" -#: howto/logging-cookbook.rst:4070 +#: howto/logging-cookbook.rst:4083 msgid "Opening the same log file multiple times" msgstr "" -#: howto/logging-cookbook.rst:4072 +#: howto/logging-cookbook.rst:4085 msgid "" "On Windows, you will generally not be able to open the same file multiple " "times as this will lead to a \"file is in use by another process\" error. " @@ -5063,32 +5084,32 @@ msgid "" "file multiple times. This could be done accidentally, for example by:" msgstr "" -#: howto/logging-cookbook.rst:4077 +#: howto/logging-cookbook.rst:4090 msgid "" "Adding a file handler more than once which references the same file (e.g. by " "a copy/paste/forget-to-change error)." msgstr "" -#: howto/logging-cookbook.rst:4080 +#: howto/logging-cookbook.rst:4093 msgid "" "Opening two files that look different, as they have different names, but are " "the same because one is a symbolic link to the other." msgstr "" -#: howto/logging-cookbook.rst:4083 +#: howto/logging-cookbook.rst:4096 msgid "" "Forking a process, following which both parent and child have a reference to " "the same file. This might be through use of the :mod:`multiprocessing` " "module, for example." msgstr "" -#: howto/logging-cookbook.rst:4087 +#: howto/logging-cookbook.rst:4100 msgid "" "Opening a file multiple times might *appear* to work most of the time, but " "can lead to a number of problems in practice:" msgstr "" -#: howto/logging-cookbook.rst:4090 +#: howto/logging-cookbook.rst:4103 msgid "" "Logging output can be garbled because multiple threads or processes try to " "write to the same file. Although logging guards against concurrent use of " @@ -5097,7 +5118,7 @@ msgid "" "different handler instances which happen to point to the same file." msgstr "" -#: howto/logging-cookbook.rst:4096 +#: howto/logging-cookbook.rst:4109 msgid "" "An attempt to delete a file (e.g. during file rotation) silently fails, " "because there is another reference pointing to it. This can lead to " @@ -5107,17 +5128,17 @@ msgid "" "being supposedly in place." msgstr "" -#: howto/logging-cookbook.rst:4103 +#: howto/logging-cookbook.rst:4116 msgid "" "Use the techniques outlined in :ref:`multiple-processes` to circumvent such " "issues." msgstr "" -#: howto/logging-cookbook.rst:4107 +#: howto/logging-cookbook.rst:4120 msgid "Using loggers as attributes in a class or passing them as parameters" msgstr "" -#: howto/logging-cookbook.rst:4109 +#: howto/logging-cookbook.rst:4122 msgid "" "While there might be unusual cases where you'll need to do this, in general " "there is no point because loggers are singletons. Code can always access a " @@ -5128,13 +5149,13 @@ msgid "" "module (and not the class) is the unit of software decomposition." msgstr "" -#: howto/logging-cookbook.rst:4118 +#: howto/logging-cookbook.rst:4131 msgid "" "Adding handlers other than :class:`~logging.NullHandler` to a logger in a " "library" msgstr "" -#: howto/logging-cookbook.rst:4120 +#: howto/logging-cookbook.rst:4133 msgid "" "Configuring logging by adding handlers, formatters and filters is the " "responsibility of the application developer, not the library developer. If " @@ -5142,11 +5163,11 @@ msgid "" "your loggers other than a :class:`~logging.NullHandler` instance." msgstr "" -#: howto/logging-cookbook.rst:4126 +#: howto/logging-cookbook.rst:4139 msgid "Creating a lot of loggers" msgstr "" -#: howto/logging-cookbook.rst:4128 +#: howto/logging-cookbook.rst:4141 msgid "" "Loggers are singletons that are never freed during a script execution, and " "so creating lots of loggers will use up memory which can't then be freed. " @@ -5157,38 +5178,38 @@ msgid "" "occasionally slightly more fine-grained than that)." msgstr "" -#: howto/logging-cookbook.rst:4139 +#: howto/logging-cookbook.rst:4152 msgid "Other resources" msgstr "" -#: howto/logging-cookbook.rst:4143 +#: howto/logging-cookbook.rst:4156 msgid "Module :mod:`logging`" msgstr "" -#: howto/logging-cookbook.rst:4144 +#: howto/logging-cookbook.rst:4157 msgid "API reference for the logging module." msgstr "" -#: howto/logging-cookbook.rst:4146 +#: howto/logging-cookbook.rst:4159 msgid "Module :mod:`logging.config`" msgstr "" -#: howto/logging-cookbook.rst:4147 +#: howto/logging-cookbook.rst:4160 msgid "Configuration API for the logging module." msgstr "" -#: howto/logging-cookbook.rst:4149 +#: howto/logging-cookbook.rst:4162 msgid "Module :mod:`logging.handlers`" msgstr "" -#: howto/logging-cookbook.rst:4150 +#: howto/logging-cookbook.rst:4163 msgid "Useful handlers included with the logging module." msgstr "" -#: howto/logging-cookbook.rst:4152 +#: howto/logging-cookbook.rst:4165 msgid ":ref:`Basic Tutorial `" msgstr "" -#: howto/logging-cookbook.rst:4154 +#: howto/logging-cookbook.rst:4167 msgid ":ref:`Advanced Tutorial `" msgstr "" diff --git a/howto/logging.po b/howto/logging.po index b1deac8f3..7ebe90ab9 100644 --- a/howto/logging.po +++ b/howto/logging.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -16,7 +16,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: howto/logging.rst:3 +#: howto/logging.rst:5 msgid "Logging HOWTO" msgstr "" @@ -24,21 +24,21 @@ msgstr "" msgid "Author" msgstr "" -#: howto/logging.rst:5 +#: howto/logging.rst:7 msgid "Vinay Sajip " msgstr "" -#: howto/logging.rst:11 +#: howto/logging.rst:13 msgid "" "This page contains tutorial information. For links to reference information " "and a logging cookbook, please see :ref:`tutorial-ref-links`." msgstr "" -#: howto/logging.rst:15 +#: howto/logging.rst:17 msgid "Basic Logging Tutorial" msgstr "" -#: howto/logging.rst:17 +#: howto/logging.rst:19 msgid "" "Logging is a means of tracking events that happen when some software runs. " "The software's developer adds logging calls to their code to indicate that " @@ -49,11 +49,11 @@ msgid "" "the *level* or *severity*." msgstr "" -#: howto/logging.rst:26 +#: howto/logging.rst:28 msgid "When to use logging" msgstr "" -#: howto/logging.rst:28 +#: howto/logging.rst:30 msgid "" "You can access logging functionality by creating a logger via ``logger = " "getLogger(__name__)``, and then calling the logger's :meth:`~Logger.debug`, :" @@ -63,173 +63,173 @@ msgid "" "each of a set of common tasks, the best tool to use for that task." msgstr "" -#: howto/logging.rst:36 +#: howto/logging.rst:38 msgid "Task you want to perform" msgstr "" -#: howto/logging.rst:36 +#: howto/logging.rst:38 msgid "The best tool for the task" msgstr "" -#: howto/logging.rst:38 +#: howto/logging.rst:40 msgid "" "Display console output for ordinary usage of a command line script or program" msgstr "" -#: howto/logging.rst:38 +#: howto/logging.rst:40 msgid ":func:`print`" msgstr "" -#: howto/logging.rst:42 +#: howto/logging.rst:44 msgid "" "Report events that occur during normal operation of a program (e.g. for " "status monitoring or fault investigation)" msgstr "" -#: howto/logging.rst:42 +#: howto/logging.rst:44 msgid "" "A logger's :meth:`~Logger.info` (or :meth:`~Logger.debug` method for very " "detailed output for diagnostic purposes)" msgstr "" -#: howto/logging.rst:47 +#: howto/logging.rst:49 msgid "Issue a warning regarding a particular runtime event" msgstr "" -#: howto/logging.rst:47 +#: howto/logging.rst:49 msgid "" ":func:`warnings.warn` in library code if the issue is avoidable and the " "client application should be modified to eliminate the warning" msgstr "" -#: howto/logging.rst:52 +#: howto/logging.rst:54 msgid "" "A logger's :meth:`~Logger.warning` method if there is nothing the client " "application can do about the situation, but the event should still be noted" msgstr "" -#: howto/logging.rst:58 +#: howto/logging.rst:60 msgid "Report an error regarding a particular runtime event" msgstr "" -#: howto/logging.rst:58 +#: howto/logging.rst:60 msgid "Raise an exception" msgstr "" -#: howto/logging.rst:61 +#: howto/logging.rst:63 msgid "" "Report suppression of an error without raising an exception (e.g. error " "handler in a long-running server process)" msgstr "" -#: howto/logging.rst:61 +#: howto/logging.rst:63 msgid "" "A logger's :meth:`~Logger.error`, :meth:`~Logger.exception` or :meth:" "`~Logger.critical` method as appropriate for the specific error and " "application domain" msgstr "" -#: howto/logging.rst:68 +#: howto/logging.rst:70 msgid "" "The logger methods are named after the level or severity of the events they " "are used to track. The standard levels and their applicability are described " "below (in increasing order of severity):" msgstr "" -#: howto/logging.rst:874 +#: howto/logging.rst:876 msgid "Level" msgstr "" -#: howto/logging.rst:75 +#: howto/logging.rst:77 msgid "When it's used" msgstr "" -#: howto/logging.rst:884 +#: howto/logging.rst:886 msgid "``DEBUG``" msgstr "" -#: howto/logging.rst:77 +#: howto/logging.rst:79 msgid "" "Detailed information, typically of interest only when diagnosing problems." msgstr "" -#: howto/logging.rst:882 +#: howto/logging.rst:884 msgid "``INFO``" msgstr "" -#: howto/logging.rst:80 +#: howto/logging.rst:82 msgid "Confirmation that things are working as expected." msgstr "" -#: howto/logging.rst:880 +#: howto/logging.rst:882 msgid "``WARNING``" msgstr "" -#: howto/logging.rst:83 +#: howto/logging.rst:85 msgid "" "An indication that something unexpected happened, or indicative of some " "problem in the near future (e.g. 'disk space low'). The software is still " "working as expected." msgstr "" -#: howto/logging.rst:878 +#: howto/logging.rst:880 msgid "``ERROR``" msgstr "" -#: howto/logging.rst:88 +#: howto/logging.rst:90 msgid "" "Due to a more serious problem, the software has not been able to perform " "some function." msgstr "" -#: howto/logging.rst:876 +#: howto/logging.rst:878 msgid "``CRITICAL``" msgstr "" -#: howto/logging.rst:91 +#: howto/logging.rst:93 msgid "" "A serious error, indicating that the program itself may be unable to " "continue running." msgstr "" -#: howto/logging.rst:95 +#: howto/logging.rst:97 msgid "" "The default level is ``WARNING``, which means that only events of this level " "and above will be tracked, unless the logging package is configured to do " "otherwise." msgstr "" -#: howto/logging.rst:99 +#: howto/logging.rst:101 msgid "" "Events that are tracked can be handled in different ways. The simplest way " "of handling tracked events is to print them to the console. Another common " "way is to write them to a disk file." msgstr "" -#: howto/logging.rst:107 +#: howto/logging.rst:109 msgid "A simple example" msgstr "" -#: howto/logging.rst:109 +#: howto/logging.rst:111 msgid "A very simple example is::" msgstr "" -#: howto/logging.rst:111 +#: howto/logging.rst:113 msgid "" "import logging\n" "logging.warning('Watch out!') # will print a message to the console\n" "logging.info('I told you so') # will not print anything" msgstr "" -#: howto/logging.rst:115 +#: howto/logging.rst:117 msgid "If you type these lines into a script and run it, you'll see:" msgstr "" -#: howto/logging.rst:117 +#: howto/logging.rst:119 msgid "WARNING:root:Watch out!" msgstr "" -#: howto/logging.rst:121 +#: howto/logging.rst:123 msgid "" "printed out on the console. The ``INFO`` message doesn't appear because the " "default level is ``WARNING``. The printed message includes the indication of " @@ -238,7 +238,7 @@ msgid "" "need that; formatting options will also be explained later." msgstr "" -#: howto/logging.rst:127 +#: howto/logging.rst:129 msgid "" "Notice that in this example, we use functions directly on the ``logging`` " "module, like ``logging.debug``, rather than creating a logger and calling " @@ -250,11 +250,11 @@ msgid "" "methods." msgstr "" -#: howto/logging.rst:136 +#: howto/logging.rst:138 msgid "Logging to a file" msgstr "" -#: howto/logging.rst:138 +#: howto/logging.rst:140 msgid "" "A very common situation is that of recording logging events in a file, so " "let's look at that next. Be sure to try the following in a newly started " @@ -262,7 +262,7 @@ msgid "" "above::" msgstr "" -#: howto/logging.rst:142 +#: howto/logging.rst:144 msgid "" "import logging\n" "logger = logging.getLogger(__name__)\n" @@ -274,7 +274,7 @@ msgid "" "logger.error('And non-ASCII stuff, too, like Øresund and Malmö')" msgstr "" -#: howto/logging.rst:150 +#: howto/logging.rst:152 msgid "" "The *encoding* argument was added. In earlier Python versions, or if not " "specified, the encoding used is the default value used by :func:`open`. " @@ -283,13 +283,13 @@ msgid "" "values and the default, see the documentation for :func:`open`." msgstr "" -#: howto/logging.rst:157 +#: howto/logging.rst:159 msgid "" "And now if we open the file and look at what we have, we should find the log " "messages:" msgstr "" -#: howto/logging.rst:160 +#: howto/logging.rst:162 msgid "" "DEBUG:__main__:This message should go to the log file\n" "INFO:__main__:So should this\n" @@ -297,40 +297,40 @@ msgid "" "ERROR:__main__:And non-ASCII stuff, too, like Øresund and Malmö" msgstr "" -#: howto/logging.rst:167 +#: howto/logging.rst:169 msgid "" "This example also shows how you can set the logging level which acts as the " "threshold for tracking. In this case, because we set the threshold to " "``DEBUG``, all of the messages were printed." msgstr "" -#: howto/logging.rst:171 +#: howto/logging.rst:173 msgid "" "If you want to set the logging level from a command-line option such as:" msgstr "" -#: howto/logging.rst:173 +#: howto/logging.rst:175 msgid "--log=INFO" msgstr "" -#: howto/logging.rst:177 +#: howto/logging.rst:179 msgid "" "and you have the value of the parameter passed for ``--log`` in some " "variable *loglevel*, you can use::" msgstr "" -#: howto/logging.rst:180 +#: howto/logging.rst:182 msgid "getattr(logging, loglevel.upper())" msgstr "" -#: howto/logging.rst:182 +#: howto/logging.rst:184 msgid "" "to get the value which you'll pass to :func:`basicConfig` via the *level* " "argument. You may want to error check any user input value, perhaps as in " "the following example::" msgstr "" -#: howto/logging.rst:186 +#: howto/logging.rst:188 msgid "" "# assuming loglevel is bound to the string value obtained from the\n" "# command line argument. Convert to upper case to allow the user to\n" @@ -341,14 +341,14 @@ msgid "" "logging.basicConfig(level=numeric_level, ...)" msgstr "" -#: howto/logging.rst:194 +#: howto/logging.rst:196 msgid "" "The call to :func:`basicConfig` should come *before* any calls to a logger's " "methods such as :meth:`~Logger.debug`, :meth:`~Logger.info`, etc. Otherwise, " "that logging event may not be handled in the desired manner." msgstr "" -#: howto/logging.rst:198 +#: howto/logging.rst:200 msgid "" "If you run the above script several times, the messages from successive runs " "are appended to the file *example.log*. If you want each run to start " @@ -356,43 +356,43 @@ msgid "" "*filemode* argument, by changing the call in the above example to::" msgstr "" -#: howto/logging.rst:203 +#: howto/logging.rst:205 msgid "" "logging.basicConfig(filename='example.log', filemode='w', level=logging." "DEBUG)" msgstr "" -#: howto/logging.rst:205 +#: howto/logging.rst:207 msgid "" "The output will be the same as before, but the log file is no longer " "appended to, so the messages from earlier runs are lost." msgstr "" -#: howto/logging.rst:210 +#: howto/logging.rst:212 msgid "Logging variable data" msgstr "" -#: howto/logging.rst:212 +#: howto/logging.rst:214 msgid "" "To log variable data, use a format string for the event description message " "and append the variable data as arguments. For example::" msgstr "" -#: howto/logging.rst:215 +#: howto/logging.rst:217 msgid "" "import logging\n" "logging.warning('%s before you %s', 'Look', 'leap!')" msgstr "" -#: howto/logging.rst:218 +#: howto/logging.rst:220 msgid "will display:" msgstr "" -#: howto/logging.rst:220 +#: howto/logging.rst:222 msgid "WARNING:root:Look before you leap!" msgstr "" -#: howto/logging.rst:224 +#: howto/logging.rst:226 msgid "" "As you can see, merging of variable data into the event description message " "uses the old, %-style of string formatting. This is for backwards " @@ -402,17 +402,17 @@ msgid "" "tutorial: see :ref:`formatting-styles` for more information." msgstr "" -#: howto/logging.rst:233 +#: howto/logging.rst:235 msgid "Changing the format of displayed messages" msgstr "" -#: howto/logging.rst:235 +#: howto/logging.rst:237 msgid "" "To change the format which is used to display messages, you need to specify " "the format you want to use::" msgstr "" -#: howto/logging.rst:238 +#: howto/logging.rst:240 msgid "" "import logging\n" "logging.basicConfig(format='%(levelname)s:%(message)s', level=logging." @@ -422,18 +422,18 @@ msgid "" "logging.warning('And this, too')" msgstr "" -#: howto/logging.rst:244 +#: howto/logging.rst:246 msgid "which would print:" msgstr "" -#: howto/logging.rst:246 +#: howto/logging.rst:248 msgid "" "DEBUG:This message should appear on the console\n" "INFO:So should this\n" "WARNING:And this, too" msgstr "" -#: howto/logging.rst:252 +#: howto/logging.rst:254 msgid "" "Notice that the 'root' which appeared in earlier examples has disappeared. " "For a full set of things that can appear in format strings, you can refer to " @@ -443,39 +443,39 @@ msgid "" "This is described in the next section." msgstr "" -#: howto/logging.rst:261 +#: howto/logging.rst:263 msgid "Displaying the date/time in messages" msgstr "" -#: howto/logging.rst:263 +#: howto/logging.rst:265 msgid "" "To display the date and time of an event, you would place '%(asctime)s' in " "your format string::" msgstr "" -#: howto/logging.rst:266 +#: howto/logging.rst:268 msgid "" "import logging\n" "logging.basicConfig(format='%(asctime)s %(message)s')\n" "logging.warning('is when this event was logged.')" msgstr "" -#: howto/logging.rst:270 +#: howto/logging.rst:272 msgid "which should print something like this:" msgstr "" -#: howto/logging.rst:272 +#: howto/logging.rst:274 msgid "2010-12-12 11:41:42,612 is when this event was logged." msgstr "" -#: howto/logging.rst:276 +#: howto/logging.rst:278 msgid "" "The default format for date/time display (shown above) is like ISO8601 or :" "rfc:`3339`. If you need more control over the formatting of the date/time, " "provide a *datefmt* argument to ``basicConfig``, as in this example::" msgstr "" -#: howto/logging.rst:280 +#: howto/logging.rst:282 msgid "" "import logging\n" "logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %I:" @@ -483,25 +483,25 @@ msgid "" "logging.warning('is when this event was logged.')" msgstr "" -#: howto/logging.rst:284 +#: howto/logging.rst:286 msgid "which would display something like this:" msgstr "" -#: howto/logging.rst:286 +#: howto/logging.rst:288 msgid "12/12/2010 11:46:36 AM is when this event was logged." msgstr "" -#: howto/logging.rst:290 +#: howto/logging.rst:292 msgid "" "The format of the *datefmt* argument is the same as supported by :func:`time." "strftime`." msgstr "" -#: howto/logging.rst:295 +#: howto/logging.rst:297 msgid "Next Steps" msgstr "" -#: howto/logging.rst:297 +#: howto/logging.rst:299 msgid "" "That concludes the basic tutorial. It should be enough to get you up and " "running with logging. There's a lot more that the logging package offers, " @@ -510,7 +510,7 @@ msgid "" "of your favourite beverage and carry on." msgstr "" -#: howto/logging.rst:303 +#: howto/logging.rst:305 msgid "" "If your logging needs are simple, then use the above examples to incorporate " "logging into your own scripts, and if you run into problems or don't " @@ -519,50 +519,50 @@ msgid "" "should receive help before too long." msgstr "" -#: howto/logging.rst:309 +#: howto/logging.rst:311 msgid "" "Still here? You can carry on reading the next few sections, which provide a " "slightly more advanced/in-depth tutorial than the basic one above. After " "that, you can take a look at the :ref:`logging-cookbook`." msgstr "" -#: howto/logging.rst:317 +#: howto/logging.rst:319 msgid "Advanced Logging Tutorial" msgstr "" -#: howto/logging.rst:319 +#: howto/logging.rst:321 msgid "" "The logging library takes a modular approach and offers several categories " "of components: loggers, handlers, filters, and formatters." msgstr "" -#: howto/logging.rst:322 +#: howto/logging.rst:324 msgid "Loggers expose the interface that application code directly uses." msgstr "" -#: howto/logging.rst:323 +#: howto/logging.rst:325 msgid "" "Handlers send the log records (created by loggers) to the appropriate " "destination." msgstr "" -#: howto/logging.rst:325 +#: howto/logging.rst:327 msgid "" "Filters provide a finer grained facility for determining which log records " "to output." msgstr "" -#: howto/logging.rst:327 +#: howto/logging.rst:329 msgid "Formatters specify the layout of log records in the final output." msgstr "" -#: howto/logging.rst:329 +#: howto/logging.rst:331 msgid "" "Log event information is passed between loggers, handlers, filters and " "formatters in a :class:`LogRecord` instance." msgstr "" -#: howto/logging.rst:332 +#: howto/logging.rst:334 msgid "" "Logging is performed by calling methods on instances of the :class:`Logger` " "class (hereafter called :dfn:`loggers`). Each instance has a name, and they " @@ -573,23 +573,23 @@ msgid "" "originates." msgstr "" -#: howto/logging.rst:339 +#: howto/logging.rst:341 msgid "" "A good convention to use when naming loggers is to use a module-level " "logger, in each module which uses logging, named as follows::" msgstr "" -#: howto/logging.rst:342 +#: howto/logging.rst:344 msgid "logger = logging.getLogger(__name__)" msgstr "" -#: howto/logging.rst:344 +#: howto/logging.rst:346 msgid "" "This means that logger names track the package/module hierarchy, and it's " "intuitively obvious where events are logged just from the logger name." msgstr "" -#: howto/logging.rst:347 +#: howto/logging.rst:349 msgid "" "The root of the hierarchy of loggers is called the root logger. That's the " "logger used by the functions :func:`debug`, :func:`info`, :func:`warning`, :" @@ -598,7 +598,7 @@ msgid "" "root logger's name is printed as 'root' in the logged output." msgstr "" -#: howto/logging.rst:353 +#: howto/logging.rst:355 msgid "" "It is, of course, possible to log messages to different destinations. " "Support is included in the package for writing log messages to files, HTTP " @@ -609,7 +609,7 @@ msgid "" "built-in handler classes." msgstr "" -#: howto/logging.rst:360 +#: howto/logging.rst:362 msgid "" "By default, no destination is set for any logging messages. You can specify " "a destination (such as console or file) by using :func:`basicConfig` as in " @@ -621,36 +621,36 @@ msgid "" "message output." msgstr "" -#: howto/logging.rst:368 +#: howto/logging.rst:370 msgid "The default format set by :func:`basicConfig` for messages is:" msgstr "" -#: howto/logging.rst:370 +#: howto/logging.rst:372 msgid "severity:logger name:message" msgstr "" -#: howto/logging.rst:374 +#: howto/logging.rst:376 msgid "" "You can change this by passing a format string to :func:`basicConfig` with " "the *format* keyword argument. For all options regarding how a format string " "is constructed, see :ref:`formatter-objects`." msgstr "" -#: howto/logging.rst:379 +#: howto/logging.rst:381 msgid "Logging Flow" msgstr "" -#: howto/logging.rst:381 +#: howto/logging.rst:383 msgid "" "The flow of log event information in loggers and handlers is illustrated in " "the following diagram." msgstr "" -#: howto/logging.rst:432 +#: howto/logging.rst:434 msgid "Loggers" msgstr "" -#: howto/logging.rst:434 +#: howto/logging.rst:436 msgid "" ":class:`Logger` objects have a threefold job. First, they expose several " "methods to application code so that applications can log messages at " @@ -660,17 +660,17 @@ msgid "" "handlers." msgstr "" -#: howto/logging.rst:440 +#: howto/logging.rst:442 msgid "" "The most widely used methods on logger objects fall into two categories: " "configuration and message sending." msgstr "" -#: howto/logging.rst:443 +#: howto/logging.rst:445 msgid "These are the most common configuration methods:" msgstr "" -#: howto/logging.rst:445 +#: howto/logging.rst:447 msgid "" ":meth:`Logger.setLevel` specifies the lowest-severity log message a logger " "will handle, where debug is the lowest built-in severity level and critical " @@ -679,32 +679,32 @@ msgid "" "messages and will ignore DEBUG messages." msgstr "" -#: howto/logging.rst:451 +#: howto/logging.rst:453 msgid "" ":meth:`Logger.addHandler` and :meth:`Logger.removeHandler` add and remove " "handler objects from the logger object. Handlers are covered in more detail " "in :ref:`handler-basic`." msgstr "" -#: howto/logging.rst:455 +#: howto/logging.rst:457 msgid "" ":meth:`Logger.addFilter` and :meth:`Logger.removeFilter` add and remove " "filter objects from the logger object. Filters are covered in more detail " "in :ref:`filter`." msgstr "" -#: howto/logging.rst:459 +#: howto/logging.rst:461 msgid "" "You don't need to always call these methods on every logger you create. See " "the last two paragraphs in this section." msgstr "" -#: howto/logging.rst:462 +#: howto/logging.rst:464 msgid "" "With the logger object configured, the following methods create log messages:" msgstr "" -#: howto/logging.rst:464 +#: howto/logging.rst:466 msgid "" ":meth:`Logger.debug`, :meth:`Logger.info`, :meth:`Logger.warning`, :meth:" "`Logger.error`, and :meth:`Logger.critical` all create log records with a " @@ -717,14 +717,14 @@ msgid "" "exception information." msgstr "" -#: howto/logging.rst:474 +#: howto/logging.rst:476 msgid "" ":meth:`Logger.exception` creates a log message similar to :meth:`Logger." "error`. The difference is that :meth:`Logger.exception` dumps a stack trace " "along with it. Call this method only from an exception handler." msgstr "" -#: howto/logging.rst:478 +#: howto/logging.rst:480 msgid "" ":meth:`Logger.log` takes a log level as an explicit argument. This is a " "little more verbose for logging messages than using the log level " @@ -732,7 +732,7 @@ msgid "" "levels." msgstr "" -#: howto/logging.rst:482 +#: howto/logging.rst:484 msgid "" ":func:`getLogger` returns a reference to a logger instance with the " "specified name if it is provided, or ``root`` if not. The names are period-" @@ -744,7 +744,7 @@ msgid "" "descendants of ``foo``." msgstr "" -#: howto/logging.rst:490 +#: howto/logging.rst:492 msgid "" "Loggers have a concept of *effective level*. If a level is not explicitly " "set on a logger, the level of its parent is used instead as its effective " @@ -756,7 +756,7 @@ msgid "" "handlers." msgstr "" -#: howto/logging.rst:498 +#: howto/logging.rst:500 msgid "" "Child loggers propagate messages up to the handlers associated with their " "ancestor loggers. Because of this, it is unnecessary to define and configure " @@ -766,11 +766,11 @@ msgid "" "attribute of a logger to ``False``.)" msgstr "" -#: howto/logging.rst:509 +#: howto/logging.rst:511 msgid "Handlers" msgstr "" -#: howto/logging.rst:511 +#: howto/logging.rst:513 msgid "" ":class:`~logging.Handler` objects are responsible for dispatching the " "appropriate log messages (based on the log messages' severity) to the " @@ -783,14 +783,14 @@ msgid "" "of a specific severity to a specific location." msgstr "" -#: howto/logging.rst:521 +#: howto/logging.rst:523 msgid "" "The standard library includes quite a few handler types (see :ref:`useful-" "handlers`); the tutorials use mainly :class:`StreamHandler` and :class:" "`FileHandler` in its examples." msgstr "" -#: howto/logging.rst:525 +#: howto/logging.rst:527 msgid "" "There are very few methods in a handler for application developers to " "concern themselves with. The only handler methods that seem relevant for " @@ -798,7 +798,7 @@ msgid "" "not creating custom handlers) are the following configuration methods:" msgstr "" -#: howto/logging.rst:530 +#: howto/logging.rst:532 msgid "" "The :meth:`~Handler.setLevel` method, just as in logger objects, specifies " "the lowest severity that will be dispatched to the appropriate destination. " @@ -808,19 +808,19 @@ msgid "" "send on." msgstr "" -#: howto/logging.rst:536 +#: howto/logging.rst:538 msgid "" ":meth:`~Handler.setFormatter` selects a Formatter object for this handler to " "use." msgstr "" -#: howto/logging.rst:539 +#: howto/logging.rst:541 msgid "" ":meth:`~Handler.addFilter` and :meth:`~Handler.removeFilter` respectively " "configure and deconfigure filter objects on handlers." msgstr "" -#: howto/logging.rst:542 +#: howto/logging.rst:544 msgid "" "Application code should not directly instantiate and use instances of :class:" "`Handler`. Instead, the :class:`Handler` class is a base class that defines " @@ -828,11 +828,11 @@ msgid "" "behavior that child classes can use (or override)." msgstr "" -#: howto/logging.rst:549 +#: howto/logging.rst:551 msgid "Formatters" msgstr "" -#: howto/logging.rst:551 +#: howto/logging.rst:553 msgid "" "Formatter objects configure the final order, structure, and contents of the " "log message. Unlike the base :class:`logging.Handler` class, application " @@ -842,24 +842,24 @@ msgid "" "string and a style indicator." msgstr "" -#: howto/logging.rst:560 +#: howto/logging.rst:562 msgid "" "If there is no message format string, the default is to use the raw " "message. If there is no date format string, the default date format is:" msgstr "" -#: howto/logging.rst:563 +#: howto/logging.rst:565 msgid "%Y-%m-%d %H:%M:%S" msgstr "" -#: howto/logging.rst:567 +#: howto/logging.rst:569 msgid "" "with the milliseconds tacked on at the end. The ``style`` is one of ``'%'``, " "``'{'``, or ``'$'``. If one of these is not specified, then ``'%'`` will be " "used." msgstr "" -#: howto/logging.rst:570 +#: howto/logging.rst:572 msgid "" "If the ``style`` is ``'%'``, the message format string uses ``%()s`` styled string substitution; the possible keys are documented in :" @@ -869,22 +869,22 @@ msgid "" "should conform to what is expected by :meth:`string.Template.substitute`." msgstr "" -#: howto/logging.rst:577 +#: howto/logging.rst:579 msgid "Added the ``style`` parameter." msgstr "" -#: howto/logging.rst:580 +#: howto/logging.rst:582 msgid "" "The following message format string will log the time in a human-readable " "format, the severity of the message, and the contents of the message, in " "that order::" msgstr "" -#: howto/logging.rst:584 +#: howto/logging.rst:586 msgid "'%(asctime)s - %(levelname)s - %(message)s'" msgstr "" -#: howto/logging.rst:586 +#: howto/logging.rst:588 msgid "" "Formatters use a user-configurable function to convert the creation time of " "a record to a tuple. By default, :func:`time.localtime` is used; to change " @@ -895,40 +895,40 @@ msgid "" "in the Formatter class (to ``time.gmtime`` for GMT display)." msgstr "" -#: howto/logging.rst:596 +#: howto/logging.rst:598 msgid "Configuring Logging" msgstr "" -#: howto/logging.rst:600 +#: howto/logging.rst:602 msgid "Programmers can configure logging in three ways:" msgstr "" -#: howto/logging.rst:602 +#: howto/logging.rst:604 msgid "" "Creating loggers, handlers, and formatters explicitly using Python code that " "calls the configuration methods listed above." msgstr "" -#: howto/logging.rst:604 +#: howto/logging.rst:606 msgid "" "Creating a logging config file and reading it using the :func:`fileConfig` " "function." msgstr "" -#: howto/logging.rst:606 +#: howto/logging.rst:608 msgid "" "Creating a dictionary of configuration information and passing it to the :" "func:`dictConfig` function." msgstr "" -#: howto/logging.rst:609 +#: howto/logging.rst:611 msgid "" "For the reference documentation on the last two options, see :ref:`logging-" "config-api`. The following example configures a very simple logger, a " "console handler, and a simple formatter using Python code::" msgstr "" -#: howto/logging.rst:613 +#: howto/logging.rst:615 msgid "" "import logging\n" "\n" @@ -958,12 +958,12 @@ msgid "" "logger.critical('critical message')" msgstr "" -#: howto/logging.rst:639 +#: howto/logging.rst:641 msgid "" "Running this module from the command line produces the following output:" msgstr "" -#: howto/logging.rst:641 +#: howto/logging.rst:643 msgid "" "$ python simple_logging_module.py\n" "2005-03-19 15:10:26,618 - simple_example - DEBUG - debug message\n" @@ -973,14 +973,14 @@ msgid "" "2005-03-19 15:10:26,773 - simple_example - CRITICAL - critical message" msgstr "" -#: howto/logging.rst:650 +#: howto/logging.rst:652 msgid "" "The following Python module creates a logger, handler, and formatter nearly " "identical to those in the example listed above, with the only difference " "being the names of the objects::" msgstr "" -#: howto/logging.rst:654 +#: howto/logging.rst:656 msgid "" "import logging\n" "import logging.config\n" @@ -998,11 +998,11 @@ msgid "" "logger.critical('critical message')" msgstr "" -#: howto/logging.rst:669 +#: howto/logging.rst:671 msgid "Here is the logging.conf file:" msgstr "" -#: howto/logging.rst:671 +#: howto/logging.rst:673 msgid "" "[loggers]\n" "keys=root,simpleExample\n" @@ -1033,12 +1033,12 @@ msgid "" "format=%(asctime)s - %(name)s - %(levelname)s - %(message)s" msgstr "" -#: howto/logging.rst:701 +#: howto/logging.rst:703 msgid "" "The output is nearly identical to that of the non-config-file-based example:" msgstr "" -#: howto/logging.rst:703 +#: howto/logging.rst:705 msgid "" "$ python simple_logging_config.py\n" "2005-03-19 15:38:55,977 - simpleExample - DEBUG - debug message\n" @@ -1048,14 +1048,14 @@ msgid "" "2005-03-19 15:38:56,130 - simpleExample - CRITICAL - critical message" msgstr "" -#: howto/logging.rst:712 +#: howto/logging.rst:714 msgid "" "You can see that the config file approach has a few advantages over the " "Python code approach, mainly separation of configuration and code and the " "ability of noncoders to easily modify the logging properties." msgstr "" -#: howto/logging.rst:716 +#: howto/logging.rst:718 msgid "" "The :func:`fileConfig` function takes a default parameter, " "``disable_existing_loggers``, which defaults to ``True`` for reasons of " @@ -1066,7 +1066,7 @@ msgid "" "information, and specify ``False`` for this parameter if you wish." msgstr "" -#: howto/logging.rst:724 +#: howto/logging.rst:726 msgid "" "The dictionary passed to :func:`dictConfig` can also specify a Boolean value " "with key ``disable_existing_loggers``, which if not specified explicitly in " @@ -1075,7 +1075,7 @@ msgid "" "want - in which case, provide the key explicitly with a value of ``False``." msgstr "" -#: howto/logging.rst:734 +#: howto/logging.rst:736 msgid "" "Note that the class names referenced in config files need to be either " "relative to the logging module, or absolute values which can be resolved " @@ -1086,7 +1086,7 @@ msgid "" "path)." msgstr "" -#: howto/logging.rst:742 +#: howto/logging.rst:744 msgid "" "In Python 3.2, a new means of configuring logging has been introduced, using " "dictionaries to hold configuration information. This provides a superset of " @@ -1101,13 +1101,13 @@ msgid "" "a socket, or use whatever approach makes sense for your application." msgstr "" -#: howto/logging.rst:754 +#: howto/logging.rst:756 msgid "" "Here's an example of the same configuration as above, in YAML format for the " "new dictionary-based approach:" msgstr "" -#: howto/logging.rst:757 +#: howto/logging.rst:759 msgid "" "version: 1\n" "formatters:\n" @@ -1129,24 +1129,24 @@ msgid "" " handlers: [console]" msgstr "" -#: howto/logging.rst:778 +#: howto/logging.rst:780 msgid "" "For more information about logging using a dictionary, see :ref:`logging-" "config-api`." msgstr "" -#: howto/logging.rst:782 +#: howto/logging.rst:784 msgid "What happens if no configuration is provided" msgstr "" -#: howto/logging.rst:784 +#: howto/logging.rst:786 msgid "" "If no logging configuration is provided, it is possible to have a situation " "where a logging event needs to be output, but no handlers can be found to " "output the event." msgstr "" -#: howto/logging.rst:788 +#: howto/logging.rst:790 msgid "" "The event is output using a 'handler of last resort', stored in :data:" "`lastResort`. This internal handler is not associated with any logger, and " @@ -1158,32 +1158,32 @@ msgid "" "severities will be output." msgstr "" -#: howto/logging.rst:799 +#: howto/logging.rst:801 msgid "For versions of Python prior to 3.2, the behaviour is as follows:" msgstr "" -#: howto/logging.rst:801 +#: howto/logging.rst:803 msgid "" "If :data:`raiseExceptions` is ``False`` (production mode), the event is " "silently dropped." msgstr "" -#: howto/logging.rst:804 +#: howto/logging.rst:806 msgid "" "If :data:`raiseExceptions` is ``True`` (development mode), a message 'No " "handlers could be found for logger X.Y.Z' is printed once." msgstr "" -#: howto/logging.rst:807 +#: howto/logging.rst:809 msgid "" "To obtain the pre-3.2 behaviour, :data:`lastResort` can be set to ``None``." msgstr "" -#: howto/logging.rst:813 +#: howto/logging.rst:815 msgid "Configuring Logging for a Library" msgstr "" -#: howto/logging.rst:815 +#: howto/logging.rst:817 msgid "" "When developing a library which uses logging, you should take care to " "document how the library uses logging - for example, the names of loggers " @@ -1194,7 +1194,7 @@ msgid "" "is regarded as the best default behaviour." msgstr "" -#: howto/logging.rst:823 +#: howto/logging.rst:825 msgid "" "If for some reason you *don't* want these messages printed in the absence of " "any logging configuration, you can attach a do-nothing handler to the top-" @@ -1206,7 +1206,7 @@ msgid "" "to those handlers, as normal." msgstr "" -#: howto/logging.rst:832 +#: howto/logging.rst:834 msgid "" "A do-nothing handler is included in the logging package: :class:`~logging." "NullHandler` (since Python 3.1). An instance of this handler could be added " @@ -1217,20 +1217,20 @@ msgid "" "etc. then the code::" msgstr "" -#: howto/logging.rst:840 +#: howto/logging.rst:842 msgid "" "import logging\n" "logging.getLogger('foo').addHandler(logging.NullHandler())" msgstr "" -#: howto/logging.rst:843 +#: howto/logging.rst:845 msgid "" "should have the desired effect. If an organisation produces a number of " "libraries, then the logger name specified can be 'orgname.foo' rather than " "just 'foo'." msgstr "" -#: howto/logging.rst:847 +#: howto/logging.rst:849 msgid "" "It is strongly advised that you *do not log to the root logger* in your " "library. Instead, use a logger with a unique and easily identifiable name, " @@ -1240,7 +1240,7 @@ msgid "" "library as they wish." msgstr "" -#: howto/logging.rst:854 +#: howto/logging.rst:856 msgid "" "It is strongly advised that you *do not add any handlers other than* :class:" "`~logging.NullHandler` *to your library's loggers*. This is because the " @@ -1251,11 +1251,11 @@ msgid "" "carry out unit tests and deliver logs which suit their requirements." msgstr "" -#: howto/logging.rst:865 +#: howto/logging.rst:867 msgid "Logging Levels" msgstr "" -#: howto/logging.rst:867 +#: howto/logging.rst:869 msgid "" "The numeric values of logging levels are given in the following table. These " "are primarily of interest if you want to define your own levels, and need " @@ -1264,39 +1264,39 @@ msgid "" "value; the predefined name is lost." msgstr "" -#: howto/logging.rst:874 +#: howto/logging.rst:876 msgid "Numeric value" msgstr "" -#: howto/logging.rst:876 +#: howto/logging.rst:878 msgid "50" msgstr "" -#: howto/logging.rst:878 +#: howto/logging.rst:880 msgid "40" msgstr "" -#: howto/logging.rst:880 +#: howto/logging.rst:882 msgid "30" msgstr "" -#: howto/logging.rst:882 +#: howto/logging.rst:884 msgid "20" msgstr "" -#: howto/logging.rst:884 +#: howto/logging.rst:886 msgid "10" msgstr "" -#: howto/logging.rst:886 +#: howto/logging.rst:888 msgid "``NOTSET``" msgstr "" -#: howto/logging.rst:886 +#: howto/logging.rst:888 msgid "0" msgstr "" -#: howto/logging.rst:889 +#: howto/logging.rst:891 msgid "" "Levels can also be associated with loggers, being set either by the " "developer or through loading a saved logging configuration. When a logging " @@ -1306,14 +1306,14 @@ msgid "" "basic mechanism controlling the verbosity of logging output." msgstr "" -#: howto/logging.rst:896 +#: howto/logging.rst:898 msgid "" "Logging messages are encoded as instances of the :class:`~logging.LogRecord` " "class. When a logger decides to actually log an event, a :class:`~logging." "LogRecord` instance is created from the logging message." msgstr "" -#: howto/logging.rst:900 +#: howto/logging.rst:902 msgid "" "Logging messages are subjected to a dispatch mechanism through the use of :" "dfn:`handlers`, which are instances of subclasses of the :class:`Handler` " @@ -1330,7 +1330,7 @@ msgid "" "at which point the passing to ancestor handlers stops)." msgstr "" -#: howto/logging.rst:914 +#: howto/logging.rst:916 msgid "" "Just as for loggers, handlers can have levels associated with them. A " "handler's level acts as a filter in the same way as a logger's level does. " @@ -1340,11 +1340,11 @@ msgid "" "`~Handler.emit`." msgstr "" -#: howto/logging.rst:923 +#: howto/logging.rst:925 msgid "Custom Levels" msgstr "" -#: howto/logging.rst:925 +#: howto/logging.rst:927 msgid "" "Defining your own levels is possible, but should not be necessary, as the " "existing levels have been chosen on the basis of practical experience. " @@ -1357,27 +1357,27 @@ msgid "" "given numeric value might mean different things for different libraries." msgstr "" -#: howto/logging.rst:938 +#: howto/logging.rst:940 msgid "Useful Handlers" msgstr "" -#: howto/logging.rst:940 +#: howto/logging.rst:942 msgid "" "In addition to the base :class:`Handler` class, many useful subclasses are " "provided:" msgstr "" -#: howto/logging.rst:943 +#: howto/logging.rst:945 msgid "" ":class:`StreamHandler` instances send messages to streams (file-like " "objects)." msgstr "" -#: howto/logging.rst:946 +#: howto/logging.rst:948 msgid ":class:`FileHandler` instances send messages to disk files." msgstr "" -#: howto/logging.rst:948 +#: howto/logging.rst:950 msgid "" ":class:`~handlers.BaseRotatingHandler` is the base class for handlers that " "rotate log files at a certain point. It is not meant to be instantiated " @@ -1385,61 +1385,61 @@ msgid "" "`~handlers.TimedRotatingFileHandler`." msgstr "" -#: howto/logging.rst:953 +#: howto/logging.rst:955 msgid "" ":class:`~handlers.RotatingFileHandler` instances send messages to disk " "files, with support for maximum log file sizes and log file rotation." msgstr "" -#: howto/logging.rst:956 +#: howto/logging.rst:958 msgid "" ":class:`~handlers.TimedRotatingFileHandler` instances send messages to disk " "files, rotating the log file at certain timed intervals." msgstr "" -#: howto/logging.rst:959 +#: howto/logging.rst:961 msgid "" ":class:`~handlers.SocketHandler` instances send messages to TCP/IP sockets. " "Since 3.4, Unix domain sockets are also supported." msgstr "" -#: howto/logging.rst:962 +#: howto/logging.rst:964 msgid "" ":class:`~handlers.DatagramHandler` instances send messages to UDP sockets. " "Since 3.4, Unix domain sockets are also supported." msgstr "" -#: howto/logging.rst:965 +#: howto/logging.rst:967 msgid "" ":class:`~handlers.SMTPHandler` instances send messages to a designated email " "address." msgstr "" -#: howto/logging.rst:968 +#: howto/logging.rst:970 msgid "" ":class:`~handlers.SysLogHandler` instances send messages to a Unix syslog " "daemon, possibly on a remote machine." msgstr "" -#: howto/logging.rst:971 +#: howto/logging.rst:973 msgid "" ":class:`~handlers.NTEventLogHandler` instances send messages to a Windows " "NT/2000/XP event log." msgstr "" -#: howto/logging.rst:974 +#: howto/logging.rst:976 msgid "" ":class:`~handlers.MemoryHandler` instances send messages to a buffer in " "memory, which is flushed whenever specific criteria are met." msgstr "" -#: howto/logging.rst:977 +#: howto/logging.rst:979 msgid "" ":class:`~handlers.HTTPHandler` instances send messages to an HTTP server " "using either ``GET`` or ``POST`` semantics." msgstr "" -#: howto/logging.rst:980 +#: howto/logging.rst:982 msgid "" ":class:`~handlers.WatchedFileHandler` instances watch the file they are " "logging to. If the file changes, it is closed and reopened using the file " @@ -1447,13 +1447,13 @@ msgid "" "support the underlying mechanism used." msgstr "" -#: howto/logging.rst:985 +#: howto/logging.rst:987 msgid "" ":class:`~handlers.QueueHandler` instances send messages to a queue, such as " "those implemented in the :mod:`queue` or :mod:`multiprocessing` modules." msgstr "" -#: howto/logging.rst:988 +#: howto/logging.rst:990 msgid "" ":class:`NullHandler` instances do nothing with error messages. They are used " "by library developers who want to use logging, but want to avoid the 'No " @@ -1462,15 +1462,15 @@ msgid "" "more information." msgstr "" -#: howto/logging.rst:994 +#: howto/logging.rst:996 msgid "The :class:`NullHandler` class." msgstr "" -#: howto/logging.rst:997 +#: howto/logging.rst:999 msgid "The :class:`~handlers.QueueHandler` class." msgstr "" -#: howto/logging.rst:1000 +#: howto/logging.rst:1002 msgid "" "The :class:`NullHandler`, :class:`StreamHandler` and :class:`FileHandler` " "classes are defined in the core logging package. The other handlers are " @@ -1478,14 +1478,14 @@ msgid "" "module, :mod:`logging.config`, for configuration functionality.)" msgstr "" -#: howto/logging.rst:1005 +#: howto/logging.rst:1007 msgid "" "Logged messages are formatted for presentation through instances of the :" "class:`Formatter` class. They are initialized with a format string suitable " "for use with the % operator and a dictionary." msgstr "" -#: howto/logging.rst:1009 +#: howto/logging.rst:1011 msgid "" "For formatting multiple messages in a batch, instances of :class:" "`BufferingFormatter` can be used. In addition to the format string (which is " @@ -1493,7 +1493,7 @@ msgid "" "trailer format strings." msgstr "" -#: howto/logging.rst:1014 +#: howto/logging.rst:1016 msgid "" "When filtering based on logger level and/or handler level is not enough, " "instances of :class:`Filter` can be added to both :class:`Logger` and :class:" @@ -1503,18 +1503,18 @@ msgid "" "value, the message is not processed further." msgstr "" -#: howto/logging.rst:1021 +#: howto/logging.rst:1023 msgid "" "The basic :class:`Filter` functionality allows filtering by specific logger " "name. If this feature is used, messages sent to the named logger and its " "children are allowed through the filter, and all others dropped." msgstr "" -#: howto/logging.rst:1029 +#: howto/logging.rst:1031 msgid "Exceptions raised during logging" msgstr "" -#: howto/logging.rst:1031 +#: howto/logging.rst:1033 msgid "" "The logging package is designed to swallow exceptions which occur while " "logging in production. This is so that errors which occur while handling " @@ -1522,7 +1522,7 @@ msgid "" "errors - do not cause the application using logging to terminate prematurely." msgstr "" -#: howto/logging.rst:1036 +#: howto/logging.rst:1038 msgid "" ":class:`SystemExit` and :class:`KeyboardInterrupt` exceptions are never " "swallowed. Other exceptions which occur during the :meth:`~Handler.emit` " @@ -1530,7 +1530,7 @@ msgid "" "handleError` method." msgstr "" -#: howto/logging.rst:1041 +#: howto/logging.rst:1043 msgid "" "The default implementation of :meth:`~Handler.handleError` in :class:" "`Handler` checks to see if a module-level variable, :data:`raiseExceptions`, " @@ -1538,7 +1538,7 @@ msgid "" "the exception is swallowed." msgstr "" -#: howto/logging.rst:1047 +#: howto/logging.rst:1049 msgid "" "The default value of :data:`raiseExceptions` is ``True``. This is because " "during development, you typically want to be notified of any exceptions that " @@ -1546,11 +1546,11 @@ msgid "" "production usage." msgstr "" -#: howto/logging.rst:1057 +#: howto/logging.rst:1059 msgid "Using arbitrary objects as messages" msgstr "" -#: howto/logging.rst:1059 +#: howto/logging.rst:1061 msgid "" "In the preceding sections and examples, it has been assumed that the message " "passed when logging the event is a string. However, this is not the only " @@ -1562,11 +1562,11 @@ msgid "" "the wire." msgstr "" -#: howto/logging.rst:1070 +#: howto/logging.rst:1072 msgid "Optimization" msgstr "" -#: howto/logging.rst:1072 +#: howto/logging.rst:1074 msgid "" "Formatting of message arguments is deferred until it cannot be avoided. " "However, computing the arguments passed to the logging method can also be " @@ -1577,20 +1577,20 @@ msgid "" "code like this::" msgstr "" -#: howto/logging.rst:1080 +#: howto/logging.rst:1082 msgid "" "if logger.isEnabledFor(logging.DEBUG):\n" " logger.debug('Message with %s, %s', expensive_func1(),\n" " expensive_func2())" msgstr "" -#: howto/logging.rst:1084 +#: howto/logging.rst:1086 msgid "" "so that if the logger's threshold is set above ``DEBUG``, the calls to " "``expensive_func1`` and ``expensive_func2`` are never made." msgstr "" -#: howto/logging.rst:1087 +#: howto/logging.rst:1089 msgid "" "In some cases, :meth:`~Logger.isEnabledFor` can itself be more expensive " "than you'd like (e.g. for deeply nested loggers where an explicit level is " @@ -1602,7 +1602,7 @@ msgid "" "while the application is running (which is not all that common)." msgstr "" -#: howto/logging.rst:1096 +#: howto/logging.rst:1098 msgid "" "There are other optimizations which can be made for specific applications " "which need more precise control over what logging information is collected. " @@ -1610,94 +1610,94 @@ msgid "" "you don't need:" msgstr "" -#: howto/logging.rst:1102 +#: howto/logging.rst:1104 msgid "What you don't want to collect" msgstr "" -#: howto/logging.rst:1102 +#: howto/logging.rst:1104 msgid "How to avoid collecting it" msgstr "" -#: howto/logging.rst:1104 +#: howto/logging.rst:1106 msgid "Information about where calls were made from." msgstr "" -#: howto/logging.rst:1104 +#: howto/logging.rst:1106 msgid "" "Set ``logging._srcfile`` to ``None``. This avoids calling :func:`sys." "_getframe`, which may help to speed up your code in environments like PyPy " "(which can't speed up code that uses :func:`sys._getframe`)." msgstr "" -#: howto/logging.rst:1110 +#: howto/logging.rst:1112 msgid "Threading information." msgstr "" -#: howto/logging.rst:1110 +#: howto/logging.rst:1112 msgid "Set ``logging.logThreads`` to ``False``." msgstr "" -#: howto/logging.rst:1112 +#: howto/logging.rst:1114 msgid "Current process ID (:func:`os.getpid`)" msgstr "" -#: howto/logging.rst:1112 +#: howto/logging.rst:1114 msgid "Set ``logging.logProcesses`` to ``False``." msgstr "" -#: howto/logging.rst:1114 +#: howto/logging.rst:1116 msgid "" "Current process name when using ``multiprocessing`` to manage multiple " "processes." msgstr "" -#: howto/logging.rst:1114 +#: howto/logging.rst:1116 msgid "Set ``logging.logMultiprocessing`` to ``False``." msgstr "" -#: howto/logging.rst:1117 +#: howto/logging.rst:1119 msgid "Current :class:`asyncio.Task` name when using ``asyncio``." msgstr "" -#: howto/logging.rst:1117 +#: howto/logging.rst:1119 msgid "Set ``logging.logAsyncioTasks`` to ``False``." msgstr "" -#: howto/logging.rst:1121 +#: howto/logging.rst:1123 msgid "" "Also note that the core logging module only includes the basic handlers. If " "you don't import :mod:`logging.handlers` and :mod:`logging.config`, they " "won't take up any memory." msgstr "" -#: howto/logging.rst:1128 +#: howto/logging.rst:1130 msgid "Other resources" msgstr "" -#: howto/logging.rst:1132 +#: howto/logging.rst:1134 msgid "Module :mod:`logging`" msgstr "" -#: howto/logging.rst:1133 +#: howto/logging.rst:1135 msgid "API reference for the logging module." msgstr "" -#: howto/logging.rst:1135 +#: howto/logging.rst:1137 msgid "Module :mod:`logging.config`" msgstr "" -#: howto/logging.rst:1136 +#: howto/logging.rst:1138 msgid "Configuration API for the logging module." msgstr "" -#: howto/logging.rst:1138 +#: howto/logging.rst:1140 msgid "Module :mod:`logging.handlers`" msgstr "" -#: howto/logging.rst:1139 +#: howto/logging.rst:1141 msgid "Useful handlers included with the logging module." msgstr "" -#: howto/logging.rst:1141 +#: howto/logging.rst:1143 msgid ":ref:`A logging cookbook `" msgstr "" diff --git a/howto/mro.po b/howto/mro.po index aa2ba82df..4afa66f22 100644 --- a/howto/mro.po +++ b/howto/mro.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: TURKISH \n" @@ -565,7 +565,7 @@ msgstr "" msgid "" "We see that class G inherits from F and E, with F *before* E: therefore we " "would expect the attribute *G.remember2buy* to be inherited by *F." -"rembermer2buy* and not by *E.remember2buy*: nevertheless Python 2.2 gives" +"remember2buy* and not by *E.remember2buy*: nevertheless Python 2.2 gives" msgstr "" #: howto/mro.rst:407 diff --git a/howto/regex.po b/howto/regex.po index 2bcdea3bd..49f153dca 100644 --- a/howto/regex.po +++ b/howto/regex.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -871,7 +871,7 @@ msgstr "" #: howto/regex.rst:483 msgid "" ">>> iterator = p.finditer('12 drummers drumming, 11 ... 10 ...')\n" -">>> iterator \n" +">>> iterator\n" "\n" ">>> for match in iterator:\n" "... print(match.span())\n" @@ -899,7 +899,7 @@ msgstr "" msgid "" ">>> print(re.match(r'From\\s+', 'Fromage amk'))\n" "None\n" -">>> re.match(r'From\\s+', 'From amk Thu May 14 19:12:10 1998') \n" +">>> re.match(r'From\\s+', 'From amk Thu May 14 19:12:10 1998')\n" "" msgstr "" @@ -1193,7 +1193,7 @@ msgstr "" #: howto/regex.rst:714 msgid "" -">>> print(re.search('^From', 'From Here to Eternity')) \n" +">>> print(re.search('^From', 'From Here to Eternity'))\n" "\n" ">>> print(re.search('^From', 'Reciting From Memory'))\n" "None" @@ -1215,11 +1215,11 @@ msgstr "" #: howto/regex.rst:725 msgid "" -">>> print(re.search('}$', '{block}')) \n" +">>> print(re.search('}$', '{block}'))\n" "\n" ">>> print(re.search('}$', '{block} '))\n" "None\n" -">>> print(re.search('}$', '{block}\\n')) \n" +">>> print(re.search('}$', '{block}\\n'))\n" "" msgstr "" diff --git a/howto/unicode.po b/howto/unicode.po index e1e7cd0d0..805f87db6 100644 --- a/howto/unicode.po +++ b/howto/unicode.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -382,7 +382,7 @@ msgstr "" #: howto/unicode.rst:236 msgid "" -">>> b'\\x80abc'.decode(\"utf-8\", \"strict\") \n" +">>> b'\\x80abc'.decode(\"utf-8\", \"strict\")\n" "Traceback (most recent call last):\n" " ...\n" "UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0:\n" @@ -452,7 +452,7 @@ msgid "" ">>> u = chr(40960) + 'abcd' + chr(1972)\n" ">>> u.encode('utf-8')\n" "b'\\xea\\x80\\x80abcd\\xde\\xb4'\n" -">>> u.encode('ascii') \n" +">>> u.encode('ascii')\n" "Traceback (most recent call last):\n" " ...\n" "UnicodeEncodeError: 'ascii' codec can't encode character '\\ua000' in\n" diff --git a/howto/urllib2.po b/howto/urllib2.po index 3dd95b5c0..4e6e5343e 100644 --- a/howto/urllib2.po +++ b/howto/urllib2.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -229,7 +229,7 @@ msgid "" ">>> data['location'] = 'Northampton'\n" ">>> data['language'] = 'Python'\n" ">>> url_values = urllib.parse.urlencode(data)\n" -">>> print(url_values) # The order may differ from below. \n" +">>> print(url_values) # The order may differ from below.\n" "name=Somebody+Here&language=Python&location=Northampton\n" ">>> url = 'http://www.example.com/example.cgi'\n" ">>> full_url = url + '?' + url_values\n" @@ -333,7 +333,7 @@ msgid "" ">>> req = urllib.request.Request('http://www.pretend_server.org')\n" ">>> try: urllib.request.urlopen(req)\n" "... except urllib.error.URLError as e:\n" -"... print(e.reason) \n" +"... print(e.reason)\n" "...\n" "(4, 'getaddrinfo failed')" msgstr "" @@ -470,7 +470,7 @@ msgid "" "... urllib.request.urlopen(req)\n" "... except urllib.error.HTTPError as e:\n" "... print(e.code)\n" -"... print(e.read()) \n" +"... print(e.read())\n" "...\n" "404\n" "b'\n" @@ -192,25 +192,25 @@ msgstr "" #: library/abc.rst:143 msgid "" -"The ABC ``MyIterable`` defines the standard iterable method, :meth:" -"`~iterator.__iter__`, as an abstract method. The implementation given here " -"can still be called from subclasses. The :meth:`!get_iterator` method is " -"also part of the ``MyIterable`` abstract base class, but it does not have to " -"be overridden in non-abstract derived classes." +"The ABC ``MyIterable`` defines the standard iterable method, :meth:`~object." +"__iter__`, as an abstract method. The implementation given here can still " +"be called from subclasses. The :meth:`!get_iterator` method is also part of " +"the ``MyIterable`` abstract base class, but it does not have to be " +"overridden in non-abstract derived classes." msgstr "" #: library/abc.rst:149 msgid "" "The :meth:`__subclasshook__` class method defined here says that any class " -"that has an :meth:`~iterator.__iter__` method in its :attr:`~object." -"__dict__` (or in that of one of its base classes, accessed via the :attr:" -"`~type.__mro__` list) is considered a ``MyIterable`` too." +"that has an :meth:`~object.__iter__` method in its :attr:`~object.__dict__` " +"(or in that of one of its base classes, accessed via the :attr:`~type." +"__mro__` list) is considered a ``MyIterable`` too." msgstr "" #: library/abc.rst:154 msgid "" "Finally, the last line makes ``Foo`` a virtual subclass of ``MyIterable``, " -"even though it does not define an :meth:`~iterator.__iter__` method (it uses " +"even though it does not define an :meth:`~object.__iter__` method (it uses " "the old-style iterable protocol, defined in terms of :meth:`~object.__len__` " "and :meth:`~object.__getitem__`). Note that this will not make " "``get_iterator`` available as a method of ``Foo``, so it is provided " diff --git a/library/argparse.po b/library/argparse.po index 970fe6452..b770e7f0b 100644 --- a/library/argparse.po +++ b/library/argparse.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -1090,14 +1090,16 @@ msgstr "" msgid "" "The recommended way to create a custom action is to extend :class:`Action`, " "overriding the :meth:`!__call__` method and optionally the :meth:`!__init__` " -"and :meth:`!format_usage` methods." +"and :meth:`!format_usage` methods. You can also register custom actions " +"using the :meth:`~ArgumentParser.register` method and reference them by " +"their registered name." msgstr "" -#: library/argparse.rst:755 +#: library/argparse.rst:756 msgid "An example of a custom action::" msgstr "" -#: library/argparse.rst:757 +#: library/argparse.rst:758 msgid "" ">>> class FooAction(argparse.Action):\n" "... def __init__(self, option_strings, dest, nargs=None, **kwargs):\n" @@ -1118,15 +1120,15 @@ msgid "" "Namespace(bar='1', foo='2')" msgstr "" -#: library/argparse.rst:775 +#: library/argparse.rst:776 msgid "For more details, see :class:`Action`." msgstr "" -#: library/argparse.rst:781 +#: library/argparse.rst:782 msgid "nargs" msgstr "" -#: library/argparse.rst:783 +#: library/argparse.rst:784 msgid "" ":class:`ArgumentParser` objects usually associate a single command-line " "argument with a single action to be taken. The ``nargs`` keyword argument " @@ -1135,13 +1137,13 @@ msgid "" "are:" msgstr "" -#: library/argparse.rst:788 +#: library/argparse.rst:789 msgid "" "``N`` (an integer). ``N`` arguments from the command line will be gathered " "together into a list. For example::" msgstr "" -#: library/argparse.rst:791 +#: library/argparse.rst:792 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo', nargs=2)\n" @@ -1150,13 +1152,13 @@ msgid "" "Namespace(bar=['c'], foo=['a', 'b'])" msgstr "" -#: library/argparse.rst:797 +#: library/argparse.rst:798 msgid "" "Note that ``nargs=1`` produces a list of one item. This is different from " "the default, in which the item is produced by itself." msgstr "" -#: library/argparse.rst:802 +#: library/argparse.rst:803 msgid "" "``'?'``. One argument will be consumed from the command line if possible, " "and produced as a single item. If no command-line argument is present, the " @@ -1166,7 +1168,7 @@ msgid "" "produced. Some examples to illustrate this::" msgstr "" -#: library/argparse.rst:809 +#: library/argparse.rst:810 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo', nargs='?', const='c', default='d')\n" @@ -1179,13 +1181,13 @@ msgid "" "Namespace(bar='d', foo='d')" msgstr "" -#: library/argparse.rst:819 +#: library/argparse.rst:820 msgid "" "One of the more common uses of ``nargs='?'`` is to allow optional input and " "output files::" msgstr "" -#: library/argparse.rst:822 +#: library/argparse.rst:823 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('infile', nargs='?', type=argparse.FileType('r'),\n" @@ -1200,7 +1202,7 @@ msgid "" " outfile=<_io.TextIOWrapper name='' encoding='UTF-8'>)" msgstr "" -#: library/argparse.rst:836 +#: library/argparse.rst:837 msgid "" "``'*'``. All command-line arguments present are gathered into a list. Note " "that it generally doesn't make much sense to have more than one positional " @@ -1208,7 +1210,7 @@ msgid "" "``nargs='*'`` is possible. For example::" msgstr "" -#: library/argparse.rst:841 +#: library/argparse.rst:842 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo', nargs='*')\n" @@ -1218,14 +1220,14 @@ msgid "" "Namespace(bar=['1', '2'], baz=['a', 'b'], foo=['x', 'y'])" msgstr "" -#: library/argparse.rst:850 +#: library/argparse.rst:851 msgid "" "``'+'``. Just like ``'*'``, all command-line args present are gathered into " "a list. Additionally, an error message will be generated if there wasn't at " "least one command-line argument present. For example::" msgstr "" -#: library/argparse.rst:854 +#: library/argparse.rst:855 msgid "" ">>> parser = argparse.ArgumentParser(prog='PROG')\n" ">>> parser.add_argument('foo', nargs='+')\n" @@ -1236,7 +1238,7 @@ msgid "" "PROG: error: the following arguments are required: foo" msgstr "" -#: library/argparse.rst:862 +#: library/argparse.rst:863 msgid "" "If the ``nargs`` keyword argument is not provided, the number of arguments " "consumed is determined by the action_. Generally this means a single " @@ -1245,11 +1247,11 @@ msgid "" "``'store_const'``) set ``nargs=0``." msgstr "" -#: library/argparse.rst:872 +#: library/argparse.rst:873 msgid "const" msgstr "" -#: library/argparse.rst:874 +#: library/argparse.rst:875 msgid "" "The ``const`` argument of :meth:`~ArgumentParser.add_argument` is used to " "hold constant values that are not read from the command line but are " @@ -1257,7 +1259,7 @@ msgid "" "common uses of it are:" msgstr "" -#: library/argparse.rst:878 +#: library/argparse.rst:879 msgid "" "When :meth:`~ArgumentParser.add_argument` is called with " "``action='store_const'`` or ``action='append_const'``. These actions add " @@ -1267,7 +1269,7 @@ msgid "" "receive a default value of ``None``." msgstr "" -#: library/argparse.rst:886 +#: library/argparse.rst:887 msgid "" "When :meth:`~ArgumentParser.add_argument` is called with option strings " "(like ``-f`` or ``--foo``) and ``nargs='?'``. This creates an optional " @@ -1277,17 +1279,17 @@ msgid "" "to be ``None`` instead. See the nargs_ description for examples." msgstr "" -#: library/argparse.rst:893 +#: library/argparse.rst:894 msgid "" "``const=None`` by default, including when ``action='append_const'`` or " "``action='store_const'``." msgstr "" -#: library/argparse.rst:900 +#: library/argparse.rst:901 msgid "default" msgstr "" -#: library/argparse.rst:902 +#: library/argparse.rst:903 msgid "" "All optional arguments and some positional arguments may be omitted at the " "command line. The ``default`` keyword argument of :meth:`~ArgumentParser." @@ -1297,7 +1299,7 @@ msgid "" "command line::" msgstr "" -#: library/argparse.rst:909 +#: library/argparse.rst:910 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo', default=42)\n" @@ -1307,13 +1309,13 @@ msgid "" "Namespace(foo=42)" msgstr "" -#: library/argparse.rst:916 +#: library/argparse.rst:917 msgid "" "If the target namespace already has an attribute set, the action *default* " "will not overwrite it::" msgstr "" -#: library/argparse.rst:919 +#: library/argparse.rst:920 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo', default=42)\n" @@ -1321,7 +1323,7 @@ msgid "" "Namespace(foo=101)" msgstr "" -#: library/argparse.rst:924 +#: library/argparse.rst:925 msgid "" "If the ``default`` value is a string, the parser parses the value as if it " "were a command-line argument. In particular, the parser applies any type_ " @@ -1329,7 +1331,7 @@ msgid "" "`Namespace` return value. Otherwise, the parser uses the value as is::" msgstr "" -#: library/argparse.rst:929 +#: library/argparse.rst:930 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--length', default='10', type=int)\n" @@ -1338,13 +1340,13 @@ msgid "" "Namespace(length=10, width=10.5)" msgstr "" -#: library/argparse.rst:935 +#: library/argparse.rst:936 msgid "" "For positional arguments with nargs_ equal to ``?`` or ``*``, the " "``default`` value is used when no command-line argument was present::" msgstr "" -#: library/argparse.rst:938 +#: library/argparse.rst:939 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('foo', nargs='?', default=42)\n" @@ -1354,20 +1356,20 @@ msgid "" "Namespace(foo=42)" msgstr "" -#: library/argparse.rst:945 +#: library/argparse.rst:946 msgid "" "For required_ arguments, the ``default`` value is ignored. For example, this " "applies to positional arguments with nargs_ values other than ``?`` or " "``*``, or optional arguments marked as ``required=True``." msgstr "" -#: library/argparse.rst:949 +#: library/argparse.rst:950 msgid "" "Providing ``default=argparse.SUPPRESS`` causes no attribute to be added if " "the command-line argument was not present::" msgstr "" -#: library/argparse.rst:952 +#: library/argparse.rst:953 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo', default=argparse.SUPPRESS)\n" @@ -1377,11 +1379,11 @@ msgid "" "Namespace(foo='1')" msgstr "" -#: library/argparse.rst:963 +#: library/argparse.rst:964 msgid "type" msgstr "" -#: library/argparse.rst:965 +#: library/argparse.rst:966 msgid "" "By default, the parser reads command-line arguments in as simple strings. " "However, quite often the command-line string should instead be interpreted " @@ -1390,25 +1392,26 @@ msgid "" "checking and type conversions to be performed." msgstr "" -#: library/argparse.rst:971 +#: library/argparse.rst:972 msgid "" "If the type_ keyword is used with the default_ keyword, the type converter " "is only applied if the default is a string." msgstr "" -#: library/argparse.rst:974 +#: library/argparse.rst:975 msgid "" -"The argument to ``type`` can be any callable that accepts a single string. " -"If the function raises :exc:`ArgumentTypeError`, :exc:`TypeError`, or :exc:" +"The argument to ``type`` can be a callable that accepts a single string or " +"the name of a registered type (see :meth:`~ArgumentParser.register`) If the " +"function raises :exc:`ArgumentTypeError`, :exc:`TypeError`, or :exc:" "`ValueError`, the exception is caught and a nicely formatted error message " -"is displayed. No other exception types are handled." +"is displayed. Other exception types are not handled." msgstr "" -#: library/argparse.rst:979 +#: library/argparse.rst:981 msgid "Common built-in types and functions can be used as type converters:" msgstr "" -#: library/argparse.rst:981 +#: library/argparse.rst:983 msgid "" "import argparse\n" "import pathlib\n" @@ -1423,11 +1426,11 @@ msgid "" "parser.add_argument('datapath', type=pathlib.Path)" msgstr "" -#: library/argparse.rst:994 +#: library/argparse.rst:996 msgid "User defined functions can be used as well:" msgstr "" -#: library/argparse.rst:996 +#: library/argparse.rst:998 msgid "" ">>> def hyphenated(string):\n" "... return '-'.join([word[:4] for word in string.casefold().split()])\n" @@ -1438,14 +1441,14 @@ msgid "" "Namespace(short_title='\"the-tale-of-two-citi')" msgstr "" -#: library/argparse.rst:1006 +#: library/argparse.rst:1008 msgid "" "The :func:`bool` function is not recommended as a type converter. All it " "does is convert empty strings to ``False`` and non-empty strings to " "``True``. This is usually not what is desired." msgstr "" -#: library/argparse.rst:1010 +#: library/argparse.rst:1012 msgid "" "In general, the ``type`` keyword is a convenience that should only be used " "for simple conversions that can only raise one of the three supported " @@ -1453,7 +1456,7 @@ msgid "" "management should be done downstream after the arguments are parsed." msgstr "" -#: library/argparse.rst:1015 +#: library/argparse.rst:1017 msgid "" "For example, JSON or YAML conversions have complex error cases that require " "better reporting than can be given by the ``type`` keyword. A :exc:`~json." @@ -1461,7 +1464,7 @@ msgid "" "exception would not be handled at all." msgstr "" -#: library/argparse.rst:1020 +#: library/argparse.rst:1022 msgid "" "Even :class:`~argparse.FileType` has its limitations for use with the " "``type`` keyword. If one argument uses :class:`~argparse.FileType` and then " @@ -1471,17 +1474,17 @@ msgid "" "files." msgstr "" -#: library/argparse.rst:1027 +#: library/argparse.rst:1029 msgid "" "For type checkers that simply check against a fixed set of values, consider " "using the choices_ keyword instead." msgstr "" -#: library/argparse.rst:1034 +#: library/argparse.rst:1036 msgid "choices" msgstr "" -#: library/argparse.rst:1036 +#: library/argparse.rst:1038 msgid "" "Some command-line arguments should be selected from a restricted set of " "values. These can be handled by passing a sequence object as the *choices* " @@ -1490,7 +1493,7 @@ msgid "" "be displayed if the argument was not one of the acceptable values::" msgstr "" -#: library/argparse.rst:1042 +#: library/argparse.rst:1044 msgid "" ">>> parser = argparse.ArgumentParser(prog='game.py')\n" ">>> parser.add_argument('move', choices=['rock', 'paper', 'scissors'])\n" @@ -1502,26 +1505,26 @@ msgid "" "'paper', 'scissors')" msgstr "" -#: library/argparse.rst:1051 +#: library/argparse.rst:1053 msgid "" "Note that inclusion in the *choices* sequence is checked after any type_ " "conversions have been performed, so the type of the objects in the *choices* " "sequence should match the type_ specified." msgstr "" -#: library/argparse.rst:1055 +#: library/argparse.rst:1057 msgid "" "Any sequence can be passed as the *choices* value, so :class:`list` " "objects, :class:`tuple` objects, and custom sequences are all supported." msgstr "" -#: library/argparse.rst:1058 +#: library/argparse.rst:1060 msgid "" "Use of :class:`enum.Enum` is not recommended because it is difficult to " "control its appearance in usage, help, and error messages." msgstr "" -#: library/argparse.rst:1061 +#: library/argparse.rst:1063 msgid "" "Formatted choices override the default *metavar* which is normally derived " "from *dest*. This is usually what you want because the user never sees the " @@ -1529,11 +1532,11 @@ msgid "" "are many choices), just specify an explicit metavar_." msgstr "" -#: library/argparse.rst:1070 +#: library/argparse.rst:1072 msgid "required" msgstr "" -#: library/argparse.rst:1072 +#: library/argparse.rst:1074 msgid "" "In general, the :mod:`!argparse` module assumes that flags like ``-f`` and " "``--bar`` indicate *optional* arguments, which can always be omitted at the " @@ -1541,7 +1544,7 @@ msgid "" "the ``required=`` keyword argument to :meth:`~ArgumentParser.add_argument`::" msgstr "" -#: library/argparse.rst:1077 +#: library/argparse.rst:1079 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo', required=True)\n" @@ -1552,24 +1555,24 @@ msgid "" ": error: the following arguments are required: --foo" msgstr "" -#: library/argparse.rst:1085 +#: library/argparse.rst:1087 msgid "" "As the example shows, if an option is marked as ``required``, :meth:" "`~ArgumentParser.parse_args` will report an error if that option is not " "present at the command line." msgstr "" -#: library/argparse.rst:1091 +#: library/argparse.rst:1093 msgid "" "Required options are generally considered bad form because users expect " "*options* to be *optional*, and thus they should be avoided when possible." msgstr "" -#: library/argparse.rst:1098 +#: library/argparse.rst:1100 msgid "help" msgstr "" -#: library/argparse.rst:1100 +#: library/argparse.rst:1102 msgid "" "The ``help`` value is a string containing a brief description of the " "argument. When a user requests help (usually by using ``-h`` or ``--help`` " @@ -1577,7 +1580,7 @@ msgid "" "each argument." msgstr "" -#: library/argparse.rst:1105 +#: library/argparse.rst:1107 msgid "" "The ``help`` strings can include various format specifiers to avoid " "repetition of things like the program name or the argument default_. The " @@ -1586,7 +1589,7 @@ msgid "" "``%(type)s``, etc.::" msgstr "" -#: library/argparse.rst:1110 +#: library/argparse.rst:1112 msgid "" ">>> parser = argparse.ArgumentParser(prog='frobble')\n" ">>> parser.add_argument('bar', nargs='?', type=int, default=42,\n" @@ -1601,19 +1604,19 @@ msgid "" " -h, --help show this help message and exit" msgstr "" -#: library/argparse.rst:1122 +#: library/argparse.rst:1124 msgid "" "As the help string supports %-formatting, if you want a literal ``%`` to " "appear in the help string, you must escape it as ``%%``." msgstr "" -#: library/argparse.rst:1125 +#: library/argparse.rst:1127 msgid "" ":mod:`!argparse` supports silencing the help entry for certain options, by " "setting the ``help`` value to ``argparse.SUPPRESS``::" msgstr "" -#: library/argparse.rst:1128 +#: library/argparse.rst:1130 msgid "" ">>> parser = argparse.ArgumentParser(prog='frobble')\n" ">>> parser.add_argument('--foo', help=argparse.SUPPRESS)\n" @@ -1624,11 +1627,11 @@ msgid "" " -h, --help show this help message and exit" msgstr "" -#: library/argparse.rst:1140 +#: library/argparse.rst:1142 msgid "metavar" msgstr "" -#: library/argparse.rst:1142 +#: library/argparse.rst:1144 msgid "" "When :class:`ArgumentParser` generates help messages, it needs some way to " "refer to each expected argument. By default, :class:`!ArgumentParser` " @@ -1640,7 +1643,7 @@ msgid "" "command-line argument will be referred to as ``FOO``. An example::" msgstr "" -#: library/argparse.rst:1151 +#: library/argparse.rst:1153 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo')\n" @@ -1658,11 +1661,11 @@ msgid "" " --foo FOO" msgstr "" -#: library/argparse.rst:1166 +#: library/argparse.rst:1168 msgid "An alternative name can be specified with ``metavar``::" msgstr "" -#: library/argparse.rst:1168 +#: library/argparse.rst:1170 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo', metavar='YYY')\n" @@ -1680,21 +1683,21 @@ msgid "" " --foo YYY" msgstr "" -#: library/argparse.rst:1183 +#: library/argparse.rst:1185 msgid "" "Note that ``metavar`` only changes the *displayed* name - the name of the " "attribute on the :meth:`~ArgumentParser.parse_args` object is still " "determined by the dest_ value." msgstr "" -#: library/argparse.rst:1187 +#: library/argparse.rst:1189 msgid "" "Different values of ``nargs`` may cause the metavar to be used multiple " "times. Providing a tuple to ``metavar`` specifies a different display for " "each of the arguments::" msgstr "" -#: library/argparse.rst:1191 +#: library/argparse.rst:1193 msgid "" ">>> parser = argparse.ArgumentParser(prog='PROG')\n" ">>> parser.add_argument('-x', nargs=2)\n" @@ -1708,11 +1711,11 @@ msgid "" " --foo bar baz" msgstr "" -#: library/argparse.rst:1206 +#: library/argparse.rst:1208 msgid "dest" msgstr "" -#: library/argparse.rst:1208 +#: library/argparse.rst:1210 msgid "" "Most :class:`ArgumentParser` actions add some value as an attribute of the " "object returned by :meth:`~ArgumentParser.parse_args`. The name of this " @@ -1722,7 +1725,7 @@ msgid "" "add_argument`::" msgstr "" -#: library/argparse.rst:1215 +#: library/argparse.rst:1217 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('bar')\n" @@ -1730,7 +1733,7 @@ msgid "" "Namespace(bar='XXX')" msgstr "" -#: library/argparse.rst:1220 +#: library/argparse.rst:1222 msgid "" "For optional argument actions, the value of ``dest`` is normally inferred " "from the option strings. :class:`ArgumentParser` generates the value of " @@ -1742,7 +1745,7 @@ msgid "" "below illustrate this behavior::" msgstr "" -#: library/argparse.rst:1229 +#: library/argparse.rst:1231 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('-f', '--foo-bar', '--foo')\n" @@ -1753,11 +1756,11 @@ msgid "" "Namespace(foo_bar='1', x='2')" msgstr "" -#: library/argparse.rst:1237 +#: library/argparse.rst:1239 msgid "``dest`` allows a custom attribute name to be provided::" msgstr "" -#: library/argparse.rst:1239 +#: library/argparse.rst:1241 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo', dest='bar')\n" @@ -1765,11 +1768,11 @@ msgid "" "Namespace(bar='XXX')" msgstr "" -#: library/argparse.rst:1245 +#: library/argparse.rst:1247 msgid "Action classes" msgstr "" -#: library/argparse.rst:1247 +#: library/argparse.rst:1249 msgid "" ":class:`!Action` classes implement the Action API, a callable which returns " "a callable which processes arguments from the command-line. Any object which " @@ -1777,7 +1780,7 @@ msgid "" "`~ArgumentParser.add_argument`." msgstr "" -#: library/argparse.rst:1256 +#: library/argparse.rst:1258 msgid "" ":class:`!Action` objects are used by an :class:`ArgumentParser` to represent " "the information needed to parse a single argument from one or more strings " @@ -1786,7 +1789,7 @@ msgid "" "`ArgumentParser.add_argument` except for the ``action`` itself." msgstr "" -#: library/argparse.rst:1262 +#: library/argparse.rst:1264 msgid "" "Instances of :class:`!Action` (or return value of any callable to the " "``action`` parameter) should have attributes :attr:`!dest`, :attr:`!" @@ -1795,46 +1798,46 @@ msgid "" "is to call :meth:`!Action.__init__`." msgstr "" -#: library/argparse.rst:1270 +#: library/argparse.rst:1272 msgid "" ":class:`!Action` instances should be callable, so subclasses must override " "the :meth:`!__call__` method, which should accept four parameters:" msgstr "" -#: library/argparse.rst:1273 +#: library/argparse.rst:1275 msgid "" "*parser* - The :class:`ArgumentParser` object which contains this action." msgstr "" -#: library/argparse.rst:1275 +#: library/argparse.rst:1277 msgid "" "*namespace* - The :class:`Namespace` object that will be returned by :meth:" "`~ArgumentParser.parse_args`. Most actions add an attribute to this object " "using :func:`setattr`." msgstr "" -#: library/argparse.rst:1279 +#: library/argparse.rst:1281 msgid "" "*values* - The associated command-line arguments, with any type conversions " "applied. Type conversions are specified with the type_ keyword argument to :" "meth:`~ArgumentParser.add_argument`." msgstr "" -#: library/argparse.rst:1283 +#: library/argparse.rst:1285 msgid "" "*option_string* - The option string that was used to invoke this action. The " "``option_string`` argument is optional, and will be absent if the action is " "associated with a positional argument." msgstr "" -#: library/argparse.rst:1287 +#: library/argparse.rst:1289 msgid "" "The :meth:`!__call__` method may perform arbitrary actions, but will " "typically set attributes on the ``namespace`` based on ``dest`` and " "``values``." msgstr "" -#: library/argparse.rst:1292 +#: library/argparse.rst:1294 msgid "" ":class:`!Action` subclasses can define a :meth:`!format_usage` method that " "takes no argument and return a string which will be used when printing the " @@ -1842,47 +1845,47 @@ msgid "" "will be used." msgstr "" -#: library/argparse.rst:1298 +#: library/argparse.rst:1300 msgid "The parse_args() method" msgstr "" -#: library/argparse.rst:1302 +#: library/argparse.rst:1304 msgid "" "Convert argument strings to objects and assign them as attributes of the " "namespace. Return the populated namespace." msgstr "" -#: library/argparse.rst:1305 +#: library/argparse.rst:1307 msgid "" "Previous calls to :meth:`add_argument` determine exactly what objects are " "created and how they are assigned. See the documentation for :meth:`!" "add_argument` for details." msgstr "" -#: library/argparse.rst:1309 +#: library/argparse.rst:1311 msgid "" "args_ - List of strings to parse. The default is taken from :data:`sys." "argv`." msgstr "" -#: library/argparse.rst:1312 +#: library/argparse.rst:1314 msgid "" "namespace_ - An object to take the attributes. The default is a new empty :" "class:`Namespace` object." msgstr "" -#: library/argparse.rst:1317 +#: library/argparse.rst:1319 msgid "Option value syntax" msgstr "" -#: library/argparse.rst:1319 +#: library/argparse.rst:1321 msgid "" "The :meth:`~ArgumentParser.parse_args` method supports several ways of " "specifying the value of an option (if it takes one). In the simplest case, " "the option and its value are passed as two separate arguments::" msgstr "" -#: library/argparse.rst:1323 +#: library/argparse.rst:1325 msgid "" ">>> parser = argparse.ArgumentParser(prog='PROG')\n" ">>> parser.add_argument('-x')\n" @@ -1893,38 +1896,38 @@ msgid "" "Namespace(foo='FOO', x=None)" msgstr "" -#: library/argparse.rst:1331 +#: library/argparse.rst:1333 msgid "" "For long options (options with names longer than a single character), the " "option and value can also be passed as a single command-line argument, using " "``=`` to separate them::" msgstr "" -#: library/argparse.rst:1335 +#: library/argparse.rst:1337 msgid "" ">>> parser.parse_args(['--foo=FOO'])\n" "Namespace(foo='FOO', x=None)" msgstr "" -#: library/argparse.rst:1338 +#: library/argparse.rst:1340 msgid "" "For short options (options only one character long), the option and its " "value can be concatenated::" msgstr "" -#: library/argparse.rst:1341 +#: library/argparse.rst:1343 msgid "" ">>> parser.parse_args(['-xX'])\n" "Namespace(foo=None, x='X')" msgstr "" -#: library/argparse.rst:1344 +#: library/argparse.rst:1346 msgid "" "Several short options can be joined together, using only a single ``-`` " "prefix, as long as only the last option (or none of them) requires a value::" msgstr "" -#: library/argparse.rst:1347 +#: library/argparse.rst:1349 msgid "" ">>> parser = argparse.ArgumentParser(prog='PROG')\n" ">>> parser.add_argument('-x', action='store_true')\n" @@ -1934,11 +1937,11 @@ msgid "" "Namespace(x=True, y=True, z='Z')" msgstr "" -#: library/argparse.rst:1356 +#: library/argparse.rst:1358 msgid "Invalid arguments" msgstr "" -#: library/argparse.rst:1358 +#: library/argparse.rst:1360 msgid "" "While parsing the command line, :meth:`~ArgumentParser.parse_args` checks " "for a variety of errors, including ambiguous options, invalid types, invalid " @@ -1946,7 +1949,7 @@ msgid "" "an error, it exits and prints the error along with a usage message::" msgstr "" -#: library/argparse.rst:1363 +#: library/argparse.rst:1365 msgid "" ">>> parser = argparse.ArgumentParser(prog='PROG')\n" ">>> parser.add_argument('--foo', type=int)\n" @@ -1968,11 +1971,11 @@ msgid "" "PROG: error: extra arguments found: badger" msgstr "" -#: library/argparse.rst:1384 +#: library/argparse.rst:1386 msgid "Arguments containing ``-``" msgstr "" -#: library/argparse.rst:1386 +#: library/argparse.rst:1388 msgid "" "The :meth:`~ArgumentParser.parse_args` method attempts to give errors " "whenever the user has clearly made a mistake, but some situations are " @@ -1984,7 +1987,7 @@ msgid "" "negative numbers::" msgstr "" -#: library/argparse.rst:1394 +#: library/argparse.rst:1396 msgid "" ">>> parser = argparse.ArgumentParser(prog='PROG')\n" ">>> parser.add_argument('-x')\n" @@ -2017,7 +2020,7 @@ msgid "" "PROG: error: argument -1: expected one argument" msgstr "" -#: library/argparse.rst:1424 +#: library/argparse.rst:1426 msgid "" "If you have positional arguments that must begin with ``-`` and don't look " "like negative numbers, you can insert the pseudo-argument ``'--'`` which " @@ -2025,30 +2028,30 @@ msgid "" "positional argument::" msgstr "" -#: library/argparse.rst:1429 +#: library/argparse.rst:1431 msgid "" ">>> parser.parse_args(['--', '-f'])\n" "Namespace(foo='-f', one=None)" msgstr "" -#: library/argparse.rst:1432 +#: library/argparse.rst:1434 msgid "" "See also :ref:`the argparse howto on ambiguous arguments ` for more details." msgstr "" -#: library/argparse.rst:1438 +#: library/argparse.rst:1440 msgid "Argument abbreviations (prefix matching)" msgstr "" -#: library/argparse.rst:1440 +#: library/argparse.rst:1442 msgid "" "The :meth:`~ArgumentParser.parse_args` method :ref:`by default " "` allows long options to be abbreviated to a prefix, if the " "abbreviation is unambiguous (the prefix matches a unique option)::" msgstr "" -#: library/argparse.rst:1444 +#: library/argparse.rst:1446 msgid "" ">>> parser = argparse.ArgumentParser(prog='PROG')\n" ">>> parser.add_argument('-bacon')\n" @@ -2062,17 +2065,17 @@ msgid "" "PROG: error: ambiguous option: -ba could match -badger, -bacon" msgstr "" -#: library/argparse.rst:1455 +#: library/argparse.rst:1457 msgid "" "An error is produced for arguments that could produce more than one options. " "This feature can be disabled by setting :ref:`allow_abbrev` to ``False``." msgstr "" -#: library/argparse.rst:1461 +#: library/argparse.rst:1463 msgid "Beyond ``sys.argv``" msgstr "" -#: library/argparse.rst:1463 +#: library/argparse.rst:1465 msgid "" "Sometimes it may be useful to have an :class:`ArgumentParser` parse " "arguments other than those of :data:`sys.argv`. This can be accomplished by " @@ -2080,7 +2083,7 @@ msgid "" "useful for testing at the interactive prompt::" msgstr "" -#: library/argparse.rst:1468 +#: library/argparse.rst:1470 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument(\n" @@ -2095,24 +2098,24 @@ msgid "" "Namespace(accumulate=, integers=[1, 2, 3, 4])" msgstr "" -#: library/argparse.rst:1483 +#: library/argparse.rst:1485 msgid "The Namespace object" msgstr "" -#: library/argparse.rst:1487 +#: library/argparse.rst:1489 msgid "" "Simple class used by default by :meth:`~ArgumentParser.parse_args` to create " "an object holding attributes and return it." msgstr "" -#: library/argparse.rst:1490 +#: library/argparse.rst:1492 msgid "" "This class is deliberately simple, just an :class:`object` subclass with a " "readable string representation. If you prefer to have dict-like view of the " "attributes, you can use the standard Python idiom, :func:`vars`::" msgstr "" -#: library/argparse.rst:1494 +#: library/argparse.rst:1496 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo')\n" @@ -2121,14 +2124,14 @@ msgid "" "{'foo': 'BAR'}" msgstr "" -#: library/argparse.rst:1500 +#: library/argparse.rst:1502 msgid "" "It may also be useful to have an :class:`ArgumentParser` assign attributes " "to an already existing object, rather than a new :class:`Namespace` object. " "This can be achieved by specifying the ``namespace=`` keyword argument::" msgstr "" -#: library/argparse.rst:1504 +#: library/argparse.rst:1506 msgid "" ">>> class C:\n" "... pass\n" @@ -2141,15 +2144,15 @@ msgid "" "'BAR'" msgstr "" -#: library/argparse.rst:1516 +#: library/argparse.rst:1518 msgid "Other utilities" msgstr "" -#: library/argparse.rst:1519 +#: library/argparse.rst:1521 msgid "Sub-commands" msgstr "" -#: library/argparse.rst:1526 +#: library/argparse.rst:1528 msgid "" "Many programs split up their functionality into a number of subcommands, for " "example, the ``svn`` program can invoke subcommands like ``svn checkout``, " @@ -2164,69 +2167,69 @@ msgid "" "returns an :class:`!ArgumentParser` object that can be modified as usual." msgstr "" -#: library/argparse.rst:1538 +#: library/argparse.rst:1540 msgid "Description of parameters:" msgstr "" -#: library/argparse.rst:1540 +#: library/argparse.rst:1542 msgid "" "*title* - title for the sub-parser group in help output; by default " "\"subcommands\" if description is provided, otherwise uses title for " "positional arguments" msgstr "" -#: library/argparse.rst:1544 +#: library/argparse.rst:1546 msgid "" "*description* - description for the sub-parser group in help output, by " "default ``None``" msgstr "" -#: library/argparse.rst:1547 +#: library/argparse.rst:1549 msgid "" "*prog* - usage information that will be displayed with sub-command help, by " "default the name of the program and any positional arguments before the " "subparser argument" msgstr "" -#: library/argparse.rst:1551 +#: library/argparse.rst:1553 msgid "" "*parser_class* - class which will be used to create sub-parser instances, by " "default the class of the current parser (e.g. :class:`ArgumentParser`)" msgstr "" -#: library/argparse.rst:1554 +#: library/argparse.rst:1556 msgid "" "action_ - the basic type of action to be taken when this argument is " "encountered at the command line" msgstr "" -#: library/argparse.rst:1557 +#: library/argparse.rst:1559 msgid "" "dest_ - name of the attribute under which sub-command name will be stored; " "by default ``None`` and no value is stored" msgstr "" -#: library/argparse.rst:1560 +#: library/argparse.rst:1562 msgid "" "required_ - Whether or not a subcommand must be provided, by default " "``False`` (added in 3.7)" msgstr "" -#: library/argparse.rst:1563 +#: library/argparse.rst:1565 msgid "help_ - help for sub-parser group in help output, by default ``None``" msgstr "" -#: library/argparse.rst:1565 +#: library/argparse.rst:1567 msgid "" "metavar_ - string presenting available subcommands in help; by default it is " "``None`` and presents subcommands in form {cmd1, cmd2, ..}" msgstr "" -#: library/argparse.rst:1568 +#: library/argparse.rst:1570 msgid "Some example usage::" msgstr "" -#: library/argparse.rst:1570 +#: library/argparse.rst:1572 msgid "" ">>> # create the top-level parser\n" ">>> parser = argparse.ArgumentParser(prog='PROG')\n" @@ -2249,7 +2252,7 @@ msgid "" "Namespace(baz='Z', foo=True)" msgstr "" -#: library/argparse.rst:1589 +#: library/argparse.rst:1591 msgid "" "Note that the object returned by :meth:`parse_args` will only contain " "attributes for the main parser and the subparser that was selected by the " @@ -2259,7 +2262,7 @@ msgid "" "``baz`` attributes are present." msgstr "" -#: library/argparse.rst:1596 +#: library/argparse.rst:1598 msgid "" "Similarly, when a help message is requested from a subparser, only the help " "for that particular parser will be printed. The help message will not " @@ -2268,7 +2271,7 @@ msgid "" "to :meth:`~_SubParsersAction.add_parser` as above.)" msgstr "" -#: library/argparse.rst:1604 +#: library/argparse.rst:1606 msgid "" ">>> parser.parse_args(['--help'])\n" "usage: PROG [-h] [--foo] {a,b} ...\n" @@ -2299,14 +2302,14 @@ msgid "" " --baz {X,Y,Z} baz help" msgstr "" -#: library/argparse.rst:1632 +#: library/argparse.rst:1634 msgid "" "The :meth:`add_subparsers` method also supports ``title`` and " "``description`` keyword arguments. When either is present, the subparser's " "commands will appear in their own group in the help output. For example::" msgstr "" -#: library/argparse.rst:1636 +#: library/argparse.rst:1638 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> subparsers = parser.add_subparsers(title='subcommands',\n" @@ -2326,14 +2329,14 @@ msgid "" " {foo,bar} additional help" msgstr "" -#: library/argparse.rst:1653 +#: library/argparse.rst:1655 msgid "" "Furthermore, ``add_parser`` supports an additional ``aliases`` argument, " "which allows multiple strings to refer to the same subparser. This example, " "like ``svn``, aliases ``co`` as a shorthand for ``checkout``::" msgstr "" -#: library/argparse.rst:1657 +#: library/argparse.rst:1659 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> subparsers = parser.add_subparsers()\n" @@ -2343,7 +2346,7 @@ msgid "" "Namespace(foo='bar')" msgstr "" -#: library/argparse.rst:1664 +#: library/argparse.rst:1666 msgid "" "One particularly effective way of handling sub-commands is to combine the " "use of the :meth:`add_subparsers` method with calls to :meth:`set_defaults` " @@ -2351,7 +2354,7 @@ msgid "" "example::" msgstr "" -#: library/argparse.rst:1669 +#: library/argparse.rst:1671 msgid "" ">>> # subcommand functions\n" ">>> def foo(args):\n" @@ -2386,7 +2389,7 @@ msgid "" "((XYZYX))" msgstr "" -#: library/argparse.rst:1701 +#: library/argparse.rst:1703 msgid "" "This way, you can let :meth:`parse_args` do the job of calling the " "appropriate function after argument parsing is complete. Associating " @@ -2396,7 +2399,7 @@ msgid "" "argument to the :meth:`add_subparsers` call will work::" msgstr "" -#: library/argparse.rst:1708 +#: library/argparse.rst:1710 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> subparsers = parser.add_subparsers(dest='subparser_name')\n" @@ -2408,15 +2411,15 @@ msgid "" "Namespace(subparser_name='2', y='frobble')" msgstr "" -#: library/argparse.rst:1717 +#: library/argparse.rst:1719 msgid "New *required* keyword-only parameter." msgstr "" -#: library/argparse.rst:1722 +#: library/argparse.rst:1724 msgid "FileType objects" msgstr "" -#: library/argparse.rst:1726 +#: library/argparse.rst:1728 msgid "" "The :class:`FileType` factory creates objects that can be passed to the type " "argument of :meth:`ArgumentParser.add_argument`. Arguments that have :class:" @@ -2425,7 +2428,7 @@ msgid "" "the :func:`open` function for more details)::" msgstr "" -#: library/argparse.rst:1732 +#: library/argparse.rst:1734 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--raw', type=argparse.FileType('wb', 0))\n" @@ -2436,14 +2439,14 @@ msgid "" "raw=<_io.FileIO name='raw.dat' mode='wb'>)" msgstr "" -#: library/argparse.rst:1738 +#: library/argparse.rst:1740 msgid "" "FileType objects understand the pseudo-argument ``'-'`` and automatically " "convert this into :data:`sys.stdin` for readable :class:`FileType` objects " "and :data:`sys.stdout` for writable :class:`FileType` objects::" msgstr "" -#: library/argparse.rst:1742 +#: library/argparse.rst:1744 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('infile', type=argparse.FileType('r'))\n" @@ -2451,15 +2454,15 @@ msgid "" "Namespace(infile=<_io.TextIOWrapper name='' encoding='UTF-8'>)" msgstr "" -#: library/argparse.rst:1747 +#: library/argparse.rst:1749 msgid "Added the *encodings* and *errors* parameters." msgstr "" -#: library/argparse.rst:1752 +#: library/argparse.rst:1754 msgid "Argument groups" msgstr "" -#: library/argparse.rst:1757 +#: library/argparse.rst:1759 msgid "" "By default, :class:`ArgumentParser` groups command-line arguments into " "\"positional arguments\" and \"options\" when displaying help messages. When " @@ -2468,7 +2471,7 @@ msgid "" "method::" msgstr "" -#: library/argparse.rst:1763 +#: library/argparse.rst:1765 msgid "" ">>> parser = argparse.ArgumentParser(prog='PROG', add_help=False)\n" ">>> group = parser.add_argument_group('group')\n" @@ -2482,7 +2485,7 @@ msgid "" " --foo FOO foo help" msgstr "" -#: library/argparse.rst:1774 +#: library/argparse.rst:1776 msgid "" "The :meth:`add_argument_group` method returns an argument group object which " "has an :meth:`~ArgumentParser.add_argument` method just like a regular :" @@ -2493,7 +2496,7 @@ msgid "" "this display::" msgstr "" -#: library/argparse.rst:1782 +#: library/argparse.rst:1784 msgid "" ">>> parser = argparse.ArgumentParser(prog='PROG', add_help=False)\n" ">>> group1 = parser.add_argument_group('group1', 'group1 description')\n" @@ -2514,7 +2517,7 @@ msgid "" " --bar BAR bar help" msgstr "" -#: library/argparse.rst:1800 +#: library/argparse.rst:1802 msgid "" "The optional, keyword-only parameters argument_default_ and " "conflict_handler_ allow for finer-grained control of the behavior of the " @@ -2523,13 +2526,13 @@ msgid "" "rather than the entire parser." msgstr "" -#: library/argparse.rst:1805 +#: library/argparse.rst:1807 msgid "" "Note that any arguments not in your user-defined groups will end up back in " "the usual \"positional arguments\" and \"optional arguments\" sections." msgstr "" -#: library/argparse.rst:1808 +#: library/argparse.rst:1810 msgid "" "Calling :meth:`add_argument_group` on an argument group is deprecated. This " "feature was never supported and does not always work correctly. The function " @@ -2537,18 +2540,18 @@ msgid "" "future." msgstr "" -#: library/argparse.rst:1816 +#: library/argparse.rst:1818 msgid "Mutual exclusion" msgstr "" -#: library/argparse.rst:1820 +#: library/argparse.rst:1822 msgid "" "Create a mutually exclusive group. :mod:`!argparse` will make sure that only " "one of the arguments in the mutually exclusive group was present on the " "command line::" msgstr "" -#: library/argparse.rst:1824 +#: library/argparse.rst:1826 msgid "" ">>> parser = argparse.ArgumentParser(prog='PROG')\n" ">>> group = parser.add_mutually_exclusive_group()\n" @@ -2563,14 +2566,14 @@ msgid "" "PROG: error: argument --bar: not allowed with argument --foo" msgstr "" -#: library/argparse.rst:1836 +#: library/argparse.rst:1838 msgid "" "The :meth:`add_mutually_exclusive_group` method also accepts a *required* " "argument, to indicate that at least one of the mutually exclusive arguments " "is required::" msgstr "" -#: library/argparse.rst:1840 +#: library/argparse.rst:1842 msgid "" ">>> parser = argparse.ArgumentParser(prog='PROG')\n" ">>> group = parser.add_mutually_exclusive_group(required=True)\n" @@ -2581,7 +2584,7 @@ msgid "" "PROG: error: one of the arguments --foo --bar is required" msgstr "" -#: library/argparse.rst:1848 +#: library/argparse.rst:1850 msgid "" "Note that currently mutually exclusive argument groups do not support the " "*title* and *description* arguments of :meth:`~ArgumentParser." @@ -2589,7 +2592,7 @@ msgid "" "argument group that has a title and description. For example::" msgstr "" -#: library/argparse.rst:1854 +#: library/argparse.rst:1856 msgid "" ">>> parser = argparse.ArgumentParser(prog='PROG')\n" ">>> group = parser.add_argument_group('Group title', 'Group description')\n" @@ -2609,7 +2612,7 @@ msgid "" " --bar BAR bar help" msgstr "" -#: library/argparse.rst:1871 +#: library/argparse.rst:1873 msgid "" "Calling :meth:`add_argument_group` or :meth:`add_mutually_exclusive_group` " "on a mutually exclusive group is deprecated. These features were never " @@ -2617,11 +2620,11 @@ msgid "" "by accident through inheritance and will be removed in the future." msgstr "" -#: library/argparse.rst:1879 +#: library/argparse.rst:1881 msgid "Parser defaults" msgstr "" -#: library/argparse.rst:1883 +#: library/argparse.rst:1885 msgid "" "Most of the time, the attributes of the object returned by :meth:" "`parse_args` will be fully determined by inspecting the command-line " @@ -2630,7 +2633,7 @@ msgid "" "command line to be added::" msgstr "" -#: library/argparse.rst:1889 +#: library/argparse.rst:1891 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('foo', type=int)\n" @@ -2639,12 +2642,12 @@ msgid "" "Namespace(bar=42, baz='badger', foo=736)" msgstr "" -#: library/argparse.rst:1895 +#: library/argparse.rst:1897 msgid "" "Note that parser-level defaults always override argument-level defaults::" msgstr "" -#: library/argparse.rst:1897 +#: library/argparse.rst:1899 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo', default='bar')\n" @@ -2653,20 +2656,20 @@ msgid "" "Namespace(foo='spam')" msgstr "" -#: library/argparse.rst:1903 +#: library/argparse.rst:1905 msgid "" "Parser-level defaults can be particularly useful when working with multiple " "parsers. See the :meth:`~ArgumentParser.add_subparsers` method for an " "example of this type." msgstr "" -#: library/argparse.rst:1909 +#: library/argparse.rst:1911 msgid "" "Get the default value for a namespace attribute, as set by either :meth:" "`~ArgumentParser.add_argument` or by :meth:`~ArgumentParser.set_defaults`::" msgstr "" -#: library/argparse.rst:1913 +#: library/argparse.rst:1915 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo', default='badger')\n" @@ -2674,54 +2677,54 @@ msgid "" "'badger'" msgstr "" -#: library/argparse.rst:1920 +#: library/argparse.rst:1922 msgid "Printing help" msgstr "" -#: library/argparse.rst:1922 +#: library/argparse.rst:1924 msgid "" "In most typical applications, :meth:`~ArgumentParser.parse_args` will take " "care of formatting and printing any usage or error messages. However, " "several formatting methods are available:" msgstr "" -#: library/argparse.rst:1928 +#: library/argparse.rst:1930 msgid "" "Print a brief description of how the :class:`ArgumentParser` should be " "invoked on the command line. If *file* is ``None``, :data:`sys.stdout` is " "assumed." msgstr "" -#: library/argparse.rst:1934 +#: library/argparse.rst:1936 msgid "" "Print a help message, including the program usage and information about the " "arguments registered with the :class:`ArgumentParser`. If *file* is " "``None``, :data:`sys.stdout` is assumed." msgstr "" -#: library/argparse.rst:1938 +#: library/argparse.rst:1940 msgid "" "There are also variants of these methods that simply return a string instead " "of printing it:" msgstr "" -#: library/argparse.rst:1943 +#: library/argparse.rst:1945 msgid "" "Return a string containing a brief description of how the :class:" "`ArgumentParser` should be invoked on the command line." msgstr "" -#: library/argparse.rst:1948 +#: library/argparse.rst:1950 msgid "" "Return a string containing a help message, including the program usage and " "information about the arguments registered with the :class:`ArgumentParser`." msgstr "" -#: library/argparse.rst:1953 +#: library/argparse.rst:1955 msgid "Partial parsing" msgstr "" -#: library/argparse.rst:1957 +#: library/argparse.rst:1959 msgid "" "Sometimes a script may only parse a few of the command-line arguments, " "passing the remaining arguments on to another script or program. In these " @@ -2732,7 +2735,7 @@ msgid "" "remaining argument strings." msgstr "" -#: library/argparse.rst:1966 +#: library/argparse.rst:1968 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo', action='store_true')\n" @@ -2741,7 +2744,7 @@ msgid "" "(Namespace(bar='BAR', foo=True), ['--badger', 'spam'])" msgstr "" -#: library/argparse.rst:1973 +#: library/argparse.rst:1975 msgid "" ":ref:`Prefix matching ` rules apply to :meth:" "`~ArgumentParser.parse_known_args`. The parser may consume an option even if " @@ -2749,11 +2752,11 @@ msgid "" "remaining arguments list." msgstr "" -#: library/argparse.rst:1980 +#: library/argparse.rst:1982 msgid "Customizing file parsing" msgstr "" -#: library/argparse.rst:1984 +#: library/argparse.rst:1986 msgid "" "Arguments that are read from a file (see the *fromfile_prefix_chars* keyword " "argument to the :class:`ArgumentParser` constructor) are read one argument " @@ -2761,38 +2764,38 @@ msgid "" "reading." msgstr "" -#: library/argparse.rst:1989 +#: library/argparse.rst:1991 msgid "" "This method takes a single argument *arg_line* which is a string read from " "the argument file. It returns a list of arguments parsed from this string. " "The method is called once per line read from the argument file, in order." msgstr "" -#: library/argparse.rst:1993 +#: library/argparse.rst:1995 msgid "" "A useful override of this method is one that treats each space-separated " "word as an argument. The following example demonstrates how to do this::" msgstr "" -#: library/argparse.rst:1996 +#: library/argparse.rst:1998 msgid "" "class MyArgumentParser(argparse.ArgumentParser):\n" " def convert_arg_line_to_args(self, arg_line):\n" " return arg_line.split()" msgstr "" -#: library/argparse.rst:2002 +#: library/argparse.rst:2004 msgid "Exiting methods" msgstr "" -#: library/argparse.rst:2006 +#: library/argparse.rst:2008 msgid "" "This method terminates the program, exiting with the specified *status* and, " "if given, it prints a *message* to :data:`sys.stderr` before that. The user " "can override this method to handle these steps differently::" msgstr "" -#: library/argparse.rst:2010 +#: library/argparse.rst:2012 msgid "" "class ErrorCatchingArgumentParser(argparse.ArgumentParser):\n" " def exit(self, status=0, message=None):\n" @@ -2801,17 +2804,17 @@ msgid "" " exit(status)" msgstr "" -#: library/argparse.rst:2018 +#: library/argparse.rst:2020 msgid "" "This method prints a usage message, including the *message*, to :data:`sys." "stderr` and terminates the program with a status code of 2." msgstr "" -#: library/argparse.rst:2023 +#: library/argparse.rst:2025 msgid "Intermixed parsing" msgstr "" -#: library/argparse.rst:2028 +#: library/argparse.rst:2030 msgid "" "A number of Unix commands allow the user to intermix optional arguments with " "positional arguments. The :meth:`~ArgumentParser.parse_intermixed_args` " @@ -2819,7 +2822,7 @@ msgid "" "parsing style." msgstr "" -#: library/argparse.rst:2033 +#: library/argparse.rst:2035 msgid "" "These parsers do not support all the :mod:`!argparse` features, and will " "raise exceptions if unsupported features are used. In particular, " @@ -2827,7 +2830,7 @@ msgid "" "positionals are not supported." msgstr "" -#: library/argparse.rst:2038 +#: library/argparse.rst:2040 msgid "" "The following example shows the difference between :meth:`~ArgumentParser." "parse_known_args` and :meth:`~ArgumentParser.parse_intermixed_args`: the " @@ -2835,7 +2838,7 @@ msgid "" "collects all the positionals into ``rest``. ::" msgstr "" -#: library/argparse.rst:2044 +#: library/argparse.rst:2046 msgid "" ">>> parser = argparse.ArgumentParser()\n" ">>> parser.add_argument('--foo')\n" @@ -2847,7 +2850,7 @@ msgid "" "Namespace(cmd='doit', foo='bar', rest=[1, 2, 3])" msgstr "" -#: library/argparse.rst:2053 +#: library/argparse.rst:2055 msgid "" ":meth:`~ArgumentParser.parse_known_intermixed_args` returns a two item tuple " "containing the populated namespace and the list of remaining argument " @@ -2855,41 +2858,82 @@ msgid "" "there are any remaining unparsed argument strings." msgstr "" -#: library/argparse.rst:2062 +#: library/argparse.rst:2064 +msgid "Registering custom types or actions" +msgstr "" + +#: library/argparse.rst:2068 +msgid "" +"Sometimes it's desirable to use a custom string in error messages to provide " +"more user-friendly output. In these cases, :meth:`!register` can be used to " +"register custom actions or types with a parser and allow you to reference " +"the type by their registered name instead of their callable name." +msgstr "" + +#: library/argparse.rst:2073 +msgid "" +"The :meth:`!register` method accepts three arguments - a *registry_name*, " +"specifying the internal registry where the object will be stored (e.g., " +"``action``, ``type``), *value*, which is the key under which the object will " +"be registered, and object, the callable to be registered." +msgstr "" + +#: library/argparse.rst:2078 +msgid "" +"The following example shows how to register a custom type with a parser::" +msgstr "" + +#: library/argparse.rst:2080 +msgid "" +">>> import argparse\n" +">>> parser = argparse.ArgumentParser()\n" +">>> parser.register('type', 'hexadecimal integer', lambda s: int(s, 16))\n" +">>> parser.add_argument('--foo', type='hexadecimal integer')\n" +"_StoreAction(option_strings=['--foo'], dest='foo', nargs=None, const=None, " +"default=None, type='hexadecimal integer', choices=None, required=False, " +"help=None, metavar=None, deprecated=False)\n" +">>> parser.parse_args(['--foo', '0xFA'])\n" +"Namespace(foo=250)\n" +">>> parser.parse_args(['--foo', '1.2'])\n" +"usage: PROG [-h] [--foo FOO]\n" +"PROG: error: argument --foo: invalid 'hexadecimal integer' value: '1.2'" +msgstr "" + +#: library/argparse.rst:2092 msgid "Exceptions" msgstr "" -#: library/argparse.rst:2066 +#: library/argparse.rst:2096 msgid "An error from creating or using an argument (optional or positional)." msgstr "" -#: library/argparse.rst:2068 +#: library/argparse.rst:2098 msgid "" "The string value of this exception is the message, augmented with " "information about the argument that caused it." msgstr "" -#: library/argparse.rst:2073 +#: library/argparse.rst:2103 msgid "" "Raised when something goes wrong converting a command line string to a type." msgstr "" -#: library/argparse.rst:2077 +#: library/argparse.rst:2107 msgid "Guides and Tutorials" msgstr "" -#: library/argparse.rst:800 +#: library/argparse.rst:801 msgid "? (question mark)" msgstr "" -#: library/argparse.rst:834 library/argparse.rst:848 +#: library/argparse.rst:835 library/argparse.rst:849 msgid "in argparse module" msgstr "" -#: library/argparse.rst:834 +#: library/argparse.rst:835 msgid "* (asterisk)" msgstr "" -#: library/argparse.rst:848 +#: library/argparse.rst:849 msgid "+ (plus)" msgstr "" diff --git a/library/asynchat.po b/library/asynchat.po new file mode 100644 index 000000000..452514d55 --- /dev/null +++ b/library/asynchat.po @@ -0,0 +1,38 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2001-2025, Python Software Foundation +# This file is distributed under the same license as the Python package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Python 3.12\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: library/asynchat.rst:2 +msgid ":mod:`!asynchat` --- Asynchronous socket command/response handler" +msgstr "" + +#: library/asynchat.rst:10 +msgid "" +"This module is no longer part of the Python standard library. It was :ref:" +"`removed in Python 3.12 ` after being deprecated in " +"Python 3.6. The removal was decided in :pep:`594`." +msgstr "" + +#: library/asynchat.rst:14 +msgid "Applications should use the :mod:`asyncio` module instead." +msgstr "" + +#: library/asynchat.rst:16 +msgid "" +"The last version of Python that provided the :mod:`!asynchat` module was " +"`Python 3.11 `_." +msgstr "" diff --git a/library/asyncio-eventloop.po b/library/asyncio-eventloop.po index 6bf4faa75..c6f62765e 100644 --- a/library/asyncio-eventloop.po +++ b/library/asyncio-eventloop.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -238,7 +238,7 @@ msgid "" "called after the event loop is closed." msgstr "" -#: library/asyncio-eventloop.rst:167 +#: library/asyncio-eventloop.rst:168 msgid "" "Schedule all currently open :term:`asynchronous generator` objects to close " "with an :meth:`~agen.aclose` call. After calling this method, the event " @@ -246,18 +246,18 @@ msgid "" "should be used to reliably finalize all scheduled asynchronous generators." msgstr "" -#: library/asyncio-eventloop.rst:173 +#: library/asyncio-eventloop.rst:174 msgid "" "Note that there is no need to call this function when :func:`asyncio.run` is " "used." msgstr "" -#: library/asyncio-eventloop.rst:176 library/asyncio-eventloop.rst:1253 -#: library/asyncio-eventloop.rst:1671 +#: library/asyncio-eventloop.rst:177 library/asyncio-eventloop.rst:1285 +#: library/asyncio-eventloop.rst:1707 msgid "Example::" msgstr "" -#: library/asyncio-eventloop.rst:178 +#: library/asyncio-eventloop.rst:179 msgid "" "try:\n" " loop.run_forever()\n" @@ -266,7 +266,7 @@ msgid "" " loop.close()" msgstr "" -#: library/asyncio-eventloop.rst:188 +#: library/asyncio-eventloop.rst:190 msgid "" "Schedule the closure of the default executor and wait for it to join all of " "the threads in the :class:`~concurrent.futures.ThreadPoolExecutor`. Once " @@ -274,243 +274,250 @@ msgid "" "run_in_executor` will raise a :exc:`RuntimeError`." msgstr "" -#: library/asyncio-eventloop.rst:194 +#: library/asyncio-eventloop.rst:196 msgid "" "The *timeout* parameter specifies the amount of time (in :class:`float` " "seconds) the executor will be given to finish joining. With the default, " "``None``, the executor is allowed an unlimited amount of time." msgstr "" -#: library/asyncio-eventloop.rst:199 +#: library/asyncio-eventloop.rst:201 msgid "" "If the *timeout* is reached, a :exc:`RuntimeWarning` is emitted and the " "default executor is terminated without waiting for its threads to finish " "joining." msgstr "" -#: library/asyncio-eventloop.rst:205 +#: library/asyncio-eventloop.rst:207 msgid "" "Do not call this method when using :func:`asyncio.run`, as the latter " "handles default executor shutdown automatically." msgstr "" -#: library/asyncio-eventloop.rst:210 +#: library/asyncio-eventloop.rst:212 msgid "Added the *timeout* parameter." msgstr "" -#: library/asyncio-eventloop.rst:214 +#: library/asyncio-eventloop.rst:216 msgid "Scheduling callbacks" msgstr "" -#: library/asyncio-eventloop.rst:218 +#: library/asyncio-eventloop.rst:220 msgid "" "Schedule the *callback* :term:`callback` to be called with *args* arguments " "at the next iteration of the event loop." msgstr "" -#: library/asyncio-eventloop.rst:221 +#: library/asyncio-eventloop.rst:223 msgid "" "Return an instance of :class:`asyncio.Handle`, which can be used later to " "cancel the callback." msgstr "" -#: library/asyncio-eventloop.rst:224 +#: library/asyncio-eventloop.rst:226 msgid "" "Callbacks are called in the order in which they are registered. Each " "callback will be called exactly once." msgstr "" -#: library/asyncio-eventloop.rst:227 +#: library/asyncio-eventloop.rst:229 msgid "" "The optional keyword-only *context* argument specifies a custom :class:" "`contextvars.Context` for the *callback* to run in. Callbacks use the " "current context when no *context* is provided." msgstr "" -#: library/asyncio-eventloop.rst:231 +#: library/asyncio-eventloop.rst:233 msgid "Unlike :meth:`call_soon_threadsafe`, this method is not thread-safe." msgstr "" -#: library/asyncio-eventloop.rst:235 +#: library/asyncio-eventloop.rst:237 msgid "" "A thread-safe variant of :meth:`call_soon`. When scheduling callbacks from " "another thread, this function *must* be used, since :meth:`call_soon` is not " "thread-safe." msgstr "" -#: library/asyncio-eventloop.rst:239 +#: library/asyncio-eventloop.rst:241 +msgid "" +"This function is safe to be called from a reentrant context or signal " +"handler, however, it is not safe or fruitful to use the returned handle in " +"such contexts." +msgstr "" + +#: library/asyncio-eventloop.rst:244 msgid "" "Raises :exc:`RuntimeError` if called on a loop that's been closed. This can " "happen on a secondary thread when the main application is shutting down." msgstr "" -#: library/asyncio-eventloop.rst:243 +#: library/asyncio-eventloop.rst:248 msgid "" "See the :ref:`concurrency and multithreading ` " "section of the documentation." msgstr "" -#: library/asyncio-eventloop.rst:246 library/asyncio-eventloop.rst:296 -#: library/asyncio-eventloop.rst:316 +#: library/asyncio-eventloop.rst:251 library/asyncio-eventloop.rst:301 +#: library/asyncio-eventloop.rst:321 msgid "" "The *context* keyword-only parameter was added. See :pep:`567` for more " "details." msgstr "" -#: library/asyncio-eventloop.rst:254 +#: library/asyncio-eventloop.rst:259 msgid "" "Most :mod:`asyncio` scheduling functions don't allow passing keyword " "arguments. To do that, use :func:`functools.partial`::" msgstr "" -#: library/asyncio-eventloop.rst:257 +#: library/asyncio-eventloop.rst:262 msgid "" "# will schedule \"print(\"Hello\", flush=True)\"\n" "loop.call_soon(\n" " functools.partial(print, \"Hello\", flush=True))" msgstr "" -#: library/asyncio-eventloop.rst:261 +#: library/asyncio-eventloop.rst:266 msgid "" "Using partial objects is usually more convenient than using lambdas, as " "asyncio can render partial objects better in debug and error messages." msgstr "" -#: library/asyncio-eventloop.rst:269 +#: library/asyncio-eventloop.rst:274 msgid "Scheduling delayed callbacks" msgstr "" -#: library/asyncio-eventloop.rst:271 +#: library/asyncio-eventloop.rst:276 msgid "" "Event loop provides mechanisms to schedule callback functions to be called " "at some point in the future. Event loop uses monotonic clocks to track time." msgstr "" -#: library/asyncio-eventloop.rst:278 +#: library/asyncio-eventloop.rst:283 msgid "" "Schedule *callback* to be called after the given *delay* number of seconds " "(can be either an int or a float)." msgstr "" -#: library/asyncio-eventloop.rst:281 library/asyncio-eventloop.rst:313 +#: library/asyncio-eventloop.rst:286 library/asyncio-eventloop.rst:318 msgid "" "An instance of :class:`asyncio.TimerHandle` is returned which can be used to " "cancel the callback." msgstr "" -#: library/asyncio-eventloop.rst:284 +#: library/asyncio-eventloop.rst:289 msgid "" "*callback* will be called exactly once. If two callbacks are scheduled for " "exactly the same time, the order in which they are called is undefined." msgstr "" -#: library/asyncio-eventloop.rst:288 +#: library/asyncio-eventloop.rst:293 msgid "" "The optional positional *args* will be passed to the callback when it is " "called. If you want the callback to be called with keyword arguments use :" "func:`functools.partial`." msgstr "" -#: library/asyncio-eventloop.rst:292 +#: library/asyncio-eventloop.rst:297 msgid "" "An optional keyword-only *context* argument allows specifying a custom :" "class:`contextvars.Context` for the *callback* to run in. The current " "context is used when no *context* is provided." msgstr "" -#: library/asyncio-eventloop.rst:300 +#: library/asyncio-eventloop.rst:305 msgid "" "In Python 3.7 and earlier with the default event loop implementation, the " "*delay* could not exceed one day. This has been fixed in Python 3.8." msgstr "" -#: library/asyncio-eventloop.rst:307 +#: library/asyncio-eventloop.rst:312 msgid "" "Schedule *callback* to be called at the given absolute timestamp *when* (an " "int or a float), using the same time reference as :meth:`loop.time`." msgstr "" -#: library/asyncio-eventloop.rst:311 +#: library/asyncio-eventloop.rst:316 msgid "This method's behavior is the same as :meth:`call_later`." msgstr "" -#: library/asyncio-eventloop.rst:320 +#: library/asyncio-eventloop.rst:325 msgid "" "In Python 3.7 and earlier with the default event loop implementation, the " "difference between *when* and the current time could not exceed one day. " "This has been fixed in Python 3.8." msgstr "" -#: library/asyncio-eventloop.rst:327 +#: library/asyncio-eventloop.rst:332 msgid "" "Return the current time, as a :class:`float` value, according to the event " "loop's internal monotonic clock." msgstr "" -#: library/asyncio-eventloop.rst:331 +#: library/asyncio-eventloop.rst:336 msgid "" "In Python 3.7 and earlier timeouts (relative *delay* or absolute *when*) " "should not exceed one day. This has been fixed in Python 3.8." msgstr "" -#: library/asyncio-eventloop.rst:337 +#: library/asyncio-eventloop.rst:342 msgid "The :func:`asyncio.sleep` function." msgstr "" -#: library/asyncio-eventloop.rst:341 +#: library/asyncio-eventloop.rst:346 msgid "Creating Futures and Tasks" msgstr "" -#: library/asyncio-eventloop.rst:345 +#: library/asyncio-eventloop.rst:350 msgid "Create an :class:`asyncio.Future` object attached to the event loop." msgstr "" -#: library/asyncio-eventloop.rst:347 +#: library/asyncio-eventloop.rst:352 msgid "" "This is the preferred way to create Futures in asyncio. This lets third-" "party event loops provide alternative implementations of the Future object " "(with better performance or instrumentation)." msgstr "" -#: library/asyncio-eventloop.rst:355 +#: library/asyncio-eventloop.rst:360 msgid "" "Schedule the execution of :ref:`coroutine ` *coro*. Return a :" "class:`Task` object." msgstr "" -#: library/asyncio-eventloop.rst:358 +#: library/asyncio-eventloop.rst:363 msgid "" "Third-party event loops can use their own subclass of :class:`Task` for " "interoperability. In this case, the result type is a subclass of :class:" "`Task`." msgstr "" -#: library/asyncio-eventloop.rst:362 +#: library/asyncio-eventloop.rst:367 msgid "" "If the *name* argument is provided and not ``None``, it is set as the name " "of the task using :meth:`Task.set_name`." msgstr "" -#: library/asyncio-eventloop.rst:365 +#: library/asyncio-eventloop.rst:370 msgid "" "An optional keyword-only *context* argument allows specifying a custom :" "class:`contextvars.Context` for the *coro* to run in. The current context " "copy is created when no *context* is provided." msgstr "" -#: library/asyncio-eventloop.rst:369 +#: library/asyncio-eventloop.rst:374 msgid "Added the *name* parameter." msgstr "" -#: library/asyncio-eventloop.rst:372 +#: library/asyncio-eventloop.rst:377 msgid "Added the *context* parameter." msgstr "" -#: library/asyncio-eventloop.rst:377 +#: library/asyncio-eventloop.rst:382 msgid "Set a task factory that will be used by :meth:`loop.create_task`." msgstr "" -#: library/asyncio-eventloop.rst:380 +#: library/asyncio-eventloop.rst:385 msgid "" "If *factory* is ``None`` the default task factory will be set. Otherwise, " "*factory* must be a *callable* with the signature matching ``(loop, coro, " @@ -519,80 +526,80 @@ msgid "" "Future`-compatible object." msgstr "" -#: library/asyncio-eventloop.rst:388 +#: library/asyncio-eventloop.rst:393 msgid "Return a task factory or ``None`` if the default one is in use." msgstr "" -#: library/asyncio-eventloop.rst:392 +#: library/asyncio-eventloop.rst:397 msgid "Opening network connections" msgstr "" -#: library/asyncio-eventloop.rst:403 +#: library/asyncio-eventloop.rst:409 msgid "" "Open a streaming transport connection to a given address specified by *host* " "and *port*." msgstr "" -#: library/asyncio-eventloop.rst:406 +#: library/asyncio-eventloop.rst:412 msgid "" "The socket family can be either :py:const:`~socket.AF_INET` or :py:const:" "`~socket.AF_INET6` depending on *host* (or the *family* argument, if " "provided)." msgstr "" -#: library/asyncio-eventloop.rst:410 +#: library/asyncio-eventloop.rst:416 msgid "The socket type will be :py:const:`~socket.SOCK_STREAM`." msgstr "" -#: library/asyncio-eventloop.rst:412 library/asyncio-eventloop.rst:1164 -#: library/asyncio-eventloop.rst:1180 +#: library/asyncio-eventloop.rst:418 library/asyncio-eventloop.rst:1195 +#: library/asyncio-eventloop.rst:1212 msgid "" "*protocol_factory* must be a callable returning an :ref:`asyncio protocol " "` implementation." msgstr "" -#: library/asyncio-eventloop.rst:415 +#: library/asyncio-eventloop.rst:421 msgid "" "This method will try to establish the connection in the background. When " "successful, it returns a ``(transport, protocol)`` pair." msgstr "" -#: library/asyncio-eventloop.rst:418 +#: library/asyncio-eventloop.rst:424 msgid "The chronological synopsis of the underlying operation is as follows:" msgstr "" -#: library/asyncio-eventloop.rst:420 +#: library/asyncio-eventloop.rst:426 msgid "" "The connection is established and a :ref:`transport ` is " "created for it." msgstr "" -#: library/asyncio-eventloop.rst:423 +#: library/asyncio-eventloop.rst:429 msgid "" "*protocol_factory* is called without arguments and is expected to return a :" "ref:`protocol ` instance." msgstr "" -#: library/asyncio-eventloop.rst:426 +#: library/asyncio-eventloop.rst:432 msgid "" "The protocol instance is coupled with the transport by calling its :meth:" "`~BaseProtocol.connection_made` method." msgstr "" -#: library/asyncio-eventloop.rst:429 +#: library/asyncio-eventloop.rst:435 msgid "A ``(transport, protocol)`` tuple is returned on success." msgstr "" -#: library/asyncio-eventloop.rst:431 +#: library/asyncio-eventloop.rst:437 msgid "" "The created transport is an implementation-dependent bidirectional stream." msgstr "" -#: library/asyncio-eventloop.rst:434 library/asyncio-eventloop.rst:566 +#: library/asyncio-eventloop.rst:440 library/asyncio-eventloop.rst:573 msgid "Other arguments:" msgstr "" -#: library/asyncio-eventloop.rst:436 +#: library/asyncio-eventloop.rst:442 msgid "" "*ssl*: if given and not false, a SSL/TLS transport is created (by default a " "plain TCP transport is created). If *ssl* is a :class:`ssl.SSLContext` " @@ -601,11 +608,11 @@ msgid "" "is used." msgstr "" -#: library/asyncio-eventloop.rst:442 +#: library/asyncio-eventloop.rst:448 msgid ":ref:`SSL/TLS security considerations `" msgstr "" -#: library/asyncio-eventloop.rst:444 +#: library/asyncio-eventloop.rst:450 msgid "" "*server_hostname* sets or overrides the hostname that the target server's " "certificate will be matched against. Should only be passed if *ssl* is not " @@ -616,7 +623,7 @@ msgid "" "potential man-in-the-middle attacks)." msgstr "" -#: library/asyncio-eventloop.rst:452 +#: library/asyncio-eventloop.rst:458 msgid "" "*family*, *proto*, *flags* are the optional address family, protocol and " "flags to be passed through to getaddrinfo() for *host* resolution. If given, " @@ -624,7 +631,7 @@ msgid "" "constants." msgstr "" -#: library/asyncio-eventloop.rst:457 +#: library/asyncio-eventloop.rst:463 msgid "" "*happy_eyeballs_delay*, if given, enables Happy Eyeballs for this " "connection. It should be a floating-point number representing the amount of " @@ -634,7 +641,7 @@ msgid "" "the RFC is ``0.25`` (250 milliseconds)." msgstr "" -#: library/asyncio-eventloop.rst:465 +#: library/asyncio-eventloop.rst:471 msgid "" "*interleave* controls address reordering when a host name resolves to " "multiple IP addresses. If ``0`` or unspecified, no reordering is done, and " @@ -645,7 +652,7 @@ msgid "" "*happy_eyeballs_delay* is not specified, and ``1`` if it is." msgstr "" -#: library/asyncio-eventloop.rst:474 +#: library/asyncio-eventloop.rst:480 msgid "" "*sock*, if given, should be an existing, already connected :class:`socket." "socket` object to be used by the transport. If *sock* is given, none of " @@ -653,37 +660,37 @@ msgid "" "*interleave* and *local_addr* should be specified." msgstr "" -#: library/asyncio-eventloop.rst:482 library/asyncio-eventloop.rst:597 -#: library/asyncio-eventloop.rst:825 +#: library/asyncio-eventloop.rst:488 library/asyncio-eventloop.rst:604 +#: library/asyncio-eventloop.rst:836 msgid "" "The *sock* argument transfers ownership of the socket to the transport " "created. To close the socket, call the transport's :meth:`~asyncio." "BaseTransport.close` method." msgstr "" -#: library/asyncio-eventloop.rst:486 +#: library/asyncio-eventloop.rst:492 msgid "" "*local_addr*, if given, is a ``(local_host, local_port)`` tuple used to bind " "the socket locally. The *local_host* and *local_port* are looked up using " "``getaddrinfo()``, similarly to *host* and *port*." msgstr "" -#: library/asyncio-eventloop.rst:490 library/asyncio-eventloop.rst:919 +#: library/asyncio-eventloop.rst:496 library/asyncio-eventloop.rst:932 msgid "" "*ssl_handshake_timeout* is (for a TLS connection) the time in seconds to " "wait for the TLS handshake to complete before aborting the connection. " "``60.0`` seconds if ``None`` (default)." msgstr "" -#: library/asyncio-eventloop.rst:494 library/asyncio-eventloop.rst:742 -#: library/asyncio-eventloop.rst:836 library/asyncio-eventloop.rst:923 +#: library/asyncio-eventloop.rst:500 library/asyncio-eventloop.rst:751 +#: library/asyncio-eventloop.rst:847 library/asyncio-eventloop.rst:936 msgid "" "*ssl_shutdown_timeout* is the time in seconds to wait for the SSL shutdown " "to complete before aborting the connection. ``30.0`` seconds if ``None`` " "(default)." msgstr "" -#: library/asyncio-eventloop.rst:498 +#: library/asyncio-eventloop.rst:504 msgid "" "*all_errors* determines what exceptions are raised when a connection cannot " "be created. By default, only a single ``Exception`` is raised: the first " @@ -693,25 +700,25 @@ msgid "" "(even if there is only one)." msgstr "" -#: library/asyncio-eventloop.rst:508 library/asyncio-eventloop.rst:754 +#: library/asyncio-eventloop.rst:514 library/asyncio-eventloop.rst:763 msgid "Added support for SSL/TLS in :class:`ProactorEventLoop`." msgstr "" -#: library/asyncio-eventloop.rst:512 +#: library/asyncio-eventloop.rst:518 msgid "" "The socket option :ref:`socket.TCP_NODELAY ` is set " "by default for all TCP connections." msgstr "" -#: library/asyncio-eventloop.rst:517 library/asyncio-eventloop.rst:846 +#: library/asyncio-eventloop.rst:523 library/asyncio-eventloop.rst:857 msgid "Added the *ssl_handshake_timeout* parameter." msgstr "" -#: library/asyncio-eventloop.rst:521 +#: library/asyncio-eventloop.rst:527 msgid "Added the *happy_eyeballs_delay* and *interleave* parameters." msgstr "" -#: library/asyncio-eventloop.rst:523 +#: library/asyncio-eventloop.rst:529 msgid "" "Happy Eyeballs Algorithm: Success with Dual-Stack Hosts. When a server's " "IPv4 path and protocol are working, but the server's IPv6 path and protocol " @@ -722,68 +729,68 @@ msgid "" "visible delay and provides an algorithm." msgstr "" -#: library/asyncio-eventloop.rst:532 +#: library/asyncio-eventloop.rst:538 msgid "For more information: https://datatracker.ietf.org/doc/html/rfc6555" msgstr "" -#: library/asyncio-eventloop.rst:536 library/asyncio-eventloop.rst:660 -#: library/asyncio-eventloop.rst:768 library/asyncio-eventloop.rst:803 -#: library/asyncio-eventloop.rst:850 library/asyncio-eventloop.rst:931 +#: library/asyncio-eventloop.rst:542 library/asyncio-eventloop.rst:668 +#: library/asyncio-eventloop.rst:777 library/asyncio-eventloop.rst:813 +#: library/asyncio-eventloop.rst:861 library/asyncio-eventloop.rst:944 msgid "Added the *ssl_shutdown_timeout* parameter." msgstr "" -#: library/asyncio-eventloop.rst:538 +#: library/asyncio-eventloop.rst:544 msgid "*all_errors* was added." msgstr "" -#: library/asyncio-eventloop.rst:543 +#: library/asyncio-eventloop.rst:549 msgid "" "The :func:`open_connection` function is a high-level alternative API. It " "returns a pair of (:class:`StreamReader`, :class:`StreamWriter`) that can be " "used directly in async/await code." msgstr "" -#: library/asyncio-eventloop.rst:553 +#: library/asyncio-eventloop.rst:560 msgid "Create a datagram connection." msgstr "" -#: library/asyncio-eventloop.rst:555 +#: library/asyncio-eventloop.rst:562 msgid "" "The socket family can be either :py:const:`~socket.AF_INET`, :py:const:" "`~socket.AF_INET6`, or :py:const:`~socket.AF_UNIX`, depending on *host* (or " "the *family* argument, if provided)." msgstr "" -#: library/asyncio-eventloop.rst:559 +#: library/asyncio-eventloop.rst:566 msgid "The socket type will be :py:const:`~socket.SOCK_DGRAM`." msgstr "" -#: library/asyncio-eventloop.rst:561 library/asyncio-eventloop.rst:685 -#: library/asyncio-eventloop.rst:817 +#: library/asyncio-eventloop.rst:568 library/asyncio-eventloop.rst:694 +#: library/asyncio-eventloop.rst:828 msgid "" "*protocol_factory* must be a callable returning a :ref:`protocol ` implementation." msgstr "" -#: library/asyncio-eventloop.rst:564 library/asyncio-eventloop.rst:642 +#: library/asyncio-eventloop.rst:571 library/asyncio-eventloop.rst:650 msgid "A tuple of ``(transport, protocol)`` is returned on success." msgstr "" -#: library/asyncio-eventloop.rst:568 +#: library/asyncio-eventloop.rst:575 msgid "" "*local_addr*, if given, is a ``(local_host, local_port)`` tuple used to bind " "the socket locally. The *local_host* and *local_port* are looked up using :" "meth:`getaddrinfo`." msgstr "" -#: library/asyncio-eventloop.rst:572 +#: library/asyncio-eventloop.rst:579 msgid "" "*remote_addr*, if given, is a ``(remote_host, remote_port)`` tuple used to " "connect the socket to a remote address. The *remote_host* and *remote_port* " "are looked up using :meth:`getaddrinfo`." msgstr "" -#: library/asyncio-eventloop.rst:576 +#: library/asyncio-eventloop.rst:583 msgid "" "*family*, *proto*, *flags* are the optional address family, protocol and " "flags to be passed through to :meth:`getaddrinfo` for *host* resolution. If " @@ -791,7 +798,7 @@ msgid "" "module constants." msgstr "" -#: library/asyncio-eventloop.rst:581 +#: library/asyncio-eventloop.rst:588 msgid "" "*reuse_port* tells the kernel to allow this endpoint to be bound to the same " "port as other existing endpoints are bound to, so long as they all set this " @@ -800,13 +807,13 @@ msgid "" "is not defined then this capability is unsupported." msgstr "" -#: library/asyncio-eventloop.rst:587 +#: library/asyncio-eventloop.rst:594 msgid "" "*allow_broadcast* tells the kernel to allow this endpoint to send messages " "to the broadcast address." msgstr "" -#: library/asyncio-eventloop.rst:590 +#: library/asyncio-eventloop.rst:597 msgid "" "*sock* can optionally be specified in order to use a preexisting, already " "connected, :class:`socket.socket` object to be used by the transport. If " @@ -814,37 +821,37 @@ msgid "" "`None`)." msgstr "" -#: library/asyncio-eventloop.rst:601 +#: library/asyncio-eventloop.rst:608 msgid "" "See :ref:`UDP echo client protocol ` and :" "ref:`UDP echo server protocol ` examples." msgstr "" -#: library/asyncio-eventloop.rst:604 +#: library/asyncio-eventloop.rst:611 msgid "" "The *family*, *proto*, *flags*, *reuse_address*, *reuse_port*, " "*allow_broadcast*, and *sock* parameters were added." msgstr "" -#: library/asyncio-eventloop.rst:608 +#: library/asyncio-eventloop.rst:615 msgid "Added support for Windows." msgstr "" -#: library/asyncio-eventloop.rst:611 +#: library/asyncio-eventloop.rst:618 msgid "" "The *reuse_address* parameter is no longer supported, as using :ref:`socket." "SO_REUSEADDR ` poses a significant security concern " "for UDP. Explicitly passing ``reuse_address=True`` will raise an exception." msgstr "" -#: library/asyncio-eventloop.rst:617 +#: library/asyncio-eventloop.rst:624 msgid "" "When multiple processes with differing UIDs assign sockets to an identical " "UDP socket address with ``SO_REUSEADDR``, incoming packets can become " "randomly distributed among the sockets." msgstr "" -#: library/asyncio-eventloop.rst:621 +#: library/asyncio-eventloop.rst:628 msgid "" "For supported platforms, *reuse_port* can be used as a replacement for " "similar functionality. With *reuse_port*, :ref:`socket.SO_REUSEPORT ` is set by default " "for all TCP connections." msgstr "" -#: library/asyncio-eventloop.rst:772 +#: library/asyncio-eventloop.rst:781 msgid "" "The :func:`start_server` function is a higher-level alternative API that " "returns a pair of :class:`StreamReader` and :class:`StreamWriter` that can " "be used in an async/await code." msgstr "" -#: library/asyncio-eventloop.rst:783 +#: library/asyncio-eventloop.rst:793 msgid "" "Similar to :meth:`loop.create_server` but works with the :py:const:`~socket." "AF_UNIX` socket family." msgstr "" -#: library/asyncio-eventloop.rst:786 +#: library/asyncio-eventloop.rst:796 msgid "" "*path* is the name of a Unix domain socket, and is required, unless a *sock* " "argument is provided. Abstract Unix sockets, :class:`str`, :class:`bytes`, " "and :class:`~pathlib.Path` paths are supported." msgstr "" -#: library/asyncio-eventloop.rst:791 +#: library/asyncio-eventloop.rst:801 msgid "" "See the documentation of the :meth:`loop.create_server` method for " "information about arguments to this method." msgstr "" -#: library/asyncio-eventloop.rst:798 +#: library/asyncio-eventloop.rst:808 msgid "" "Added the *ssl_handshake_timeout* and *start_serving* parameters. The *path* " "parameter can now be a :class:`~pathlib.Path` object." msgstr "" -#: library/asyncio-eventloop.rst:810 +#: library/asyncio-eventloop.rst:821 msgid "Wrap an already accepted connection into a transport/protocol pair." msgstr "" -#: library/asyncio-eventloop.rst:812 +#: library/asyncio-eventloop.rst:823 msgid "" "This method can be used by servers that accept connections outside of " "asyncio but that use asyncio to handle them." msgstr "" -#: library/asyncio-eventloop.rst:815 library/asyncio-eventloop.rst:905 +#: library/asyncio-eventloop.rst:826 library/asyncio-eventloop.rst:918 msgid "Parameters:" msgstr "" -#: library/asyncio-eventloop.rst:820 +#: library/asyncio-eventloop.rst:831 msgid "" "*sock* is a preexisting socket object returned from :meth:`socket.accept " "`." msgstr "" -#: library/asyncio-eventloop.rst:829 +#: library/asyncio-eventloop.rst:840 msgid "" "*ssl* can be set to an :class:`~ssl.SSLContext` to enable SSL over the " "accepted connections." msgstr "" -#: library/asyncio-eventloop.rst:832 +#: library/asyncio-eventloop.rst:843 msgid "" "*ssl_handshake_timeout* is (for an SSL connection) the time in seconds to " "wait for the SSL handshake to complete before aborting the connection. " "``60.0`` seconds if ``None`` (default)." msgstr "" -#: library/asyncio-eventloop.rst:840 +#: library/asyncio-eventloop.rst:851 msgid "Returns a ``(transport, protocol)`` pair." msgstr "" -#: library/asyncio-eventloop.rst:854 +#: library/asyncio-eventloop.rst:865 msgid "Transferring files" msgstr "" -#: library/asyncio-eventloop.rst:859 +#: library/asyncio-eventloop.rst:871 msgid "" "Send a *file* over a *transport*. Return the total number of bytes sent." msgstr "" -#: library/asyncio-eventloop.rst:862 +#: library/asyncio-eventloop.rst:874 msgid "The method uses high-performance :meth:`os.sendfile` if available." msgstr "" -#: library/asyncio-eventloop.rst:864 +#: library/asyncio-eventloop.rst:876 msgid "*file* must be a regular file object opened in binary mode." msgstr "" -#: library/asyncio-eventloop.rst:866 library/asyncio-eventloop.rst:1111 +#: library/asyncio-eventloop.rst:878 library/asyncio-eventloop.rst:1139 msgid "" "*offset* tells from where to start reading the file. If specified, *count* " "is the total number of bytes to transmit as opposed to sending the file " @@ -1114,35 +1121,35 @@ msgid "" "obtain the actual number of bytes sent." msgstr "" -#: library/asyncio-eventloop.rst:873 +#: library/asyncio-eventloop.rst:885 msgid "" "*fallback* set to ``True`` makes asyncio to manually read and send the file " "when the platform does not support the sendfile system call (e.g. Windows or " "SSL socket on Unix)." msgstr "" -#: library/asyncio-eventloop.rst:877 +#: library/asyncio-eventloop.rst:889 msgid "" "Raise :exc:`SendfileNotAvailableError` if the system does not support the " "*sendfile* syscall and *fallback* is ``False``." msgstr "" -#: library/asyncio-eventloop.rst:884 +#: library/asyncio-eventloop.rst:896 msgid "TLS Upgrade" msgstr "" -#: library/asyncio-eventloop.rst:891 +#: library/asyncio-eventloop.rst:904 msgid "Upgrade an existing transport-based connection to TLS." msgstr "" -#: library/asyncio-eventloop.rst:893 +#: library/asyncio-eventloop.rst:906 msgid "" "Create a TLS coder/decoder instance and insert it between the *transport* " "and the *protocol*. The coder/decoder implements both *transport*-facing " "protocol and *protocol*-facing transport." msgstr "" -#: library/asyncio-eventloop.rst:897 +#: library/asyncio-eventloop.rst:910 msgid "" "Return the created two-interface instance. After *await*, the *protocol* " "must stop using the original *transport* and communicate with the returned " @@ -1150,79 +1157,85 @@ msgid "" "exchanges extra TLS session packets with *transport*." msgstr "" -#: library/asyncio-eventloop.rst:902 +#: library/asyncio-eventloop.rst:915 msgid "" "In some situations (e.g. when the passed transport is already closing) this " "may return ``None``." msgstr "" -#: library/asyncio-eventloop.rst:907 +#: library/asyncio-eventloop.rst:920 msgid "" "*transport* and *protocol* instances that methods like :meth:`~loop." "create_server` and :meth:`~loop.create_connection` return." msgstr "" -#: library/asyncio-eventloop.rst:911 +#: library/asyncio-eventloop.rst:924 msgid "*sslcontext*: a configured instance of :class:`~ssl.SSLContext`." msgstr "" -#: library/asyncio-eventloop.rst:913 +#: library/asyncio-eventloop.rst:926 msgid "" "*server_side* pass ``True`` when a server-side connection is being upgraded " "(like the one created by :meth:`~loop.create_server`)." msgstr "" -#: library/asyncio-eventloop.rst:916 +#: library/asyncio-eventloop.rst:929 msgid "" "*server_hostname*: sets or overrides the host name that the target server's " "certificate will be matched against." msgstr "" -#: library/asyncio-eventloop.rst:936 +#: library/asyncio-eventloop.rst:949 msgid "Watching file descriptors" msgstr "" -#: library/asyncio-eventloop.rst:940 +#: library/asyncio-eventloop.rst:953 msgid "" "Start monitoring the *fd* file descriptor for read availability and invoke " "*callback* with the specified arguments once *fd* is available for reading." msgstr "" -#: library/asyncio-eventloop.rst:946 +#: library/asyncio-eventloop.rst:957 library/asyncio-eventloop.rst:971 +msgid "" +"Any preexisting callback registered for *fd* is cancelled and replaced by " +"*callback*." +msgstr "" + +#: library/asyncio-eventloop.rst:962 msgid "" "Stop monitoring the *fd* file descriptor for read availability. Returns " "``True`` if *fd* was previously being monitored for reads." msgstr "" -#: library/asyncio-eventloop.rst:951 +#: library/asyncio-eventloop.rst:967 msgid "" "Start monitoring the *fd* file descriptor for write availability and invoke " "*callback* with the specified arguments once *fd* is available for writing." msgstr "" -#: library/asyncio-eventloop.rst:955 library/asyncio-eventloop.rst:1220 +#: library/asyncio-eventloop.rst:974 library/asyncio-eventloop.rst:1252 msgid "" "Use :func:`functools.partial` :ref:`to pass keyword arguments ` to *callback*." msgstr "" -#: library/asyncio-eventloop.rst:960 +#: library/asyncio-eventloop.rst:979 msgid "" "Stop monitoring the *fd* file descriptor for write availability. Returns " "``True`` if *fd* was previously being monitored for writes." msgstr "" -#: library/asyncio-eventloop.rst:963 +#: library/asyncio-eventloop.rst:982 msgid "" "See also :ref:`Platform Support ` section for some " "limitations of these methods." msgstr "" -#: library/asyncio-eventloop.rst:968 +#: library/asyncio-eventloop.rst:987 msgid "Working with socket objects directly" msgstr "" -#: library/asyncio-eventloop.rst:970 +#: library/asyncio-eventloop.rst:989 msgid "" "In general, protocol implementations that use transport-based APIs such as :" "meth:`loop.create_connection` and :meth:`loop.create_server` are faster than " @@ -1231,68 +1244,68 @@ msgid "" "socket` objects directly is more convenient." msgstr "" -#: library/asyncio-eventloop.rst:979 +#: library/asyncio-eventloop.rst:999 msgid "" "Receive up to *nbytes* from *sock*. Asynchronous version of :meth:`socket." "recv() `." msgstr "" -#: library/asyncio-eventloop.rst:982 +#: library/asyncio-eventloop.rst:1002 msgid "Return the received data as a bytes object." msgstr "" -#: library/asyncio-eventloop.rst:984 library/asyncio-eventloop.rst:998 -#: library/asyncio-eventloop.rst:1009 library/asyncio-eventloop.rst:1021 -#: library/asyncio-eventloop.rst:1036 library/asyncio-eventloop.rst:1051 -#: library/asyncio-eventloop.rst:1061 library/asyncio-eventloop.rst:1087 -#: library/asyncio-eventloop.rst:1125 +#: library/asyncio-eventloop.rst:1004 library/asyncio-eventloop.rst:1019 +#: library/asyncio-eventloop.rst:1031 library/asyncio-eventloop.rst:1044 +#: library/asyncio-eventloop.rst:1060 library/asyncio-eventloop.rst:1076 +#: library/asyncio-eventloop.rst:1087 library/asyncio-eventloop.rst:1114 +#: library/asyncio-eventloop.rst:1153 msgid "*sock* must be a non-blocking socket." msgstr "" -#: library/asyncio-eventloop.rst:986 +#: library/asyncio-eventloop.rst:1006 msgid "" "Even though this method was always documented as a coroutine method, " "releases before Python 3.7 returned a :class:`Future`. Since Python 3.7 this " "is an ``async def`` method." msgstr "" -#: library/asyncio-eventloop.rst:993 +#: library/asyncio-eventloop.rst:1014 msgid "" "Receive data from *sock* into the *buf* buffer. Modeled after the blocking :" "meth:`socket.recv_into() ` method." msgstr "" -#: library/asyncio-eventloop.rst:996 +#: library/asyncio-eventloop.rst:1017 msgid "Return the number of bytes written to the buffer." msgstr "" -#: library/asyncio-eventloop.rst:1004 +#: library/asyncio-eventloop.rst:1026 msgid "" "Receive a datagram of up to *bufsize* from *sock*. Asynchronous version of :" "meth:`socket.recvfrom() `." msgstr "" -#: library/asyncio-eventloop.rst:1007 +#: library/asyncio-eventloop.rst:1029 msgid "Return a tuple of (received data, remote address)." msgstr "" -#: library/asyncio-eventloop.rst:1015 +#: library/asyncio-eventloop.rst:1038 msgid "" "Receive a datagram of up to *nbytes* from *sock* into *buf*. Asynchronous " "version of :meth:`socket.recvfrom_into() `." msgstr "" -#: library/asyncio-eventloop.rst:1019 +#: library/asyncio-eventloop.rst:1042 msgid "Return a tuple of (number of bytes received, remote address)." msgstr "" -#: library/asyncio-eventloop.rst:1027 +#: library/asyncio-eventloop.rst:1051 msgid "" "Send *data* to the *sock* socket. Asynchronous version of :meth:`socket." "sendall() `." msgstr "" -#: library/asyncio-eventloop.rst:1030 +#: library/asyncio-eventloop.rst:1054 msgid "" "This method continues to send to the socket until either all data in *data* " "has been sent or an error occurs. ``None`` is returned on success. On " @@ -1301,33 +1314,33 @@ msgid "" "the connection." msgstr "" -#: library/asyncio-eventloop.rst:1038 library/asyncio-eventloop.rst:1089 +#: library/asyncio-eventloop.rst:1062 library/asyncio-eventloop.rst:1116 msgid "" "Even though the method was always documented as a coroutine method, before " "Python 3.7 it returned a :class:`Future`. Since Python 3.7, this is an " "``async def`` method." msgstr "" -#: library/asyncio-eventloop.rst:1045 +#: library/asyncio-eventloop.rst:1070 msgid "" "Send a datagram from *sock* to *address*. Asynchronous version of :meth:" "`socket.sendto() `." msgstr "" -#: library/asyncio-eventloop.rst:1049 +#: library/asyncio-eventloop.rst:1074 msgid "Return the number of bytes sent." msgstr "" -#: library/asyncio-eventloop.rst:1057 +#: library/asyncio-eventloop.rst:1083 msgid "Connect *sock* to a remote socket at *address*." msgstr "" -#: library/asyncio-eventloop.rst:1059 +#: library/asyncio-eventloop.rst:1085 msgid "" "Asynchronous version of :meth:`socket.connect() `." msgstr "" -#: library/asyncio-eventloop.rst:1063 +#: library/asyncio-eventloop.rst:1089 msgid "" "``address`` no longer needs to be resolved. ``sock_connect`` will try to " "check if the *address* is already resolved by calling :func:`socket." @@ -1335,19 +1348,19 @@ msgid "" "*address*." msgstr "" -#: library/asyncio-eventloop.rst:1072 +#: library/asyncio-eventloop.rst:1098 msgid "" ":meth:`loop.create_connection` and :func:`asyncio.open_connection() " "`." msgstr "" -#: library/asyncio-eventloop.rst:1078 +#: library/asyncio-eventloop.rst:1105 msgid "" "Accept a connection. Modeled after the blocking :meth:`socket.accept() " "` method." msgstr "" -#: library/asyncio-eventloop.rst:1081 +#: library/asyncio-eventloop.rst:1108 msgid "" "The socket must be bound to an address and listening for connections. The " "return value is a pair ``(conn, address)`` where *conn* is a *new* socket " @@ -1355,57 +1368,57 @@ msgid "" "the address bound to the socket on the other end of the connection." msgstr "" -#: library/asyncio-eventloop.rst:1096 +#: library/asyncio-eventloop.rst:1123 msgid ":meth:`loop.create_server` and :func:`start_server`." msgstr "" -#: library/asyncio-eventloop.rst:1101 +#: library/asyncio-eventloop.rst:1129 msgid "" "Send a file using high-performance :mod:`os.sendfile` if possible. Return " "the total number of bytes sent." msgstr "" -#: library/asyncio-eventloop.rst:1104 +#: library/asyncio-eventloop.rst:1132 msgid "" "Asynchronous version of :meth:`socket.sendfile() `." msgstr "" -#: library/asyncio-eventloop.rst:1106 +#: library/asyncio-eventloop.rst:1134 msgid "" "*sock* must be a non-blocking :const:`socket.SOCK_STREAM` :class:`~socket." "socket`." msgstr "" -#: library/asyncio-eventloop.rst:1109 +#: library/asyncio-eventloop.rst:1137 msgid "*file* must be a regular file object open in binary mode." msgstr "" -#: library/asyncio-eventloop.rst:1118 +#: library/asyncio-eventloop.rst:1146 msgid "" "*fallback*, when set to ``True``, makes asyncio manually read and send the " "file when the platform does not support the sendfile syscall (e.g. Windows " "or SSL socket on Unix)." msgstr "" -#: library/asyncio-eventloop.rst:1122 +#: library/asyncio-eventloop.rst:1150 msgid "" "Raise :exc:`SendfileNotAvailableError` if the system does not support " "*sendfile* syscall and *fallback* is ``False``." msgstr "" -#: library/asyncio-eventloop.rst:1131 +#: library/asyncio-eventloop.rst:1159 msgid "DNS" msgstr "" -#: library/asyncio-eventloop.rst:1136 +#: library/asyncio-eventloop.rst:1165 msgid "Asynchronous version of :meth:`socket.getaddrinfo`." msgstr "" -#: library/asyncio-eventloop.rst:1140 +#: library/asyncio-eventloop.rst:1170 msgid "Asynchronous version of :meth:`socket.getnameinfo`." msgstr "" -#: library/asyncio-eventloop.rst:1143 +#: library/asyncio-eventloop.rst:1173 msgid "" "Both *getaddrinfo* and *getnameinfo* internally utilize their synchronous " "versions through the loop's default thread pool executor. When this executor " @@ -1415,7 +1428,7 @@ msgid "" "executor with a larger number of workers." msgstr "" -#: library/asyncio-eventloop.rst:1150 +#: library/asyncio-eventloop.rst:1180 msgid "" "Both *getaddrinfo* and *getnameinfo* methods were always documented to " "return a coroutine, but prior to Python 3.7 they were, in fact, returning :" @@ -1423,66 +1436,66 @@ msgid "" "coroutines." msgstr "" -#: library/asyncio-eventloop.rst:1158 +#: library/asyncio-eventloop.rst:1188 msgid "Working with pipes" msgstr "" -#: library/asyncio-eventloop.rst:1162 +#: library/asyncio-eventloop.rst:1193 msgid "Register the read end of *pipe* in the event loop." msgstr "" -#: library/asyncio-eventloop.rst:1167 +#: library/asyncio-eventloop.rst:1198 msgid "*pipe* is a :term:`file-like object `." msgstr "" -#: library/asyncio-eventloop.rst:1169 +#: library/asyncio-eventloop.rst:1200 msgid "" "Return pair ``(transport, protocol)``, where *transport* supports the :class:" "`ReadTransport` interface and *protocol* is an object instantiated by the " "*protocol_factory*." msgstr "" -#: library/asyncio-eventloop.rst:1173 library/asyncio-eventloop.rst:1189 +#: library/asyncio-eventloop.rst:1204 library/asyncio-eventloop.rst:1221 msgid "" "With :class:`SelectorEventLoop` event loop, the *pipe* is set to non-" "blocking mode." msgstr "" -#: library/asyncio-eventloop.rst:1178 +#: library/asyncio-eventloop.rst:1210 msgid "Register the write end of *pipe* in the event loop." msgstr "" -#: library/asyncio-eventloop.rst:1183 +#: library/asyncio-eventloop.rst:1215 msgid "*pipe* is :term:`file-like object `." msgstr "" -#: library/asyncio-eventloop.rst:1185 +#: library/asyncio-eventloop.rst:1217 msgid "" "Return pair ``(transport, protocol)``, where *transport* supports :class:" "`WriteTransport` interface and *protocol* is an object instantiated by the " "*protocol_factory*." msgstr "" -#: library/asyncio-eventloop.rst:1194 +#: library/asyncio-eventloop.rst:1226 msgid "" ":class:`SelectorEventLoop` does not support the above methods on Windows. " "Use :class:`ProactorEventLoop` instead for Windows." msgstr "" -#: library/asyncio-eventloop.rst:1199 +#: library/asyncio-eventloop.rst:1231 msgid "" "The :meth:`loop.subprocess_exec` and :meth:`loop.subprocess_shell` methods." msgstr "" -#: library/asyncio-eventloop.rst:1204 +#: library/asyncio-eventloop.rst:1236 msgid "Unix signals" msgstr "" -#: library/asyncio-eventloop.rst:1210 +#: library/asyncio-eventloop.rst:1242 msgid "Set *callback* as the handler for the *signum* signal." msgstr "" -#: library/asyncio-eventloop.rst:1212 +#: library/asyncio-eventloop.rst:1244 msgid "" "The callback will be invoked by *loop*, along with other queued callbacks " "and runnable coroutines of that event loop. Unlike signal handlers " @@ -1490,40 +1503,40 @@ msgid "" "function is allowed to interact with the event loop." msgstr "" -#: library/asyncio-eventloop.rst:1217 +#: library/asyncio-eventloop.rst:1249 msgid "" "Raise :exc:`ValueError` if the signal number is invalid or uncatchable. " "Raise :exc:`RuntimeError` if there is a problem setting up the handler." msgstr "" -#: library/asyncio-eventloop.rst:1223 +#: library/asyncio-eventloop.rst:1255 msgid "" "Like :func:`signal.signal`, this function must be invoked in the main thread." msgstr "" -#: library/asyncio-eventloop.rst:1228 +#: library/asyncio-eventloop.rst:1260 msgid "Remove the handler for the *sig* signal." msgstr "" -#: library/asyncio-eventloop.rst:1230 +#: library/asyncio-eventloop.rst:1262 msgid "" "Return ``True`` if the signal handler was removed, or ``False`` if no " "handler was set for the given signal." msgstr "" -#: library/asyncio-eventloop.rst:1237 +#: library/asyncio-eventloop.rst:1269 msgid "The :mod:`signal` module." msgstr "" -#: library/asyncio-eventloop.rst:1241 +#: library/asyncio-eventloop.rst:1273 msgid "Executing code in thread or process pools" msgstr "" -#: library/asyncio-eventloop.rst:1245 +#: library/asyncio-eventloop.rst:1277 msgid "Arrange for *func* to be called in the specified executor." msgstr "" -#: library/asyncio-eventloop.rst:1247 +#: library/asyncio-eventloop.rst:1279 msgid "" "The *executor* argument should be an :class:`concurrent.futures.Executor` " "instance. The default executor is used if *executor* is ``None``. The " @@ -1532,7 +1545,7 @@ msgid "" "and used by :func:`run_in_executor` if needed." msgstr "" -#: library/asyncio-eventloop.rst:1255 +#: library/asyncio-eventloop.rst:1287 msgid "" "import asyncio\n" "import concurrent.futures\n" @@ -1575,7 +1588,7 @@ msgid "" " asyncio.run(main())" msgstr "" -#: library/asyncio-eventloop.rst:1295 +#: library/asyncio-eventloop.rst:1327 msgid "" "Note that the entry point guard (``if __name__ == '__main__'``) is required " "for option 3 due to the peculiarities of :mod:`multiprocessing`, which is " @@ -1583,17 +1596,17 @@ msgid "" "importing of main module `." msgstr "" -#: library/asyncio-eventloop.rst:1300 +#: library/asyncio-eventloop.rst:1332 msgid "This method returns a :class:`asyncio.Future` object." msgstr "" -#: library/asyncio-eventloop.rst:1302 +#: library/asyncio-eventloop.rst:1334 msgid "" "Use :func:`functools.partial` :ref:`to pass keyword arguments ` to *func*." msgstr "" -#: library/asyncio-eventloop.rst:1305 +#: library/asyncio-eventloop.rst:1337 msgid "" ":meth:`loop.run_in_executor` no longer configures the ``max_workers`` of the " "thread pool executor it creates, instead leaving it up to the thread pool " @@ -1601,32 +1614,32 @@ msgid "" "default." msgstr "" -#: library/asyncio-eventloop.rst:1314 +#: library/asyncio-eventloop.rst:1346 msgid "" "Set *executor* as the default executor used by :meth:`run_in_executor`. " "*executor* must be an instance of :class:`~concurrent.futures." "ThreadPoolExecutor`." msgstr "" -#: library/asyncio-eventloop.rst:1318 +#: library/asyncio-eventloop.rst:1350 msgid "" "*executor* must be an instance of :class:`~concurrent.futures." "ThreadPoolExecutor`." msgstr "" -#: library/asyncio-eventloop.rst:1324 +#: library/asyncio-eventloop.rst:1356 msgid "Error Handling API" msgstr "" -#: library/asyncio-eventloop.rst:1326 +#: library/asyncio-eventloop.rst:1358 msgid "Allows customizing how exceptions are handled in the event loop." msgstr "" -#: library/asyncio-eventloop.rst:1330 +#: library/asyncio-eventloop.rst:1362 msgid "Set *handler* as the new event loop exception handler." msgstr "" -#: library/asyncio-eventloop.rst:1332 +#: library/asyncio-eventloop.rst:1364 msgid "" "If *handler* is ``None``, the default exception handler will be set. " "Otherwise, *handler* must be a callable with the signature matching ``(loop, " @@ -1635,182 +1648,182 @@ msgid "" "(see :meth:`call_exception_handler` documentation for details about context)." msgstr "" -#: library/asyncio-eventloop.rst:1340 +#: library/asyncio-eventloop.rst:1372 msgid "" "If the handler is called on behalf of a :class:`~asyncio.Task` or :class:" "`~asyncio.Handle`, it is run in the :class:`contextvars.Context` of that " "task or callback handle." msgstr "" -#: library/asyncio-eventloop.rst:1346 +#: library/asyncio-eventloop.rst:1378 msgid "" "The handler may be called in the :class:`~contextvars.Context` of the task " "or handle where the exception originated." msgstr "" -#: library/asyncio-eventloop.rst:1351 +#: library/asyncio-eventloop.rst:1383 msgid "" "Return the current exception handler, or ``None`` if no custom exception " "handler was set." msgstr "" -#: library/asyncio-eventloop.rst:1358 +#: library/asyncio-eventloop.rst:1390 msgid "Default exception handler." msgstr "" -#: library/asyncio-eventloop.rst:1360 +#: library/asyncio-eventloop.rst:1392 msgid "" "This is called when an exception occurs and no exception handler is set. " "This can be called by a custom exception handler that wants to defer to the " "default handler behavior." msgstr "" -#: library/asyncio-eventloop.rst:1364 +#: library/asyncio-eventloop.rst:1396 msgid "" "*context* parameter has the same meaning as in :meth:" "`call_exception_handler`." msgstr "" -#: library/asyncio-eventloop.rst:1369 +#: library/asyncio-eventloop.rst:1401 msgid "Call the current event loop exception handler." msgstr "" -#: library/asyncio-eventloop.rst:1371 +#: library/asyncio-eventloop.rst:1403 msgid "" "*context* is a ``dict`` object containing the following keys (new keys may " "be introduced in future Python versions):" msgstr "" -#: library/asyncio-eventloop.rst:1374 +#: library/asyncio-eventloop.rst:1406 msgid "'message': Error message;" msgstr "" -#: library/asyncio-eventloop.rst:1375 +#: library/asyncio-eventloop.rst:1407 msgid "'exception' (optional): Exception object;" msgstr "" -#: library/asyncio-eventloop.rst:1376 +#: library/asyncio-eventloop.rst:1408 msgid "'future' (optional): :class:`asyncio.Future` instance;" msgstr "" -#: library/asyncio-eventloop.rst:1377 +#: library/asyncio-eventloop.rst:1409 msgid "'task' (optional): :class:`asyncio.Task` instance;" msgstr "" -#: library/asyncio-eventloop.rst:1378 +#: library/asyncio-eventloop.rst:1410 msgid "'handle' (optional): :class:`asyncio.Handle` instance;" msgstr "" -#: library/asyncio-eventloop.rst:1379 +#: library/asyncio-eventloop.rst:1411 msgid "'protocol' (optional): :ref:`Protocol ` instance;" msgstr "" -#: library/asyncio-eventloop.rst:1380 +#: library/asyncio-eventloop.rst:1412 msgid "'transport' (optional): :ref:`Transport ` instance;" msgstr "" -#: library/asyncio-eventloop.rst:1381 +#: library/asyncio-eventloop.rst:1413 msgid "'socket' (optional): :class:`socket.socket` instance;" msgstr "" -#: library/asyncio-eventloop.rst:1382 +#: library/asyncio-eventloop.rst:1414 msgid "'asyncgen' (optional): Asynchronous generator that caused" msgstr "" -#: library/asyncio-eventloop.rst:1383 +#: library/asyncio-eventloop.rst:1415 msgid "the exception." msgstr "" -#: library/asyncio-eventloop.rst:1387 +#: library/asyncio-eventloop.rst:1419 msgid "" "This method should not be overloaded in subclassed event loops. For custom " "exception handling, use the :meth:`set_exception_handler` method." msgstr "" -#: library/asyncio-eventloop.rst:1392 +#: library/asyncio-eventloop.rst:1424 msgid "Enabling debug mode" msgstr "" -#: library/asyncio-eventloop.rst:1396 +#: library/asyncio-eventloop.rst:1428 msgid "Get the debug mode (:class:`bool`) of the event loop." msgstr "" -#: library/asyncio-eventloop.rst:1398 +#: library/asyncio-eventloop.rst:1430 msgid "" "The default value is ``True`` if the environment variable :envvar:" "`PYTHONASYNCIODEBUG` is set to a non-empty string, ``False`` otherwise." msgstr "" -#: library/asyncio-eventloop.rst:1404 +#: library/asyncio-eventloop.rst:1436 msgid "Set the debug mode of the event loop." msgstr "" -#: library/asyncio-eventloop.rst:1408 +#: library/asyncio-eventloop.rst:1440 msgid "" "The new :ref:`Python Development Mode ` can now also be used to " "enable the debug mode." msgstr "" -#: library/asyncio-eventloop.rst:1413 +#: library/asyncio-eventloop.rst:1445 msgid "" "This attribute can be used to set the minimum execution duration in seconds " "that is considered \"slow\". When debug mode is enabled, \"slow\" callbacks " "are logged." msgstr "" -#: library/asyncio-eventloop.rst:1417 +#: library/asyncio-eventloop.rst:1449 msgid "Default value is 100 milliseconds." msgstr "" -#: library/asyncio-eventloop.rst:1421 +#: library/asyncio-eventloop.rst:1453 msgid "The :ref:`debug mode of asyncio `." msgstr "" -#: library/asyncio-eventloop.rst:1425 +#: library/asyncio-eventloop.rst:1457 msgid "Running Subprocesses" msgstr "" -#: library/asyncio-eventloop.rst:1427 +#: library/asyncio-eventloop.rst:1459 msgid "" "Methods described in this subsections are low-level. In regular async/await " "code consider using the high-level :func:`asyncio.create_subprocess_shell` " "and :func:`asyncio.create_subprocess_exec` convenience functions instead." msgstr "" -#: library/asyncio-eventloop.rst:1434 +#: library/asyncio-eventloop.rst:1466 msgid "" "On Windows, the default event loop :class:`ProactorEventLoop` supports " "subprocesses, whereas :class:`SelectorEventLoop` does not. See :ref:" "`Subprocess Support on Windows ` for details." msgstr "" -#: library/asyncio-eventloop.rst:1445 +#: library/asyncio-eventloop.rst:1478 msgid "" "Create a subprocess from one or more string arguments specified by *args*." msgstr "" -#: library/asyncio-eventloop.rst:1448 +#: library/asyncio-eventloop.rst:1481 msgid "*args* must be a list of strings represented by:" msgstr "" -#: library/asyncio-eventloop.rst:1450 +#: library/asyncio-eventloop.rst:1483 msgid ":class:`str`;" msgstr "" -#: library/asyncio-eventloop.rst:1451 +#: library/asyncio-eventloop.rst:1484 msgid "" "or :class:`bytes`, encoded to the :ref:`filesystem encoding `." msgstr "" -#: library/asyncio-eventloop.rst:1454 +#: library/asyncio-eventloop.rst:1487 msgid "" "The first string specifies the program executable, and the remaining strings " "specify the arguments. Together, string arguments form the ``argv`` of the " "program." msgstr "" -#: library/asyncio-eventloop.rst:1458 +#: library/asyncio-eventloop.rst:1491 msgid "" "This is similar to the standard library :class:`subprocess.Popen` class " "called with ``shell=False`` and the list of strings passed as the first " @@ -1818,81 +1831,81 @@ msgid "" "which is list of strings, *subprocess_exec* takes multiple string arguments." msgstr "" -#: library/asyncio-eventloop.rst:1464 +#: library/asyncio-eventloop.rst:1497 msgid "" "The *protocol_factory* must be a callable returning a subclass of the :class:" "`asyncio.SubprocessProtocol` class." msgstr "" -#: library/asyncio-eventloop.rst:1467 +#: library/asyncio-eventloop.rst:1500 msgid "Other parameters:" msgstr "" -#: library/asyncio-eventloop.rst:1469 +#: library/asyncio-eventloop.rst:1502 msgid "*stdin* can be any of these:" msgstr "" -#: library/asyncio-eventloop.rst:1471 library/asyncio-eventloop.rst:1482 -#: library/asyncio-eventloop.rst:1492 +#: library/asyncio-eventloop.rst:1504 library/asyncio-eventloop.rst:1515 +#: library/asyncio-eventloop.rst:1525 msgid "a file-like object" msgstr "" -#: library/asyncio-eventloop.rst:1472 +#: library/asyncio-eventloop.rst:1505 msgid "" "an existing file descriptor (a positive integer), for example those created " "with :meth:`os.pipe`" msgstr "" -#: library/asyncio-eventloop.rst:1473 library/asyncio-eventloop.rst:1483 -#: library/asyncio-eventloop.rst:1493 +#: library/asyncio-eventloop.rst:1506 library/asyncio-eventloop.rst:1516 +#: library/asyncio-eventloop.rst:1526 msgid "" "the :const:`subprocess.PIPE` constant (default) which will create a new pipe " "and connect it," msgstr "" -#: library/asyncio-eventloop.rst:1475 library/asyncio-eventloop.rst:1485 -#: library/asyncio-eventloop.rst:1495 +#: library/asyncio-eventloop.rst:1508 library/asyncio-eventloop.rst:1518 +#: library/asyncio-eventloop.rst:1528 msgid "" "the value ``None`` which will make the subprocess inherit the file " "descriptor from this process" msgstr "" -#: library/asyncio-eventloop.rst:1477 library/asyncio-eventloop.rst:1487 -#: library/asyncio-eventloop.rst:1497 +#: library/asyncio-eventloop.rst:1510 library/asyncio-eventloop.rst:1520 +#: library/asyncio-eventloop.rst:1530 msgid "" "the :const:`subprocess.DEVNULL` constant which indicates that the special :" "data:`os.devnull` file will be used" msgstr "" -#: library/asyncio-eventloop.rst:1480 +#: library/asyncio-eventloop.rst:1513 msgid "*stdout* can be any of these:" msgstr "" -#: library/asyncio-eventloop.rst:1490 +#: library/asyncio-eventloop.rst:1523 msgid "*stderr* can be any of these:" msgstr "" -#: library/asyncio-eventloop.rst:1499 +#: library/asyncio-eventloop.rst:1532 msgid "" "the :const:`subprocess.STDOUT` constant which will connect the standard " "error stream to the process' standard output stream" msgstr "" -#: library/asyncio-eventloop.rst:1502 +#: library/asyncio-eventloop.rst:1535 msgid "" "All other keyword arguments are passed to :class:`subprocess.Popen` without " "interpretation, except for *bufsize*, *universal_newlines*, *shell*, *text*, " "*encoding* and *errors*, which should not be specified at all." msgstr "" -#: library/asyncio-eventloop.rst:1507 +#: library/asyncio-eventloop.rst:1540 msgid "" "The ``asyncio`` subprocess API does not support decoding the streams as " "text. :func:`bytes.decode` can be used to convert the bytes returned from " "the stream to text." msgstr "" -#: library/asyncio-eventloop.rst:1511 +#: library/asyncio-eventloop.rst:1544 msgid "" "If a file-like object passed as *stdin*, *stdout* or *stderr* represents a " "pipe, then the other side of this pipe should be registered with :meth:" @@ -1900,52 +1913,52 @@ msgid "" "the event loop." msgstr "" -#: library/asyncio-eventloop.rst:1516 +#: library/asyncio-eventloop.rst:1549 msgid "" "See the constructor of the :class:`subprocess.Popen` class for documentation " "on other arguments." msgstr "" -#: library/asyncio-eventloop.rst:1519 +#: library/asyncio-eventloop.rst:1552 msgid "" "Returns a pair of ``(transport, protocol)``, where *transport* conforms to " "the :class:`asyncio.SubprocessTransport` base class and *protocol* is an " "object instantiated by the *protocol_factory*." msgstr "" -#: library/asyncio-eventloop.rst:1527 +#: library/asyncio-eventloop.rst:1561 msgid "" "Create a subprocess from *cmd*, which can be a :class:`str` or a :class:" "`bytes` string encoded to the :ref:`filesystem encoding `, using the platform's \"shell\" syntax." msgstr "" -#: library/asyncio-eventloop.rst:1532 +#: library/asyncio-eventloop.rst:1566 msgid "" "This is similar to the standard library :class:`subprocess.Popen` class " "called with ``shell=True``." msgstr "" -#: library/asyncio-eventloop.rst:1535 +#: library/asyncio-eventloop.rst:1569 msgid "" "The *protocol_factory* must be a callable returning a subclass of the :class:" "`SubprocessProtocol` class." msgstr "" -#: library/asyncio-eventloop.rst:1538 +#: library/asyncio-eventloop.rst:1572 msgid "" "See :meth:`~loop.subprocess_exec` for more details about the remaining " "arguments." msgstr "" -#: library/asyncio-eventloop.rst:1541 +#: library/asyncio-eventloop.rst:1575 msgid "" "Returns a pair of ``(transport, protocol)``, where *transport* conforms to " "the :class:`SubprocessTransport` base class and *protocol* is an object " "instantiated by the *protocol_factory*." msgstr "" -#: library/asyncio-eventloop.rst:1546 +#: library/asyncio-eventloop.rst:1580 msgid "" "It is the application's responsibility to ensure that all whitespace and " "special characters are quoted appropriately to avoid `shell injection " @@ -1955,74 +1968,74 @@ msgid "" "used to construct shell commands." msgstr "" -#: library/asyncio-eventloop.rst:1555 +#: library/asyncio-eventloop.rst:1589 msgid "Callback Handles" msgstr "" -#: library/asyncio-eventloop.rst:1559 +#: library/asyncio-eventloop.rst:1593 msgid "" "A callback wrapper object returned by :meth:`loop.call_soon`, :meth:`loop." "call_soon_threadsafe`." msgstr "" -#: library/asyncio-eventloop.rst:1564 +#: library/asyncio-eventloop.rst:1598 msgid "" "Return the :class:`contextvars.Context` object associated with the handle." msgstr "" -#: library/asyncio-eventloop.rst:1571 +#: library/asyncio-eventloop.rst:1605 msgid "" "Cancel the callback. If the callback has already been canceled or executed, " "this method has no effect." msgstr "" -#: library/asyncio-eventloop.rst:1576 +#: library/asyncio-eventloop.rst:1610 msgid "Return ``True`` if the callback was cancelled." msgstr "" -#: library/asyncio-eventloop.rst:1582 +#: library/asyncio-eventloop.rst:1616 msgid "" "A callback wrapper object returned by :meth:`loop.call_later`, and :meth:" "`loop.call_at`." msgstr "" -#: library/asyncio-eventloop.rst:1585 +#: library/asyncio-eventloop.rst:1619 msgid "This class is a subclass of :class:`Handle`." msgstr "" -#: library/asyncio-eventloop.rst:1589 +#: library/asyncio-eventloop.rst:1623 msgid "Return a scheduled callback time as :class:`float` seconds." msgstr "" -#: library/asyncio-eventloop.rst:1591 +#: library/asyncio-eventloop.rst:1625 msgid "" "The time is an absolute timestamp, using the same time reference as :meth:" "`loop.time`." msgstr "" -#: library/asyncio-eventloop.rst:1598 +#: library/asyncio-eventloop.rst:1632 msgid "Server Objects" msgstr "" -#: library/asyncio-eventloop.rst:1600 +#: library/asyncio-eventloop.rst:1634 msgid "" "Server objects are created by :meth:`loop.create_server`, :meth:`loop." "create_unix_server`, :func:`start_server`, and :func:`start_unix_server` " "functions." msgstr "" -#: library/asyncio-eventloop.rst:1604 +#: library/asyncio-eventloop.rst:1638 msgid "Do not instantiate the :class:`Server` class directly." msgstr "" -#: library/asyncio-eventloop.rst:1608 +#: library/asyncio-eventloop.rst:1642 msgid "" "*Server* objects are asynchronous context managers. When used in an ``async " "with`` statement, it's guaranteed that the Server object is closed and not " "accepting new connections when the ``async with`` statement is completed::" msgstr "" -#: library/asyncio-eventloop.rst:1613 +#: library/asyncio-eventloop.rst:1647 msgid "" "srv = await loop.create_server(...)\n" "\n" @@ -2032,49 +2045,49 @@ msgid "" "# At this point, srv is closed and no longer accepts new connections." msgstr "" -#: library/asyncio-eventloop.rst:1621 +#: library/asyncio-eventloop.rst:1655 msgid "Server object is an asynchronous context manager since Python 3.7." msgstr "" -#: library/asyncio-eventloop.rst:1624 +#: library/asyncio-eventloop.rst:1658 msgid "" "This class was exposed publicly as ``asyncio.Server`` in Python 3.9.11, " "3.10.3 and 3.11." msgstr "" -#: library/asyncio-eventloop.rst:1629 +#: library/asyncio-eventloop.rst:1663 msgid "" "Stop serving: close listening sockets and set the :attr:`sockets` attribute " "to ``None``." msgstr "" -#: library/asyncio-eventloop.rst:1632 +#: library/asyncio-eventloop.rst:1666 msgid "" "The sockets that represent existing incoming client connections are left " "open." msgstr "" -#: library/asyncio-eventloop.rst:1635 +#: library/asyncio-eventloop.rst:1669 msgid "" "The server is closed asynchronously; use the :meth:`wait_closed` coroutine " "to wait until the server is closed (and no more connections are active)." msgstr "" -#: library/asyncio-eventloop.rst:1641 +#: library/asyncio-eventloop.rst:1675 msgid "Return the event loop associated with the server object." msgstr "" -#: library/asyncio-eventloop.rst:1647 +#: library/asyncio-eventloop.rst:1682 msgid "Start accepting connections." msgstr "" -#: library/asyncio-eventloop.rst:1649 +#: library/asyncio-eventloop.rst:1684 msgid "" "This method is idempotent, so it can be called when the server is already " "serving." msgstr "" -#: library/asyncio-eventloop.rst:1652 +#: library/asyncio-eventloop.rst:1687 msgid "" "The *start_serving* keyword-only parameter to :meth:`loop.create_server` " "and :meth:`asyncio.start_server` allows creating a Server object that is not " @@ -2083,19 +2096,19 @@ msgid "" "accepting connections." msgstr "" -#: library/asyncio-eventloop.rst:1663 +#: library/asyncio-eventloop.rst:1699 msgid "" "Start accepting connections until the coroutine is cancelled. Cancellation " "of ``serve_forever`` task causes the server to be closed." msgstr "" -#: library/asyncio-eventloop.rst:1667 +#: library/asyncio-eventloop.rst:1703 msgid "" "This method can be called if the server is already accepting connections. " "Only one ``serve_forever`` task can exist per one *Server* object." msgstr "" -#: library/asyncio-eventloop.rst:1673 +#: library/asyncio-eventloop.rst:1709 msgid "" "async def client_connected(reader, writer):\n" " # Communicate with the client with\n" @@ -2110,56 +2123,56 @@ msgid "" "asyncio.run(main('127.0.0.1', 0))" msgstr "" -#: library/asyncio-eventloop.rst:1689 +#: library/asyncio-eventloop.rst:1725 msgid "Return ``True`` if the server is accepting new connections." msgstr "" -#: library/asyncio-eventloop.rst:1695 +#: library/asyncio-eventloop.rst:1732 msgid "" "Wait until the :meth:`close` method completes and all active connections " "have finished." msgstr "" -#: library/asyncio-eventloop.rst:1700 +#: library/asyncio-eventloop.rst:1737 msgid "" "List of socket-like objects, ``asyncio.trsock.TransportSocket``, which the " "server is listening on." msgstr "" -#: library/asyncio-eventloop.rst:1703 +#: library/asyncio-eventloop.rst:1740 msgid "" "Prior to Python 3.7 ``Server.sockets`` used to return an internal list of " "server sockets directly. In 3.7 a copy of that list is returned." msgstr "" -#: library/asyncio-eventloop.rst:1713 +#: library/asyncio-eventloop.rst:1750 msgid "Event Loop Implementations" msgstr "" -#: library/asyncio-eventloop.rst:1715 +#: library/asyncio-eventloop.rst:1752 msgid "" "asyncio ships with two different event loop implementations: :class:" "`SelectorEventLoop` and :class:`ProactorEventLoop`." msgstr "" -#: library/asyncio-eventloop.rst:1718 +#: library/asyncio-eventloop.rst:1755 msgid "" "By default asyncio is configured to use :class:`SelectorEventLoop` on Unix " "and :class:`ProactorEventLoop` on Windows." msgstr "" -#: library/asyncio-eventloop.rst:1724 +#: library/asyncio-eventloop.rst:1761 msgid "An event loop based on the :mod:`selectors` module." msgstr "" -#: library/asyncio-eventloop.rst:1726 +#: library/asyncio-eventloop.rst:1763 msgid "" "Uses the most efficient *selector* available for the given platform. It is " "also possible to manually configure the exact selector implementation to be " "used::" msgstr "" -#: library/asyncio-eventloop.rst:1730 +#: library/asyncio-eventloop.rst:1767 msgid "" "import asyncio\n" "import selectors\n" @@ -2172,31 +2185,31 @@ msgid "" "asyncio.set_event_loop_policy(MyPolicy())" msgstr "" -#: library/asyncio-eventloop.rst:1746 +#: library/asyncio-eventloop.rst:1783 msgid "An event loop for Windows that uses \"I/O Completion Ports\" (IOCP)." msgstr "" -#: library/asyncio-eventloop.rst:1752 +#: library/asyncio-eventloop.rst:1789 msgid "" -"`MSDN documentation on I/O Completion Ports `_." +"`MSDN documentation on I/O Completion Ports `_." msgstr "" -#: library/asyncio-eventloop.rst:1758 +#: library/asyncio-eventloop.rst:1795 msgid "Abstract base class for asyncio-compliant event loops." msgstr "" -#: library/asyncio-eventloop.rst:1760 +#: library/asyncio-eventloop.rst:1797 msgid "" "The :ref:`asyncio-event-loop-methods` section lists all methods that an " "alternative implementation of ``AbstractEventLoop`` should have defined." msgstr "" -#: library/asyncio-eventloop.rst:1766 +#: library/asyncio-eventloop.rst:1803 msgid "Examples" msgstr "" -#: library/asyncio-eventloop.rst:1768 +#: library/asyncio-eventloop.rst:1805 msgid "" "Note that all examples in this section **purposefully** show how to use the " "low-level event loop APIs, such as :meth:`loop.run_forever` and :meth:`loop." @@ -2204,17 +2217,17 @@ msgid "" "consider using the high-level functions like :func:`asyncio.run`." msgstr "" -#: library/asyncio-eventloop.rst:1778 +#: library/asyncio-eventloop.rst:1815 msgid "Hello World with call_soon()" msgstr "" -#: library/asyncio-eventloop.rst:1780 +#: library/asyncio-eventloop.rst:1817 msgid "" "An example using the :meth:`loop.call_soon` method to schedule a callback. " "The callback displays ``\"Hello World\"`` and then stops the event loop::" msgstr "" -#: library/asyncio-eventloop.rst:1784 +#: library/asyncio-eventloop.rst:1821 msgid "" "import asyncio\n" "\n" @@ -2235,24 +2248,24 @@ msgid "" " loop.close()" msgstr "" -#: library/asyncio-eventloop.rst:1804 +#: library/asyncio-eventloop.rst:1841 msgid "" "A similar :ref:`Hello World ` example created with a coroutine " "and the :func:`run` function." msgstr "" -#: library/asyncio-eventloop.rst:1811 +#: library/asyncio-eventloop.rst:1848 msgid "Display the current date with call_later()" msgstr "" -#: library/asyncio-eventloop.rst:1813 +#: library/asyncio-eventloop.rst:1850 msgid "" "An example of a callback displaying the current date every second. The " "callback uses the :meth:`loop.call_later` method to reschedule itself after " "5 seconds, and then stops the event loop::" msgstr "" -#: library/asyncio-eventloop.rst:1817 +#: library/asyncio-eventloop.rst:1854 msgid "" "import asyncio\n" "import datetime\n" @@ -2277,23 +2290,23 @@ msgid "" " loop.close()" msgstr "" -#: library/asyncio-eventloop.rst:1841 +#: library/asyncio-eventloop.rst:1878 msgid "" "A similar :ref:`current date ` example created with a " "coroutine and the :func:`run` function." msgstr "" -#: library/asyncio-eventloop.rst:1848 +#: library/asyncio-eventloop.rst:1885 msgid "Watch a file descriptor for read events" msgstr "" -#: library/asyncio-eventloop.rst:1850 +#: library/asyncio-eventloop.rst:1887 msgid "" "Wait until a file descriptor received some data using the :meth:`loop." "add_reader` method and then close the event loop::" msgstr "" -#: library/asyncio-eventloop.rst:1853 +#: library/asyncio-eventloop.rst:1890 msgid "" "import asyncio\n" "from socket import socketpair\n" @@ -2329,33 +2342,33 @@ msgid "" " loop.close()" msgstr "" -#: library/asyncio-eventloop.rst:1888 +#: library/asyncio-eventloop.rst:1925 msgid "" "A similar :ref:`example ` using " "transports, protocols, and the :meth:`loop.create_connection` method." msgstr "" -#: library/asyncio-eventloop.rst:1892 +#: library/asyncio-eventloop.rst:1929 msgid "" "Another similar :ref:`example ` " "using the high-level :func:`asyncio.open_connection` function and streams." msgstr "" -#: library/asyncio-eventloop.rst:1900 +#: library/asyncio-eventloop.rst:1937 msgid "Set signal handlers for SIGINT and SIGTERM" msgstr "" -#: library/asyncio-eventloop.rst:1902 +#: library/asyncio-eventloop.rst:1939 msgid "(This ``signals`` example only works on Unix.)" msgstr "" -#: library/asyncio-eventloop.rst:1904 +#: library/asyncio-eventloop.rst:1941 msgid "" "Register handlers for signals :const:`~signal.SIGINT` and :const:`~signal." "SIGTERM` using the :meth:`loop.add_signal_handler` method::" msgstr "" -#: library/asyncio-eventloop.rst:1907 +#: library/asyncio-eventloop.rst:1944 msgid "" "import asyncio\n" "import functools\n" diff --git a/library/asyncio-queue.po b/library/asyncio-queue.po index ec790f8d4..7cfb8f70b 100644 --- a/library/asyncio-queue.po +++ b/library/asyncio-queue.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -88,22 +88,22 @@ msgid "" "`full` never returns ``True``." msgstr "" -#: library/asyncio-queue.rst:62 +#: library/asyncio-queue.rst:63 msgid "" "Remove and return an item from the queue. If queue is empty, wait until an " "item is available." msgstr "" -#: library/asyncio-queue.rst:67 +#: library/asyncio-queue.rst:68 msgid "" "Return an item if one is immediately available, else raise :exc:`QueueEmpty`." msgstr "" -#: library/asyncio-queue.rst:72 +#: library/asyncio-queue.rst:74 msgid "Block until all items in the queue have been received and processed." msgstr "" -#: library/asyncio-queue.rst:74 +#: library/asyncio-queue.rst:76 msgid "" "The count of unfinished tasks goes up whenever an item is added to the " "queue. The count goes down whenever a consumer coroutine calls :meth:" @@ -112,98 +112,98 @@ msgid "" "unblocks." msgstr "" -#: library/asyncio-queue.rst:82 +#: library/asyncio-queue.rst:85 msgid "" "Put an item into the queue. If the queue is full, wait until a free slot is " "available before adding the item." msgstr "" -#: library/asyncio-queue.rst:87 +#: library/asyncio-queue.rst:90 msgid "Put an item into the queue without blocking." msgstr "" -#: library/asyncio-queue.rst:89 +#: library/asyncio-queue.rst:92 msgid "If no free slot is immediately available, raise :exc:`QueueFull`." msgstr "" -#: library/asyncio-queue.rst:93 +#: library/asyncio-queue.rst:96 msgid "Return the number of items in the queue." msgstr "" -#: library/asyncio-queue.rst:97 -msgid "Indicate that a formerly enqueued task is complete." +#: library/asyncio-queue.rst:100 +msgid "Indicate that a formerly enqueued work item is complete." msgstr "" -#: library/asyncio-queue.rst:99 +#: library/asyncio-queue.rst:102 msgid "" -"Used by queue consumers. For each :meth:`~Queue.get` used to fetch a task, a " -"subsequent call to :meth:`task_done` tells the queue that the processing on " -"the task is complete." +"Used by queue consumers. For each :meth:`~Queue.get` used to fetch a work " +"item, a subsequent call to :meth:`task_done` tells the queue that the " +"processing on the work item is complete." msgstr "" -#: library/asyncio-queue.rst:103 +#: library/asyncio-queue.rst:106 msgid "" "If a :meth:`join` is currently blocking, it will resume when all items have " "been processed (meaning that a :meth:`task_done` call was received for every " "item that had been :meth:`~Queue.put` into the queue)." msgstr "" -#: library/asyncio-queue.rst:108 +#: library/asyncio-queue.rst:111 msgid "" "Raises :exc:`ValueError` if called more times than there were items placed " "in the queue." msgstr "" -#: library/asyncio-queue.rst:113 +#: library/asyncio-queue.rst:116 msgid "Priority Queue" msgstr "" -#: library/asyncio-queue.rst:117 +#: library/asyncio-queue.rst:120 msgid "" "A variant of :class:`Queue`; retrieves entries in priority order (lowest " "first)." msgstr "" -#: library/asyncio-queue.rst:120 +#: library/asyncio-queue.rst:123 msgid "Entries are typically tuples of the form ``(priority_number, data)``." msgstr "" -#: library/asyncio-queue.rst:125 +#: library/asyncio-queue.rst:128 msgid "LIFO Queue" msgstr "" -#: library/asyncio-queue.rst:129 +#: library/asyncio-queue.rst:132 msgid "" "A variant of :class:`Queue` that retrieves most recently added entries first " "(last in, first out)." msgstr "" -#: library/asyncio-queue.rst:134 +#: library/asyncio-queue.rst:137 msgid "Exceptions" msgstr "" -#: library/asyncio-queue.rst:138 +#: library/asyncio-queue.rst:141 msgid "" "This exception is raised when the :meth:`~Queue.get_nowait` method is called " "on an empty queue." msgstr "" -#: library/asyncio-queue.rst:144 +#: library/asyncio-queue.rst:147 msgid "" "Exception raised when the :meth:`~Queue.put_nowait` method is called on a " "queue that has reached its *maxsize*." msgstr "" -#: library/asyncio-queue.rst:149 +#: library/asyncio-queue.rst:152 msgid "Examples" msgstr "" -#: library/asyncio-queue.rst:153 +#: library/asyncio-queue.rst:156 msgid "" "Queues can be used to distribute workload between several concurrent tasks::" msgstr "" -#: library/asyncio-queue.rst:156 +#: library/asyncio-queue.rst:159 msgid "" "import asyncio\n" "import random\n" diff --git a/library/asyncio-stream.po b/library/asyncio-stream.po index d428e415d..4636eea6a 100644 --- a/library/asyncio-stream.po +++ b/library/asyncio-stream.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -35,7 +35,7 @@ msgstr "" msgid "Here is an example of a TCP echo client written using asyncio streams::" msgstr "" -#: library/asyncio-stream.rst:404 +#: library/asyncio-stream.rst:415 msgid "" "import asyncio\n" "\n" @@ -71,59 +71,59 @@ msgid "" "with streams:" msgstr "" -#: library/asyncio-stream.rst:58 +#: library/asyncio-stream.rst:59 msgid "" "Establish a network connection and return a pair of ``(reader, writer)`` " "objects." msgstr "" -#: library/asyncio-stream.rst:61 +#: library/asyncio-stream.rst:62 msgid "" "The returned *reader* and *writer* objects are instances of :class:" "`StreamReader` and :class:`StreamWriter` classes." msgstr "" -#: library/asyncio-stream.rst:109 +#: library/asyncio-stream.rst:111 msgid "" "*limit* determines the buffer size limit used by the returned :class:" "`StreamReader` instance. By default the *limit* is set to 64 KiB." msgstr "" -#: library/asyncio-stream.rst:68 +#: library/asyncio-stream.rst:69 msgid "" "The rest of the arguments are passed directly to :meth:`loop." "create_connection`." msgstr "" -#: library/asyncio-stream.rst:147 +#: library/asyncio-stream.rst:150 msgid "" "The *sock* argument transfers ownership of the socket to the :class:" "`StreamWriter` created. To close the socket, call its :meth:`~asyncio." "StreamWriter.close` method." msgstr "" -#: library/asyncio-stream.rst:77 +#: library/asyncio-stream.rst:78 msgid "Added the *ssl_handshake_timeout* parameter." msgstr "" -#: library/asyncio-stream.rst:80 +#: library/asyncio-stream.rst:81 msgid "Added the *happy_eyeballs_delay* and *interleave* parameters." msgstr "" -#: library/asyncio-stream.rst:125 library/asyncio-stream.rst:187 +#: library/asyncio-stream.rst:127 library/asyncio-stream.rst:191 msgid "Removed the *loop* parameter." msgstr "" -#: library/asyncio-stream.rst:128 library/asyncio-stream.rst:190 -#: library/asyncio-stream.rst:372 +#: library/asyncio-stream.rst:130 library/asyncio-stream.rst:194 +#: library/asyncio-stream.rst:382 msgid "Added the *ssl_shutdown_timeout* parameter." msgstr "" -#: library/asyncio-stream.rst:98 +#: library/asyncio-stream.rst:100 msgid "Start a socket server." msgstr "" -#: library/asyncio-stream.rst:100 +#: library/asyncio-stream.rst:102 msgid "" "The *client_connected_cb* callback is called whenever a new client " "connection is established. It receives a ``(reader, writer)`` pair as two " @@ -131,162 +131,162 @@ msgid "" "classes." msgstr "" -#: library/asyncio-stream.rst:105 +#: library/asyncio-stream.rst:107 msgid "" "*client_connected_cb* can be a plain callable or a :ref:`coroutine function " "`; if it is a coroutine function, it will be automatically " "scheduled as a :class:`Task`." msgstr "" -#: library/asyncio-stream.rst:113 +#: library/asyncio-stream.rst:115 msgid "" "The rest of the arguments are passed directly to :meth:`loop.create_server`." msgstr "" -#: library/asyncio-stream.rst:177 +#: library/asyncio-stream.rst:181 msgid "" "The *sock* argument transfers ownership of the socket to the server created. " "To close the socket, call the server's :meth:`~asyncio.Server.close` method." msgstr "" -#: library/asyncio-stream.rst:122 +#: library/asyncio-stream.rst:124 msgid "Added the *ssl_handshake_timeout* and *start_serving* parameters." msgstr "" -#: library/asyncio-stream.rst:133 +#: library/asyncio-stream.rst:135 msgid "Unix Sockets" msgstr "" -#: library/asyncio-stream.rst:138 +#: library/asyncio-stream.rst:141 msgid "" "Establish a Unix socket connection and return a pair of ``(reader, writer)``." msgstr "" -#: library/asyncio-stream.rst:141 +#: library/asyncio-stream.rst:144 msgid "Similar to :func:`open_connection` but operates on Unix sockets." msgstr "" -#: library/asyncio-stream.rst:143 +#: library/asyncio-stream.rst:146 msgid "See also the documentation of :meth:`loop.create_unix_connection`." msgstr "" -#: library/asyncio-stream.rst:181 +#: library/asyncio-stream.rst:185 msgid "Availability" msgstr "" -#: library/asyncio-stream.rst:153 +#: library/asyncio-stream.rst:156 msgid "" "Added the *ssl_handshake_timeout* parameter. The *path* parameter can now be " "a :term:`path-like object`" msgstr "" -#: library/asyncio-stream.rst:169 +#: library/asyncio-stream.rst:173 msgid "Start a Unix socket server." msgstr "" -#: library/asyncio-stream.rst:171 +#: library/asyncio-stream.rst:175 msgid "Similar to :func:`start_server` but works with Unix sockets." msgstr "" -#: library/asyncio-stream.rst:173 +#: library/asyncio-stream.rst:177 msgid "See also the documentation of :meth:`loop.create_unix_server`." msgstr "" -#: library/asyncio-stream.rst:183 +#: library/asyncio-stream.rst:187 msgid "" "Added the *ssl_handshake_timeout* and *start_serving* parameters. The *path* " "parameter can now be a :term:`path-like object`." msgstr "" -#: library/asyncio-stream.rst:195 +#: library/asyncio-stream.rst:199 msgid "StreamReader" msgstr "" -#: library/asyncio-stream.rst:199 +#: library/asyncio-stream.rst:203 msgid "" "Represents a reader object that provides APIs to read data from the IO " "stream. As an :term:`asynchronous iterable`, the object supports the :" "keyword:`async for` statement." msgstr "" -#: library/asyncio-stream.rst:203 +#: library/asyncio-stream.rst:207 msgid "" "It is not recommended to instantiate *StreamReader* objects directly; use :" "func:`open_connection` and :func:`start_server` instead." msgstr "" -#: library/asyncio-stream.rst:209 +#: library/asyncio-stream.rst:213 msgid "Acknowledge the EOF." msgstr "" -#: library/asyncio-stream.rst:213 +#: library/asyncio-stream.rst:218 msgid "Read up to *n* bytes from the stream." msgstr "" -#: library/asyncio-stream.rst:215 +#: library/asyncio-stream.rst:220 msgid "" "If *n* is not provided or set to ``-1``, read until EOF, then return all " "read :class:`bytes`. If EOF was received and the internal buffer is empty, " "return an empty ``bytes`` object." msgstr "" -#: library/asyncio-stream.rst:220 +#: library/asyncio-stream.rst:225 msgid "If *n* is ``0``, return an empty ``bytes`` object immediately." msgstr "" -#: library/asyncio-stream.rst:222 +#: library/asyncio-stream.rst:227 msgid "" "If *n* is positive, return at most *n* available ``bytes`` as soon as at " "least 1 byte is available in the internal buffer. If EOF is received before " "any byte is read, return an empty ``bytes`` object." msgstr "" -#: library/asyncio-stream.rst:229 +#: library/asyncio-stream.rst:235 msgid "" "Read one line, where \"line\" is a sequence of bytes ending with ``\\n``." msgstr "" -#: library/asyncio-stream.rst:232 +#: library/asyncio-stream.rst:238 msgid "" "If EOF is received and ``\\n`` was not found, the method returns partially " "read data." msgstr "" -#: library/asyncio-stream.rst:235 +#: library/asyncio-stream.rst:241 msgid "" "If EOF is received and the internal buffer is empty, return an empty " "``bytes`` object." msgstr "" -#: library/asyncio-stream.rst:240 +#: library/asyncio-stream.rst:247 msgid "Read exactly *n* bytes." msgstr "" -#: library/asyncio-stream.rst:242 +#: library/asyncio-stream.rst:249 msgid "" "Raise an :exc:`IncompleteReadError` if EOF is reached before *n* can be " "read. Use the :attr:`IncompleteReadError.partial` attribute to get the " "partially read data." msgstr "" -#: library/asyncio-stream.rst:248 +#: library/asyncio-stream.rst:256 msgid "Read data from the stream until *separator* is found." msgstr "" -#: library/asyncio-stream.rst:250 +#: library/asyncio-stream.rst:258 msgid "" "On success, the data and separator will be removed from the internal buffer " "(consumed). Returned data will include the separator at the end." msgstr "" -#: library/asyncio-stream.rst:254 +#: library/asyncio-stream.rst:262 msgid "" "If the amount of data read exceeds the configured stream limit, a :exc:" "`LimitOverrunError` exception is raised, and the data is left in the " "internal buffer and can be read again." msgstr "" -#: library/asyncio-stream.rst:258 +#: library/asyncio-stream.rst:266 msgid "" "If EOF is reached before the complete separator is found, an :exc:" "`IncompleteReadError` exception is raised, and the internal buffer is " @@ -294,103 +294,103 @@ msgid "" "portion of the separator." msgstr "" -#: library/asyncio-stream.rst:267 +#: library/asyncio-stream.rst:275 msgid "Return ``True`` if the buffer is empty and :meth:`feed_eof` was called." msgstr "" -#: library/asyncio-stream.rst:272 +#: library/asyncio-stream.rst:280 msgid "StreamWriter" msgstr "" -#: library/asyncio-stream.rst:276 +#: library/asyncio-stream.rst:284 msgid "" "Represents a writer object that provides APIs to write data to the IO stream." msgstr "" -#: library/asyncio-stream.rst:279 +#: library/asyncio-stream.rst:287 msgid "" "It is not recommended to instantiate *StreamWriter* objects directly; use :" "func:`open_connection` and :func:`start_server` instead." msgstr "" -#: library/asyncio-stream.rst:285 +#: library/asyncio-stream.rst:293 msgid "" "The method attempts to write the *data* to the underlying socket " "immediately. If that fails, the data is queued in an internal write buffer " "until it can be sent." msgstr "" -#: library/asyncio-stream.rst:301 +#: library/asyncio-stream.rst:309 msgid "The method should be used along with the ``drain()`` method::" msgstr "" -#: library/asyncio-stream.rst:291 +#: library/asyncio-stream.rst:299 msgid "" "stream.write(data)\n" "await stream.drain()" msgstr "" -#: library/asyncio-stream.rst:296 +#: library/asyncio-stream.rst:304 msgid "" "The method writes a list (or any iterable) of bytes to the underlying socket " "immediately. If that fails, the data is queued in an internal write buffer " "until it can be sent." msgstr "" -#: library/asyncio-stream.rst:303 +#: library/asyncio-stream.rst:311 msgid "" "stream.writelines(lines)\n" "await stream.drain()" msgstr "" -#: library/asyncio-stream.rst:308 +#: library/asyncio-stream.rst:316 msgid "The method closes the stream and the underlying socket." msgstr "" -#: library/asyncio-stream.rst:310 +#: library/asyncio-stream.rst:318 msgid "" "The method should be used, though not mandatory, along with the " "``wait_closed()`` method::" msgstr "" -#: library/asyncio-stream.rst:313 +#: library/asyncio-stream.rst:321 msgid "" "stream.close()\n" "await stream.wait_closed()" msgstr "" -#: library/asyncio-stream.rst:318 +#: library/asyncio-stream.rst:326 msgid "" "Return ``True`` if the underlying transport supports the :meth:`write_eof` " "method, ``False`` otherwise." msgstr "" -#: library/asyncio-stream.rst:323 +#: library/asyncio-stream.rst:331 msgid "" "Close the write end of the stream after the buffered write data is flushed." msgstr "" -#: library/asyncio-stream.rst:328 +#: library/asyncio-stream.rst:336 msgid "Return the underlying asyncio transport." msgstr "" -#: library/asyncio-stream.rst:332 +#: library/asyncio-stream.rst:340 msgid "" "Access optional transport information; see :meth:`BaseTransport." "get_extra_info` for details." msgstr "" -#: library/asyncio-stream.rst:337 +#: library/asyncio-stream.rst:346 msgid "Wait until it is appropriate to resume writing to the stream. Example::" msgstr "" -#: library/asyncio-stream.rst:340 +#: library/asyncio-stream.rst:349 msgid "" "writer.write(data)\n" "await writer.drain()" msgstr "" -#: library/asyncio-stream.rst:343 +#: library/asyncio-stream.rst:352 msgid "" "This is a flow control method that interacts with the underlying IO write " "buffer. When the size of the buffer reaches the high watermark, *drain()* " @@ -399,82 +399,82 @@ msgid "" "`drain` returns immediately." msgstr "" -#: library/asyncio-stream.rst:353 +#: library/asyncio-stream.rst:363 msgid "Upgrade an existing stream-based connection to TLS." msgstr "" -#: library/asyncio-stream.rst:355 +#: library/asyncio-stream.rst:365 msgid "Parameters:" msgstr "" -#: library/asyncio-stream.rst:357 +#: library/asyncio-stream.rst:367 msgid "*sslcontext*: a configured instance of :class:`~ssl.SSLContext`." msgstr "" -#: library/asyncio-stream.rst:359 +#: library/asyncio-stream.rst:369 msgid "" "*server_hostname*: sets or overrides the host name that the target server's " "certificate will be matched against." msgstr "" -#: library/asyncio-stream.rst:362 +#: library/asyncio-stream.rst:372 msgid "" "*ssl_handshake_timeout* is the time in seconds to wait for the TLS handshake " "to complete before aborting the connection. ``60.0`` seconds if ``None`` " "(default)." msgstr "" -#: library/asyncio-stream.rst:366 +#: library/asyncio-stream.rst:376 msgid "" "*ssl_shutdown_timeout* is the time in seconds to wait for the SSL shutdown " "to complete before aborting the connection. ``30.0`` seconds if ``None`` " "(default)." msgstr "" -#: library/asyncio-stream.rst:378 +#: library/asyncio-stream.rst:388 msgid "" "Return ``True`` if the stream is closed or in the process of being closed." msgstr "" -#: library/asyncio-stream.rst:385 +#: library/asyncio-stream.rst:396 msgid "Wait until the stream is closed." msgstr "" -#: library/asyncio-stream.rst:387 +#: library/asyncio-stream.rst:398 msgid "" "Should be called after :meth:`close` to wait until the underlying connection " "is closed, ensuring that all data has been flushed before e.g. exiting the " "program." msgstr "" -#: library/asyncio-stream.rst:395 +#: library/asyncio-stream.rst:406 msgid "Examples" msgstr "" -#: library/asyncio-stream.rst:400 +#: library/asyncio-stream.rst:411 msgid "TCP echo client using streams" msgstr "" -#: library/asyncio-stream.rst:402 +#: library/asyncio-stream.rst:413 msgid "TCP echo client using the :func:`asyncio.open_connection` function::" msgstr "" -#: library/asyncio-stream.rst:426 +#: library/asyncio-stream.rst:437 msgid "" "The :ref:`TCP echo client protocol " "` example uses the low-level :meth:" "`loop.create_connection` method." msgstr "" -#: library/asyncio-stream.rst:433 +#: library/asyncio-stream.rst:444 msgid "TCP echo server using streams" msgstr "" -#: library/asyncio-stream.rst:435 +#: library/asyncio-stream.rst:446 msgid "TCP echo server using the :func:`asyncio.start_server` function::" msgstr "" -#: library/asyncio-stream.rst:437 +#: library/asyncio-stream.rst:448 msgid "" "import asyncio\n" "\n" @@ -506,23 +506,23 @@ msgid "" "asyncio.run(main())" msgstr "" -#: library/asyncio-stream.rst:469 +#: library/asyncio-stream.rst:480 msgid "" "The :ref:`TCP echo server protocol " "` example uses the :meth:`loop." "create_server` method." msgstr "" -#: library/asyncio-stream.rst:474 +#: library/asyncio-stream.rst:485 msgid "Get HTTP headers" msgstr "" -#: library/asyncio-stream.rst:476 +#: library/asyncio-stream.rst:487 msgid "" "Simple example querying HTTP headers of the URL passed on the command line::" msgstr "" -#: library/asyncio-stream.rst:478 +#: library/asyncio-stream.rst:489 msgid "" "import asyncio\n" "import urllib.parse\n" @@ -561,33 +561,33 @@ msgid "" "asyncio.run(print_http_headers(url))" msgstr "" -#: library/asyncio-stream.rst:515 +#: library/asyncio-stream.rst:526 msgid "Usage::" msgstr "" -#: library/asyncio-stream.rst:517 +#: library/asyncio-stream.rst:528 msgid "python example.py http://example.com/path/page.html" msgstr "" -#: library/asyncio-stream.rst:519 +#: library/asyncio-stream.rst:530 msgid "or with HTTPS::" msgstr "" -#: library/asyncio-stream.rst:521 +#: library/asyncio-stream.rst:532 msgid "python example.py https://example.com/path/page.html" msgstr "" -#: library/asyncio-stream.rst:527 +#: library/asyncio-stream.rst:538 msgid "Register an open socket to wait for data using streams" msgstr "" -#: library/asyncio-stream.rst:529 +#: library/asyncio-stream.rst:540 msgid "" "Coroutine waiting until a socket receives data using the :func:" "`open_connection` function::" msgstr "" -#: library/asyncio-stream.rst:532 +#: library/asyncio-stream.rst:543 msgid "" "import asyncio\n" "import socket\n" @@ -620,14 +620,14 @@ msgid "" "asyncio.run(wait_for_data())" msgstr "" -#: library/asyncio-stream.rst:564 +#: library/asyncio-stream.rst:575 msgid "" "The :ref:`register an open socket to wait for data using a protocol " "` example uses a low-level protocol and " "the :meth:`loop.create_connection` method." msgstr "" -#: library/asyncio-stream.rst:568 +#: library/asyncio-stream.rst:579 msgid "" "The :ref:`watch a file descriptor for read events " "` example uses the low-level :meth:`loop." diff --git a/library/asyncio-subprocess.po b/library/asyncio-subprocess.po index 5ff1ef5ab..cd314374d 100644 --- a/library/asyncio-subprocess.po +++ b/library/asyncio-subprocess.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -96,40 +96,41 @@ msgstr "" msgid "Creating Subprocesses" msgstr "" -#: library/asyncio-subprocess.rst:67 +#: library/asyncio-subprocess.rst:68 msgid "Create a subprocess." msgstr "" -#: library/asyncio-subprocess.rst:69 library/asyncio-subprocess.rst:87 +#: library/asyncio-subprocess.rst:70 library/asyncio-subprocess.rst:89 msgid "" "The *limit* argument sets the buffer limit for :class:`StreamReader` " -"wrappers for :attr:`Process.stdout` and :attr:`Process.stderr` (if :const:" -"`subprocess.PIPE` is passed to *stdout* and *stderr* arguments)." +"wrappers for :attr:`~asyncio.subprocess.Process.stdout` and :attr:`~asyncio." +"subprocess.Process.stderr` (if :const:`subprocess.PIPE` is passed to " +"*stdout* and *stderr* arguments)." msgstr "" -#: library/asyncio-subprocess.rst:73 library/asyncio-subprocess.rst:91 +#: library/asyncio-subprocess.rst:74 library/asyncio-subprocess.rst:93 msgid "Return a :class:`~asyncio.subprocess.Process` instance." msgstr "" -#: library/asyncio-subprocess.rst:75 +#: library/asyncio-subprocess.rst:76 msgid "" "See the documentation of :meth:`loop.subprocess_exec` for other parameters." msgstr "" -#: library/asyncio-subprocess.rst:78 library/asyncio-subprocess.rst:105 +#: library/asyncio-subprocess.rst:79 library/asyncio-subprocess.rst:107 msgid "Removed the *loop* parameter." msgstr "" -#: library/asyncio-subprocess.rst:85 +#: library/asyncio-subprocess.rst:87 msgid "Run the *cmd* shell command." msgstr "" -#: library/asyncio-subprocess.rst:93 +#: library/asyncio-subprocess.rst:95 msgid "" "See the documentation of :meth:`loop.subprocess_shell` for other parameters." msgstr "" -#: library/asyncio-subprocess.rst:98 +#: library/asyncio-subprocess.rst:100 msgid "" "It is the application's responsibility to ensure that all whitespace and " "special characters are quoted appropriately to avoid `shell injection " @@ -139,14 +140,14 @@ msgid "" "be used to construct shell commands." msgstr "" -#: library/asyncio-subprocess.rst:110 +#: library/asyncio-subprocess.rst:112 msgid "" "Subprocesses are available for Windows if a :class:`ProactorEventLoop` is " "used. See :ref:`Subprocess Support on Windows ` " "for details." msgstr "" -#: library/asyncio-subprocess.rst:116 +#: library/asyncio-subprocess.rst:118 msgid "" "asyncio also has the following *low-level* APIs to work with subprocesses: :" "meth:`loop.subprocess_exec`, :meth:`loop.subprocess_shell`, :meth:`loop." @@ -155,47 +156,47 @@ msgid "" "Protocols `." msgstr "" -#: library/asyncio-subprocess.rst:124 +#: library/asyncio-subprocess.rst:126 msgid "Constants" msgstr "" -#: library/asyncio-subprocess.rst:129 +#: library/asyncio-subprocess.rst:131 msgid "Can be passed to the *stdin*, *stdout* or *stderr* parameters." msgstr "" -#: library/asyncio-subprocess.rst:131 +#: library/asyncio-subprocess.rst:133 msgid "" "If *PIPE* is passed to *stdin* argument, the :attr:`Process.stdin ` attribute will point to a :class:`StreamWriter` " -"instance." +"subprocess.Process.stdin>` attribute will point to a :class:`~asyncio." +"StreamWriter` instance." msgstr "" -#: library/asyncio-subprocess.rst:135 +#: library/asyncio-subprocess.rst:137 msgid "" "If *PIPE* is passed to *stdout* or *stderr* arguments, the :attr:`Process." "stdout ` and :attr:`Process.stderr " "` attributes will point to :class:" -"`StreamReader` instances." +"`~asyncio.StreamReader` instances." msgstr "" -#: library/asyncio-subprocess.rst:143 +#: library/asyncio-subprocess.rst:145 msgid "" "Special value that can be used as the *stderr* argument and indicates that " "standard error should be redirected into standard output." msgstr "" -#: library/asyncio-subprocess.rst:149 +#: library/asyncio-subprocess.rst:151 msgid "" "Special value that can be used as the *stdin*, *stdout* or *stderr* argument " "to process creation functions. It indicates that the special file :data:`os." "devnull` will be used for the corresponding subprocess stream." msgstr "" -#: library/asyncio-subprocess.rst:155 +#: library/asyncio-subprocess.rst:157 msgid "Interacting with Subprocesses" msgstr "" -#: library/asyncio-subprocess.rst:157 +#: library/asyncio-subprocess.rst:159 msgid "" "Both :func:`create_subprocess_exec` and :func:`create_subprocess_shell` " "functions return instances of the *Process* class. *Process* is a high-" @@ -203,61 +204,62 @@ msgid "" "their completion." msgstr "" -#: library/asyncio-subprocess.rst:165 +#: library/asyncio-subprocess.rst:167 msgid "" -"An object that wraps OS processes created by the :func:" -"`create_subprocess_exec` and :func:`create_subprocess_shell` functions." +"An object that wraps OS processes created by the :func:`~asyncio." +"create_subprocess_exec` and :func:`~asyncio.create_subprocess_shell` " +"functions." msgstr "" -#: library/asyncio-subprocess.rst:169 +#: library/asyncio-subprocess.rst:171 msgid "" "This class is designed to have a similar API to the :class:`subprocess." "Popen` class, but there are some notable differences:" msgstr "" -#: library/asyncio-subprocess.rst:173 +#: library/asyncio-subprocess.rst:175 msgid "" "unlike Popen, Process instances do not have an equivalent to the :meth:" "`~subprocess.Popen.poll` method;" msgstr "" -#: library/asyncio-subprocess.rst:176 +#: library/asyncio-subprocess.rst:178 msgid "" "the :meth:`~asyncio.subprocess.Process.communicate` and :meth:`~asyncio." "subprocess.Process.wait` methods don't have a *timeout* parameter: use the :" "func:`~asyncio.wait_for` function;" msgstr "" -#: library/asyncio-subprocess.rst:180 +#: library/asyncio-subprocess.rst:182 msgid "" "the :meth:`Process.wait() ` method is " "asynchronous, whereas :meth:`subprocess.Popen.wait` method is implemented as " "a blocking busy loop;" msgstr "" -#: library/asyncio-subprocess.rst:184 +#: library/asyncio-subprocess.rst:186 msgid "the *universal_newlines* parameter is not supported." msgstr "" -#: library/asyncio-subprocess.rst:186 +#: library/asyncio-subprocess.rst:188 msgid "This class is :ref:`not thread safe `." msgstr "" -#: library/asyncio-subprocess.rst:188 +#: library/asyncio-subprocess.rst:190 msgid "" "See also the :ref:`Subprocess and Threads ` " "section." msgstr "" -#: library/asyncio-subprocess.rst:193 +#: library/asyncio-subprocess.rst:196 msgid "Wait for the child process to terminate." msgstr "" -#: library/asyncio-subprocess.rst:195 +#: library/asyncio-subprocess.rst:198 msgid "Set and return the :attr:`returncode` attribute." msgstr "" -#: library/asyncio-subprocess.rst:199 +#: library/asyncio-subprocess.rst:202 msgid "" "This method can deadlock when using ``stdout=PIPE`` or ``stderr=PIPE`` and " "the child process generates so much output that it blocks waiting for the OS " @@ -265,37 +267,37 @@ msgid "" "using pipes to avoid this condition." msgstr "" -#: library/asyncio-subprocess.rst:207 +#: library/asyncio-subprocess.rst:211 msgid "Interact with process:" msgstr "" -#: library/asyncio-subprocess.rst:209 +#: library/asyncio-subprocess.rst:213 msgid "send data to *stdin* (if *input* is not ``None``);" msgstr "" -#: library/asyncio-subprocess.rst:210 +#: library/asyncio-subprocess.rst:214 msgid "closes *stdin*;" msgstr "" -#: library/asyncio-subprocess.rst:211 +#: library/asyncio-subprocess.rst:215 msgid "read data from *stdout* and *stderr*, until EOF is reached;" msgstr "" -#: library/asyncio-subprocess.rst:212 +#: library/asyncio-subprocess.rst:216 msgid "wait for process to terminate." msgstr "" -#: library/asyncio-subprocess.rst:214 +#: library/asyncio-subprocess.rst:218 msgid "" "The optional *input* argument is the data (:class:`bytes` object) that will " "be sent to the child process." msgstr "" -#: library/asyncio-subprocess.rst:217 +#: library/asyncio-subprocess.rst:221 msgid "Return a tuple ``(stdout_data, stderr_data)``." msgstr "" -#: library/asyncio-subprocess.rst:219 +#: library/asyncio-subprocess.rst:223 msgid "" "If either :exc:`BrokenPipeError` or :exc:`ConnectionResetError` exception is " "raised when writing *input* into *stdin*, the exception is ignored. This " @@ -303,7 +305,7 @@ msgid "" "*stdin*." msgstr "" -#: library/asyncio-subprocess.rst:224 +#: library/asyncio-subprocess.rst:228 msgid "" "If it is desired to send data to the process' *stdin*, the process needs to " "be created with ``stdin=PIPE``. Similarly, to get anything other than " @@ -311,75 +313,76 @@ msgid "" "``stdout=PIPE`` and/or ``stderr=PIPE`` arguments." msgstr "" -#: library/asyncio-subprocess.rst:230 +#: library/asyncio-subprocess.rst:234 msgid "" "Note, that the data read is buffered in memory, so do not use this method if " "the data size is large or unlimited." msgstr "" -#: library/asyncio-subprocess.rst:235 -msgid "*stdin* gets closed when `input=None` too." +#: library/asyncio-subprocess.rst:239 +msgid "*stdin* gets closed when ``input=None`` too." msgstr "" -#: library/asyncio-subprocess.rst:239 +#: library/asyncio-subprocess.rst:243 msgid "Sends the signal *signal* to the child process." msgstr "" -#: library/asyncio-subprocess.rst:243 +#: library/asyncio-subprocess.rst:247 msgid "" "On Windows, :py:const:`~signal.SIGTERM` is an alias for :meth:`terminate`. " "``CTRL_C_EVENT`` and ``CTRL_BREAK_EVENT`` can be sent to processes started " "with a *creationflags* parameter which includes ``CREATE_NEW_PROCESS_GROUP``." msgstr "" -#: library/asyncio-subprocess.rst:250 +#: library/asyncio-subprocess.rst:254 msgid "Stop the child process." msgstr "" -#: library/asyncio-subprocess.rst:252 +#: library/asyncio-subprocess.rst:256 msgid "" "On POSIX systems this method sends :py:const:`~signal.SIGTERM` to the child " "process." msgstr "" -#: library/asyncio-subprocess.rst:255 +#: library/asyncio-subprocess.rst:259 msgid "" "On Windows the Win32 API function :c:func:`!TerminateProcess` is called to " "stop the child process." msgstr "" -#: library/asyncio-subprocess.rst:260 +#: library/asyncio-subprocess.rst:264 msgid "Kill the child process." msgstr "" -#: library/asyncio-subprocess.rst:262 +#: library/asyncio-subprocess.rst:266 msgid "" -"On POSIX systems this method sends :py:data:`SIGKILL` to the child process." +"On POSIX systems this method sends :py:data:`~signal.SIGKILL` to the child " +"process." msgstr "" -#: library/asyncio-subprocess.rst:265 +#: library/asyncio-subprocess.rst:269 msgid "On Windows this method is an alias for :meth:`terminate`." msgstr "" -#: library/asyncio-subprocess.rst:269 +#: library/asyncio-subprocess.rst:273 msgid "" -"Standard input stream (:class:`StreamWriter`) or ``None`` if the process was " -"created with ``stdin=None``." +"Standard input stream (:class:`~asyncio.StreamWriter`) or ``None`` if the " +"process was created with ``stdin=None``." msgstr "" -#: library/asyncio-subprocess.rst:274 +#: library/asyncio-subprocess.rst:278 msgid "" -"Standard output stream (:class:`StreamReader`) or ``None`` if the process " -"was created with ``stdout=None``." +"Standard output stream (:class:`~asyncio.StreamReader`) or ``None`` if the " +"process was created with ``stdout=None``." msgstr "" -#: library/asyncio-subprocess.rst:279 +#: library/asyncio-subprocess.rst:283 msgid "" -"Standard error stream (:class:`StreamReader`) or ``None`` if the process was " -"created with ``stderr=None``." +"Standard error stream (:class:`~asyncio.StreamReader`) or ``None`` if the " +"process was created with ``stderr=None``." msgstr "" -#: library/asyncio-subprocess.rst:284 +#: library/asyncio-subprocess.rst:288 msgid "" "Use the :meth:`communicate` method rather than :attr:`process.stdin.write() " "`, :attr:`await process.stdout.read() ` or :attr:`await " @@ -387,93 +390,94 @@ msgid "" "pausing reading or writing and blocking the child process." msgstr "" -#: library/asyncio-subprocess.rst:293 +#: library/asyncio-subprocess.rst:297 msgid "Process identification number (PID)." msgstr "" -#: library/asyncio-subprocess.rst:295 +#: library/asyncio-subprocess.rst:299 msgid "" -"Note that for processes created by the :func:`create_subprocess_shell` " -"function, this attribute is the PID of the spawned shell." +"Note that for processes created by the :func:`~asyncio." +"create_subprocess_shell` function, this attribute is the PID of the spawned " +"shell." msgstr "" -#: library/asyncio-subprocess.rst:300 +#: library/asyncio-subprocess.rst:304 msgid "Return code of the process when it exits." msgstr "" -#: library/asyncio-subprocess.rst:302 +#: library/asyncio-subprocess.rst:306 msgid "A ``None`` value indicates that the process has not terminated yet." msgstr "" -#: library/asyncio-subprocess.rst:304 +#: library/asyncio-subprocess.rst:308 msgid "" "A negative value ``-N`` indicates that the child was terminated by signal " "``N`` (POSIX only)." msgstr "" -#: library/asyncio-subprocess.rst:311 +#: library/asyncio-subprocess.rst:315 msgid "Subprocess and Threads" msgstr "" -#: library/asyncio-subprocess.rst:313 +#: library/asyncio-subprocess.rst:317 msgid "" "Standard asyncio event loop supports running subprocesses from different " "threads by default." msgstr "" -#: library/asyncio-subprocess.rst:316 +#: library/asyncio-subprocess.rst:320 msgid "" "On Windows subprocesses are provided by :class:`ProactorEventLoop` only " "(default), :class:`SelectorEventLoop` has no subprocess support." msgstr "" -#: library/asyncio-subprocess.rst:319 +#: library/asyncio-subprocess.rst:323 msgid "" "On UNIX *child watchers* are used for subprocess finish waiting, see :ref:" "`asyncio-watchers` for more info." msgstr "" -#: library/asyncio-subprocess.rst:325 +#: library/asyncio-subprocess.rst:329 msgid "" "UNIX switched to use :class:`ThreadedChildWatcher` for spawning subprocesses " "from different threads without any limitation." msgstr "" -#: library/asyncio-subprocess.rst:328 +#: library/asyncio-subprocess.rst:332 msgid "" "Spawning a subprocess with *inactive* current child watcher raises :exc:" "`RuntimeError`." msgstr "" -#: library/asyncio-subprocess.rst:331 +#: library/asyncio-subprocess.rst:335 msgid "" "Note that alternative event loop implementations might have own limitations; " "please refer to their documentation." msgstr "" -#: library/asyncio-subprocess.rst:336 +#: library/asyncio-subprocess.rst:340 msgid "" "The :ref:`Concurrency and multithreading in asyncio ` section." msgstr "" -#: library/asyncio-subprocess.rst:341 +#: library/asyncio-subprocess.rst:345 msgid "Examples" msgstr "" -#: library/asyncio-subprocess.rst:343 +#: library/asyncio-subprocess.rst:347 msgid "" "An example using the :class:`~asyncio.subprocess.Process` class to control a " "subprocess and the :class:`StreamReader` class to read from its standard " "output." msgstr "" -#: library/asyncio-subprocess.rst:349 +#: library/asyncio-subprocess.rst:353 msgid "" "The subprocess is created by the :func:`create_subprocess_exec` function::" msgstr "" -#: library/asyncio-subprocess.rst:352 +#: library/asyncio-subprocess.rst:356 msgid "" "import asyncio\n" "import sys\n" @@ -499,7 +503,7 @@ msgid "" "print(f\"Current date: {date}\")" msgstr "" -#: library/asyncio-subprocess.rst:376 +#: library/asyncio-subprocess.rst:380 msgid "" "See also the :ref:`same example ` written " "using low-level APIs." diff --git a/library/asyncio-sync.po b/library/asyncio-sync.po index 5a4b50d58..8e3c2110a 100644 --- a/library/asyncio-sync.po +++ b/library/asyncio-sync.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -98,7 +98,7 @@ msgid "" " # access shared state" msgstr "" -#: library/asyncio-sync.rst:199 library/asyncio-sync.rst:298 +#: library/asyncio-sync.rst:201 library/asyncio-sync.rst:304 msgid "which is equivalent to::" msgstr "" @@ -114,64 +114,64 @@ msgid "" " lock.release()" msgstr "" -#: library/asyncio-sync.rst:112 library/asyncio-sync.rst:286 -#: library/asyncio-sync.rst:341 +#: library/asyncio-sync.rst:113 library/asyncio-sync.rst:292 +#: library/asyncio-sync.rst:348 msgid "Removed the *loop* parameter." msgstr "" -#: library/asyncio-sync.rst:72 +#: library/asyncio-sync.rst:73 msgid "Acquire the lock." msgstr "" -#: library/asyncio-sync.rst:74 +#: library/asyncio-sync.rst:75 msgid "" "This method waits until the lock is *unlocked*, sets it to *locked* and " "returns ``True``." msgstr "" -#: library/asyncio-sync.rst:77 +#: library/asyncio-sync.rst:78 msgid "" "When more than one coroutine is blocked in :meth:`acquire` waiting for the " "lock to be unlocked, only one coroutine eventually proceeds." msgstr "" -#: library/asyncio-sync.rst:81 +#: library/asyncio-sync.rst:82 msgid "" "Acquiring a lock is *fair*: the coroutine that proceeds will be the first " "coroutine that started waiting on the lock." msgstr "" -#: library/asyncio-sync.rst:86 +#: library/asyncio-sync.rst:87 msgid "Release the lock." msgstr "" -#: library/asyncio-sync.rst:88 +#: library/asyncio-sync.rst:89 msgid "When the lock is *locked*, reset it to *unlocked* and return." msgstr "" -#: library/asyncio-sync.rst:90 +#: library/asyncio-sync.rst:91 msgid "If the lock is *unlocked*, a :exc:`RuntimeError` is raised." msgstr "" -#: library/asyncio-sync.rst:94 +#: library/asyncio-sync.rst:95 msgid "Return ``True`` if the lock is *locked*." msgstr "" -#: library/asyncio-sync.rst:98 +#: library/asyncio-sync.rst:99 msgid "Event" msgstr "" -#: library/asyncio-sync.rst:102 +#: library/asyncio-sync.rst:103 msgid "An event object. Not thread-safe." msgstr "" -#: library/asyncio-sync.rst:104 +#: library/asyncio-sync.rst:105 msgid "" "An asyncio event can be used to notify multiple asyncio tasks that some " "event has happened." msgstr "" -#: library/asyncio-sync.rst:107 +#: library/asyncio-sync.rst:108 msgid "" "An Event object manages an internal flag that can be set to *true* with the :" "meth:`~Event.set` method and reset to *false* with the :meth:`clear` " @@ -179,11 +179,11 @@ msgid "" "*true*. The flag is set to *false* initially." msgstr "" -#: library/asyncio-sync.rst:365 +#: library/asyncio-sync.rst:372 msgid "Example::" msgstr "" -#: library/asyncio-sync.rst:119 +#: library/asyncio-sync.rst:120 msgid "" "async def waiter(event):\n" " print('waiting for it ...')\n" @@ -207,53 +207,53 @@ msgid "" "asyncio.run(main())" msgstr "" -#: library/asyncio-sync.rst:142 +#: library/asyncio-sync.rst:144 msgid "Wait until the event is set." msgstr "" -#: library/asyncio-sync.rst:144 +#: library/asyncio-sync.rst:146 msgid "" "If the event is set, return ``True`` immediately. Otherwise block until " "another task calls :meth:`~Event.set`." msgstr "" -#: library/asyncio-sync.rst:149 +#: library/asyncio-sync.rst:151 msgid "Set the event." msgstr "" -#: library/asyncio-sync.rst:151 +#: library/asyncio-sync.rst:153 msgid "All tasks waiting for event to be set will be immediately awakened." msgstr "" -#: library/asyncio-sync.rst:156 +#: library/asyncio-sync.rst:158 msgid "Clear (unset) the event." msgstr "" -#: library/asyncio-sync.rst:158 +#: library/asyncio-sync.rst:160 msgid "" "Tasks awaiting on :meth:`~Event.wait` will now block until the :meth:`~Event." "set` method is called again." msgstr "" -#: library/asyncio-sync.rst:163 +#: library/asyncio-sync.rst:165 msgid "Return ``True`` if the event is set." msgstr "" -#: library/asyncio-sync.rst:167 +#: library/asyncio-sync.rst:169 msgid "Condition" msgstr "" -#: library/asyncio-sync.rst:171 +#: library/asyncio-sync.rst:173 msgid "A Condition object. Not thread-safe." msgstr "" -#: library/asyncio-sync.rst:173 +#: library/asyncio-sync.rst:175 msgid "" "An asyncio condition primitive can be used by a task to wait for some event " "to happen and then get exclusive access to a shared resource." msgstr "" -#: library/asyncio-sync.rst:177 +#: library/asyncio-sync.rst:179 msgid "" "In essence, a Condition object combines the functionality of an :class:" "`Event` and a :class:`Lock`. It is possible to have multiple Condition " @@ -262,18 +262,18 @@ msgid "" "that shared resource." msgstr "" -#: library/asyncio-sync.rst:183 +#: library/asyncio-sync.rst:185 msgid "" "The optional *lock* argument must be a :class:`Lock` object or ``None``. In " "the latter case a new Lock object is created automatically." msgstr "" -#: library/asyncio-sync.rst:190 +#: library/asyncio-sync.rst:192 msgid "" "The preferred way to use a Condition is an :keyword:`async with` statement::" msgstr "" -#: library/asyncio-sync.rst:193 +#: library/asyncio-sync.rst:195 msgid "" "cond = asyncio.Condition()\n" "\n" @@ -282,7 +282,7 @@ msgid "" " await cond.wait()" msgstr "" -#: library/asyncio-sync.rst:201 +#: library/asyncio-sync.rst:203 msgid "" "cond = asyncio.Condition()\n" "\n" @@ -294,85 +294,86 @@ msgid "" " cond.release()" msgstr "" -#: library/asyncio-sync.rst:212 +#: library/asyncio-sync.rst:215 msgid "Acquire the underlying lock." msgstr "" -#: library/asyncio-sync.rst:214 +#: library/asyncio-sync.rst:217 msgid "" "This method waits until the underlying lock is *unlocked*, sets it to " "*locked* and returns ``True``." msgstr "" -#: library/asyncio-sync.rst:219 +#: library/asyncio-sync.rst:222 msgid "" "Wake up at most *n* tasks (1 by default) waiting on this condition. The " "method is no-op if no tasks are waiting." msgstr "" -#: library/asyncio-sync.rst:237 +#: library/asyncio-sync.rst:240 msgid "" "The lock must be acquired before this method is called and released shortly " "after. If called with an *unlocked* lock a :exc:`RuntimeError` error is " "raised." msgstr "" -#: library/asyncio-sync.rst:228 +#: library/asyncio-sync.rst:231 msgid "Return ``True`` if the underlying lock is acquired." msgstr "" -#: library/asyncio-sync.rst:232 +#: library/asyncio-sync.rst:235 msgid "Wake up all tasks waiting on this condition." msgstr "" -#: library/asyncio-sync.rst:234 +#: library/asyncio-sync.rst:237 msgid "This method acts like :meth:`notify`, but wakes up all waiting tasks." msgstr "" -#: library/asyncio-sync.rst:243 +#: library/asyncio-sync.rst:246 msgid "Release the underlying lock." msgstr "" -#: library/asyncio-sync.rst:245 +#: library/asyncio-sync.rst:248 msgid "When invoked on an unlocked lock, a :exc:`RuntimeError` is raised." msgstr "" -#: library/asyncio-sync.rst:250 +#: library/asyncio-sync.rst:254 msgid "Wait until notified." msgstr "" -#: library/asyncio-sync.rst:252 +#: library/asyncio-sync.rst:256 msgid "" "If the calling task has not acquired the lock when this method is called, a :" "exc:`RuntimeError` is raised." msgstr "" -#: library/asyncio-sync.rst:255 +#: library/asyncio-sync.rst:259 msgid "" "This method releases the underlying lock, and then blocks until it is " "awakened by a :meth:`notify` or :meth:`notify_all` call. Once awakened, the " "Condition re-acquires its lock and this method returns ``True``." msgstr "" -#: library/asyncio-sync.rst:262 +#: library/asyncio-sync.rst:267 msgid "Wait until a predicate becomes *true*." msgstr "" -#: library/asyncio-sync.rst:264 +#: library/asyncio-sync.rst:269 msgid "" "The predicate must be a callable which result will be interpreted as a " -"boolean value. The final value is the return value." +"boolean value. The method will repeatedly :meth:`~Condition.wait` until the " +"predicate evaluates to *true*. The final value is the return value." msgstr "" -#: library/asyncio-sync.rst:270 +#: library/asyncio-sync.rst:276 msgid "Semaphore" msgstr "" -#: library/asyncio-sync.rst:274 +#: library/asyncio-sync.rst:280 msgid "A Semaphore object. Not thread-safe." msgstr "" -#: library/asyncio-sync.rst:276 +#: library/asyncio-sync.rst:282 msgid "" "A semaphore manages an internal counter which is decremented by each :meth:" "`acquire` call and incremented by each :meth:`release` call. The counter can " @@ -380,19 +381,19 @@ msgid "" "waiting until some task calls :meth:`release`." msgstr "" -#: library/asyncio-sync.rst:282 +#: library/asyncio-sync.rst:288 msgid "" "The optional *value* argument gives the initial value for the internal " "counter (``1`` by default). If the given value is less than ``0`` a :exc:" "`ValueError` is raised." msgstr "" -#: library/asyncio-sync.rst:289 +#: library/asyncio-sync.rst:295 msgid "" "The preferred way to use a Semaphore is an :keyword:`async with` statement::" msgstr "" -#: library/asyncio-sync.rst:292 +#: library/asyncio-sync.rst:298 msgid "" "sem = asyncio.Semaphore(10)\n" "\n" @@ -401,7 +402,7 @@ msgid "" " # work with shared resource" msgstr "" -#: library/asyncio-sync.rst:300 +#: library/asyncio-sync.rst:306 msgid "" "sem = asyncio.Semaphore(10)\n" "\n" @@ -413,57 +414,57 @@ msgid "" " sem.release()" msgstr "" -#: library/asyncio-sync.rst:311 +#: library/asyncio-sync.rst:318 msgid "Acquire a semaphore." msgstr "" -#: library/asyncio-sync.rst:313 +#: library/asyncio-sync.rst:320 msgid "" "If the internal counter is greater than zero, decrement it by one and return " "``True`` immediately. If it is zero, wait until a :meth:`release` is called " "and return ``True``." msgstr "" -#: library/asyncio-sync.rst:319 +#: library/asyncio-sync.rst:326 msgid "Returns ``True`` if semaphore can not be acquired immediately." msgstr "" -#: library/asyncio-sync.rst:323 +#: library/asyncio-sync.rst:330 msgid "" "Release a semaphore, incrementing the internal counter by one. Can wake up a " "task waiting to acquire the semaphore." msgstr "" -#: library/asyncio-sync.rst:326 +#: library/asyncio-sync.rst:333 msgid "" "Unlike :class:`BoundedSemaphore`, :class:`Semaphore` allows making more " "``release()`` calls than ``acquire()`` calls." msgstr "" -#: library/asyncio-sync.rst:331 +#: library/asyncio-sync.rst:338 msgid "BoundedSemaphore" msgstr "" -#: library/asyncio-sync.rst:335 +#: library/asyncio-sync.rst:342 msgid "A bounded semaphore object. Not thread-safe." msgstr "" -#: library/asyncio-sync.rst:337 +#: library/asyncio-sync.rst:344 msgid "" "Bounded Semaphore is a version of :class:`Semaphore` that raises a :exc:" "`ValueError` in :meth:`~Semaphore.release` if it increases the internal " "counter above the initial *value*." msgstr "" -#: library/asyncio-sync.rst:346 +#: library/asyncio-sync.rst:353 msgid "Barrier" msgstr "" -#: library/asyncio-sync.rst:350 +#: library/asyncio-sync.rst:357 msgid "A barrier object. Not thread-safe." msgstr "" -#: library/asyncio-sync.rst:352 +#: library/asyncio-sync.rst:359 msgid "" "A barrier is a simple synchronization primitive that allows to block until " "*parties* number of tasks are waiting on it. Tasks can wait on the :meth:" @@ -472,17 +473,17 @@ msgid "" "waiting tasks would unblock simultaneously." msgstr "" -#: library/asyncio-sync.rst:358 +#: library/asyncio-sync.rst:365 msgid "" ":keyword:`async with` can be used as an alternative to awaiting on :meth:" "`~Barrier.wait`." msgstr "" -#: library/asyncio-sync.rst:361 +#: library/asyncio-sync.rst:368 msgid "The barrier can be reused any number of times." msgstr "" -#: library/asyncio-sync.rst:367 +#: library/asyncio-sync.rst:374 msgid "" "async def example_barrier():\n" " # barrier with 3 parties\n" @@ -506,11 +507,11 @@ msgid "" "asyncio.run(example_barrier())" msgstr "" -#: library/asyncio-sync.rst:388 +#: library/asyncio-sync.rst:395 msgid "Result of this example is::" msgstr "" -#: library/asyncio-sync.rst:390 +#: library/asyncio-sync.rst:397 msgid "" "\n" "\n" @@ -518,27 +519,27 @@ msgid "" "" msgstr "" -#: library/asyncio-sync.rst:399 +#: library/asyncio-sync.rst:407 msgid "" "Pass the barrier. When all the tasks party to the barrier have called this " "function, they are all unblocked simultaneously." msgstr "" -#: library/asyncio-sync.rst:402 +#: library/asyncio-sync.rst:410 msgid "" "When a waiting or blocked task in the barrier is cancelled, this task exits " "the barrier which stays in the same state. If the state of the barrier is " "\"filling\", the number of waiting task decreases by 1." msgstr "" -#: library/asyncio-sync.rst:407 +#: library/asyncio-sync.rst:415 msgid "" "The return value is an integer in the range of 0 to ``parties-1``, different " "for each task. This can be used to select a task to do some special " "housekeeping, e.g.::" msgstr "" -#: library/asyncio-sync.rst:411 +#: library/asyncio-sync.rst:419 msgid "" "...\n" "async with barrier as position:\n" @@ -547,51 +548,52 @@ msgid "" " print('End of *draining phase*')" msgstr "" -#: library/asyncio-sync.rst:417 +#: library/asyncio-sync.rst:425 msgid "" "This method may raise a :class:`BrokenBarrierError` exception if the barrier " "is broken or reset while a task is waiting. It could raise a :exc:" "`CancelledError` if a task is cancelled." msgstr "" -#: library/asyncio-sync.rst:423 +#: library/asyncio-sync.rst:432 msgid "" "Return the barrier to the default, empty state. Any tasks waiting on it " "will receive the :class:`BrokenBarrierError` exception." msgstr "" -#: library/asyncio-sync.rst:426 +#: library/asyncio-sync.rst:435 msgid "" "If a barrier is broken it may be better to just leave it and create a new " "one." msgstr "" -#: library/asyncio-sync.rst:430 +#: library/asyncio-sync.rst:440 msgid "" "Put the barrier into a broken state. This causes any active or future calls " -"to :meth:`wait` to fail with the :class:`BrokenBarrierError`. Use this for " -"example if one of the tasks needs to abort, to avoid infinite waiting tasks." +"to :meth:`~Barrier.wait` to fail with the :class:`BrokenBarrierError`. Use " +"this for example if one of the tasks needs to abort, to avoid infinite " +"waiting tasks." msgstr "" -#: library/asyncio-sync.rst:437 +#: library/asyncio-sync.rst:447 msgid "The number of tasks required to pass the barrier." msgstr "" -#: library/asyncio-sync.rst:441 +#: library/asyncio-sync.rst:451 msgid "The number of tasks currently waiting in the barrier while filling." msgstr "" -#: library/asyncio-sync.rst:445 +#: library/asyncio-sync.rst:455 msgid "A boolean that is ``True`` if the barrier is in the broken state." msgstr "" -#: library/asyncio-sync.rst:450 +#: library/asyncio-sync.rst:460 msgid "" "This exception, a subclass of :exc:`RuntimeError`, is raised when the :class:" "`Barrier` object is reset or broken." msgstr "" -#: library/asyncio-sync.rst:458 +#: library/asyncio-sync.rst:468 msgid "" "Acquiring a lock using ``await lock`` or ``yield from lock`` and/or :keyword:" "`with` statement (``with await lock``, ``with (yield from lock)``) was " diff --git a/library/asyncio-task.po b/library/asyncio-task.po index 99a80e741..283708d9e 100644 --- a/library/asyncio-task.po +++ b/library/asyncio-task.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -398,11 +398,11 @@ msgid "" " task.add_done_callback(background_tasks.discard)" msgstr "" -#: library/asyncio-task.rst:1122 +#: library/asyncio-task.rst:1126 msgid "Added the *name* parameter." msgstr "" -#: library/asyncio-task.rst:1129 +#: library/asyncio-task.rst:1133 msgid "Added the *context* parameter." msgstr "" @@ -459,8 +459,8 @@ msgid "" "`asyncio.create_task`." msgstr "" -#: library/asyncio-task.rst:519 library/asyncio-task.rst:750 -#: library/asyncio-task.rst:816 library/asyncio-task.rst:915 +#: library/asyncio-task.rst:520 library/asyncio-task.rst:751 +#: library/asyncio-task.rst:818 library/asyncio-task.rst:918 msgid "Example::" msgstr "" @@ -583,34 +583,34 @@ msgstr "" msgid "Sleeping" msgstr "" -#: library/asyncio-task.rst:441 +#: library/asyncio-task.rst:442 msgid "Block for *delay* seconds." msgstr "" -#: library/asyncio-task.rst:443 +#: library/asyncio-task.rst:444 msgid "" "If *result* is provided, it is returned to the caller when the coroutine " "completes." msgstr "" -#: library/asyncio-task.rst:446 +#: library/asyncio-task.rst:447 msgid "" "``sleep()`` always suspends the current task, allowing other tasks to run." msgstr "" -#: library/asyncio-task.rst:449 +#: library/asyncio-task.rst:450 msgid "" "Setting the delay to 0 provides an optimized path to allow other tasks to " "run. This can be used by long-running functions to avoid blocking the event " "loop for the full duration of the function call." msgstr "" -#: library/asyncio-task.rst:455 +#: library/asyncio-task.rst:456 msgid "" "Example of coroutine displaying the current date every second for 5 seconds::" msgstr "" -#: library/asyncio-task.rst:458 +#: library/asyncio-task.rst:459 msgid "" "import asyncio\n" "import datetime\n" @@ -627,35 +627,35 @@ msgid "" "asyncio.run(display_date())" msgstr "" -#: library/asyncio-task.rst:568 library/asyncio-task.rst:841 -#: library/asyncio-task.rst:921 +#: library/asyncio-task.rst:569 library/asyncio-task.rst:843 +#: library/asyncio-task.rst:924 msgid "Removed the *loop* parameter." msgstr "" -#: library/asyncio-task.rst:478 +#: library/asyncio-task.rst:479 msgid "Running Tasks Concurrently" msgstr "" -#: library/asyncio-task.rst:482 +#: library/asyncio-task.rst:483 msgid "" "Run :ref:`awaitable objects ` in the *aws* sequence " "*concurrently*." msgstr "" -#: library/asyncio-task.rst:485 +#: library/asyncio-task.rst:486 msgid "" "If any awaitable in *aws* is a coroutine, it is automatically scheduled as a " "Task." msgstr "" -#: library/asyncio-task.rst:488 +#: library/asyncio-task.rst:489 msgid "" "If all awaitables are completed successfully, the result is an aggregate " "list of returned values. The order of result values corresponds to the " "order of awaitables in *aws*." msgstr "" -#: library/asyncio-task.rst:492 +#: library/asyncio-task.rst:493 msgid "" "If *return_exceptions* is ``False`` (default), the first raised exception is " "immediately propagated to the task that awaits on ``gather()``. Other " @@ -663,19 +663,19 @@ msgid "" "run." msgstr "" -#: library/asyncio-task.rst:497 +#: library/asyncio-task.rst:498 msgid "" "If *return_exceptions* is ``True``, exceptions are treated the same as " "successful results, and aggregated in the result list." msgstr "" -#: library/asyncio-task.rst:500 +#: library/asyncio-task.rst:501 msgid "" "If ``gather()`` is *cancelled*, all submitted awaitables (that have not " "completed yet) are also *cancelled*." msgstr "" -#: library/asyncio-task.rst:503 +#: library/asyncio-task.rst:504 msgid "" "If any Task or Future from the *aws* sequence is *cancelled*, it is treated " "as if it raised :exc:`CancelledError` -- the ``gather()`` call is **not** " @@ -683,7 +683,7 @@ msgid "" "submitted Task/Future to cause other Tasks/Futures to be cancelled." msgstr "" -#: library/asyncio-task.rst:510 +#: library/asyncio-task.rst:511 msgid "" "A new alternative to create and run tasks concurrently and wait for their " "completion is :class:`asyncio.TaskGroup`. *TaskGroup* provides stronger " @@ -693,7 +693,7 @@ msgid "" "tasks)." msgstr "" -#: library/asyncio-task.rst:521 +#: library/asyncio-task.rst:522 msgid "" "import asyncio\n" "\n" @@ -732,7 +732,7 @@ msgid "" "# [2, 6, 24]" msgstr "" -#: library/asyncio-task.rst:557 +#: library/asyncio-task.rst:558 msgid "" "If *return_exceptions* is false, cancelling gather() after it has been " "marked done won't cancel any submitted awaitables. For instance, gather can " @@ -741,28 +741,28 @@ msgid "" "the awaitables) from gather won't cancel any other awaitables." msgstr "" -#: library/asyncio-task.rst:564 +#: library/asyncio-task.rst:565 msgid "" "If the *gather* itself is cancelled, the cancellation is propagated " "regardless of *return_exceptions*." msgstr "" -#: library/asyncio-task.rst:571 +#: library/asyncio-task.rst:572 msgid "" "Deprecation warning is emitted if no positional arguments are provided or " "not all positional arguments are Future-like objects and there is no running " "event loop." msgstr "" -#: library/asyncio-task.rst:580 +#: library/asyncio-task.rst:581 msgid "Eager Task Factory" msgstr "" -#: library/asyncio-task.rst:584 +#: library/asyncio-task.rst:585 msgid "A task factory for eager task execution." msgstr "" -#: library/asyncio-task.rst:586 +#: library/asyncio-task.rst:587 msgid "" "When using this factory (via :meth:`loop.set_task_factory(asyncio." "eager_task_factory) `), coroutines begin execution " @@ -772,13 +772,13 @@ msgid "" "synchronously." msgstr "" -#: library/asyncio-task.rst:592 +#: library/asyncio-task.rst:593 msgid "" "A common example where this is beneficial is coroutines which employ caching " "or memoization to avoid actual I/O when possible." msgstr "" -#: library/asyncio-task.rst:597 +#: library/asyncio-task.rst:598 msgid "" "Immediate execution of the coroutine is a semantic change. If the coroutine " "returns or raises, the task is never scheduled to the event loop. If the " @@ -787,60 +787,60 @@ msgid "" "the application's task execution order is likely to change." msgstr "" -#: library/asyncio-task.rst:608 +#: library/asyncio-task.rst:609 msgid "" "Create an eager task factory, similar to :func:`eager_task_factory`, using " "the provided *custom_task_constructor* when creating a new task instead of " "the default :class:`Task`." msgstr "" -#: library/asyncio-task.rst:612 +#: library/asyncio-task.rst:613 msgid "" "*custom_task_constructor* must be a *callable* with the signature matching " "the signature of :class:`Task.__init__ `. The callable must return a :" "class:`asyncio.Task`-compatible object." msgstr "" -#: library/asyncio-task.rst:616 +#: library/asyncio-task.rst:617 msgid "" "This function returns a *callable* intended to be used as a task factory of " "an event loop via :meth:`loop.set_task_factory(factory) `)." msgstr "" -#: library/asyncio-task.rst:623 +#: library/asyncio-task.rst:624 msgid "Shielding From Cancellation" msgstr "" -#: library/asyncio-task.rst:627 +#: library/asyncio-task.rst:628 msgid "" "Protect an :ref:`awaitable object ` from being :meth:" "`cancelled `." msgstr "" -#: library/asyncio-task.rst:796 +#: library/asyncio-task.rst:798 msgid "If *aw* is a coroutine it is automatically scheduled as a Task." msgstr "" -#: library/asyncio-task.rst:632 +#: library/asyncio-task.rst:633 msgid "The statement::" msgstr "" -#: library/asyncio-task.rst:634 +#: library/asyncio-task.rst:635 msgid "" "task = asyncio.create_task(something())\n" "res = await shield(task)" msgstr "" -#: library/asyncio-task.rst:637 +#: library/asyncio-task.rst:638 msgid "is equivalent to::" msgstr "" -#: library/asyncio-task.rst:639 +#: library/asyncio-task.rst:640 msgid "res = await something()" msgstr "" -#: library/asyncio-task.rst:641 +#: library/asyncio-task.rst:642 msgid "" "*except* that if the coroutine containing it is cancelled, the Task running " "in ``something()`` is not cancelled. From the point of view of " @@ -849,20 +849,20 @@ msgid "" "`CancelledError`." msgstr "" -#: library/asyncio-task.rst:647 +#: library/asyncio-task.rst:648 msgid "" "If ``something()`` is cancelled by other means (i.e. from within itself) " "that would also cancel ``shield()``." msgstr "" -#: library/asyncio-task.rst:650 +#: library/asyncio-task.rst:651 msgid "" "If it is desired to completely ignore cancellation (not recommended) the " "``shield()`` function should be combined with a try/except clause, as " "follows::" msgstr "" -#: library/asyncio-task.rst:654 +#: library/asyncio-task.rst:655 msgid "" "task = asyncio.create_task(something())\n" "try:\n" @@ -871,7 +871,7 @@ msgid "" " res = None" msgstr "" -#: library/asyncio-task.rst:662 +#: library/asyncio-task.rst:663 msgid "" "Save a reference to tasks passed to this function, to avoid a task " "disappearing mid-execution. The event loop only keeps weak references to " @@ -879,43 +879,43 @@ msgid "" "any time, even before it's done." msgstr "" -#: library/asyncio-task.rst:670 +#: library/asyncio-task.rst:671 msgid "" "Deprecation warning is emitted if *aw* is not Future-like object and there " "is no running event loop." msgstr "" -#: library/asyncio-task.rst:676 +#: library/asyncio-task.rst:677 msgid "Timeouts" msgstr "" -#: library/asyncio-task.rst:680 +#: library/asyncio-task.rst:681 msgid "" "Return an :ref:`asynchronous context manager ` that " "can be used to limit the amount of time spent waiting on something." msgstr "" -#: library/asyncio-task.rst:684 +#: library/asyncio-task.rst:685 msgid "" "*delay* can either be ``None``, or a float/int number of seconds to wait. If " "*delay* is ``None``, no time limit will be applied; this can be useful if " "the delay is unknown when the context manager is created." msgstr "" -#: library/asyncio-task.rst:689 +#: library/asyncio-task.rst:690 msgid "" "In either case, the context manager can be rescheduled after creation using :" "meth:`Timeout.reschedule`." msgstr "" -#: library/asyncio-task.rst:694 +#: library/asyncio-task.rst:695 msgid "" "async def main():\n" " async with asyncio.timeout(10):\n" " await long_running_task()" msgstr "" -#: library/asyncio-task.rst:698 +#: library/asyncio-task.rst:699 msgid "" "If ``long_running_task`` takes more than 10 seconds to complete, the context " "manager will cancel the current task and handle the resulting :exc:`asyncio." @@ -923,18 +923,18 @@ msgid "" "can be caught and handled." msgstr "" -#: library/asyncio-task.rst:705 +#: library/asyncio-task.rst:706 msgid "" "The :func:`asyncio.timeout` context manager is what transforms the :exc:" "`asyncio.CancelledError` into a :exc:`TimeoutError`, which means the :exc:" "`TimeoutError` can only be caught *outside* of the context manager." msgstr "" -#: library/asyncio-task.rst:710 +#: library/asyncio-task.rst:711 msgid "Example of catching :exc:`TimeoutError`::" msgstr "" -#: library/asyncio-task.rst:712 +#: library/asyncio-task.rst:713 msgid "" "async def main():\n" " try:\n" @@ -946,48 +946,48 @@ msgid "" " print(\"This statement will run regardless.\")" msgstr "" -#: library/asyncio-task.rst:721 +#: library/asyncio-task.rst:722 msgid "" "The context manager produced by :func:`asyncio.timeout` can be rescheduled " "to a different deadline and inspected." msgstr "" -#: library/asyncio-task.rst:726 +#: library/asyncio-task.rst:727 msgid "" "An :ref:`asynchronous context manager ` for " "cancelling overdue coroutines." msgstr "" -#: library/asyncio-task.rst:729 +#: library/asyncio-task.rst:730 msgid "" "``when`` should be an absolute time at which the context should time out, as " "measured by the event loop's clock:" msgstr "" -#: library/asyncio-task.rst:732 +#: library/asyncio-task.rst:733 msgid "If ``when`` is ``None``, the timeout will never trigger." msgstr "" -#: library/asyncio-task.rst:733 +#: library/asyncio-task.rst:734 msgid "" "If ``when < loop.time()``, the timeout will trigger on the next iteration of " "the event loop." msgstr "" -#: library/asyncio-task.rst:738 +#: library/asyncio-task.rst:739 msgid "" "Return the current deadline, or ``None`` if the current deadline is not set." msgstr "" -#: library/asyncio-task.rst:743 +#: library/asyncio-task.rst:744 msgid "Reschedule the timeout." msgstr "" -#: library/asyncio-task.rst:747 +#: library/asyncio-task.rst:748 msgid "Return whether the context manager has exceeded its deadline (expired)." msgstr "" -#: library/asyncio-task.rst:752 +#: library/asyncio-task.rst:753 msgid "" "async def main():\n" " try:\n" @@ -1005,17 +1005,17 @@ msgid "" " print(\"Looks like we haven't finished on time.\")" msgstr "" -#: library/asyncio-task.rst:767 +#: library/asyncio-task.rst:768 msgid "Timeout context managers can be safely nested." msgstr "" -#: library/asyncio-task.rst:773 +#: library/asyncio-task.rst:774 msgid "" "Similar to :func:`asyncio.timeout`, except *when* is the absolute time to " "stop waiting, or ``None``." msgstr "" -#: library/asyncio-task.rst:778 +#: library/asyncio-task.rst:779 msgid "" "async def main():\n" " loop = get_running_loop()\n" @@ -1029,41 +1029,41 @@ msgid "" " print(\"This statement will run regardless.\")" msgstr "" -#: library/asyncio-task.rst:793 +#: library/asyncio-task.rst:795 msgid "" "Wait for the *aw* :ref:`awaitable ` to complete with a " "timeout." msgstr "" -#: library/asyncio-task.rst:798 +#: library/asyncio-task.rst:800 msgid "" "*timeout* can either be ``None`` or a float or int number of seconds to wait " "for. If *timeout* is ``None``, block until the future completes." msgstr "" -#: library/asyncio-task.rst:802 +#: library/asyncio-task.rst:804 msgid "" "If a timeout occurs, it cancels the task and raises :exc:`TimeoutError`." msgstr "" -#: library/asyncio-task.rst:805 +#: library/asyncio-task.rst:807 msgid "" "To avoid the task :meth:`cancellation `, wrap it in :func:" "`shield`." msgstr "" -#: library/asyncio-task.rst:808 +#: library/asyncio-task.rst:810 msgid "" "The function will wait until the future is actually cancelled, so the total " "wait time may exceed the *timeout*. If an exception happens during " "cancellation, it is propagated." msgstr "" -#: library/asyncio-task.rst:812 +#: library/asyncio-task.rst:814 msgid "If the wait is cancelled, the future *aw* is also cancelled." msgstr "" -#: library/asyncio-task.rst:818 +#: library/asyncio-task.rst:820 msgid "" "async def eternity():\n" " # Sleep for one hour\n" @@ -1084,100 +1084,100 @@ msgid "" "# timeout!" msgstr "" -#: library/asyncio-task.rst:836 +#: library/asyncio-task.rst:838 msgid "" "When *aw* is cancelled due to a timeout, ``wait_for`` waits for *aw* to be " "cancelled. Previously, it raised :exc:`TimeoutError` immediately." msgstr "" -#: library/asyncio-task.rst:844 +#: library/asyncio-task.rst:846 msgid "Raises :exc:`TimeoutError` instead of :exc:`asyncio.TimeoutError`." msgstr "" -#: library/asyncio-task.rst:849 +#: library/asyncio-task.rst:851 msgid "Waiting Primitives" msgstr "" -#: library/asyncio-task.rst:853 +#: library/asyncio-task.rst:856 msgid "" "Run :class:`~asyncio.Future` and :class:`~asyncio.Task` instances in the " "*aws* iterable concurrently and block until the condition specified by " "*return_when*." msgstr "" -#: library/asyncio-task.rst:857 +#: library/asyncio-task.rst:860 msgid "The *aws* iterable must not be empty." msgstr "" -#: library/asyncio-task.rst:859 +#: library/asyncio-task.rst:862 msgid "Returns two sets of Tasks/Futures: ``(done, pending)``." msgstr "" -#: library/asyncio-task.rst:861 +#: library/asyncio-task.rst:864 msgid "Usage::" msgstr "" -#: library/asyncio-task.rst:863 +#: library/asyncio-task.rst:866 msgid "done, pending = await asyncio.wait(aws)" msgstr "" -#: library/asyncio-task.rst:865 +#: library/asyncio-task.rst:868 msgid "" "*timeout* (a float or int), if specified, can be used to control the maximum " "number of seconds to wait before returning." msgstr "" -#: library/asyncio-task.rst:868 +#: library/asyncio-task.rst:871 msgid "" "Note that this function does not raise :exc:`TimeoutError`. Futures or Tasks " "that aren't done when the timeout occurs are simply returned in the second " "set." msgstr "" -#: library/asyncio-task.rst:872 +#: library/asyncio-task.rst:875 msgid "" "*return_when* indicates when this function should return. It must be one of " "the following constants:" msgstr "" -#: library/asyncio-task.rst:878 +#: library/asyncio-task.rst:881 msgid "Constant" msgstr "" -#: library/asyncio-task.rst:879 +#: library/asyncio-task.rst:882 msgid "Description" msgstr "" -#: library/asyncio-task.rst:882 +#: library/asyncio-task.rst:885 msgid "The function will return when any future finishes or is cancelled." msgstr "" -#: library/asyncio-task.rst:885 +#: library/asyncio-task.rst:888 msgid "" "The function will return when any future finishes by raising an exception. " "If no future raises an exception then it is equivalent to :const:" "`ALL_COMPLETED`." msgstr "" -#: library/asyncio-task.rst:890 +#: library/asyncio-task.rst:893 msgid "The function will return when all futures finish or are cancelled." msgstr "" -#: library/asyncio-task.rst:892 +#: library/asyncio-task.rst:895 msgid "" "Unlike :func:`~asyncio.wait_for`, ``wait()`` does not cancel the futures " "when a timeout occurs." msgstr "" -#: library/asyncio-task.rst:898 +#: library/asyncio-task.rst:901 msgid "Passing coroutine objects to ``wait()`` directly is forbidden." msgstr "" -#: library/asyncio-task.rst:928 +#: library/asyncio-task.rst:931 msgid "Added support for generators yielding tasks." msgstr "" -#: library/asyncio-task.rst:907 +#: library/asyncio-task.rst:910 msgid "" "Run :ref:`awaitable objects ` in the *aws* iterable " "concurrently. Return an iterator of coroutines. Each coroutine returned can " @@ -1185,33 +1185,33 @@ msgid "" "remaining awaitables." msgstr "" -#: library/asyncio-task.rst:912 +#: library/asyncio-task.rst:915 msgid "" "Raises :exc:`TimeoutError` if the timeout occurs before all Futures are done." msgstr "" -#: library/asyncio-task.rst:917 +#: library/asyncio-task.rst:920 msgid "" "for coro in as_completed(aws):\n" " earliest_result = await coro\n" " # ..." msgstr "" -#: library/asyncio-task.rst:924 +#: library/asyncio-task.rst:927 msgid "" "Deprecation warning is emitted if not all awaitable objects in the *aws* " "iterable are Future-like objects and there is no running event loop." msgstr "" -#: library/asyncio-task.rst:933 +#: library/asyncio-task.rst:936 msgid "Running in Threads" msgstr "" -#: library/asyncio-task.rst:937 +#: library/asyncio-task.rst:941 msgid "Asynchronously run function *func* in a separate thread." msgstr "" -#: library/asyncio-task.rst:939 +#: library/asyncio-task.rst:943 msgid "" "Any \\*args and \\*\\*kwargs supplied for this function are directly passed " "to *func*. Also, the current :class:`contextvars.Context` is propagated, " @@ -1219,19 +1219,19 @@ msgid "" "separate thread." msgstr "" -#: library/asyncio-task.rst:944 +#: library/asyncio-task.rst:948 msgid "" "Return a coroutine that can be awaited to get the eventual result of *func*." msgstr "" -#: library/asyncio-task.rst:946 +#: library/asyncio-task.rst:950 msgid "" "This coroutine function is primarily intended to be used for executing IO-" "bound functions/methods that would otherwise block the event loop if they " "were run in the main thread. For example::" msgstr "" -#: library/asyncio-task.rst:950 +#: library/asyncio-task.rst:954 msgid "" "def blocking_io():\n" " print(f\"start blocking_io at {time.strftime('%X')}\")\n" @@ -1260,7 +1260,7 @@ msgid "" "# finished main at 19:50:54" msgstr "" -#: library/asyncio-task.rst:976 +#: library/asyncio-task.rst:980 msgid "" "Directly calling ``blocking_io()`` in any coroutine would block the event " "loop for its duration, resulting in an additional 1 second of run time. " @@ -1268,7 +1268,7 @@ msgid "" "thread without blocking the event loop." msgstr "" -#: library/asyncio-task.rst:983 +#: library/asyncio-task.rst:987 msgid "" "Due to the :term:`GIL`, ``asyncio.to_thread()`` can typically only be used " "to make IO-bound functions non-blocking. However, for extension modules that " @@ -1276,27 +1276,27 @@ msgid "" "``asyncio.to_thread()`` can also be used for CPU-bound functions." msgstr "" -#: library/asyncio-task.rst:992 +#: library/asyncio-task.rst:996 msgid "Scheduling From Other Threads" msgstr "" -#: library/asyncio-task.rst:996 +#: library/asyncio-task.rst:1000 msgid "Submit a coroutine to the given event loop. Thread-safe." msgstr "" -#: library/asyncio-task.rst:998 +#: library/asyncio-task.rst:1002 msgid "" "Return a :class:`concurrent.futures.Future` to wait for the result from " "another OS thread." msgstr "" -#: library/asyncio-task.rst:1001 +#: library/asyncio-task.rst:1005 msgid "" "This function is meant to be called from a different OS thread than the one " "where the event loop is running. Example::" msgstr "" -#: library/asyncio-task.rst:1004 +#: library/asyncio-task.rst:1008 msgid "" "# Create a coroutine\n" "coro = asyncio.sleep(1, result=3)\n" @@ -1308,13 +1308,13 @@ msgid "" "assert future.result(timeout) == 3" msgstr "" -#: library/asyncio-task.rst:1013 +#: library/asyncio-task.rst:1017 msgid "" "If an exception is raised in the coroutine, the returned Future will be " "notified. It can also be used to cancel the task in the event loop::" msgstr "" -#: library/asyncio-task.rst:1017 +#: library/asyncio-task.rst:1021 msgid "" "try:\n" " result = future.result(timeout)\n" @@ -1327,59 +1327,59 @@ msgid "" " print(f'The coroutine returned: {result!r}')" msgstr "" -#: library/asyncio-task.rst:1027 +#: library/asyncio-task.rst:1031 msgid "" "See the :ref:`concurrency and multithreading ` " "section of the documentation." msgstr "" -#: library/asyncio-task.rst:1030 +#: library/asyncio-task.rst:1034 msgid "" "Unlike other asyncio functions this function requires the *loop* argument to " "be passed explicitly." msgstr "" -#: library/asyncio-task.rst:1037 +#: library/asyncio-task.rst:1041 msgid "Introspection" msgstr "" -#: library/asyncio-task.rst:1042 +#: library/asyncio-task.rst:1046 msgid "" "Return the currently running :class:`Task` instance, or ``None`` if no task " "is running." msgstr "" -#: library/asyncio-task.rst:1045 +#: library/asyncio-task.rst:1049 msgid "" "If *loop* is ``None`` :func:`get_running_loop` is used to get the current " "loop." msgstr "" -#: library/asyncio-task.rst:1053 +#: library/asyncio-task.rst:1057 msgid "Return a set of not yet finished :class:`Task` objects run by the loop." msgstr "" -#: library/asyncio-task.rst:1056 +#: library/asyncio-task.rst:1060 msgid "" "If *loop* is ``None``, :func:`get_running_loop` is used for getting current " "loop." msgstr "" -#: library/asyncio-task.rst:1064 +#: library/asyncio-task.rst:1068 msgid "Return ``True`` if *obj* is a coroutine object." msgstr "" -#: library/asyncio-task.rst:1070 +#: library/asyncio-task.rst:1074 msgid "Task Object" msgstr "" -#: library/asyncio-task.rst:1074 +#: library/asyncio-task.rst:1078 msgid "" "A :class:`Future-like ` object that runs a Python :ref:`coroutine " "`. Not thread-safe." msgstr "" -#: library/asyncio-task.rst:1077 +#: library/asyncio-task.rst:1081 msgid "" "Tasks are used to run coroutines in event loops. If a coroutine awaits on a " "Future, the Task suspends the execution of the coroutine and waits for the " @@ -1387,21 +1387,21 @@ msgid "" "wrapped coroutine resumes." msgstr "" -#: library/asyncio-task.rst:1083 +#: library/asyncio-task.rst:1087 msgid "" "Event loops use cooperative scheduling: an event loop runs one Task at a " "time. While a Task awaits for the completion of a Future, the event loop " "runs other Tasks, callbacks, or performs IO operations." msgstr "" -#: library/asyncio-task.rst:1088 +#: library/asyncio-task.rst:1092 msgid "" "Use the high-level :func:`asyncio.create_task` function to create Tasks, or " "the low-level :meth:`loop.create_task` or :func:`ensure_future` functions. " "Manual instantiation of Tasks is discouraged." msgstr "" -#: library/asyncio-task.rst:1093 +#: library/asyncio-task.rst:1097 msgid "" "To cancel a running Task use the :meth:`cancel` method. Calling it will " "cause the Task to throw a :exc:`CancelledError` exception into the wrapped " @@ -1409,20 +1409,20 @@ msgid "" "cancellation, the Future object will be cancelled." msgstr "" -#: library/asyncio-task.rst:1098 +#: library/asyncio-task.rst:1102 msgid "" ":meth:`cancelled` can be used to check if the Task was cancelled. The method " "returns ``True`` if the wrapped coroutine did not suppress the :exc:" "`CancelledError` exception and was actually cancelled." msgstr "" -#: library/asyncio-task.rst:1103 +#: library/asyncio-task.rst:1107 msgid "" ":class:`asyncio.Task` inherits from :class:`Future` all of its APIs except :" "meth:`Future.set_result` and :meth:`Future.set_exception`." msgstr "" -#: library/asyncio-task.rst:1107 +#: library/asyncio-task.rst:1111 msgid "" "An optional keyword-only *context* argument allows specifying a custom :" "class:`contextvars.Context` for the *coro* to run in. If no *context* is " @@ -1430,7 +1430,7 @@ msgid "" "in the copied context." msgstr "" -#: library/asyncio-task.rst:1112 +#: library/asyncio-task.rst:1116 msgid "" "An optional keyword-only *eager_start* argument allows eagerly starting the " "execution of the :class:`asyncio.Task` at task creation time. If set to " @@ -1440,96 +1440,96 @@ msgid "" "eagerly and will skip scheduling to the event loop." msgstr "" -#: library/asyncio-task.rst:1119 +#: library/asyncio-task.rst:1123 msgid "Added support for the :mod:`contextvars` module." msgstr "" -#: library/asyncio-task.rst:1125 +#: library/asyncio-task.rst:1129 msgid "" "Deprecation warning is emitted if *loop* is not specified and there is no " "running event loop." msgstr "" -#: library/asyncio-task.rst:1132 +#: library/asyncio-task.rst:1136 msgid "Added the *eager_start* parameter." msgstr "" -#: library/asyncio-task.rst:1137 +#: library/asyncio-task.rst:1141 msgid "Return ``True`` if the Task is *done*." msgstr "" -#: library/asyncio-task.rst:1139 +#: library/asyncio-task.rst:1143 msgid "" "A Task is *done* when the wrapped coroutine either returned a value, raised " "an exception, or the Task was cancelled." msgstr "" -#: library/asyncio-task.rst:1144 +#: library/asyncio-task.rst:1148 msgid "Return the result of the Task." msgstr "" -#: library/asyncio-task.rst:1146 +#: library/asyncio-task.rst:1150 msgid "" "If the Task is *done*, the result of the wrapped coroutine is returned (or " "if the coroutine raised an exception, that exception is re-raised.)" msgstr "" -#: library/asyncio-task.rst:1164 +#: library/asyncio-task.rst:1168 msgid "" "If the Task has been *cancelled*, this method raises a :exc:`CancelledError` " "exception." msgstr "" -#: library/asyncio-task.rst:1153 +#: library/asyncio-task.rst:1157 msgid "" "If the Task's result isn't yet available, this method raises an :exc:" "`InvalidStateError` exception." msgstr "" -#: library/asyncio-task.rst:1158 +#: library/asyncio-task.rst:1162 msgid "Return the exception of the Task." msgstr "" -#: library/asyncio-task.rst:1160 +#: library/asyncio-task.rst:1164 msgid "" "If the wrapped coroutine raised an exception that exception is returned. If " "the wrapped coroutine returned normally this method returns ``None``." msgstr "" -#: library/asyncio-task.rst:1167 +#: library/asyncio-task.rst:1171 msgid "" "If the Task isn't *done* yet, this method raises an :exc:`InvalidStateError` " "exception." msgstr "" -#: library/asyncio-task.rst:1172 +#: library/asyncio-task.rst:1176 msgid "Add a callback to be run when the Task is *done*." msgstr "" -#: library/asyncio-task.rst:1183 +#: library/asyncio-task.rst:1187 msgid "This method should only be used in low-level callback-based code." msgstr "" -#: library/asyncio-task.rst:1176 +#: library/asyncio-task.rst:1180 msgid "" "See the documentation of :meth:`Future.add_done_callback` for more details." msgstr "" -#: library/asyncio-task.rst:1181 +#: library/asyncio-task.rst:1185 msgid "Remove *callback* from the callbacks list." msgstr "" -#: library/asyncio-task.rst:1185 +#: library/asyncio-task.rst:1189 msgid "" "See the documentation of :meth:`Future.remove_done_callback` for more " "details." msgstr "" -#: library/asyncio-task.rst:1190 +#: library/asyncio-task.rst:1194 msgid "Return the list of stack frames for this Task." msgstr "" -#: library/asyncio-task.rst:1192 +#: library/asyncio-task.rst:1196 msgid "" "If the wrapped coroutine is not done, this returns the stack where it is " "suspended. If the coroutine has completed successfully or was cancelled, " @@ -1537,15 +1537,15 @@ msgid "" "this returns the list of traceback frames." msgstr "" -#: library/asyncio-task.rst:1198 +#: library/asyncio-task.rst:1202 msgid "The frames are always ordered from oldest to newest." msgstr "" -#: library/asyncio-task.rst:1200 +#: library/asyncio-task.rst:1204 msgid "Only one stack frame is returned for a suspended coroutine." msgstr "" -#: library/asyncio-task.rst:1202 +#: library/asyncio-task.rst:1206 msgid "" "The optional *limit* argument sets the maximum number of frames to return; " "by default all available frames are returned. The ordering of the returned " @@ -1554,81 +1554,81 @@ msgid "" "are returned. (This matches the behavior of the traceback module.)" msgstr "" -#: library/asyncio-task.rst:1211 +#: library/asyncio-task.rst:1215 msgid "Print the stack or traceback for this Task." msgstr "" -#: library/asyncio-task.rst:1213 +#: library/asyncio-task.rst:1217 msgid "" "This produces output similar to that of the traceback module for the frames " "retrieved by :meth:`get_stack`." msgstr "" -#: library/asyncio-task.rst:1216 +#: library/asyncio-task.rst:1220 msgid "The *limit* argument is passed to :meth:`get_stack` directly." msgstr "" -#: library/asyncio-task.rst:1218 +#: library/asyncio-task.rst:1222 msgid "" "The *file* argument is an I/O stream to which the output is written; by " "default output is written to :data:`sys.stdout`." msgstr "" -#: library/asyncio-task.rst:1223 +#: library/asyncio-task.rst:1227 msgid "Return the coroutine object wrapped by the :class:`Task`." msgstr "" -#: library/asyncio-task.rst:1227 +#: library/asyncio-task.rst:1231 msgid "" "This will return ``None`` for Tasks which have already completed eagerly. " "See the :ref:`Eager Task Factory `." msgstr "" -#: library/asyncio-task.rst:1234 +#: library/asyncio-task.rst:1238 msgid "Newly added eager task execution means result may be ``None``." msgstr "" -#: library/asyncio-task.rst:1238 +#: library/asyncio-task.rst:1242 msgid "" "Return the :class:`contextvars.Context` object associated with the task." msgstr "" -#: library/asyncio-task.rst:1245 +#: library/asyncio-task.rst:1249 msgid "Return the name of the Task." msgstr "" -#: library/asyncio-task.rst:1247 +#: library/asyncio-task.rst:1251 msgid "" "If no name has been explicitly assigned to the Task, the default asyncio " "Task implementation generates a default name during instantiation." msgstr "" -#: library/asyncio-task.rst:1255 +#: library/asyncio-task.rst:1259 msgid "Set the name of the Task." msgstr "" -#: library/asyncio-task.rst:1257 +#: library/asyncio-task.rst:1261 msgid "" "The *value* argument can be any object, which is then converted to a string." msgstr "" -#: library/asyncio-task.rst:1260 +#: library/asyncio-task.rst:1264 msgid "" "In the default Task implementation, the name will be visible in the :func:" "`repr` output of a task object." msgstr "" -#: library/asyncio-task.rst:1267 +#: library/asyncio-task.rst:1271 msgid "Request the Task to be cancelled." msgstr "" -#: library/asyncio-task.rst:1269 +#: library/asyncio-task.rst:1273 msgid "" "This arranges for a :exc:`CancelledError` exception to be thrown into the " "wrapped coroutine on the next cycle of the event loop." msgstr "" -#: library/asyncio-task.rst:1272 +#: library/asyncio-task.rst:1276 msgid "" "The coroutine then has a chance to clean up or even deny the request by " "suppressing the exception with a :keyword:`try` ... ... ``except " @@ -1640,21 +1640,21 @@ msgid "" "addition to catching the exception." msgstr "" -#: library/asyncio-task.rst:1282 +#: library/asyncio-task.rst:1286 msgid "Added the *msg* parameter." msgstr "" -#: library/asyncio-task.rst:1285 +#: library/asyncio-task.rst:1289 msgid "The ``msg`` parameter is propagated from cancelled task to its awaiter." msgstr "" -#: library/asyncio-task.rst:1290 +#: library/asyncio-task.rst:1294 msgid "" "The following example illustrates how coroutines can intercept the " "cancellation request::" msgstr "" -#: library/asyncio-task.rst:1293 +#: library/asyncio-task.rst:1297 msgid "" "async def cancel_me():\n" " print('cancel_me(): before sleep')\n" @@ -1691,32 +1691,32 @@ msgid "" "# main(): cancel_me is cancelled now" msgstr "" -#: library/asyncio-task.rst:1329 +#: library/asyncio-task.rst:1333 msgid "Return ``True`` if the Task is *cancelled*." msgstr "" -#: library/asyncio-task.rst:1331 +#: library/asyncio-task.rst:1335 msgid "" "The Task is *cancelled* when the cancellation was requested with :meth:" "`cancel` and the wrapped coroutine propagated the :exc:`CancelledError` " "exception thrown into it." msgstr "" -#: library/asyncio-task.rst:1337 +#: library/asyncio-task.rst:1341 msgid "Decrement the count of cancellation requests to this Task." msgstr "" -#: library/asyncio-task.rst:1339 +#: library/asyncio-task.rst:1343 msgid "Returns the remaining number of cancellation requests." msgstr "" -#: library/asyncio-task.rst:1341 +#: library/asyncio-task.rst:1345 msgid "" "Note that once execution of a cancelled task completed, further calls to :" "meth:`uncancel` are ineffective." msgstr "" -#: library/asyncio-task.rst:1346 +#: library/asyncio-task.rst:1350 msgid "" "This method is used by asyncio's internals and isn't expected to be used by " "end-user code. In particular, if a Task gets successfully uncancelled, this " @@ -1725,7 +1725,7 @@ msgid "" "respective structured block. For example::" msgstr "" -#: library/asyncio-task.rst:1353 +#: library/asyncio-task.rst:1357 msgid "" "async def make_request_with_timeout():\n" " try:\n" @@ -1739,7 +1739,7 @@ msgid "" " await unrelated_code()" msgstr "" -#: library/asyncio-task.rst:1364 +#: library/asyncio-task.rst:1368 msgid "" "While the block with ``make_request()`` and ``make_another_request()`` might " "get cancelled due to the timeout, ``unrelated_code()`` should continue " @@ -1748,20 +1748,20 @@ msgid "" "similar fashion." msgstr "" -#: library/asyncio-task.rst:1370 +#: library/asyncio-task.rst:1374 msgid "" "If end-user code is, for some reason, suppressing cancellation by catching :" "exc:`CancelledError`, it needs to call this method to remove the " "cancellation state." msgstr "" -#: library/asyncio-task.rst:1376 +#: library/asyncio-task.rst:1380 msgid "" "Return the number of pending cancellation requests to this Task, i.e., the " "number of calls to :meth:`cancel` less the number of :meth:`uncancel` calls." msgstr "" -#: library/asyncio-task.rst:1380 +#: library/asyncio-task.rst:1384 msgid "" "Note that if this number is greater than zero but the Task is still " "executing, :meth:`cancelled` will still return ``False``. This is because " @@ -1770,7 +1770,7 @@ msgid "" "to zero." msgstr "" -#: library/asyncio-task.rst:1386 +#: library/asyncio-task.rst:1390 msgid "" "This method is used by asyncio's internals and isn't expected to be used by " "end-user code. See :meth:`uncancel` for more details." diff --git a/library/asyncore.po b/library/asyncore.po new file mode 100644 index 000000000..c866050ca --- /dev/null +++ b/library/asyncore.po @@ -0,0 +1,38 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2001-2025, Python Software Foundation +# This file is distributed under the same license as the Python package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Python 3.12\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: library/asyncore.rst:2 +msgid ":mod:`!asyncore` --- Asynchronous socket handler" +msgstr "" + +#: library/asyncore.rst:10 +msgid "" +"This module is no longer part of the Python standard library. It was :ref:" +"`removed in Python 3.12 ` after being deprecated in " +"Python 3.6. The removal was decided in :pep:`594`." +msgstr "" + +#: library/asyncore.rst:14 +msgid "Applications should use the :mod:`asyncio` module instead." +msgstr "" + +#: library/asyncore.rst:16 +msgid "" +"The last version of Python that provided the :mod:`!asyncore` module was " +"`Python 3.11 `_." +msgstr "" diff --git a/library/calendar.po b/library/calendar.po index 54a138c31..f4ce58a49 100644 --- a/library/calendar.po +++ b/library/calendar.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -61,17 +61,44 @@ msgid "" msgstr "" #: library/calendar.rst:41 -msgid ":class:`Calendar` instances have the following methods:" +msgid ":class:`Calendar` instances have the following methods and attributes:" msgstr "" #: library/calendar.rst:45 +msgid "The first weekday as an integer (0--6)." +msgstr "" + +#: library/calendar.rst:47 +msgid "" +"This property can also be set and read using :meth:`~Calendar." +"setfirstweekday` and :meth:`~Calendar.getfirstweekday` respectively." +msgstr "" + +#: library/calendar.rst:53 +msgid "Return an :class:`int` for the current first weekday (0--6)." +msgstr "" + +#: library/calendar.rst:55 +msgid "Identical to reading the :attr:`~Calendar.firstweekday` property." +msgstr "" + +#: library/calendar.rst:59 +msgid "" +"Set the first weekday to *firstweekday*, passed as an :class:`int` (0--6)" +msgstr "" + +#: library/calendar.rst:61 +msgid "Identical to setting the :attr:`~Calendar.firstweekday` property." +msgstr "" + +#: library/calendar.rst:65 msgid "" "Return an iterator for the week day numbers that will be used for one week. " "The first value from the iterator will be the same as the value of the :attr:" -"`firstweekday` property." +"`~Calendar.firstweekday` property." msgstr "" -#: library/calendar.rst:52 +#: library/calendar.rst:72 msgid "" "Return an iterator for the month *month* (1--12) in the year *year*. This " "iterator will return all days (as :class:`datetime.date` objects) for the " @@ -79,7 +106,7 @@ msgid "" "month that are required to get a complete week." msgstr "" -#: library/calendar.rst:60 +#: library/calendar.rst:80 msgid "" "Return an iterator for the month *month* in the year *year* similar to :meth:" "`itermonthdates`, but not restricted by the :class:`datetime.date` range. " @@ -87,7 +114,7 @@ msgid "" "of the specified month, the day number is ``0``." msgstr "" -#: library/calendar.rst:68 +#: library/calendar.rst:88 msgid "" "Return an iterator for the month *month* in the year *year* similar to :meth:" "`itermonthdates`, but not restricted by the :class:`datetime.date` range. " @@ -95,7 +122,7 @@ msgid "" "week day number." msgstr "" -#: library/calendar.rst:76 +#: library/calendar.rst:96 msgid "" "Return an iterator for the month *month* in the year *year* similar to :meth:" "`itermonthdates`, but not restricted by the :class:`datetime.date` range. " @@ -103,7 +130,7 @@ msgid "" "month numbers." msgstr "" -#: library/calendar.rst:86 +#: library/calendar.rst:106 msgid "" "Return an iterator for the month *month* in the year *year* similar to :meth:" "`itermonthdates`, but not restricted by the :class:`datetime.date` range. " @@ -111,25 +138,25 @@ msgid "" "month, and a day of the week numbers." msgstr "" -#: library/calendar.rst:96 +#: library/calendar.rst:116 msgid "" "Return a list of the weeks in the month *month* of the *year* as full " "weeks. Weeks are lists of seven :class:`datetime.date` objects." msgstr "" -#: library/calendar.rst:102 +#: library/calendar.rst:122 msgid "" "Return a list of the weeks in the month *month* of the *year* as full " "weeks. Weeks are lists of seven tuples of day numbers and weekday numbers." msgstr "" -#: library/calendar.rst:109 +#: library/calendar.rst:129 msgid "" "Return a list of the weeks in the month *month* of the *year* as full " "weeks. Weeks are lists of seven day numbers." msgstr "" -#: library/calendar.rst:115 +#: library/calendar.rst:135 msgid "" "Return the data for the specified year ready for formatting. The return " "value is a list of month rows. Each month row contains up to *width* months " @@ -137,29 +164,58 @@ msgid "" "contains 1--7 days. Days are :class:`datetime.date` objects." msgstr "" -#: library/calendar.rst:123 +#: library/calendar.rst:143 msgid "" "Return the data for the specified year ready for formatting (similar to :" "meth:`yeardatescalendar`). Entries in the week lists are tuples of day " "numbers and weekday numbers. Day numbers outside this month are zero." msgstr "" -#: library/calendar.rst:130 +#: library/calendar.rst:150 msgid "" "Return the data for the specified year ready for formatting (similar to :" "meth:`yeardatescalendar`). Entries in the week lists are day numbers. Day " "numbers outside this month are zero." msgstr "" -#: library/calendar.rst:137 +#: library/calendar.rst:157 msgid "This class can be used to generate plain text calendars." msgstr "" -#: library/calendar.rst:139 +#: library/calendar.rst:159 msgid ":class:`TextCalendar` instances have the following methods:" msgstr "" -#: library/calendar.rst:143 +#: library/calendar.rst:164 +msgid "" +"Return a string representing a single day formatted with the given *width*. " +"If *theday* is ``0``, return a string of spaces of the specified width, " +"representing an empty day. The *weekday* parameter is unused." +msgstr "" + +#: library/calendar.rst:171 +msgid "" +"Return a single week in a string with no newline. If *w* is provided, it " +"specifies the width of the date columns, which are centered. Depends on the " +"first weekday as specified in the constructor or set by the :meth:" +"`setfirstweekday` method." +msgstr "" + +#: library/calendar.rst:178 +msgid "" +"Return a string representing the name of a single weekday formatted to the " +"specified *width*. The *weekday* parameter is an integer representing the " +"day of the week, where ``0`` is Monday and ``6`` is Sunday." +msgstr "" + +#: library/calendar.rst:184 +msgid "" +"Return a string containing the header row of weekday names, formatted with " +"the given *width* for each column. The names depend on the locale settings " +"and are padded to the specified width." +msgstr "" + +#: library/calendar.rst:190 msgid "" "Return a month's calendar in a multi-line string. If *w* is provided, it " "specifies the width of the date columns, which are centered. If *l* is " @@ -168,11 +224,19 @@ msgid "" "`setfirstweekday` method." msgstr "" -#: library/calendar.rst:152 +#: library/calendar.rst:198 +msgid "" +"Return a string representing the month's name centered within the specified " +"*width*. If *withyear* is ``True``, include the year in the output. The " +"*theyear* and *themonth* parameters specify the year and month for the name " +"to be formatted respectively." +msgstr "" + +#: library/calendar.rst:205 msgid "Print a month's calendar as returned by :meth:`formatmonth`." msgstr "" -#: library/calendar.rst:157 +#: library/calendar.rst:210 msgid "" "Return a *m*-column calendar for an entire year as a multi-line string. " "Optional parameters *w*, *l*, and *c* are for date column width, lines per " @@ -182,32 +246,32 @@ msgid "" "generated is platform-dependent." msgstr "" -#: library/calendar.rst:167 +#: library/calendar.rst:220 msgid "" "Print the calendar for an entire year as returned by :meth:`formatyear`." msgstr "" -#: library/calendar.rst:172 +#: library/calendar.rst:225 msgid "This class can be used to generate HTML calendars." msgstr "" -#: library/calendar.rst:175 +#: library/calendar.rst:228 msgid ":class:`!HTMLCalendar` instances have the following methods:" msgstr "" -#: library/calendar.rst:179 +#: library/calendar.rst:232 msgid "" "Return a month's calendar as an HTML table. If *withyear* is true the year " "will be included in the header, otherwise just the month name will be used." msgstr "" -#: library/calendar.rst:186 +#: library/calendar.rst:239 msgid "" "Return a year's calendar as an HTML table. *width* (defaulting to 3) " "specifies the number of months per row." msgstr "" -#: library/calendar.rst:192 +#: library/calendar.rst:245 msgid "" "Return a year's calendar as a complete HTML page. *width* (defaulting to 3) " "specifies the number of months per row. *css* is the name for the cascading " @@ -216,92 +280,92 @@ msgid "" "(defaulting to the system default encoding)." msgstr "" -#: library/calendar.rst:201 +#: library/calendar.rst:254 msgid "" "Return a month name as an HTML table row. If *withyear* is true the year " "will be included in the row, otherwise just the month name will be used." msgstr "" -#: library/calendar.rst:206 +#: library/calendar.rst:259 msgid "" ":class:`!HTMLCalendar` has the following attributes you can override to " "customize the CSS classes used by the calendar:" msgstr "" -#: library/calendar.rst:211 +#: library/calendar.rst:264 msgid "" "A list of CSS classes used for each weekday. The default class list is::" msgstr "" -#: library/calendar.rst:213 +#: library/calendar.rst:266 msgid "" "cssclasses = [\"mon\", \"tue\", \"wed\", \"thu\", \"fri\", \"sat\", \"sun\"]" msgstr "" -#: library/calendar.rst:215 +#: library/calendar.rst:268 msgid "more styles can be added for each day::" msgstr "" -#: library/calendar.rst:217 +#: library/calendar.rst:270 msgid "" "cssclasses = [\"mon text-bold\", \"tue\", \"wed\", \"thu\", \"fri\", " "\"sat\", \"sun red\"]" msgstr "" -#: library/calendar.rst:219 +#: library/calendar.rst:272 msgid "Note that the length of this list must be seven items." msgstr "" -#: library/calendar.rst:224 +#: library/calendar.rst:277 msgid "The CSS class for a weekday occurring in the previous or coming month." msgstr "" -#: library/calendar.rst:231 +#: library/calendar.rst:284 msgid "" "A list of CSS classes used for weekday names in the header row. The default " "is the same as :attr:`cssclasses`." msgstr "" -#: library/calendar.rst:239 +#: library/calendar.rst:292 msgid "" "The month's head CSS class (used by :meth:`formatmonthname`). The default " "value is ``\"month\"``." msgstr "" -#: library/calendar.rst:247 +#: library/calendar.rst:300 msgid "" "The CSS class for the whole month's table (used by :meth:`formatmonth`). The " "default value is ``\"month\"``." msgstr "" -#: library/calendar.rst:255 +#: library/calendar.rst:308 msgid "" "The CSS class for the whole year's table of tables (used by :meth:" "`formatyear`). The default value is ``\"year\"``." msgstr "" -#: library/calendar.rst:263 +#: library/calendar.rst:316 msgid "" "The CSS class for the table head for the whole year (used by :meth:" "`formatyear`). The default value is ``\"year\"``." msgstr "" -#: library/calendar.rst:269 +#: library/calendar.rst:322 msgid "" "Note that although the naming for the above described class attributes is " "singular (e.g. ``cssclass_month`` ``cssclass_noday``), one can replace the " "single CSS class with a space separated list of CSS classes, for example::" msgstr "" -#: library/calendar.rst:273 +#: library/calendar.rst:326 msgid "\"text-bold text-red\"" msgstr "" -#: library/calendar.rst:275 +#: library/calendar.rst:328 msgid "Here is an example how :class:`!HTMLCalendar` can be customized::" msgstr "" -#: library/calendar.rst:277 +#: library/calendar.rst:330 msgid "" "class CustomHTMLCal(calendar.HTMLCalendar):\n" " cssclasses = [style + \" text-nowrap\" for style in\n" @@ -311,19 +375,19 @@ msgid "" " cssclass_year = \"text-italic lead\"" msgstr "" -#: library/calendar.rst:287 +#: library/calendar.rst:340 msgid "" "This subclass of :class:`TextCalendar` can be passed a locale name in the " "constructor and will return month and weekday names in the specified locale." msgstr "" -#: library/calendar.rst:293 +#: library/calendar.rst:346 msgid "" "This subclass of :class:`HTMLCalendar` can be passed a locale name in the " "constructor and will return month and weekday names in the specified locale." msgstr "" -#: library/calendar.rst:299 +#: library/calendar.rst:352 msgid "" "The constructor, :meth:`!formatweekday` and :meth:`!formatmonthname` methods " "of these two classes temporarily change the ``LC_TIME`` locale to the given " @@ -331,11 +395,11 @@ msgid "" "thread-safe." msgstr "" -#: library/calendar.rst:305 +#: library/calendar.rst:358 msgid "For simple text calendars this module provides the following functions." msgstr "" -#: library/calendar.rst:309 +#: library/calendar.rst:362 msgid "" "Sets the weekday (``0`` is Monday, ``6`` is Sunday) to start each week. The " "values :const:`MONDAY`, :const:`TUESDAY`, :const:`WEDNESDAY`, :const:" @@ -343,78 +407,78 @@ msgid "" "provided for convenience. For example, to set the first weekday to Sunday::" msgstr "" -#: library/calendar.rst:314 +#: library/calendar.rst:367 msgid "" "import calendar\n" "calendar.setfirstweekday(calendar.SUNDAY)" msgstr "" -#: library/calendar.rst:320 +#: library/calendar.rst:373 msgid "Returns the current setting for the weekday to start each week." msgstr "" -#: library/calendar.rst:325 +#: library/calendar.rst:378 msgid "" "Returns :const:`True` if *year* is a leap year, otherwise :const:`False`." msgstr "" -#: library/calendar.rst:330 +#: library/calendar.rst:383 msgid "" "Returns the number of leap years in the range from *y1* to *y2* (exclusive), " "where *y1* and *y2* are years." msgstr "" -#: library/calendar.rst:333 +#: library/calendar.rst:386 msgid "This function works for ranges spanning a century change." msgstr "" -#: library/calendar.rst:338 +#: library/calendar.rst:391 msgid "" "Returns the day of the week (``0`` is Monday) for *year* (``1970``--...), " "*month* (``1``--``12``), *day* (``1``--``31``)." msgstr "" -#: library/calendar.rst:344 +#: library/calendar.rst:397 msgid "" "Return a header containing abbreviated weekday names. *n* specifies the " "width in characters for one weekday." msgstr "" -#: library/calendar.rst:350 +#: library/calendar.rst:403 msgid "" "Returns weekday of first day of the month and number of days in month, for " "the specified *year* and *month*." msgstr "" -#: library/calendar.rst:356 +#: library/calendar.rst:409 msgid "" "Returns a matrix representing a month's calendar. Each row represents a " "week; days outside of the month are represented by zeros. Each week begins " "with Monday unless set by :func:`setfirstweekday`." msgstr "" -#: library/calendar.rst:363 +#: library/calendar.rst:416 msgid "Prints a month's calendar as returned by :func:`month`." msgstr "" -#: library/calendar.rst:368 +#: library/calendar.rst:421 msgid "" "Returns a month's calendar in a multi-line string using the :meth:" "`~TextCalendar.formatmonth` of the :class:`TextCalendar` class." msgstr "" -#: library/calendar.rst:374 +#: library/calendar.rst:427 msgid "" "Prints the calendar for an entire year as returned by :func:`calendar`." msgstr "" -#: library/calendar.rst:379 +#: library/calendar.rst:432 msgid "" "Returns a 3-column calendar for an entire year as a multi-line string using " "the :meth:`~TextCalendar.formatyear` of the :class:`TextCalendar` class." msgstr "" -#: library/calendar.rst:385 +#: library/calendar.rst:438 msgid "" "An unrelated but handy function that takes a time tuple such as returned by " "the :func:`~time.gmtime` function in the :mod:`time` module, and returns the " @@ -423,126 +487,126 @@ msgid "" "inverse." msgstr "" -#: library/calendar.rst:392 +#: library/calendar.rst:445 msgid "The :mod:`calendar` module exports the following data attributes:" msgstr "" -#: library/calendar.rst:396 +#: library/calendar.rst:449 msgid "" "A sequence that represents the days of the week in the current locale, where " "Monday is day number 0." msgstr "" -#: library/calendar.rst:406 +#: library/calendar.rst:459 msgid "" "A sequence that represents the abbreviated days of the week in the current " "locale, where Mon is day number 0." msgstr "" -#: library/calendar.rst:421 +#: library/calendar.rst:474 msgid "" "Aliases for the days of the week, where ``MONDAY`` is ``0`` and ``SUNDAY`` " "is ``6``." msgstr "" -#: library/calendar.rst:429 +#: library/calendar.rst:482 msgid "" "Enumeration defining days of the week as integer constants. The members of " "this enumeration are exported to the module scope as :data:`MONDAY` through :" "data:`SUNDAY`." msgstr "" -#: library/calendar.rst:438 +#: library/calendar.rst:491 msgid "" "A sequence that represents the months of the year in the current locale. " "This follows normal convention of January being month number 1, so it has a " -"length of 13 and ``month_name[0]`` is the empty string." +"length of 13 and ``month_name[0]`` is the empty string." msgstr "" -#: library/calendar.rst:449 +#: library/calendar.rst:502 msgid "" "A sequence that represents the abbreviated months of the year in the current " "locale. This follows normal convention of January being month number 1, so " "it has a length of 13 and ``month_abbr[0]`` is the empty string." msgstr "" -#: library/calendar.rst:470 +#: library/calendar.rst:523 msgid "" "Aliases for the months of the year, where ``JANUARY`` is ``1`` and " "``DECEMBER`` is ``12``." msgstr "" -#: library/calendar.rst:478 +#: library/calendar.rst:531 msgid "" "Enumeration defining months of the year as integer constants. The members of " "this enumeration are exported to the module scope as :data:`JANUARY` " "through :data:`DECEMBER`." msgstr "" -#: library/calendar.rst:485 +#: library/calendar.rst:538 msgid "The :mod:`calendar` module defines the following exceptions:" msgstr "" -#: library/calendar.rst:489 +#: library/calendar.rst:542 msgid "" "A subclass of :exc:`ValueError`, raised when the given month number is " "outside of the range 1-12 (inclusive)." msgstr "" -#: library/calendar.rst:494 +#: library/calendar.rst:547 msgid "The invalid month number." msgstr "" -#: library/calendar.rst:499 +#: library/calendar.rst:552 msgid "" "A subclass of :exc:`ValueError`, raised when the given weekday number is " "outside of the range 0-6 (inclusive)." msgstr "" -#: library/calendar.rst:504 +#: library/calendar.rst:557 msgid "The invalid weekday number." msgstr "" -#: library/calendar.rst:509 +#: library/calendar.rst:562 msgid "Module :mod:`datetime`" msgstr "" -#: library/calendar.rst:510 +#: library/calendar.rst:563 msgid "" "Object-oriented interface to dates and times with similar functionality to " "the :mod:`time` module." msgstr "" -#: library/calendar.rst:513 +#: library/calendar.rst:566 msgid "Module :mod:`time`" msgstr "" -#: library/calendar.rst:514 +#: library/calendar.rst:567 msgid "Low-level time related functions." msgstr "" -#: library/calendar.rst:520 +#: library/calendar.rst:573 msgid "Command-Line Usage" msgstr "" -#: library/calendar.rst:524 +#: library/calendar.rst:577 msgid "" "The :mod:`calendar` module can be executed as a script from the command line " "to interactively print a calendar." msgstr "" -#: library/calendar.rst:527 +#: library/calendar.rst:580 msgid "" "python -m calendar [-h] [-L LOCALE] [-e ENCODING] [-t {text,html}]\n" " [-w WIDTH] [-l LINES] [-s SPACING] [-m MONTHS] [-c CSS]\n" " [year] [month]" msgstr "" -#: library/calendar.rst:534 +#: library/calendar.rst:587 msgid "For example, to print a calendar for the year 2000:" msgstr "" -#: library/calendar.rst:536 +#: library/calendar.rst:589 msgid "" "$ python -m calendar 2000\n" " 2000\n" @@ -583,72 +647,72 @@ msgid "" "30 31" msgstr "" -#: library/calendar.rst:577 +#: library/calendar.rst:630 msgid "The following options are accepted:" msgstr "" -#: library/calendar.rst:584 +#: library/calendar.rst:637 msgid "Show the help message and exit." msgstr "" -#: library/calendar.rst:589 +#: library/calendar.rst:642 msgid "The locale to use for month and weekday names. Defaults to English." msgstr "" -#: library/calendar.rst:595 +#: library/calendar.rst:648 msgid "" "The encoding to use for output. :option:`--encoding` is required if :option:" "`--locale` is set." msgstr "" -#: library/calendar.rst:601 +#: library/calendar.rst:654 msgid "Print the calendar to the terminal as text, or as an HTML document." msgstr "" -#: library/calendar.rst:607 +#: library/calendar.rst:660 msgid "" "The year to print the calendar for. Must be a number between 1 and 9999. " "Defaults to the current year." msgstr "" -#: library/calendar.rst:614 +#: library/calendar.rst:667 msgid "" "The month of the specified :option:`year` to print the calendar for. Must be " "a number between 1 and 12, and may only be used in text mode. Defaults to " "printing a calendar for the full year." msgstr "" -#: library/calendar.rst:620 +#: library/calendar.rst:673 msgid "*Text-mode options:*" msgstr "" -#: library/calendar.rst:624 +#: library/calendar.rst:677 msgid "" "The width of the date column in terminal columns. The date is printed " "centred in the column. Any value lower than 2 is ignored. Defaults to 2." msgstr "" -#: library/calendar.rst:632 +#: library/calendar.rst:685 msgid "" "The number of lines for each week in terminal rows. The date is printed top-" "aligned. Any value lower than 1 is ignored. Defaults to 1." msgstr "" -#: library/calendar.rst:640 +#: library/calendar.rst:693 msgid "" "The space between months in columns. Any value lower than 2 is ignored. " "Defaults to 6." msgstr "" -#: library/calendar.rst:647 +#: library/calendar.rst:700 msgid "The number of months printed per row. Defaults to 3." msgstr "" -#: library/calendar.rst:651 +#: library/calendar.rst:704 msgid "*HTML-mode options:*" msgstr "" -#: library/calendar.rst:655 +#: library/calendar.rst:708 msgid "" "The path of a CSS stylesheet to use for the calendar. This must either be " "relative to the generated HTML, or an absolute HTTP or ``file:///`` URL." diff --git a/library/cmath.po b/library/cmath.po index 4f1d65ca8..c55687a85 100644 --- a/library/cmath.po +++ b/library/cmath.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -262,31 +262,30 @@ msgstr "" #: library/cmath.rst:223 msgid "" "Whether or not two values are considered close is determined according to " -"given absolute and relative tolerances." +"given absolute and relative tolerances. If no errors occur, the result will " +"be: ``abs(a-b) <= max(rel_tol * max(abs(a), abs(b)), abs_tol)``." msgstr "" -#: library/cmath.rst:226 +#: library/cmath.rst:227 msgid "" "*rel_tol* is the relative tolerance -- it is the maximum allowed difference " "between *a* and *b*, relative to the larger absolute value of *a* or *b*. " "For example, to set a tolerance of 5%, pass ``rel_tol=0.05``. The default " "tolerance is ``1e-09``, which assures that the two values are the same " -"within about 9 decimal digits. *rel_tol* must be greater than zero." +"within about 9 decimal digits. *rel_tol* must be nonnegative and less than " +"``1.0``." msgstr "" -#: library/cmath.rst:232 +#: library/cmath.rst:234 msgid "" -"*abs_tol* is the minimum absolute tolerance -- useful for comparisons near " -"zero. *abs_tol* must be at least zero." +"*abs_tol* is the absolute tolerance; it defaults to ``0.0`` and it must be " +"nonnegative. When comparing ``x`` to ``0.0``, ``isclose(x, 0)`` is computed " +"as ``abs(x) <= rel_tol * abs(x)``, which is ``False`` for any ``x`` and " +"rel_tol less than ``1.0``. So add an appropriate positive abs_tol argument " +"to the call." msgstr "" -#: library/cmath.rst:235 -msgid "" -"If no errors occur, the result will be: ``abs(a-b) <= max(rel_tol * " -"max(abs(a), abs(b)), abs_tol)``." -msgstr "" - -#: library/cmath.rst:238 +#: library/cmath.rst:240 msgid "" "The IEEE 754 special values of ``NaN``, ``inf``, and ``-inf`` will be " "handled according to IEEE rules. Specifically, ``NaN`` is not considered " @@ -294,49 +293,49 @@ msgid "" "considered close to themselves." msgstr "" -#: library/cmath.rst:247 +#: library/cmath.rst:249 msgid ":pep:`485` -- A function for testing approximate equality" msgstr "" -#: library/cmath.rst:251 +#: library/cmath.rst:253 msgid "Constants" msgstr "" -#: library/cmath.rst:255 +#: library/cmath.rst:257 msgid "The mathematical constant *π*, as a float." msgstr "" -#: library/cmath.rst:260 +#: library/cmath.rst:262 msgid "The mathematical constant *e*, as a float." msgstr "" -#: library/cmath.rst:265 +#: library/cmath.rst:267 msgid "The mathematical constant *τ*, as a float." msgstr "" -#: library/cmath.rst:272 +#: library/cmath.rst:274 msgid "Floating-point positive infinity. Equivalent to ``float('inf')``." msgstr "" -#: library/cmath.rst:279 +#: library/cmath.rst:281 msgid "" "Complex number with zero real part and positive infinity imaginary part. " "Equivalent to ``complex(0.0, float('inf'))``." msgstr "" -#: library/cmath.rst:287 +#: library/cmath.rst:289 msgid "" "A floating-point \"not a number\" (NaN) value. Equivalent to " "``float('nan')``." msgstr "" -#: library/cmath.rst:295 +#: library/cmath.rst:297 msgid "" "Complex number with zero real part and NaN imaginary part. Equivalent to " "``complex(0.0, float('nan'))``." msgstr "" -#: library/cmath.rst:303 +#: library/cmath.rst:305 msgid "" "Note that the selection of functions is similar, but not identical, to that " "in module :mod:`math`. The reason for having two modules is that some users " @@ -348,7 +347,7 @@ msgid "" "zero)." msgstr "" -#: library/cmath.rst:311 +#: library/cmath.rst:313 msgid "" "A note on branch cuts: They are curves along which the given function fails " "to be continuous. They are a necessary feature of many complex functions. " @@ -359,17 +358,17 @@ msgid "" "following:" msgstr "" -#: library/cmath.rst:321 +#: library/cmath.rst:323 msgid "" "Kahan, W: Branch cuts for complex elementary functions; or, Much ado about " "nothing's sign bit. In Iserles, A., and Powell, M. (eds.), The state of the " "art in numerical analysis. Clarendon Press (1987) pp165--211." msgstr "" -#: library/cmath.rst:301 +#: library/cmath.rst:303 msgid "module" msgstr "" -#: library/cmath.rst:301 +#: library/cmath.rst:303 msgid "math" msgstr "" diff --git a/library/cmdline.po b/library/cmdline.po index 64081007a..172d76e94 100644 --- a/library/cmdline.po +++ b/library/cmdline.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-12-01 14:57+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -61,7 +61,7 @@ msgid ":ref:`dis `" msgstr "" #: library/cmdline.rst:16 -msgid ":mod:`doctest`" +msgid ":ref:`doctest `" msgstr "" #: library/cmdline.rst:17 diff --git a/library/collections.abc.po b/library/collections.abc.po index 4e68c3896..c01f3a394 100644 --- a/library/collections.abc.po +++ b/library/collections.abc.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -44,7 +44,7 @@ msgstr "" #: library/collections.abc.rst:30 msgid "" -"1) A newly written class can inherit directly from one of the abstract base " +"A newly written class can inherit directly from one of the abstract base " "classes. The class must supply the required abstract methods. The " "remaining mixin methods come from inheritance and can be overridden if " "desired. Other methods may be added as needed:" @@ -70,7 +70,7 @@ msgstr "" #: library/collections.abc.rst:50 msgid "" -"2) Existing classes and built-in classes can be registered as \"virtual " +"Existing classes and built-in classes can be registered as \"virtual " "subclasses\" of the ABCs. Those classes should define the full API " "including all of the abstract methods and all of the mixin methods. This " "lets users rely on :func:`issubclass` or :func:`isinstance` tests to " @@ -110,18 +110,18 @@ msgstr "" #: library/collections.abc.rst:82 msgid "" -"3) Some simple interfaces are directly recognizable by the presence of the " +"Some simple interfaces are directly recognizable by the presence of the " "required methods (unless those methods have been set to :const:`None`):" msgstr "" -#: library/collections.abc.rst:86 +#: library/collections.abc.rst:85 msgid "" "class E:\n" " def __iter__(self): ...\n" " def __next__(self): ..." msgstr "" -#: library/collections.abc.rst:92 +#: library/collections.abc.rst:91 msgid "" ">>> issubclass(E, Iterable)\n" "True\n" @@ -129,7 +129,7 @@ msgid "" "True" msgstr "" -#: library/collections.abc.rst:99 +#: library/collections.abc.rst:98 msgid "" "Complex interfaces do not support this last technique because an interface " "is more than just the presence of method names. Interfaces specify " @@ -139,179 +139,180 @@ msgid "" "insufficient for distinguishing a :class:`Sequence` from a :class:`Mapping`." msgstr "" -#: library/collections.abc.rst:107 +#: library/collections.abc.rst:106 msgid "" "These abstract classes now support ``[]``. See :ref:`types-genericalias` " "and :pep:`585`." msgstr "" -#: library/collections.abc.rst:114 +#: library/collections.abc.rst:113 msgid "Collections Abstract Base Classes" msgstr "" -#: library/collections.abc.rst:116 +#: library/collections.abc.rst:115 msgid "" "The collections module offers the following :term:`ABCs `:" msgstr "" -#: library/collections.abc.rst:121 +#: library/collections.abc.rst:120 msgid "ABC" msgstr "" -#: library/collections.abc.rst:121 +#: library/collections.abc.rst:120 msgid "Inherits from" msgstr "" -#: library/collections.abc.rst:121 +#: library/collections.abc.rst:120 msgid "Abstract Methods" msgstr "" -#: library/collections.abc.rst:121 +#: library/collections.abc.rst:120 msgid "Mixin Methods" msgstr "" -#: library/collections.abc.rst:123 +#: library/collections.abc.rst:122 msgid ":class:`Container` [1]_" msgstr "" -#: library/collections.abc.rst:123 +#: library/collections.abc.rst:122 msgid "``__contains__``" msgstr "" -#: library/collections.abc.rst:124 +#: library/collections.abc.rst:123 msgid ":class:`Hashable` [1]_" msgstr "" -#: library/collections.abc.rst:124 +#: library/collections.abc.rst:123 msgid "``__hash__``" msgstr "" -#: library/collections.abc.rst:125 +#: library/collections.abc.rst:124 msgid ":class:`Iterable` [1]_ [2]_" msgstr "" -#: library/collections.abc.rst:125 library/collections.abc.rst:126 +#: library/collections.abc.rst:124 library/collections.abc.rst:125 msgid "``__iter__``" msgstr "" -#: library/collections.abc.rst:126 +#: library/collections.abc.rst:125 msgid ":class:`Iterator` [1]_" msgstr "" -#: library/collections.abc.rst:126 library/collections.abc.rst:127 +#: library/collections.abc.rst:125 library/collections.abc.rst:126 msgid ":class:`Iterable`" msgstr "" -#: library/collections.abc.rst:126 +#: library/collections.abc.rst:125 msgid "``__next__``" msgstr "" -#: library/collections.abc.rst:127 +#: library/collections.abc.rst:126 msgid ":class:`Reversible` [1]_" msgstr "" -#: library/collections.abc.rst:127 +#: library/collections.abc.rst:126 msgid "``__reversed__``" msgstr "" -#: library/collections.abc.rst:128 +#: library/collections.abc.rst:127 msgid ":class:`Generator` [1]_" msgstr "" -#: library/collections.abc.rst:128 +#: library/collections.abc.rst:127 msgid ":class:`Iterator`" msgstr "" -#: library/collections.abc.rst:128 library/collections.abc.rst:176 +#: library/collections.abc.rst:127 library/collections.abc.rst:176 msgid "``send``, ``throw``" msgstr "" -#: library/collections.abc.rst:128 +#: library/collections.abc.rst:127 msgid "``close``, ``__iter__``, ``__next__``" msgstr "" -#: library/collections.abc.rst:129 +#: library/collections.abc.rst:128 msgid ":class:`Sized` [1]_" msgstr "" -#: library/collections.abc.rst:129 library/collections.abc.rst:168 +#: library/collections.abc.rst:128 msgid "``__len__``" msgstr "" -#: library/collections.abc.rst:130 +#: library/collections.abc.rst:129 msgid ":class:`Callable` [1]_" msgstr "" -#: library/collections.abc.rst:130 +#: library/collections.abc.rst:129 msgid "``__call__``" msgstr "" -#: library/collections.abc.rst:131 +#: library/collections.abc.rst:130 msgid ":class:`Collection` [1]_" msgstr "" -#: library/collections.abc.rst:131 +#: library/collections.abc.rst:130 msgid ":class:`Sized`, :class:`Iterable`, :class:`Container`" msgstr "" -#: library/collections.abc.rst:131 library/collections.abc.rst:147 +#: library/collections.abc.rst:130 library/collections.abc.rst:146 msgid "``__contains__``, ``__iter__``, ``__len__``" msgstr "" -#: library/collections.abc.rst:135 library/collections.abc.rst:138 -#: library/collections.abc.rst:144 +#: library/collections.abc.rst:134 library/collections.abc.rst:137 +#: library/collections.abc.rst:143 msgid ":class:`Sequence`" msgstr "" -#: library/collections.abc.rst:135 +#: library/collections.abc.rst:134 msgid ":class:`Reversible`, :class:`Collection`" msgstr "" -#: library/collections.abc.rst:135 library/collections.abc.rst:144 +#: library/collections.abc.rst:134 library/collections.abc.rst:143 msgid "``__getitem__``, ``__len__``" msgstr "" -#: library/collections.abc.rst:135 +#: library/collections.abc.rst:134 msgid "" "``__contains__``, ``__iter__``, ``__reversed__``, ``index``, and ``count``" msgstr "" -#: library/collections.abc.rst:138 +#: library/collections.abc.rst:137 msgid ":class:`MutableSequence`" msgstr "" -#: library/collections.abc.rst:138 +#: library/collections.abc.rst:137 msgid "" "``__getitem__``, ``__setitem__``, ``__delitem__``, ``__len__``, ``insert``" msgstr "" -#: library/collections.abc.rst:138 +#: library/collections.abc.rst:137 msgid "" "Inherited :class:`Sequence` methods and ``append``, ``clear``, ``reverse``, " "``extend``, ``pop``, ``remove``, and ``__iadd__``" msgstr "" -#: library/collections.abc.rst:144 +#: library/collections.abc.rst:143 msgid ":class:`ByteString`" msgstr "" -#: library/collections.abc.rst:144 +#: library/collections.abc.rst:143 msgid "Inherited :class:`Sequence` methods" msgstr "" -#: library/collections.abc.rst:147 library/collections.abc.rst:151 +#: library/collections.abc.rst:146 library/collections.abc.rst:151 msgid ":class:`Set`" msgstr "" -#: library/collections.abc.rst:147 library/collections.abc.rst:157 +#: library/collections.abc.rst:146 library/collections.abc.rst:157 msgid ":class:`Collection`" msgstr "" -#: library/collections.abc.rst:147 +#: library/collections.abc.rst:146 msgid "" "``__le__``, ``__lt__``, ``__eq__``, ``__ne__``, ``__gt__``, ``__ge__``, " -"``__and__``, ``__or__``, ``__sub__``, ``__xor__``, and ``isdisjoint``" +"``__and__``, ``__or__``, ``__sub__``, ``__rsub__``, ``__xor__``, " +"``__rxor__`` and ``isdisjoint``" msgstr "" #: library/collections.abc.rst:151 @@ -365,6 +366,10 @@ msgstr "" msgid ":class:`Sized`" msgstr "" +#: library/collections.abc.rst:168 +msgid "``__init__``, ``__len__`` and ``__repr__``" +msgstr "" + #: library/collections.abc.rst:169 msgid ":class:`ItemsView`" msgstr "" diff --git a/library/collections.po b/library/collections.po index aa133e630..659149b3c 100644 --- a/library/collections.po +++ b/library/collections.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -988,8 +988,8 @@ msgstr "" #: library/collections.rst:750 msgid "" "Note that :meth:`__missing__` is *not* called for any operations besides :" -"meth:`~object.__getitem__`. This means that :meth:`get` will, like normal " -"dictionaries, return ``None`` as a default rather than using :attr:" +"meth:`~object.__getitem__`. This means that :meth:`~dict.get` will, like " +"normal dictionaries, return ``None`` as a default rather than using :attr:" "`default_factory`." msgstr "" @@ -1004,7 +1004,7 @@ msgid "" "absent." msgstr "" -#: library/collections.rst:1185 +#: library/collections.rst:1186 msgid "" "Added merge (``|``) and update (``|=``) operators, specified in :pep:`584`." msgstr "" @@ -1023,10 +1023,10 @@ msgstr "" msgid "" "When each key is encountered for the first time, it is not already in the " "mapping; so an entry is automatically created using the :attr:`~defaultdict." -"default_factory` function which returns an empty :class:`list`. The :meth:" -"`list.append` operation then attaches the value to the new list. When keys " +"default_factory` function which returns an empty :class:`list`. The :meth:`!" +"list.append` operation then attaches the value to the new list. When keys " "are encountered again, the look-up proceeds normally (returning the list for " -"that key) and the :meth:`list.append` operation adds another value to the " +"that key) and the :meth:`!list.append` operation adds another value to the " "list. This technique is simpler and faster than an equivalent technique " "using :meth:`dict.setdefault`:" msgstr "" @@ -1077,18 +1077,19 @@ msgid "" "Returns a new tuple subclass named *typename*. The new subclass is used to " "create tuple-like objects that have fields accessible by attribute lookup as " "well as being indexable and iterable. Instances of the subclass also have a " -"helpful docstring (with typename and field_names) and a helpful :meth:" -"`__repr__` method which lists the tuple contents in a ``name=value`` format." +"helpful docstring (with *typename* and *field_names*) and a helpful :meth:" +"`~object.__repr__` method which lists the tuple contents in a ``name=value`` " +"format." msgstr "" -#: library/collections.rst:855 +#: library/collections.rst:856 msgid "" "The *field_names* are a sequence of strings such as ``['x', 'y']``. " "Alternatively, *field_names* can be a single string with each fieldname " "separated by whitespace and/or commas, for example ``'x y'`` or ``'x, y'``." msgstr "" -#: library/collections.rst:859 +#: library/collections.rst:860 msgid "" "Any valid Python identifier may be used for a fieldname except for names " "starting with an underscore. Valid identifiers consist of letters, digits, " @@ -1096,7 +1097,7 @@ msgid "" "mod:`keyword` such as *class*, *for*, *return*, *global*, *pass*, or *raise*." msgstr "" -#: library/collections.rst:865 +#: library/collections.rst:866 msgid "" "If *rename* is true, invalid fieldnames are automatically replaced with " "positional names. For example, ``['abc', 'def', 'ghi', 'abc']`` is " @@ -1104,7 +1105,7 @@ msgid "" "and the duplicate fieldname ``abc``." msgstr "" -#: library/collections.rst:870 +#: library/collections.rst:871 msgid "" "*defaults* can be ``None`` or an :term:`iterable` of default values. Since " "fields with a default value must come after any fields without a default, " @@ -1114,48 +1115,49 @@ msgid "" "will default to ``2``." msgstr "" -#: library/collections.rst:877 +#: library/collections.rst:878 msgid "" "If *module* is defined, the :attr:`~type.__module__` attribute of the named " "tuple is set to that value." msgstr "" -#: library/collections.rst:880 +#: library/collections.rst:881 msgid "" "Named tuple instances do not have per-instance dictionaries, so they are " "lightweight and require no more memory than regular tuples." msgstr "" -#: library/collections.rst:883 +#: library/collections.rst:884 msgid "" "To support pickling, the named tuple class should be assigned to a variable " "that matches *typename*." msgstr "" -#: library/collections.rst:886 +#: library/collections.rst:887 msgid "Added support for *rename*." msgstr "" -#: library/collections.rst:889 +#: library/collections.rst:890 msgid "" "The *verbose* and *rename* parameters became :ref:`keyword-only arguments " "`." msgstr "" -#: library/collections.rst:893 +#: library/collections.rst:894 msgid "Added the *module* parameter." msgstr "" -#: library/collections.rst:896 -msgid "Removed the *verbose* parameter and the :attr:`_source` attribute." +#: library/collections.rst:897 +msgid "Removed the *verbose* parameter and the :attr:`!_source` attribute." msgstr "" -#: library/collections.rst:899 +#: library/collections.rst:900 msgid "" -"Added the *defaults* parameter and the :attr:`_field_defaults` attribute." +"Added the *defaults* parameter and the :attr:`~somenamedtuple." +"_field_defaults` attribute." msgstr "" -#: library/collections.rst:903 +#: library/collections.rst:904 msgid "" ">>> # Basic example\n" ">>> Point = namedtuple('Point', ['x', 'y'])\n" @@ -1172,13 +1174,13 @@ msgid "" "Point(x=11, y=22)" msgstr "" -#: library/collections.rst:919 +#: library/collections.rst:920 msgid "" "Named tuples are especially useful for assigning field names to result " "tuples returned by the :mod:`csv` or :mod:`sqlite3` modules::" msgstr "" -#: library/collections.rst:922 +#: library/collections.rst:923 msgid "" "EmployeeRecord = namedtuple('EmployeeRecord', 'name, age, title, department, " "paygrade')\n" @@ -1197,43 +1199,43 @@ msgid "" " print(emp.name, emp.title)" msgstr "" -#: library/collections.rst:935 +#: library/collections.rst:936 msgid "" "In addition to the methods inherited from tuples, named tuples support three " "additional methods and two attributes. To prevent conflicts with field " "names, the method and attribute names start with an underscore." msgstr "" -#: library/collections.rst:941 +#: library/collections.rst:942 msgid "" "Class method that makes a new instance from an existing sequence or iterable." msgstr "" -#: library/collections.rst:943 +#: library/collections.rst:944 msgid "" ">>> t = [11, 22]\n" ">>> Point._make(t)\n" "Point(x=11, y=22)" msgstr "" -#: library/collections.rst:951 +#: library/collections.rst:952 msgid "" "Return a new :class:`dict` which maps field names to their corresponding " "values:" msgstr "" -#: library/collections.rst:954 +#: library/collections.rst:955 msgid "" ">>> p = Point(x=11, y=22)\n" ">>> p._asdict()\n" "{'x': 11, 'y': 22}" msgstr "" -#: library/collections.rst:960 +#: library/collections.rst:961 msgid "Returns an :class:`OrderedDict` instead of a regular :class:`dict`." msgstr "" -#: library/collections.rst:963 +#: library/collections.rst:964 msgid "" "Returns a regular :class:`dict` instead of an :class:`OrderedDict`. As of " "Python 3.7, regular dicts are guaranteed to be ordered. If the extra " @@ -1241,13 +1243,13 @@ msgid "" "to cast the result to the desired type: ``OrderedDict(nt._asdict())``." msgstr "" -#: library/collections.rst:972 +#: library/collections.rst:973 msgid "" "Return a new instance of the named tuple replacing specified fields with new " "values::" msgstr "" -#: library/collections.rst:975 +#: library/collections.rst:976 msgid "" ">>> p = Point(x=11, y=22)\n" ">>> p._replace(x=33)\n" @@ -1258,13 +1260,13 @@ msgid "" "timestamp=time.now())" msgstr "" -#: library/collections.rst:984 +#: library/collections.rst:985 msgid "" "Tuple of strings listing the field names. Useful for introspection and for " "creating new named tuple types from existing named tuples." msgstr "" -#: library/collections.rst:987 +#: library/collections.rst:988 msgid "" ">>> p._fields # view the field names\n" "('x', 'y')\n" @@ -1275,11 +1277,11 @@ msgid "" "Pixel(x=11, y=22, red=128, green=255, blue=0)" msgstr "" -#: library/collections.rst:999 +#: library/collections.rst:1000 msgid "Dictionary mapping field names to default values." msgstr "" -#: library/collections.rst:1001 +#: library/collections.rst:1002 msgid "" ">>> Account = namedtuple('Account', ['type', 'balance'], defaults=[0])\n" ">>> Account._field_defaults\n" @@ -1288,26 +1290,26 @@ msgid "" "Account(type='premium', balance=0)" msgstr "" -#: library/collections.rst:1009 +#: library/collections.rst:1010 msgid "" "To retrieve a field whose name is stored in a string, use the :func:" "`getattr` function:" msgstr "" -#: library/collections.rst:1015 +#: library/collections.rst:1016 msgid "" "To convert a dictionary to a named tuple, use the double-star-operator (as " "described in :ref:`tut-unpacking-arguments`):" msgstr "" -#: library/collections.rst:1022 +#: library/collections.rst:1023 msgid "" "Since a named tuple is a regular Python class, it is easy to add or change " "functionality with a subclass. Here is how to add a calculated field and a " "fixed-width print format:" msgstr "" -#: library/collections.rst:1026 +#: library/collections.rst:1027 msgid "" ">>> class Point(namedtuple('Point', ['x', 'y'])):\n" "... __slots__ = ()\n" @@ -1324,38 +1326,38 @@ msgid "" "Point: x=14.000 y= 0.714 hypot=14.018" msgstr "" -#: library/collections.rst:1041 +#: library/collections.rst:1042 msgid "" "The subclass shown above sets ``__slots__`` to an empty tuple. This helps " "keep memory requirements low by preventing the creation of instance " "dictionaries." msgstr "" -#: library/collections.rst:1044 +#: library/collections.rst:1045 msgid "" "Subclassing is not useful for adding new, stored fields. Instead, simply " "create a new named tuple type from the :attr:`~somenamedtuple._fields` " "attribute:" msgstr "" -#: library/collections.rst:1049 +#: library/collections.rst:1050 msgid "" "Docstrings can be customized by making direct assignments to the ``__doc__`` " "fields:" msgstr "" -#: library/collections.rst:1058 +#: library/collections.rst:1059 msgid "Property docstrings became writeable." msgstr "" -#: library/collections.rst:1063 +#: library/collections.rst:1064 msgid "" "See :class:`typing.NamedTuple` for a way to add type hints for named " "tuples. It also provides an elegant notation using the :keyword:`class` " "keyword::" msgstr "" -#: library/collections.rst:1067 +#: library/collections.rst:1068 msgid "" "class Component(NamedTuple):\n" " part_number: int\n" @@ -1363,23 +1365,23 @@ msgid "" " description: Optional[str] = None" msgstr "" -#: library/collections.rst:1072 +#: library/collections.rst:1073 msgid "" "See :meth:`types.SimpleNamespace` for a mutable namespace based on an " "underlying dictionary instead of a tuple." msgstr "" -#: library/collections.rst:1075 +#: library/collections.rst:1076 msgid "" "The :mod:`dataclasses` module provides a decorator and functions for " "automatically adding generated special methods to user-defined classes." msgstr "" -#: library/collections.rst:1080 +#: library/collections.rst:1081 msgid ":class:`OrderedDict` objects" msgstr "" -#: library/collections.rst:1082 +#: library/collections.rst:1083 msgid "" "Ordered dictionaries are just like regular dictionaries but have some extra " "capabilities relating to ordering operations. They have become less " @@ -1387,91 +1389,93 @@ msgid "" "remember insertion order (this new behavior became guaranteed in Python 3.7)." msgstr "" -#: library/collections.rst:1088 +#: library/collections.rst:1089 msgid "Some differences from :class:`dict` still remain:" msgstr "" -#: library/collections.rst:1090 +#: library/collections.rst:1091 msgid "" "The regular :class:`dict` was designed to be very good at mapping " "operations. Tracking insertion order was secondary." msgstr "" -#: library/collections.rst:1093 +#: library/collections.rst:1094 msgid "" "The :class:`OrderedDict` was designed to be good at reordering operations. " "Space efficiency, iteration speed, and the performance of update operations " "were secondary." msgstr "" -#: library/collections.rst:1097 +#: library/collections.rst:1098 msgid "" "The :class:`OrderedDict` algorithm can handle frequent reordering operations " "better than :class:`dict`. As shown in the recipes below, this makes it " "suitable for implementing various kinds of LRU caches." msgstr "" -#: library/collections.rst:1101 +#: library/collections.rst:1102 msgid "" "The equality operation for :class:`OrderedDict` checks for matching order." msgstr "" -#: library/collections.rst:1103 +#: library/collections.rst:1104 msgid "" "A regular :class:`dict` can emulate the order sensitive equality test with " "``p == q and all(k1 == k2 for k1, k2 in zip(p, q))``." msgstr "" -#: library/collections.rst:1106 +#: library/collections.rst:1107 msgid "" -"The :meth:`popitem` method of :class:`OrderedDict` has a different " -"signature. It accepts an optional argument to specify which item is popped." +"The :meth:`~OrderedDict.popitem` method of :class:`OrderedDict` has a " +"different signature. It accepts an optional argument to specify which item " +"is popped." msgstr "" -#: library/collections.rst:1109 +#: library/collections.rst:1110 msgid "" "A regular :class:`dict` can emulate OrderedDict's ``od.popitem(last=True)`` " "with ``d.popitem()`` which is guaranteed to pop the rightmost (last) item." msgstr "" -#: library/collections.rst:1112 +#: library/collections.rst:1113 msgid "" "A regular :class:`dict` can emulate OrderedDict's ``od.popitem(last=False)`` " "with ``(k := next(iter(d)), d.pop(k))`` which will return and remove the " "leftmost (first) item if it exists." msgstr "" -#: library/collections.rst:1116 +#: library/collections.rst:1117 msgid "" -":class:`OrderedDict` has a :meth:`move_to_end` method to efficiently " -"reposition an element to an endpoint." +":class:`OrderedDict` has a :meth:`~OrderedDict.move_to_end` method to " +"efficiently reposition an element to an endpoint." msgstr "" -#: library/collections.rst:1119 +#: library/collections.rst:1120 msgid "" "A regular :class:`dict` can emulate OrderedDict's ``od.move_to_end(k, " "last=True)`` with ``d[k] = d.pop(k)`` which will move the key and its " "associated value to the rightmost (last) position." msgstr "" -#: library/collections.rst:1123 +#: library/collections.rst:1124 msgid "" "A regular :class:`dict` does not have an efficient equivalent for " "OrderedDict's ``od.move_to_end(k, last=False)`` which moves the key and its " "associated value to the leftmost (first) position." msgstr "" -#: library/collections.rst:1127 -msgid "Until Python 3.8, :class:`dict` lacked a :meth:`__reversed__` method." +#: library/collections.rst:1128 +msgid "" +"Until Python 3.8, :class:`dict` lacked a :meth:`~object.__reversed__` method." msgstr "" -#: library/collections.rst:1132 +#: library/collections.rst:1133 msgid "" "Return an instance of a :class:`dict` subclass that has methods specialized " "for rearranging dictionary order." msgstr "" -#: library/collections.rst:1139 +#: library/collections.rst:1140 msgid "" "The :meth:`popitem` method for ordered dictionaries returns and removes a " "(key, value) pair. The pairs are returned in :abbr:`LIFO (last-in, first-" @@ -1479,14 +1483,14 @@ msgid "" "false." msgstr "" -#: library/collections.rst:1146 +#: library/collections.rst:1147 msgid "" "Move an existing *key* to either end of an ordered dictionary. The item is " "moved to the right end if *last* is true (the default) or to the beginning " "if *last* is false. Raises :exc:`KeyError` if the *key* does not exist:" msgstr "" -#: library/collections.rst:1151 +#: library/collections.rst:1152 msgid "" ">>> d = OrderedDict.fromkeys('abcde')\n" ">>> d.move_to_end('b')\n" @@ -1497,19 +1501,19 @@ msgid "" "'bacde'" msgstr "" -#: library/collections.rst:1163 +#: library/collections.rst:1164 msgid "" "In addition to the usual mapping methods, ordered dictionaries also support " "reverse iteration using :func:`reversed`." msgstr "" -#: library/collections.rst:1168 +#: library/collections.rst:1169 msgid "" "Equality tests between :class:`OrderedDict` objects are order-sensitive and " "are roughly equivalent to ``list(od1.items())==list(od2.items())``." msgstr "" -#: library/collections.rst:1171 +#: library/collections.rst:1172 msgid "" "Equality tests between :class:`OrderedDict` objects and other :class:" "`~collections.abc.Mapping` objects are order-insensitive like regular " @@ -1517,23 +1521,24 @@ msgid "" "anywhere a regular dictionary is used." msgstr "" -#: library/collections.rst:1176 +#: library/collections.rst:1177 msgid "" "The items, keys, and values :term:`views ` of :class:" "`OrderedDict` now support reverse iteration using :func:`reversed`." msgstr "" -#: library/collections.rst:1180 +#: library/collections.rst:1181 msgid "" "With the acceptance of :pep:`468`, order is retained for keyword arguments " -"passed to the :class:`OrderedDict` constructor and its :meth:`update` method." +"passed to the :class:`OrderedDict` constructor and its :meth:`~dict.update` " +"method." msgstr "" -#: library/collections.rst:1190 +#: library/collections.rst:1191 msgid ":class:`OrderedDict` Examples and Recipes" msgstr "" -#: library/collections.rst:1192 +#: library/collections.rst:1193 msgid "" "It is straightforward to create an ordered dictionary variant that remembers " "the order the keys were *last* inserted. If a new entry overwrites an " @@ -1541,7 +1546,7 @@ msgid "" "end::" msgstr "" -#: library/collections.rst:1197 +#: library/collections.rst:1198 msgid "" "class LastUpdatedOrderedDict(OrderedDict):\n" " 'Store items in the order the keys were last added'\n" @@ -1551,13 +1556,13 @@ msgid "" " self.move_to_end(key)" msgstr "" -#: library/collections.rst:1204 +#: library/collections.rst:1205 msgid "" "An :class:`OrderedDict` would also be useful for implementing variants of :" "func:`functools.lru_cache`:" msgstr "" -#: library/collections.rst:1207 +#: library/collections.rst:1208 msgid "" "from collections import OrderedDict\n" "from time import time\n" @@ -1584,7 +1589,7 @@ msgid "" " return result" msgstr "" -#: library/collections.rst:1234 +#: library/collections.rst:1235 msgid "" "class MultiHitLRUCache:\n" " \"\"\" LRU cache that defers caching a result until\n" @@ -1622,11 +1627,11 @@ msgid "" " return result" msgstr "" -#: library/collections.rst:1303 +#: library/collections.rst:1304 msgid ":class:`UserDict` objects" msgstr "" -#: library/collections.rst:1305 +#: library/collections.rst:1306 msgid "" "The class, :class:`UserDict` acts as a wrapper around dictionary objects. " "The need for this class has been partially supplanted by the ability to " @@ -1634,7 +1639,7 @@ msgid "" "work with because the underlying dictionary is accessible as an attribute." msgstr "" -#: library/collections.rst:1313 +#: library/collections.rst:1314 msgid "" "Class that simulates a dictionary. The instance's contents are kept in a " "regular dictionary, which is accessible via the :attr:`data` attribute of :" @@ -1643,22 +1648,22 @@ msgid "" "not be kept, allowing it to be used for other purposes." msgstr "" -#: library/collections.rst:1319 +#: library/collections.rst:1320 msgid "" "In addition to supporting the methods and operations of mappings, :class:" "`UserDict` instances provide the following attribute:" msgstr "" -#: library/collections.rst:1324 +#: library/collections.rst:1325 msgid "" "A real dictionary used to store the contents of the :class:`UserDict` class." msgstr "" -#: library/collections.rst:1330 +#: library/collections.rst:1331 msgid ":class:`UserList` objects" msgstr "" -#: library/collections.rst:1332 +#: library/collections.rst:1333 msgid "" "This class acts as a wrapper around list objects. It is a useful base class " "for your own list-like classes which can inherit from them and override " @@ -1666,14 +1671,14 @@ msgid "" "lists." msgstr "" -#: library/collections.rst:1337 +#: library/collections.rst:1338 msgid "" "The need for this class has been partially supplanted by the ability to " "subclass directly from :class:`list`; however, this class can be easier to " "work with because the underlying list is accessible as an attribute." msgstr "" -#: library/collections.rst:1343 +#: library/collections.rst:1344 msgid "" "Class that simulates a list. The instance's contents are kept in a regular " "list, which is accessible via the :attr:`data` attribute of :class:" @@ -1682,19 +1687,19 @@ msgid "" "for example a real Python list or a :class:`UserList` object." msgstr "" -#: library/collections.rst:1349 +#: library/collections.rst:1350 msgid "" "In addition to supporting the methods and operations of mutable sequences, :" "class:`UserList` instances provide the following attribute:" msgstr "" -#: library/collections.rst:1354 +#: library/collections.rst:1355 msgid "" "A real :class:`list` object used to store the contents of the :class:" "`UserList` class." msgstr "" -#: library/collections.rst:1357 +#: library/collections.rst:1358 msgid "" "**Subclassing requirements:** Subclasses of :class:`UserList` are expected " "to offer a constructor which can be called with either no arguments or one " @@ -1704,7 +1709,7 @@ msgid "" "object used as a data source." msgstr "" -#: library/collections.rst:1364 +#: library/collections.rst:1365 msgid "" "If a derived class does not wish to comply with this requirement, all of the " "special methods supported by this class will need to be overridden; please " @@ -1712,11 +1717,11 @@ msgid "" "provided in that case." msgstr "" -#: library/collections.rst:1370 +#: library/collections.rst:1371 msgid ":class:`UserString` objects" msgstr "" -#: library/collections.rst:1372 +#: library/collections.rst:1373 msgid "" "The class, :class:`UserString` acts as a wrapper around string objects. The " "need for this class has been partially supplanted by the ability to subclass " @@ -1724,7 +1729,7 @@ msgid "" "because the underlying string is accessible as an attribute." msgstr "" -#: library/collections.rst:1380 +#: library/collections.rst:1381 msgid "" "Class that simulates a string object. The instance's content is kept in a " "regular string object, which is accessible via the :attr:`data` attribute " @@ -1733,19 +1738,19 @@ msgid "" "converted into a string using the built-in :func:`str` function." msgstr "" -#: library/collections.rst:1387 +#: library/collections.rst:1388 msgid "" "In addition to supporting the methods and operations of strings, :class:" "`UserString` instances provide the following attribute:" msgstr "" -#: library/collections.rst:1392 +#: library/collections.rst:1393 msgid "" "A real :class:`str` object used to store the contents of the :class:" "`UserString` class." msgstr "" -#: library/collections.rst:1395 +#: library/collections.rst:1396 msgid "" "New methods ``__getnewargs__``, ``__rmod__``, ``casefold``, ``format_map``, " "``isprintable``, and ``maketrans``." diff --git a/library/configparser.po b/library/configparser.po index 4bd3927b4..0bce25fbc 100644 --- a/library/configparser.po +++ b/library/configparser.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -155,7 +155,7 @@ msgid "" "'no'\n" ">>> topsecret['Port']\n" "'50022'\n" -">>> for key in config['forge.example']: \n" +">>> for key in config['forge.example']:\n" "... print(key)\n" "user\n" "compressionlevel\n" diff --git a/library/constants.po b/library/constants.po index 22f3607c2..fdff150e5 100644 --- a/library/constants.po +++ b/library/constants.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -73,19 +73,19 @@ msgstr "" #: library/constants.rst:51 msgid "" -"``NotImplementedError`` and :data:`!NotImplemented` are not interchangeable, " -"even though they have similar names and purposes. See :exc:" -"`NotImplementedError` for details on when to use it." +":data:`!NotImplemented` and :exc:`!NotImplementedError` are not " +"interchangeable. This constant should only be used as described above; see :" +"exc:`NotImplementedError` for details on correct usage of the exception." msgstr "" -#: library/constants.rst:55 +#: library/constants.rst:56 msgid "" "Evaluating :data:`!NotImplemented` in a boolean context is deprecated. While " "it currently evaluates as true, it will emit a :exc:`DeprecationWarning`. It " "will raise a :exc:`TypeError` in a future version of Python." msgstr "" -#: library/constants.rst:64 +#: library/constants.rst:65 msgid "" "The same as the ellipsis literal \"``...``\". Special value used mostly in " "conjunction with extended slicing syntax for user-defined container data " @@ -93,24 +93,24 @@ msgid "" "type." msgstr "" -#: library/constants.rst:71 +#: library/constants.rst:72 msgid "" "This constant is true if Python was not started with an :option:`-O` option. " "See also the :keyword:`assert` statement." msgstr "" -#: library/constants.rst:77 +#: library/constants.rst:78 msgid "" "The names :data:`None`, :data:`False`, :data:`True` and :data:`__debug__` " "cannot be reassigned (assignments to them, even as an attribute name, raise :" "exc:`SyntaxError`), so they can be considered \"true\" constants." msgstr "" -#: library/constants.rst:85 +#: library/constants.rst:86 msgid "Constants added by the :mod:`site` module" msgstr "" -#: library/constants.rst:87 +#: library/constants.rst:88 msgid "" "The :mod:`site` module (which is imported automatically during startup, " "except if the :option:`-S` command-line option is given) adds several " @@ -118,37 +118,37 @@ msgid "" "interpreter shell and should not be used in programs." msgstr "" -#: library/constants.rst:95 +#: library/constants.rst:96 msgid "" "Objects that when printed, print a message like \"Use quit() or Ctrl-D (i.e. " "EOF) to exit\", and when called, raise :exc:`SystemExit` with the specified " "exit code." msgstr "" -#: library/constants.rst:102 +#: library/constants.rst:103 msgid "" "Object that when printed, prints the message \"Type help() for interactive " "help, or help(object) for help about object.\", and when called, acts as " "described :func:`elsewhere `." msgstr "" -#: library/constants.rst:109 +#: library/constants.rst:110 msgid "" "Objects that when printed or called, print the text of copyright or credits, " "respectively." msgstr "" -#: library/constants.rst:114 +#: library/constants.rst:115 msgid "" "Object that when printed, prints the message \"Type license() to see the " "full license text\", and when called, displays the full license text in a " "pager-like fashion (one screen at a time)." msgstr "" -#: library/constants.rst:61 +#: library/constants.rst:62 msgid "..." msgstr "" -#: library/constants.rst:61 +#: library/constants.rst:62 msgid "ellipsis literal" msgstr "" diff --git a/library/contextlib.po b/library/contextlib.po index f65e99d39..c1ae0a16b 100644 --- a/library/contextlib.po +++ b/library/contextlib.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -853,37 +853,37 @@ msgid "" "be used instead." msgstr "" -#: library/contextlib.rst:634 +#: library/contextlib.rst:635 msgid "" "Similar to :meth:`ExitStack.enter_context` but expects an asynchronous " "context manager." msgstr "" -#: library/contextlib.rst:637 +#: library/contextlib.rst:638 msgid "" "Raises :exc:`TypeError` instead of :exc:`AttributeError` if *cm* is not an " "asynchronous context manager." msgstr "" -#: library/contextlib.rst:643 +#: library/contextlib.rst:644 msgid "" "Similar to :meth:`ExitStack.push` but expects either an asynchronous context " "manager or a coroutine function." msgstr "" -#: library/contextlib.rst:648 +#: library/contextlib.rst:649 msgid "Similar to :meth:`ExitStack.callback` but expects a coroutine function." msgstr "" -#: library/contextlib.rst:652 +#: library/contextlib.rst:654 msgid "Similar to :meth:`ExitStack.close` but properly handles awaitables." msgstr "" -#: library/contextlib.rst:654 +#: library/contextlib.rst:656 msgid "Continuing the example for :func:`asynccontextmanager`::" msgstr "" -#: library/contextlib.rst:656 +#: library/contextlib.rst:658 msgid "" "async with AsyncExitStack() as stack:\n" " connections = [await stack.enter_async_context(get_connection())\n" @@ -893,21 +893,21 @@ msgid "" " # later in the list raise an exception." msgstr "" -#: library/contextlib.rst:666 +#: library/contextlib.rst:668 msgid "Examples and Recipes" msgstr "" -#: library/contextlib.rst:668 +#: library/contextlib.rst:670 msgid "" "This section describes some examples and recipes for making effective use of " "the tools provided by :mod:`contextlib`." msgstr "" -#: library/contextlib.rst:673 +#: library/contextlib.rst:675 msgid "Supporting a variable number of context managers" msgstr "" -#: library/contextlib.rst:675 +#: library/contextlib.rst:677 msgid "" "The primary use case for :class:`ExitStack` is the one given in the class " "documentation: supporting a variable number of context managers and other " @@ -917,7 +917,7 @@ msgid "" "of the context managers being optional::" msgstr "" -#: library/contextlib.rst:682 +#: library/contextlib.rst:684 msgid "" "with ExitStack() as stack:\n" " for resource in resources:\n" @@ -928,18 +928,18 @@ msgid "" " # Perform operations that use the acquired resources" msgstr "" -#: library/contextlib.rst:690 +#: library/contextlib.rst:692 msgid "" "As shown, :class:`ExitStack` also makes it quite easy to use :keyword:`with` " "statements to manage arbitrary resources that don't natively support the " "context management protocol." msgstr "" -#: library/contextlib.rst:696 +#: library/contextlib.rst:698 msgid "Catching exceptions from ``__enter__`` methods" msgstr "" -#: library/contextlib.rst:698 +#: library/contextlib.rst:700 msgid "" "It is occasionally desirable to catch exceptions from an ``__enter__`` " "method implementation, *without* inadvertently catching exceptions from the :" @@ -948,7 +948,7 @@ msgid "" "be separated slightly in order to allow this::" msgstr "" -#: library/contextlib.rst:704 +#: library/contextlib.rst:706 msgid "" "stack = ExitStack()\n" "try:\n" @@ -960,7 +960,7 @@ msgid "" " # Handle normal case" msgstr "" -#: library/contextlib.rst:713 +#: library/contextlib.rst:715 msgid "" "Actually needing to do this is likely to indicate that the underlying API " "should be providing a direct resource management interface for use with :" @@ -971,25 +971,25 @@ msgid "" "`with` statement." msgstr "" -#: library/contextlib.rst:723 +#: library/contextlib.rst:725 msgid "Cleaning up in an ``__enter__`` implementation" msgstr "" -#: library/contextlib.rst:725 +#: library/contextlib.rst:727 msgid "" "As noted in the documentation of :meth:`ExitStack.push`, this method can be " "useful in cleaning up an already allocated resource if later steps in the :" "meth:`~object.__enter__` implementation fail." msgstr "" -#: library/contextlib.rst:729 +#: library/contextlib.rst:731 msgid "" "Here's an example of doing this for a context manager that accepts resource " "acquisition and release functions, along with an optional validation " "function, and maps them to the context management protocol::" msgstr "" -#: library/contextlib.rst:733 +#: library/contextlib.rst:735 msgid "" "from contextlib import contextmanager, AbstractContextManager, ExitStack\n" "\n" @@ -1027,11 +1027,11 @@ msgid "" " self.release_resource()" msgstr "" -#: library/contextlib.rst:769 +#: library/contextlib.rst:771 msgid "Replacing any use of ``try-finally`` and flag variables" msgstr "" -#: library/contextlib.rst:771 +#: library/contextlib.rst:773 msgid "" "A pattern you will sometimes see is a ``try-finally`` statement with a flag " "variable to indicate whether or not the body of the ``finally`` clause " @@ -1039,7 +1039,7 @@ msgid "" "by using an ``except`` clause instead), it looks something like this::" msgstr "" -#: library/contextlib.rst:776 +#: library/contextlib.rst:778 msgid "" "cleanup_needed = True\n" "try:\n" @@ -1051,21 +1051,21 @@ msgid "" " cleanup_resources()" msgstr "" -#: library/contextlib.rst:785 +#: library/contextlib.rst:787 msgid "" "As with any ``try`` statement based code, this can cause problems for " "development and review, because the setup code and the cleanup code can end " "up being separated by arbitrarily long sections of code." msgstr "" -#: library/contextlib.rst:789 +#: library/contextlib.rst:791 msgid "" ":class:`ExitStack` makes it possible to instead register a callback for " "execution at the end of a ``with`` statement, and then later decide to skip " "executing that callback::" msgstr "" -#: library/contextlib.rst:793 +#: library/contextlib.rst:795 msgid "" "from contextlib import ExitStack\n" "\n" @@ -1076,19 +1076,19 @@ msgid "" " stack.pop_all()" msgstr "" -#: library/contextlib.rst:801 +#: library/contextlib.rst:803 msgid "" "This allows the intended cleanup behaviour to be made explicit up front, " "rather than requiring a separate flag variable." msgstr "" -#: library/contextlib.rst:804 +#: library/contextlib.rst:806 msgid "" "If a particular application uses this pattern a lot, it can be simplified " "even further by means of a small helper class::" msgstr "" -#: library/contextlib.rst:807 +#: library/contextlib.rst:809 msgid "" "from contextlib import ExitStack\n" "\n" @@ -1106,14 +1106,14 @@ msgid "" " cb.cancel()" msgstr "" -#: library/contextlib.rst:822 +#: library/contextlib.rst:824 msgid "" "If the resource cleanup isn't already neatly bundled into a standalone " "function, then it is still possible to use the decorator form of :meth:" "`ExitStack.callback` to declare the resource cleanup in advance::" msgstr "" -#: library/contextlib.rst:827 +#: library/contextlib.rst:829 msgid "" "from contextlib import ExitStack\n" "\n" @@ -1126,24 +1126,24 @@ msgid "" " stack.pop_all()" msgstr "" -#: library/contextlib.rst:837 +#: library/contextlib.rst:839 msgid "" "Due to the way the decorator protocol works, a callback function declared " "this way cannot take any parameters. Instead, any resources to be released " "must be accessed as closure variables." msgstr "" -#: library/contextlib.rst:843 +#: library/contextlib.rst:845 msgid "Using a context manager as a function decorator" msgstr "" -#: library/contextlib.rst:845 +#: library/contextlib.rst:847 msgid "" ":class:`ContextDecorator` makes it possible to use a context manager in both " "an ordinary ``with`` statement and also as a function decorator." msgstr "" -#: library/contextlib.rst:848 +#: library/contextlib.rst:850 msgid "" "For example, it is sometimes useful to wrap functions or groups of " "statements with a logger that can track the time of entry and time of exit. " @@ -1152,7 +1152,7 @@ msgid "" "in a single definition::" msgstr "" -#: library/contextlib.rst:854 +#: library/contextlib.rst:856 msgid "" "from contextlib import ContextDecorator\n" "import logging\n" @@ -1170,22 +1170,22 @@ msgid "" " logging.info('Exiting: %s', self.name)" msgstr "" -#: library/contextlib.rst:869 +#: library/contextlib.rst:871 msgid "Instances of this class can be used as both a context manager::" msgstr "" -#: library/contextlib.rst:871 +#: library/contextlib.rst:873 msgid "" "with track_entry_and_exit('widget loader'):\n" " print('Some time consuming activity goes here')\n" " load_widget()" msgstr "" -#: library/contextlib.rst:875 +#: library/contextlib.rst:877 msgid "And also as a function decorator::" msgstr "" -#: library/contextlib.rst:877 +#: library/contextlib.rst:879 msgid "" "@track_entry_and_exit('widget loader')\n" "def activity():\n" @@ -1193,7 +1193,7 @@ msgid "" " load_widget()" msgstr "" -#: library/contextlib.rst:882 +#: library/contextlib.rst:884 msgid "" "Note that there is one additional limitation when using context managers as " "function decorators: there's no way to access the return value of :meth:" @@ -1201,21 +1201,21 @@ msgid "" "use an explicit ``with`` statement." msgstr "" -#: library/contextlib.rst:889 +#: library/contextlib.rst:891 msgid ":pep:`343` - The \"with\" statement" msgstr "" -#: library/contextlib.rst:890 +#: library/contextlib.rst:892 msgid "" "The specification, background, and examples for the Python :keyword:`with` " "statement." msgstr "" -#: library/contextlib.rst:896 +#: library/contextlib.rst:898 msgid "Single use, reusable and reentrant context managers" msgstr "" -#: library/contextlib.rst:898 +#: library/contextlib.rst:900 msgid "" "Most context managers are written in a way that means they can only be used " "effectively in a :keyword:`with` statement once. These single use context " @@ -1223,28 +1223,28 @@ msgid "" "them a second time will trigger an exception or otherwise not work correctly." msgstr "" -#: library/contextlib.rst:904 +#: library/contextlib.rst:906 msgid "" "This common limitation means that it is generally advisable to create " "context managers directly in the header of the :keyword:`with` statement " "where they are used (as shown in all of the usage examples above)." msgstr "" -#: library/contextlib.rst:908 +#: library/contextlib.rst:910 msgid "" "Files are an example of effectively single use context managers, since the " "first :keyword:`with` statement will close the file, preventing any further " "IO operations using that file object." msgstr "" -#: library/contextlib.rst:912 +#: library/contextlib.rst:914 msgid "" "Context managers created using :func:`contextmanager` are also single use " "context managers, and will complain about the underlying generator failing " "to yield if an attempt is made to use them a second time::" msgstr "" -#: library/contextlib.rst:916 +#: library/contextlib.rst:918 msgid "" ">>> from contextlib import contextmanager\n" ">>> @contextmanager\n" @@ -1267,11 +1267,11 @@ msgid "" "RuntimeError: generator didn't yield" msgstr "" -#: library/contextlib.rst:940 +#: library/contextlib.rst:942 msgid "Reentrant context managers" msgstr "" -#: library/contextlib.rst:942 +#: library/contextlib.rst:944 msgid "" "More sophisticated context managers may be \"reentrant\". These context " "managers can not only be used in multiple :keyword:`with` statements, but " @@ -1279,14 +1279,14 @@ msgid "" "the same context manager." msgstr "" -#: library/contextlib.rst:947 +#: library/contextlib.rst:949 msgid "" ":class:`threading.RLock` is an example of a reentrant context manager, as " "are :func:`suppress`, :func:`redirect_stdout`, and :func:`chdir`. Here's a " "very simple example of reentrant use::" msgstr "" -#: library/contextlib.rst:951 +#: library/contextlib.rst:953 msgid "" ">>> from contextlib import redirect_stdout\n" ">>> from io import StringIO\n" @@ -1304,14 +1304,14 @@ msgid "" "This is also written to the stream" msgstr "" -#: library/contextlib.rst:966 +#: library/contextlib.rst:968 msgid "" "Real world examples of reentrancy are more likely to involve multiple " "functions calling each other and hence be far more complicated than this " "example." msgstr "" -#: library/contextlib.rst:970 +#: library/contextlib.rst:972 msgid "" "Note also that being reentrant is *not* the same thing as being thread " "safe. :func:`redirect_stdout`, for example, is definitely not thread safe, " @@ -1319,11 +1319,11 @@ msgid "" "stdout` to a different stream." msgstr "" -#: library/contextlib.rst:979 +#: library/contextlib.rst:981 msgid "Reusable context managers" msgstr "" -#: library/contextlib.rst:981 +#: library/contextlib.rst:983 msgid "" "Distinct from both single use and reentrant context managers are " "\"reusable\" context managers (or, to be completely explicit, \"reusable, " @@ -1333,21 +1333,21 @@ msgid "" "manager instance has already been used in a containing with statement." msgstr "" -#: library/contextlib.rst:988 +#: library/contextlib.rst:990 msgid "" ":class:`threading.Lock` is an example of a reusable, but not reentrant, " "context manager (for a reentrant lock, it is necessary to use :class:" "`threading.RLock` instead)." msgstr "" -#: library/contextlib.rst:992 +#: library/contextlib.rst:994 msgid "" "Another example of a reusable, but not reentrant, context manager is :class:" "`ExitStack`, as it invokes *all* currently registered callbacks when leaving " "any with statement, regardless of where those callbacks were added::" msgstr "" -#: library/contextlib.rst:997 +#: library/contextlib.rst:999 msgid "" ">>> from contextlib import ExitStack\n" ">>> stack = ExitStack()\n" @@ -1376,7 +1376,7 @@ msgid "" "Leaving outer context" msgstr "" -#: library/contextlib.rst:1023 +#: library/contextlib.rst:1025 msgid "" "As the output from the example shows, reusing a single stack object across " "multiple with statements works correctly, but attempting to nest them will " @@ -1384,13 +1384,13 @@ msgid "" "which is unlikely to be desirable behaviour." msgstr "" -#: library/contextlib.rst:1028 +#: library/contextlib.rst:1030 msgid "" "Using separate :class:`ExitStack` instances instead of reusing a single " "instance avoids that problem::" msgstr "" -#: library/contextlib.rst:1031 +#: library/contextlib.rst:1033 msgid "" ">>> from contextlib import ExitStack\n" ">>> with ExitStack() as outer_stack:\n" diff --git a/library/copy.po b/library/copy.po index 5a4203d2f..d8f662865 100644 --- a/library/copy.po +++ b/library/copy.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-06-01 00:16+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -129,21 +129,29 @@ msgstr "" #: library/copy.rst:82 msgid "" "In order for a class to define its own copy implementation, it can define " -"special methods :meth:`__copy__` and :meth:`__deepcopy__`. The former is " -"called to implement the shallow copy operation; no additional arguments are " -"passed. The latter is called to implement the deep copy operation; it is " -"passed one argument, the ``memo`` dictionary. If the :meth:`__deepcopy__` " -"implementation needs to make a deep copy of a component, it should call the :" -"func:`deepcopy` function with the component as first argument and the memo " -"dictionary as second argument. The memo dictionary should be treated as an " -"opaque object." +"special methods :meth:`~object.__copy__` and :meth:`~object.__deepcopy__`." +msgstr "" + +#: library/copy.rst:88 +msgid "" +"Called to implement the shallow copy operation; no additional arguments are " +"passed." msgstr "" #: library/copy.rst:94 +msgid "" +"Called to implement the deep copy operation; it is passed one argument, the " +"*memo* dictionary. If the ``__deepcopy__`` implementation needs to make a " +"deep copy of a component, it should call the :func:`deepcopy` function with " +"the component as first argument and the *memo* dictionary as second " +"argument. The *memo* dictionary should be treated as an opaque object." +msgstr "" + +#: library/copy.rst:103 msgid "Module :mod:`pickle`" msgstr "" -#: library/copy.rst:95 +#: library/copy.rst:104 msgid "" "Discussion of the special methods used to support object state retrieval and " "restoration." diff --git a/library/ctypes.po b/library/ctypes.po index 8a16f99e3..9ad9d4853 100644 --- a/library/ctypes.po +++ b/library/ctypes.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -87,11 +87,11 @@ msgstr "" #: library/ctypes.rst:57 msgid "" ">>> from ctypes import *\n" -">>> print(windll.kernel32) \n" +">>> print(windll.kernel32)\n" "\n" -">>> print(cdll.msvcrt) \n" +">>> print(cdll.msvcrt)\n" "\n" -">>> libc = cdll.msvcrt \n" +">>> libc = cdll.msvcrt\n" ">>>" msgstr "" @@ -118,10 +118,10 @@ msgstr "" #: library/ctypes.rst:79 msgid "" -">>> cdll.LoadLibrary(\"libc.so.6\") \n" +">>> cdll.LoadLibrary(\"libc.so.6\")\n" "\n" -">>> libc = CDLL(\"libc.so.6\") \n" -">>> libc \n" +">>> libc = CDLL(\"libc.so.6\")\n" +">>> libc\n" "\n" ">>>" msgstr "" @@ -138,9 +138,9 @@ msgstr "" msgid "" ">>> libc.printf\n" "<_FuncPtr object at 0x...>\n" -">>> print(windll.kernel32.GetModuleHandleA) \n" +">>> print(windll.kernel32.GetModuleHandleA)\n" "<_FuncPtr object at 0x...>\n" -">>> print(windll.kernel32.MyOwnFunction) \n" +">>> print(windll.kernel32.MyOwnFunction)\n" "Traceback (most recent call last):\n" " File \"\", line 1, in \n" " File \"ctypes.py\", line 239, in __getattr__\n" @@ -184,7 +184,7 @@ msgstr "" #: library/ctypes.rst:129 msgid "" -">>> getattr(cdll.msvcrt, \"??2@YAPAXI@Z\") \n" +">>> getattr(cdll.msvcrt, \"??2@YAPAXI@Z\")\n" "<_FuncPtr object at 0x...>\n" ">>>" msgstr "" @@ -198,9 +198,9 @@ msgstr "" #: library/ctypes.rst:136 msgid "" -">>> cdll.kernel32[1] \n" +">>> cdll.kernel32[1]\n" "<_FuncPtr object at 0x...>\n" -">>> cdll.kernel32[0] \n" +">>> cdll.kernel32[0]\n" "Traceback (most recent call last):\n" " File \"\", line 1, in \n" " File \"ctypes.py\", line 310, in __getitem__\n" @@ -222,7 +222,7 @@ msgstr "" #: library/ctypes.rst:155 msgid "" -">>> print(libc.rand()) \n" +">>> print(libc.rand())\n" "1804289383" msgstr "" @@ -235,7 +235,7 @@ msgstr "" #: library/ctypes.rst:161 msgid "" -">>> print(hex(windll.kernel32.GetModuleHandleA(None))) \n" +">>> print(hex(windll.kernel32.GetModuleHandleA(None)))\n" "0x1d000000\n" ">>>" msgstr "" @@ -248,14 +248,14 @@ msgstr "" #: library/ctypes.rst:168 msgid "" -">>> cdll.kernel32.GetModuleHandleA(None) \n" +">>> cdll.kernel32.GetModuleHandleA(None)\n" "Traceback (most recent call last):\n" " File \"\", line 1, in \n" "ValueError: Procedure probably called with not enough arguments (4 bytes " "missing)\n" ">>>\n" "\n" -">>> windll.msvcrt.printf(b\"spam\") \n" +">>> windll.msvcrt.printf(b\"spam\")\n" "Traceback (most recent call last):\n" " File \"\", line 1, in \n" "ValueError: Procedure probably called with too many arguments (4 bytes in " @@ -278,7 +278,7 @@ msgstr "" #: library/ctypes.rst:187 msgid "" -">>> windll.kernel32.GetModuleHandleA(32) \n" +">>> windll.kernel32.GetModuleHandleA(32)\n" "Traceback (most recent call last):\n" " File \"\", line 1, in \n" "OSError: exception: access violation reading 0x00000020\n" @@ -310,7 +310,7 @@ msgid "" "learn more about :mod:`ctypes` data types." msgstr "" -#: library/ctypes.rst:2208 +#: library/ctypes.rst:2237 msgid "Fundamental data types" msgstr "" @@ -847,7 +847,7 @@ msgstr "" #: library/ctypes.rst:494 msgid "" -">>> print(libc.time(None)) \n" +">>> print(libc.time(None))\n" "1150640792" msgstr "" @@ -860,7 +860,7 @@ msgstr "" #: library/ctypes.rst:500 msgid "" ">>> strchr = libc.strchr\n" -">>> strchr(b\"abcdef\", ord(\"d\")) \n" +">>> strchr(b\"abcdef\", ord(\"d\"))\n" "8059983\n" ">>> strchr.restype = c_char_p # c_char_p is a pointer to a string\n" ">>> strchr(b\"abcdef\", ord(\"d\"))\n" @@ -906,17 +906,17 @@ msgstr "" #: library/ctypes.rst:535 msgid "" -">>> GetModuleHandle = windll.kernel32.GetModuleHandleA \n" +">>> GetModuleHandle = windll.kernel32.GetModuleHandleA\n" ">>> def ValidHandle(value):\n" "... if value == 0:\n" "... raise WinError()\n" "... return value\n" "...\n" ">>>\n" -">>> GetModuleHandle.restype = ValidHandle \n" -">>> GetModuleHandle(None) \n" +">>> GetModuleHandle.restype = ValidHandle\n" +">>> GetModuleHandle(None)\n" "486539264\n" -">>> GetModuleHandle(\"something silly\") \n" +">>> GetModuleHandle(\"something silly\")\n" "Traceback (most recent call last):\n" " File \"\", line 1, in \n" " File \"\", line 3, in ValidHandle\n" @@ -1636,7 +1636,7 @@ msgstr "" #: library/ctypes.rst:1039 msgid "" -">>> qsort(ia, len(ia), sizeof(c_int), cmp_func) \n" +">>> qsort(ia, len(ia), sizeof(c_int), cmp_func)\n" "py_cmp_func 5 1\n" "py_cmp_func 33 99\n" "py_cmp_func 7 33\n" @@ -1656,7 +1656,7 @@ msgid "" "... return a[0] - b[0]\n" "...\n" ">>>\n" -">>> qsort(ia, len(ia), sizeof(c_int), CMPFUNC(py_cmp_func)) \n" +">>> qsort(ia, len(ia), sizeof(c_int), CMPFUNC(py_cmp_func))\n" "py_cmp_func 5 1\n" "py_cmp_func 33 99\n" "py_cmp_func 7 33\n" @@ -2016,7 +2016,7 @@ msgid "" "If no library can be found, returns ``None``." msgstr "" -#: library/ctypes.rst:1982 +#: library/ctypes.rst:1997 msgid "The exact functionality is system dependent." msgstr "" @@ -2116,7 +2116,7 @@ msgid "" "determine which one is not found using Windows debugging and tracing tools." msgstr "" -#: library/ctypes.rst:1406 library/ctypes.rst:1434 +#: library/ctypes.rst:1408 library/ctypes.rst:1439 msgid "The *name* parameter can now be a :term:`path-like object`." msgstr "" @@ -2128,34 +2128,40 @@ msgstr "" #: library/ctypes.rst:1393 msgid "" -"Windows only: Instances of this class represent loaded shared libraries, " -"functions in these libraries use the ``stdcall`` calling convention, and are " -"assumed to return the windows specific :class:`HRESULT` code. :class:" -"`HRESULT` values contain information specifying whether the function call " -"failed or succeeded, together with additional error code. If the return " -"value signals a failure, an :class:`OSError` is automatically raised." +"Instances of this class represent loaded shared libraries, functions in " +"these libraries use the ``stdcall`` calling convention, and are assumed to " +"return the windows specific :class:`HRESULT` code. :class:`HRESULT` values " +"contain information specifying whether the function call failed or " +"succeeded, together with additional error code. If the return value signals " +"a failure, an :class:`OSError` is automatically raised." +msgstr "" + +#: library/ctypes.rst:1417 library/ctypes.rst:1569 library/ctypes.rst:1977 +#: library/ctypes.rst:2011 library/ctypes.rst:2029 library/ctypes.rst:2101 +#: library/ctypes.rst:2473 +msgid "Availability" msgstr "" -#: library/ctypes.rst:1400 +#: library/ctypes.rst:1402 msgid "" ":exc:`WindowsError` used to be raised, which is now an alias of :exc:" "`OSError`." msgstr "" -#: library/ctypes.rst:1411 +#: library/ctypes.rst:1413 msgid "" -"Windows only: Instances of this class represent loaded shared libraries, " -"functions in these libraries use the ``stdcall`` calling convention, and are " -"assumed to return :c:expr:`int` by default." +"Instances of this class represent loaded shared libraries, functions in " +"these libraries use the ``stdcall`` calling convention, and are assumed to " +"return :c:expr:`int` by default." msgstr "" -#: library/ctypes.rst:1419 +#: library/ctypes.rst:1424 msgid "" "The Python :term:`global interpreter lock` is released before calling any " "function exported by these libraries, and reacquired afterwards." msgstr "" -#: library/ctypes.rst:1425 +#: library/ctypes.rst:1430 msgid "" "Instances of this class behave like :class:`CDLL` instances, except that the " "Python GIL is *not* released during the function call, and after the " @@ -2163,11 +2169,11 @@ msgid "" "set, a Python exception is raised." msgstr "" -#: library/ctypes.rst:1430 +#: library/ctypes.rst:1435 msgid "Thus, this is only useful to call Python C api functions directly." msgstr "" -#: library/ctypes.rst:1436 +#: library/ctypes.rst:1441 msgid "" "All these classes can be instantiated by calling them with at least one " "argument, the pathname of the shared library. If you have an existing " @@ -2177,7 +2183,7 @@ msgid "" "the process, and to get a handle to it." msgstr "" -#: library/ctypes.rst:1443 +#: library/ctypes.rst:1448 msgid "" "The *mode* parameter can be used to specify how the library is loaded. For " "details, consult the :manpage:`dlopen(3)` manpage. On Windows, *mode* is " @@ -2185,7 +2191,7 @@ msgid "" "configurable." msgstr "" -#: library/ctypes.rst:1448 +#: library/ctypes.rst:1453 msgid "" "The *use_errno* parameter, when set to true, enables a ctypes mechanism that " "allows accessing the system :data:`errno` error number in a safe way. :mod:" @@ -2195,14 +2201,14 @@ msgid "" "private copy, the same happens immediately after the function call." msgstr "" -#: library/ctypes.rst:1455 +#: library/ctypes.rst:1460 msgid "" "The function :func:`ctypes.get_errno` returns the value of the ctypes " "private copy, and the function :func:`ctypes.set_errno` changes the ctypes " "private copy to a new value and returns the former value." msgstr "" -#: library/ctypes.rst:1459 +#: library/ctypes.rst:1464 msgid "" "The *use_last_error* parameter, when set to true, enables the same mechanism " "for the Windows error code which is managed by the :func:`GetLastError` and :" @@ -2211,7 +2217,7 @@ msgid "" "private copy of the windows error code." msgstr "" -#: library/ctypes.rst:1465 +#: library/ctypes.rst:1470 msgid "" "The *winmode* parameter is used on Windows to specify how the library is " "loaded (since *mode* is ignored). It takes any value that is valid for the " @@ -2221,29 +2227,29 @@ msgid "" "ensure the correct library and dependencies are loaded." msgstr "" -#: library/ctypes.rst:1472 +#: library/ctypes.rst:1477 msgid "Added *winmode* parameter." msgstr "" -#: library/ctypes.rst:1479 +#: library/ctypes.rst:1484 msgid "" "Flag to use as *mode* parameter. On platforms where this flag is not " "available, it is defined as the integer zero." msgstr "" -#: library/ctypes.rst:1486 +#: library/ctypes.rst:1491 msgid "" "Flag to use as *mode* parameter. On platforms where this is not available, " "it is the same as *RTLD_GLOBAL*." msgstr "" -#: library/ctypes.rst:1493 +#: library/ctypes.rst:1498 msgid "" "The default mode which is used to load shared libraries. On OSX 10.3, this " "is *RTLD_GLOBAL*, otherwise it is the same as *RTLD_LOCAL*." msgstr "" -#: library/ctypes.rst:1496 +#: library/ctypes.rst:1501 msgid "" "Instances of these classes have no public methods. Functions exported by " "the shared library can be accessed as attributes or by index. Please note " @@ -2252,7 +2258,7 @@ msgid "" "other hand, accessing it through an index returns a new object each time::" msgstr "" -#: library/ctypes.rst:1502 +#: library/ctypes.rst:1507 msgid "" ">>> from ctypes import CDLL\n" ">>> libc = CDLL(\"libc.so.6\") # On Linux\n" @@ -2262,21 +2268,21 @@ msgid "" "False" msgstr "" -#: library/ctypes.rst:1509 +#: library/ctypes.rst:1514 msgid "" "The following public attributes are available, their name starts with an " "underscore to not clash with exported function names:" msgstr "" -#: library/ctypes.rst:1515 +#: library/ctypes.rst:1520 msgid "The system handle used to access the library." msgstr "" -#: library/ctypes.rst:1520 +#: library/ctypes.rst:1525 msgid "The name of the library passed in the constructor." msgstr "" -#: library/ctypes.rst:1522 +#: library/ctypes.rst:1527 msgid "" "Shared libraries can also be loaded by using one of the prefabricated " "objects, which are instances of the :class:`LibraryLoader` class, either by " @@ -2284,13 +2290,13 @@ msgid "" "library as attribute of the loader instance." msgstr "" -#: library/ctypes.rst:1530 +#: library/ctypes.rst:1535 msgid "" "Class which loads shared libraries. *dlltype* should be one of the :class:" "`CDLL`, :class:`PyDLL`, :class:`WinDLL`, or :class:`OleDLL` types." msgstr "" -#: library/ctypes.rst:1533 +#: library/ctypes.rst:1538 msgid "" ":meth:`!__getattr__` has special behavior: It allows loading a shared " "library by accessing it as attribute of a library loader instance. The " @@ -2298,39 +2304,39 @@ msgid "" "each time." msgstr "" -#: library/ctypes.rst:1539 +#: library/ctypes.rst:1544 msgid "" "Load a shared library into the process and return it. This method always " "returns a new instance of the library." msgstr "" -#: library/ctypes.rst:1543 +#: library/ctypes.rst:1548 msgid "These prefabricated library loaders are available:" msgstr "" -#: library/ctypes.rst:1548 +#: library/ctypes.rst:1553 msgid "Creates :class:`CDLL` instances." msgstr "" -#: library/ctypes.rst:1554 -msgid "Windows only: Creates :class:`WinDLL` instances." +#: library/ctypes.rst:1559 +msgid "Creates :class:`WinDLL` instances." msgstr "" -#: library/ctypes.rst:1560 -msgid "Windows only: Creates :class:`OleDLL` instances." +#: library/ctypes.rst:1567 +msgid "Creates :class:`OleDLL` instances." msgstr "" -#: library/ctypes.rst:1566 +#: library/ctypes.rst:1575 msgid "Creates :class:`PyDLL` instances." msgstr "" -#: library/ctypes.rst:1569 +#: library/ctypes.rst:1578 msgid "" "For accessing the C Python api directly, a ready-to-use Python shared " "library object is available:" msgstr "" -#: library/ctypes.rst:1575 +#: library/ctypes.rst:1584 msgid "" "An instance of :class:`PyDLL` that exposes Python C API functions as " "attributes. Note that all these functions are assumed to return C :c:expr:" @@ -2338,32 +2344,32 @@ msgid "" "correct :attr:`!restype` attribute to use these functions." msgstr "" -#: library/ctypes.rst:1582 +#: library/ctypes.rst:1591 msgid "" "Loading a library through any of these objects raises an :ref:`auditing " "event ` ``ctypes.dlopen`` with string argument ``name``, the name " "used to load the library." msgstr "" -#: library/ctypes.rst:1588 +#: library/ctypes.rst:1597 msgid "" "Accessing a function on a loaded library raises an auditing event ``ctypes." "dlsym`` with arguments ``library`` (the library object) and ``name`` (the " "symbol's name as a string or integer)." msgstr "" -#: library/ctypes.rst:1594 +#: library/ctypes.rst:1603 msgid "" "In cases when only the library handle is available rather than the object, " "accessing a function raises an auditing event ``ctypes.dlsym/handle`` with " "arguments ``handle`` (the raw library handle) and ``name``." msgstr "" -#: library/ctypes.rst:1601 +#: library/ctypes.rst:1610 msgid "Foreign functions" msgstr "" -#: library/ctypes.rst:1603 +#: library/ctypes.rst:1612 msgid "" "As explained in the previous section, foreign functions can be accessed as " "attributes of loaded shared libraries. The function objects created in this " @@ -2372,13 +2378,13 @@ msgid "" "library loader." msgstr "" -#: library/ctypes.rst:1608 +#: library/ctypes.rst:1617 msgid "" "They are instances of a private local class :class:`!_FuncPtr` (not exposed " "in :mod:`!ctypes`) which inherits from the private :class:`_CFuncPtr` class:" msgstr "" -#: library/ctypes.rst:1611 +#: library/ctypes.rst:1620 msgid "" ">>> import ctypes\n" ">>> lib = ctypes.CDLL(None)\n" @@ -2388,29 +2394,29 @@ msgid "" "False" msgstr "" -#: library/ctypes.rst:1622 +#: library/ctypes.rst:1631 msgid "Base class for C callable foreign functions." msgstr "" -#: library/ctypes.rst:1624 +#: library/ctypes.rst:1633 msgid "" "Instances of foreign functions are also C compatible data types; they " "represent C function pointers." msgstr "" -#: library/ctypes.rst:1627 +#: library/ctypes.rst:1636 msgid "" "This behavior can be customized by assigning to special attributes of the " "foreign function object." msgstr "" -#: library/ctypes.rst:1632 +#: library/ctypes.rst:1641 msgid "" "Assign a ctypes type to specify the result type of the foreign function. Use " "``None`` for :c:expr:`void`, a function not returning anything." msgstr "" -#: library/ctypes.rst:1635 +#: library/ctypes.rst:1644 msgid "" "It is possible to assign a callable Python object that is not a ctypes type, " "in this case the function is assumed to return a C :c:expr:`int`, and the " @@ -2420,7 +2426,7 @@ msgid "" "callable to the :attr:`errcheck` attribute." msgstr "" -#: library/ctypes.rst:1644 +#: library/ctypes.rst:1653 msgid "" "Assign a tuple of ctypes types to specify the argument types that the " "function accepts. Functions using the ``stdcall`` calling convention can " @@ -2429,7 +2435,7 @@ msgid "" "unspecified arguments as well." msgstr "" -#: library/ctypes.rst:1650 +#: library/ctypes.rst:1659 msgid "" "When a foreign function is called, each actual argument is passed to the :" "meth:`~_CData.from_param` class method of the items in the :attr:`argtypes` " @@ -2439,7 +2445,7 @@ msgid "" "object using ctypes conversion rules." msgstr "" -#: library/ctypes.rst:1657 +#: library/ctypes.rst:1666 msgid "" "New: It is now possible to put items in argtypes which are not ctypes types, " "but each item must have a :meth:`~_CData.from_param` method which returns a " @@ -2447,44 +2453,44 @@ msgid "" "defining adapters that can adapt custom objects as function parameters." msgstr "" -#: library/ctypes.rst:1664 +#: library/ctypes.rst:1673 msgid "" "Assign a Python function or another callable to this attribute. The callable " "will be called with three or more arguments:" msgstr "" -#: library/ctypes.rst:1671 +#: library/ctypes.rst:1680 msgid "" "*result* is what the foreign function returns, as specified by the :attr:`!" "restype` attribute." msgstr "" -#: library/ctypes.rst:1674 +#: library/ctypes.rst:1683 msgid "" "*func* is the foreign function object itself, this allows reusing the same " "callable object to check or post process the results of several functions." msgstr "" -#: library/ctypes.rst:1678 +#: library/ctypes.rst:1687 msgid "" "*arguments* is a tuple containing the parameters originally passed to the " "function call, this allows specializing the behavior on the arguments used." msgstr "" -#: library/ctypes.rst:1682 +#: library/ctypes.rst:1691 msgid "" "The object that this function returns will be returned from the foreign " "function call, but it can also check the result value and raise an exception " "if the foreign function call failed." msgstr "" -#: library/ctypes.rst:1689 +#: library/ctypes.rst:1698 msgid "" "This exception is raised when a foreign function call cannot convert one of " "the passed arguments." msgstr "" -#: library/ctypes.rst:1695 +#: library/ctypes.rst:1704 msgid "" "On Windows, when a foreign function call raises a system exception (for " "example, due to an access violation), it will be captured and replaced with " @@ -2493,18 +2499,18 @@ msgid "" "hook to replace the exception with its own." msgstr "" -#: library/ctypes.rst:1703 +#: library/ctypes.rst:1712 msgid "" "Some ways to invoke foreign function calls may raise an auditing event " "``ctypes.call_function`` with arguments ``function pointer`` and " "``arguments``." msgstr "" -#: library/ctypes.rst:1709 +#: library/ctypes.rst:1718 msgid "Function prototypes" msgstr "" -#: library/ctypes.rst:1711 +#: library/ctypes.rst:1720 msgid "" "Foreign functions can also be created by instantiating function prototypes. " "Function prototypes are similar to function prototypes in C; they describe a " @@ -2515,7 +2521,7 @@ msgid "" "``@wrapper`` syntax. See :ref:`ctypes-callback-functions` for examples." msgstr "" -#: library/ctypes.rst:1722 +#: library/ctypes.rst:1731 msgid "" "The returned function prototype creates functions that use the standard C " "calling convention. The function will release the GIL during the call. If " @@ -2524,37 +2530,37 @@ msgid "" "after the call; *use_last_error* does the same for the Windows error code." msgstr "" -#: library/ctypes.rst:1732 +#: library/ctypes.rst:1741 msgid "" -"Windows only: The returned function prototype creates functions that use the " -"``stdcall`` calling convention. The function will release the GIL during " -"the call. *use_errno* and *use_last_error* have the same meaning as above." +"The returned function prototype creates functions that use the ``stdcall`` " +"calling convention. The function will release the GIL during the call. " +"*use_errno* and *use_last_error* have the same meaning as above." msgstr "" -#: library/ctypes.rst:1740 +#: library/ctypes.rst:1751 msgid "" "The returned function prototype creates functions that use the Python " "calling convention. The function will *not* release the GIL during the call." msgstr "" -#: library/ctypes.rst:1743 +#: library/ctypes.rst:1754 msgid "" "Function prototypes created by these factory functions can be instantiated " "in different ways, depending on the type and number of the parameters in the " "call:" msgstr "" -#: library/ctypes.rst:1750 +#: library/ctypes.rst:1761 msgid "" "Returns a foreign function at the specified address which must be an integer." msgstr "" -#: library/ctypes.rst:1757 +#: library/ctypes.rst:1768 msgid "" "Create a C callable function (a callback function) from a Python *callable*." msgstr "" -#: library/ctypes.rst:1764 +#: library/ctypes.rst:1775 msgid "" "Returns a foreign function exported by a shared library. *func_spec* must be " "a 2-tuple ``(name_or_ordinal, library)``. The first item is the name of the " @@ -2562,7 +2568,7 @@ msgid "" "small integer. The second item is the shared library instance." msgstr "" -#: library/ctypes.rst:1774 +#: library/ctypes.rst:1785 msgid "" "Returns a foreign function that will call a COM method. *vtbl_index* is the " "index into the virtual function table, a small non-negative integer. *name* " @@ -2570,79 +2576,79 @@ msgid "" "identifier which is used in extended error reporting." msgstr "" -#: library/ctypes.rst:1779 +#: library/ctypes.rst:1790 msgid "" "COM methods use a special calling convention: They require a pointer to the " "COM interface as first argument, in addition to those parameters that are " "specified in the :attr:`!argtypes` tuple." msgstr "" -#: library/ctypes.rst:1783 +#: library/ctypes.rst:1794 msgid "" "The optional *paramflags* parameter creates foreign function wrappers with " "much more functionality than the features described above." msgstr "" -#: library/ctypes.rst:1786 +#: library/ctypes.rst:1797 msgid "" "*paramflags* must be a tuple of the same length as :attr:`~_CFuncPtr." "argtypes`." msgstr "" -#: library/ctypes.rst:1788 +#: library/ctypes.rst:1799 msgid "" "Each item in this tuple contains further information about a parameter, it " "must be a tuple containing one, two, or three items." msgstr "" -#: library/ctypes.rst:1791 +#: library/ctypes.rst:1802 msgid "" "The first item is an integer containing a combination of direction flags for " "the parameter:" msgstr "" -#: library/ctypes.rst:1794 +#: library/ctypes.rst:1805 msgid "1" msgstr "" -#: library/ctypes.rst:1795 +#: library/ctypes.rst:1806 msgid "Specifies an input parameter to the function." msgstr "" -#: library/ctypes.rst:1797 +#: library/ctypes.rst:1808 msgid "2" msgstr "" -#: library/ctypes.rst:1798 +#: library/ctypes.rst:1809 msgid "Output parameter. The foreign function fills in a value." msgstr "" -#: library/ctypes.rst:1800 +#: library/ctypes.rst:1811 msgid "4" msgstr "" -#: library/ctypes.rst:1801 +#: library/ctypes.rst:1812 msgid "Input parameter which defaults to the integer zero." msgstr "" -#: library/ctypes.rst:1803 +#: library/ctypes.rst:1814 msgid "" "The optional second item is the parameter name as string. If this is " "specified, the foreign function can be called with named parameters." msgstr "" -#: library/ctypes.rst:1806 +#: library/ctypes.rst:1817 msgid "The optional third item is the default value for this parameter." msgstr "" -#: library/ctypes.rst:1809 +#: library/ctypes.rst:1820 msgid "" "The following example demonstrates how to wrap the Windows ``MessageBoxW`` " "function so that it supports default parameters and named arguments. The C " "declaration from the windows header file is this::" msgstr "" -#: library/ctypes.rst:1813 +#: library/ctypes.rst:1824 msgid "" "WINUSERAPI int WINAPI\n" "MessageBoxW(\n" @@ -2652,11 +2658,11 @@ msgid "" " UINT uType);" msgstr "" -#: library/ctypes.rst:1843 +#: library/ctypes.rst:1854 msgid "Here is the wrapping with :mod:`ctypes`::" msgstr "" -#: library/ctypes.rst:1822 +#: library/ctypes.rst:1833 msgid "" ">>> from ctypes import c_int, WINFUNCTYPE, windll\n" ">>> from ctypes.wintypes import HWND, LPCWSTR, UINT\n" @@ -2666,18 +2672,18 @@ msgid "" ">>> MessageBox = prototype((\"MessageBoxW\", windll.user32), paramflags)" msgstr "" -#: library/ctypes.rst:1828 +#: library/ctypes.rst:1839 msgid "The ``MessageBox`` foreign function can now be called in these ways::" msgstr "" -#: library/ctypes.rst:1830 +#: library/ctypes.rst:1841 msgid "" ">>> MessageBox()\n" ">>> MessageBox(text=\"Spam, spam, spam\")\n" ">>> MessageBox(flags=2, text=\"foo bar\")" msgstr "" -#: library/ctypes.rst:1834 +#: library/ctypes.rst:1845 msgid "" "A second example demonstrates output parameters. The win32 " "``GetWindowRect`` function retrieves the dimensions of a specified window by " @@ -2685,7 +2691,7 @@ msgid "" "the C declaration::" msgstr "" -#: library/ctypes.rst:1838 +#: library/ctypes.rst:1849 msgid "" "WINUSERAPI BOOL WINAPI\n" "GetWindowRect(\n" @@ -2693,7 +2699,7 @@ msgid "" " LPRECT lpRect);" msgstr "" -#: library/ctypes.rst:1845 +#: library/ctypes.rst:1856 msgid "" ">>> from ctypes import POINTER, WINFUNCTYPE, windll, WinError\n" ">>> from ctypes.wintypes import BOOL, HWND, RECT\n" @@ -2704,7 +2710,7 @@ msgid "" ">>>" msgstr "" -#: library/ctypes.rst:1852 +#: library/ctypes.rst:1863 msgid "" "Functions with output parameters will automatically return the output " "parameter value if there is a single one, or a tuple containing the output " @@ -2712,7 +2718,7 @@ msgid "" "now returns a RECT instance, when called." msgstr "" -#: library/ctypes.rst:1857 +#: library/ctypes.rst:1868 msgid "" "Output parameters can be combined with the :attr:`~_CFuncPtr.errcheck` " "protocol to do further output processing and error checking. The win32 " @@ -2721,7 +2727,7 @@ msgid "" "exception when the api call failed::" msgstr "" -#: library/ctypes.rst:1862 +#: library/ctypes.rst:1873 msgid "" ">>> def errcheck(result, func, args):\n" "... if not result:\n" @@ -2732,7 +2738,7 @@ msgid "" ">>>" msgstr "" -#: library/ctypes.rst:1870 +#: library/ctypes.rst:1881 msgid "" "If the :attr:`~_CFuncPtr.errcheck` function returns the argument tuple it " "receives unchanged, :mod:`ctypes` continues the normal processing it does on " @@ -2741,7 +2747,7 @@ msgid "" "and return them instead, the normal processing will no longer take place::" msgstr "" -#: library/ctypes.rst:1876 +#: library/ctypes.rst:1887 msgid "" ">>> def errcheck(result, func, args):\n" "... if not result:\n" @@ -2753,50 +2759,50 @@ msgid "" ">>>" msgstr "" -#: library/ctypes.rst:1889 +#: library/ctypes.rst:1900 msgid "Utility functions" msgstr "" -#: library/ctypes.rst:1893 +#: library/ctypes.rst:1904 msgid "" "Returns the address of the memory buffer as integer. *obj* must be an " "instance of a ctypes type." msgstr "" -#: library/ctypes.rst:1896 +#: library/ctypes.rst:1907 msgid "" "Raises an :ref:`auditing event ` ``ctypes.addressof`` with " "argument ``obj``." msgstr "" -#: library/ctypes.rst:1901 +#: library/ctypes.rst:1912 msgid "" "Returns the alignment requirements of a ctypes type. *obj_or_type* must be a " "ctypes type or instance." msgstr "" -#: library/ctypes.rst:1907 +#: library/ctypes.rst:1918 msgid "" "Returns a light-weight pointer to *obj*, which must be an instance of a " "ctypes type. *offset* defaults to zero, and must be an integer that will be " "added to the internal pointer value." msgstr "" -#: library/ctypes.rst:1911 +#: library/ctypes.rst:1922 msgid "``byref(obj, offset)`` corresponds to this C code::" msgstr "" -#: library/ctypes.rst:1913 +#: library/ctypes.rst:1924 msgid "(((char *)&obj) + offset)" msgstr "" -#: library/ctypes.rst:1915 +#: library/ctypes.rst:1926 msgid "" "The returned object can only be used as a foreign function call parameter. " "It behaves similar to ``pointer(obj)``, but the construction is a lot faster." msgstr "" -#: library/ctypes.rst:1921 +#: library/ctypes.rst:1932 msgid "" "This function is similar to the cast operator in C. It returns a new " "instance of *type* which points to the same memory block as *obj*. *type* " @@ -2804,19 +2810,19 @@ msgid "" "as a pointer." msgstr "" -#: library/ctypes.rst:1929 +#: library/ctypes.rst:1940 msgid "" "This function creates a mutable character buffer. The returned object is a " "ctypes array of :class:`c_char`." msgstr "" -#: library/ctypes.rst:1932 +#: library/ctypes.rst:1943 msgid "" "*init_or_size* must be an integer which specifies the size of the array, or " "a bytes object which will be used to initialize the array items." msgstr "" -#: library/ctypes.rst:1935 +#: library/ctypes.rst:1946 msgid "" "If a bytes object is specified as first argument, the buffer is made one " "item larger than its length so that the last element in the array is a NUL " @@ -2825,25 +2831,25 @@ msgid "" "not be used." msgstr "" -#: library/ctypes.rst:1940 +#: library/ctypes.rst:1951 msgid "" "Raises an :ref:`auditing event ` ``ctypes.create_string_buffer`` " "with arguments ``init``, ``size``." msgstr "" -#: library/ctypes.rst:1945 +#: library/ctypes.rst:1956 msgid "" "This function creates a mutable unicode character buffer. The returned " "object is a ctypes array of :class:`c_wchar`." msgstr "" -#: library/ctypes.rst:1948 +#: library/ctypes.rst:1959 msgid "" "*init_or_size* must be an integer which specifies the size of the array, or " "a string which will be used to initialize the array items." msgstr "" -#: library/ctypes.rst:1951 +#: library/ctypes.rst:1962 msgid "" "If a string is specified as first argument, the buffer is made one item " "larger than the length of the string so that the last element in the array " @@ -2852,27 +2858,27 @@ msgid "" "should not be used." msgstr "" -#: library/ctypes.rst:1957 +#: library/ctypes.rst:1968 msgid "" "Raises an :ref:`auditing event ` ``ctypes.create_unicode_buffer`` " "with arguments ``init``, ``size``." msgstr "" -#: library/ctypes.rst:1962 +#: library/ctypes.rst:1973 msgid "" -"Windows only: This function is a hook which allows implementing in-process " -"COM servers with ctypes. It is called from the DllCanUnloadNow function " -"that the _ctypes extension dll exports." +"This function is a hook which allows implementing in-process COM servers " +"with ctypes. It is called from the DllCanUnloadNow function that the " +"_ctypes extension dll exports." msgstr "" -#: library/ctypes.rst:1969 +#: library/ctypes.rst:1982 msgid "" -"Windows only: This function is a hook which allows implementing in-process " -"COM servers with ctypes. It is called from the DllGetClassObject function " -"that the ``_ctypes`` extension dll exports." +"This function is a hook which allows implementing in-process COM servers " +"with ctypes. It is called from the DllGetClassObject function that the " +"``_ctypes`` extension dll exports." msgstr "" -#: library/ctypes.rst:1977 +#: library/ctypes.rst:1992 msgid "" "Try to find a library and return a pathname. *name* is the library name " "without any prefix like ``lib``, suffix like ``.so``, ``.dylib`` or version " @@ -2880,92 +2886,92 @@ msgid "" "If no library can be found, returns ``None``." msgstr "" -#: library/ctypes.rst:1988 +#: library/ctypes.rst:2003 msgid "" -"Windows only: return the filename of the VC runtime library used by Python, " -"and by the extension modules. If the name of the library cannot be " -"determined, ``None`` is returned." +"Returns the filename of the VC runtime library used by Python, and by the " +"extension modules. If the name of the library cannot be determined, " +"``None`` is returned." msgstr "" -#: library/ctypes.rst:1992 +#: library/ctypes.rst:2007 msgid "" "If you need to free memory, for example, allocated by an extension module " "with a call to the ``free(void *)``, it is important that you use the " "function in the same library that allocated the memory." msgstr "" -#: library/ctypes.rst:1999 +#: library/ctypes.rst:2016 msgid "" -"Windows only: Returns a textual description of the error code *code*. If no " -"error code is specified, the last error code is used by calling the Windows " -"api function GetLastError." +"Returns a textual description of the error code *code*. If no error code is " +"specified, the last error code is used by calling the Windows api function " +"GetLastError." msgstr "" -#: library/ctypes.rst:2006 +#: library/ctypes.rst:2025 msgid "" -"Windows only: Returns the last error code set by Windows in the calling " -"thread. This function calls the Windows ``GetLastError()`` function " -"directly, it does not return the ctypes-private copy of the error code." +"Returns the last error code set by Windows in the calling thread. This " +"function calls the Windows ``GetLastError()`` function directly, it does not " +"return the ctypes-private copy of the error code." msgstr "" -#: library/ctypes.rst:2012 +#: library/ctypes.rst:2034 msgid "" "Returns the current value of the ctypes-private copy of the system :data:" "`errno` variable in the calling thread." msgstr "" -#: library/ctypes.rst:2015 +#: library/ctypes.rst:2037 msgid "" "Raises an :ref:`auditing event ` ``ctypes.get_errno`` with no " "arguments." msgstr "" -#: library/ctypes.rst:2019 +#: library/ctypes.rst:2041 msgid "" -"Windows only: returns the current value of the ctypes-private copy of the " -"system :data:`!LastError` variable in the calling thread." +"Returns the current value of the ctypes-private copy of the system :data:`!" +"LastError` variable in the calling thread." msgstr "" -#: library/ctypes.rst:2022 +#: library/ctypes.rst:2046 msgid "" "Raises an :ref:`auditing event ` ``ctypes.get_last_error`` with no " "arguments." msgstr "" -#: library/ctypes.rst:2026 +#: library/ctypes.rst:2051 msgid "" "Same as the standard C memmove library function: copies *count* bytes from " "*src* to *dst*. *dst* and *src* must be integers or ctypes instances that " "can be converted to pointers." msgstr "" -#: library/ctypes.rst:2033 +#: library/ctypes.rst:2058 msgid "" "Same as the standard C memset library function: fills the memory block at " "address *dst* with *count* bytes of value *c*. *dst* must be an integer " "specifying an address, or a ctypes instance." msgstr "" -#: library/ctypes.rst:2040 +#: library/ctypes.rst:2065 msgid "" "Create and return a new ctypes pointer type. Pointer types are cached and " "reused internally, so calling this function repeatedly is cheap. *type* must " "be a ctypes type." msgstr "" -#: library/ctypes.rst:2047 +#: library/ctypes.rst:2072 msgid "" "Create a new pointer instance, pointing to *obj*. The returned object is of " "the type ``POINTER(type(obj))``." msgstr "" -#: library/ctypes.rst:2050 +#: library/ctypes.rst:2075 msgid "" "Note: If you just want to pass a pointer to an object to a foreign function " "call, you should use ``byref(obj)`` which is much faster." msgstr "" -#: library/ctypes.rst:2056 +#: library/ctypes.rst:2081 msgid "" "This function resizes the internal memory buffer of *obj*, which must be an " "instance of a ctypes type. It is not possible to make the buffer smaller " @@ -2973,82 +2979,81 @@ msgid "" "but it is possible to enlarge the buffer." msgstr "" -#: library/ctypes.rst:2064 +#: library/ctypes.rst:2089 msgid "" "Set the current value of the ctypes-private copy of the system :data:`errno` " "variable in the calling thread to *value* and return the previous value." msgstr "" -#: library/ctypes.rst:2067 +#: library/ctypes.rst:2092 msgid "" "Raises an :ref:`auditing event ` ``ctypes.set_errno`` with " "argument ``errno``." msgstr "" -#: library/ctypes.rst:2072 +#: library/ctypes.rst:2097 msgid "" -"Windows only: set the current value of the ctypes-private copy of the " -"system :data:`!LastError` variable in the calling thread to *value* and " -"return the previous value." +"Sets the current value of the ctypes-private copy of the system :data:`!" +"LastError` variable in the calling thread to *value* and return the previous " +"value." msgstr "" -#: library/ctypes.rst:2076 +#: library/ctypes.rst:2103 msgid "" "Raises an :ref:`auditing event ` ``ctypes.set_last_error`` with " "argument ``error``." msgstr "" -#: library/ctypes.rst:2081 +#: library/ctypes.rst:2108 msgid "" "Returns the size in bytes of a ctypes type or instance memory buffer. Does " "the same as the C ``sizeof`` operator." msgstr "" -#: library/ctypes.rst:2087 +#: library/ctypes.rst:2114 msgid "" "Return the byte string at *void \\*ptr*. If *size* is specified, it is used " "as size, otherwise the string is assumed to be zero-terminated." msgstr "" -#: library/ctypes.rst:2091 +#: library/ctypes.rst:2118 msgid "" "Raises an :ref:`auditing event ` ``ctypes.string_at`` with " "arguments ``ptr``, ``size``." msgstr "" -#: library/ctypes.rst:2096 +#: library/ctypes.rst:2123 msgid "" -"Windows only: this function is probably the worst-named thing in ctypes. It " -"creates an instance of :exc:`OSError`. If *code* is not specified, " -"``GetLastError`` is called to determine the error code. If *descr* is not " -"specified, :func:`FormatError` is called to get a textual description of the " -"error." +"This function is probably the worst-named thing in ctypes. It creates an " +"instance of :exc:`OSError`. If *code* is not specified, ``GetLastError`` is " +"called to determine the error code. If *descr* is not specified, :func:" +"`FormatError` is called to get a textual description of the error." msgstr "" -#: library/ctypes.rst:2102 +#: library/ctypes.rst:2131 msgid "" "An instance of :exc:`WindowsError` used to be created, which is now an alias " "of :exc:`OSError`." msgstr "" -#: library/ctypes.rst:2109 +#: library/ctypes.rst:2138 msgid "" "Return the wide-character string at *void \\*ptr*. If *size* is specified, " "it is used as the number of characters of the string, otherwise the string " "is assumed to be zero-terminated." msgstr "" -#: library/ctypes.rst:2114 +#: library/ctypes.rst:2143 msgid "" "Raises an :ref:`auditing event ` ``ctypes.wstring_at`` with " "arguments ``ptr``, ``size``." msgstr "" -#: library/ctypes.rst:2120 +#: library/ctypes.rst:2149 msgid "Data types" msgstr "" -#: library/ctypes.rst:2125 +#: library/ctypes.rst:2154 msgid "" "This non-public class is the common base class of all ctypes data types. " "Among other things, all ctypes type instances contain a memory block that " @@ -3058,13 +3063,13 @@ msgid "" "alive in case the memory block contains pointers." msgstr "" -#: library/ctypes.rst:2132 +#: library/ctypes.rst:2161 msgid "" "Common methods of ctypes data types, these are all class methods (to be " "exact, they are methods of the :term:`metaclass`):" msgstr "" -#: library/ctypes.rst:2137 +#: library/ctypes.rst:2166 msgid "" "This method returns a ctypes instance that shares the buffer of the *source* " "object. The *source* object must support the writeable buffer interface. " @@ -3073,13 +3078,13 @@ msgid "" "exc:`ValueError` is raised." msgstr "" -#: library/ctypes.rst:2153 +#: library/ctypes.rst:2182 msgid "" "Raises an :ref:`auditing event ` ``ctypes.cdata/buffer`` with " "arguments ``pointer``, ``size``, ``offset``." msgstr "" -#: library/ctypes.rst:2147 +#: library/ctypes.rst:2176 msgid "" "This method creates a ctypes instance, copying the buffer from the *source* " "object buffer which must be readable. The optional *offset* parameter " @@ -3087,19 +3092,19 @@ msgid "" "If the source buffer is not large enough a :exc:`ValueError` is raised." msgstr "" -#: library/ctypes.rst:2157 +#: library/ctypes.rst:2186 msgid "" "This method returns a ctypes type instance using the memory specified by " "*address* which must be an integer." msgstr "" -#: library/ctypes.rst:2162 +#: library/ctypes.rst:2191 msgid "" "This method, and others that indirectly call this method, raises an :ref:" "`auditing event ` ``ctypes.cdata`` with argument ``address``." msgstr "" -#: library/ctypes.rst:2168 +#: library/ctypes.rst:2197 msgid "" "This method adapts *obj* to a ctypes type. It is called with the actual " "object used in a foreign function call when the type is present in the " @@ -3107,25 +3112,25 @@ msgid "" "object that can be used as a function call parameter." msgstr "" -#: library/ctypes.rst:2173 +#: library/ctypes.rst:2202 msgid "" "All ctypes data types have a default implementation of this classmethod that " "normally returns *obj* if that is an instance of the type. Some types " "accept other objects as well." msgstr "" -#: library/ctypes.rst:2179 +#: library/ctypes.rst:2208 msgid "" "This method returns a ctypes type instance exported by a shared library. " "*name* is the name of the symbol that exports the data, *library* is the " "loaded shared library." msgstr "" -#: library/ctypes.rst:2183 +#: library/ctypes.rst:2212 msgid "Common instance variables of ctypes data types:" msgstr "" -#: library/ctypes.rst:2187 +#: library/ctypes.rst:2216 msgid "" "Sometimes ctypes data instances do not own the memory block they contain, " "instead they share part of the memory block of a base object. The :attr:" @@ -3133,13 +3138,13 @@ msgid "" "block." msgstr "" -#: library/ctypes.rst:2194 +#: library/ctypes.rst:2223 msgid "" "This read-only variable is true when the ctypes data instance has allocated " "the memory block itself, false otherwise." msgstr "" -#: library/ctypes.rst:2199 +#: library/ctypes.rst:2228 msgid "" "This member is either ``None`` or a dictionary containing Python objects " "that need to be kept alive so that the memory block contents is kept valid. " @@ -3147,7 +3152,7 @@ msgid "" "dictionary." msgstr "" -#: library/ctypes.rst:2212 +#: library/ctypes.rst:2241 msgid "" "This non-public class is the base class of all fundamental ctypes data " "types. It is mentioned here because it contains the common attributes of the " @@ -3156,11 +3161,11 @@ msgid "" "types that are not and do not contain pointers can now be pickled." msgstr "" -#: library/ctypes.rst:2218 +#: library/ctypes.rst:2247 msgid "Instances have a single attribute:" msgstr "" -#: library/ctypes.rst:2222 +#: library/ctypes.rst:2251 msgid "" "This attribute contains the actual value of the instance. For integer and " "pointer types, it is an integer, for character types, it is a single " @@ -3168,7 +3173,7 @@ msgid "" "bytes object or string." msgstr "" -#: library/ctypes.rst:2227 +#: library/ctypes.rst:2256 msgid "" "When the ``value`` attribute is retrieved from a ctypes instance, usually a " "new object is returned each time. :mod:`ctypes` does *not* implement " @@ -3176,7 +3181,7 @@ msgid "" "true for all other ctypes object instances." msgstr "" -#: library/ctypes.rst:2233 +#: library/ctypes.rst:2262 msgid "" "Fundamental data types, when returned as foreign function call results, or, " "for example, by retrieving structure field members or array items, are " @@ -3186,7 +3191,7 @@ msgid "" "instance." msgstr "" -#: library/ctypes.rst:2241 +#: library/ctypes.rst:2270 msgid "" "Subclasses of fundamental data types do *not* inherit this behavior. So, if " "a foreign functions :attr:`!restype` is a subclass of :class:`c_void_p`, you " @@ -3194,25 +3199,25 @@ msgid "" "you can get the value of the pointer by accessing the ``value`` attribute." msgstr "" -#: library/ctypes.rst:2246 +#: library/ctypes.rst:2275 msgid "These are the fundamental ctypes data types:" msgstr "" -#: library/ctypes.rst:2250 +#: library/ctypes.rst:2279 msgid "" "Represents the C :c:expr:`signed char` datatype, and interprets the value as " "small integer. The constructor accepts an optional integer initializer; no " "overflow checking is done." msgstr "" -#: library/ctypes.rst:2257 +#: library/ctypes.rst:2286 msgid "" "Represents the C :c:expr:`char` datatype, and interprets the value as a " "single character. The constructor accepts an optional string initializer, " "the length of the string must be exactly one character." msgstr "" -#: library/ctypes.rst:2264 +#: library/ctypes.rst:2293 msgid "" "Represents the C :c:expr:`char *` datatype when it points to a zero-" "terminated string. For a general character pointer that may also point to " @@ -3220,182 +3225,182 @@ msgid "" "integer address, or a bytes object." msgstr "" -#: library/ctypes.rst:2272 +#: library/ctypes.rst:2301 msgid "" "Represents the C :c:expr:`double` datatype. The constructor accepts an " "optional float initializer." msgstr "" -#: library/ctypes.rst:2278 +#: library/ctypes.rst:2307 msgid "" "Represents the C :c:expr:`long double` datatype. The constructor accepts an " "optional float initializer. On platforms where ``sizeof(long double) == " "sizeof(double)`` it is an alias to :class:`c_double`." msgstr "" -#: library/ctypes.rst:2284 +#: library/ctypes.rst:2313 msgid "" "Represents the C :c:expr:`float` datatype. The constructor accepts an " "optional float initializer." msgstr "" -#: library/ctypes.rst:2290 +#: library/ctypes.rst:2319 msgid "" "Represents the C :c:expr:`signed int` datatype. The constructor accepts an " "optional integer initializer; no overflow checking is done. On platforms " "where ``sizeof(int) == sizeof(long)`` it is an alias to :class:`c_long`." msgstr "" -#: library/ctypes.rst:2297 +#: library/ctypes.rst:2326 msgid "" "Represents the C 8-bit :c:expr:`signed int` datatype. Usually an alias for :" "class:`c_byte`." msgstr "" -#: library/ctypes.rst:2303 +#: library/ctypes.rst:2332 msgid "" "Represents the C 16-bit :c:expr:`signed int` datatype. Usually an alias " "for :class:`c_short`." msgstr "" -#: library/ctypes.rst:2309 +#: library/ctypes.rst:2338 msgid "" "Represents the C 32-bit :c:expr:`signed int` datatype. Usually an alias " "for :class:`c_int`." msgstr "" -#: library/ctypes.rst:2315 +#: library/ctypes.rst:2344 msgid "" "Represents the C 64-bit :c:expr:`signed int` datatype. Usually an alias " "for :class:`c_longlong`." msgstr "" -#: library/ctypes.rst:2321 +#: library/ctypes.rst:2350 msgid "" "Represents the C :c:expr:`signed long` datatype. The constructor accepts an " "optional integer initializer; no overflow checking is done." msgstr "" -#: library/ctypes.rst:2327 +#: library/ctypes.rst:2356 msgid "" "Represents the C :c:expr:`signed long long` datatype. The constructor " "accepts an optional integer initializer; no overflow checking is done." msgstr "" -#: library/ctypes.rst:2333 +#: library/ctypes.rst:2362 msgid "" "Represents the C :c:expr:`signed short` datatype. The constructor accepts " "an optional integer initializer; no overflow checking is done." msgstr "" -#: library/ctypes.rst:2339 +#: library/ctypes.rst:2368 msgid "Represents the C :c:type:`size_t` datatype." msgstr "" -#: library/ctypes.rst:2344 +#: library/ctypes.rst:2373 msgid "Represents the C :c:type:`ssize_t` datatype." msgstr "" -#: library/ctypes.rst:2351 +#: library/ctypes.rst:2380 msgid "Represents the C :c:type:`time_t` datatype." msgstr "" -#: library/ctypes.rst:2358 +#: library/ctypes.rst:2387 msgid "" "Represents the C :c:expr:`unsigned char` datatype, it interprets the value " "as small integer. The constructor accepts an optional integer initializer; " "no overflow checking is done." msgstr "" -#: library/ctypes.rst:2365 +#: library/ctypes.rst:2394 msgid "" "Represents the C :c:expr:`unsigned int` datatype. The constructor accepts " "an optional integer initializer; no overflow checking is done. On platforms " "where ``sizeof(int) == sizeof(long)`` it is an alias for :class:`c_ulong`." msgstr "" -#: library/ctypes.rst:2372 +#: library/ctypes.rst:2401 msgid "" "Represents the C 8-bit :c:expr:`unsigned int` datatype. Usually an alias " "for :class:`c_ubyte`." msgstr "" -#: library/ctypes.rst:2378 +#: library/ctypes.rst:2407 msgid "" "Represents the C 16-bit :c:expr:`unsigned int` datatype. Usually an alias " "for :class:`c_ushort`." msgstr "" -#: library/ctypes.rst:2384 +#: library/ctypes.rst:2413 msgid "" "Represents the C 32-bit :c:expr:`unsigned int` datatype. Usually an alias " "for :class:`c_uint`." msgstr "" -#: library/ctypes.rst:2390 +#: library/ctypes.rst:2419 msgid "" "Represents the C 64-bit :c:expr:`unsigned int` datatype. Usually an alias " "for :class:`c_ulonglong`." msgstr "" -#: library/ctypes.rst:2396 +#: library/ctypes.rst:2425 msgid "" "Represents the C :c:expr:`unsigned long` datatype. The constructor accepts " "an optional integer initializer; no overflow checking is done." msgstr "" -#: library/ctypes.rst:2402 +#: library/ctypes.rst:2431 msgid "" "Represents the C :c:expr:`unsigned long long` datatype. The constructor " "accepts an optional integer initializer; no overflow checking is done." msgstr "" -#: library/ctypes.rst:2408 +#: library/ctypes.rst:2437 msgid "" "Represents the C :c:expr:`unsigned short` datatype. The constructor accepts " "an optional integer initializer; no overflow checking is done." msgstr "" -#: library/ctypes.rst:2414 +#: library/ctypes.rst:2443 msgid "" "Represents the C :c:expr:`void *` type. The value is represented as " "integer. The constructor accepts an optional integer initializer." msgstr "" -#: library/ctypes.rst:2420 +#: library/ctypes.rst:2449 msgid "" "Represents the C :c:type:`wchar_t` datatype, and interprets the value as a " "single character unicode string. The constructor accepts an optional string " "initializer, the length of the string must be exactly one character." msgstr "" -#: library/ctypes.rst:2427 +#: library/ctypes.rst:2456 msgid "" "Represents the C :c:expr:`wchar_t *` datatype, which must be a pointer to a " "zero-terminated wide character string. The constructor accepts an integer " "address, or a string." msgstr "" -#: library/ctypes.rst:2434 +#: library/ctypes.rst:2463 msgid "" "Represent the C :c:expr:`bool` datatype (more accurately, :c:expr:`_Bool` " "from C99). Its value can be ``True`` or ``False``, and the constructor " "accepts any object that has a truth value." msgstr "" -#: library/ctypes.rst:2441 +#: library/ctypes.rst:2470 msgid "" -"Windows only: Represents a :c:type:`!HRESULT` value, which contains success " -"or error information for a function or method call." +"Represents a :c:type:`!HRESULT` value, which contains success or error " +"information for a function or method call." msgstr "" -#: library/ctypes.rst:2447 +#: library/ctypes.rst:2478 msgid "" "Represents the C :c:expr:`PyObject *` datatype. Calling this without an " "argument creates a ``NULL`` :c:expr:`PyObject *` pointer." msgstr "" -#: library/ctypes.rst:2450 +#: library/ctypes.rst:2481 msgid "" "The :mod:`!ctypes.wintypes` module provides quite some other Windows " "specific data types, for example :c:type:`!HWND`, :c:type:`!WPARAM`, or :c:" @@ -3403,41 +3408,41 @@ msgid "" "are also defined." msgstr "" -#: library/ctypes.rst:2458 +#: library/ctypes.rst:2489 msgid "Structured data types" msgstr "" -#: library/ctypes.rst:2463 +#: library/ctypes.rst:2494 msgid "Abstract base class for unions in native byte order." msgstr "" -#: library/ctypes.rst:2468 +#: library/ctypes.rst:2499 msgid "Abstract base class for unions in *big endian* byte order." msgstr "" -#: library/ctypes.rst:2474 +#: library/ctypes.rst:2505 msgid "Abstract base class for unions in *little endian* byte order." msgstr "" -#: library/ctypes.rst:2480 +#: library/ctypes.rst:2511 msgid "Abstract base class for structures in *big endian* byte order." msgstr "" -#: library/ctypes.rst:2485 +#: library/ctypes.rst:2516 msgid "Abstract base class for structures in *little endian* byte order." msgstr "" -#: library/ctypes.rst:2487 +#: library/ctypes.rst:2518 msgid "" "Structures and unions with non-native byte order cannot contain pointer type " "fields, or any other data types containing pointer type fields." msgstr "" -#: library/ctypes.rst:2493 +#: library/ctypes.rst:2524 msgid "Abstract base class for structures in *native* byte order." msgstr "" -#: library/ctypes.rst:2495 +#: library/ctypes.rst:2526 msgid "" "Concrete structure and union types must be created by subclassing one of " "these types, and at least define a :attr:`_fields_` class variable. :mod:" @@ -3445,34 +3450,34 @@ msgid "" "the fields by direct attribute accesses. These are the" msgstr "" -#: library/ctypes.rst:2503 +#: library/ctypes.rst:2534 msgid "" "A sequence defining the structure fields. The items must be 2-tuples or 3-" "tuples. The first item is the name of the field, the second item specifies " "the type of the field; it can be any ctypes data type." msgstr "" -#: library/ctypes.rst:2507 +#: library/ctypes.rst:2538 msgid "" "For integer type fields like :class:`c_int`, a third optional item can be " "given. It must be a small positive integer defining the bit width of the " "field." msgstr "" -#: library/ctypes.rst:2511 +#: library/ctypes.rst:2542 msgid "" "Field names must be unique within one structure or union. This is not " "checked, only one field can be accessed when names are repeated." msgstr "" -#: library/ctypes.rst:2514 +#: library/ctypes.rst:2545 msgid "" "It is possible to define the :attr:`_fields_` class variable *after* the " "class statement that defines the Structure subclass, this allows creating " "data types that directly or indirectly reference themselves::" msgstr "" -#: library/ctypes.rst:2518 +#: library/ctypes.rst:2549 msgid "" "class List(Structure):\n" " pass\n" @@ -3481,7 +3486,7 @@ msgid "" " ]" msgstr "" -#: library/ctypes.rst:2524 +#: library/ctypes.rst:2555 msgid "" "The :attr:`_fields_` class variable must, however, be defined before the " "type is first used (an instance is created, :func:`sizeof` is called on it, " @@ -3489,14 +3494,14 @@ msgid "" "raise an AttributeError." msgstr "" -#: library/ctypes.rst:2529 +#: library/ctypes.rst:2560 msgid "" "It is possible to define sub-subclasses of structure types, they inherit the " "fields of the base class plus the :attr:`_fields_` defined in the sub-" "subclass, if any." msgstr "" -#: library/ctypes.rst:2536 +#: library/ctypes.rst:2567 msgid "" "An optional small integer that allows overriding the alignment of structure " "fields in the instance. :attr:`_pack_` must already be defined when :attr:" @@ -3504,14 +3509,14 @@ msgid "" "attribute to 0 is the same as not setting it at all." msgstr "" -#: library/ctypes.rst:2544 +#: library/ctypes.rst:2575 msgid "" "An optional sequence that lists the names of unnamed (anonymous) fields. :" "attr:`_anonymous_` must be already defined when :attr:`_fields_` is " "assigned, otherwise it will have no effect." msgstr "" -#: library/ctypes.rst:2548 +#: library/ctypes.rst:2579 msgid "" "The fields listed in this variable must be structure or union type fields. :" "mod:`ctypes` will create descriptors in the structure type that allows " @@ -3519,11 +3524,11 @@ msgid "" "structure or union field." msgstr "" -#: library/ctypes.rst:2553 +#: library/ctypes.rst:2584 msgid "Here is an example type (Windows)::" msgstr "" -#: library/ctypes.rst:2555 +#: library/ctypes.rst:2586 msgid "" "class _U(Union):\n" " _fields_ = [(\"lptdesc\", POINTER(TYPEDESC)),\n" @@ -3536,7 +3541,7 @@ msgid "" " (\"vt\", VARTYPE)]" msgstr "" -#: library/ctypes.rst:2566 +#: library/ctypes.rst:2597 msgid "" "The ``TYPEDESC`` structure describes a COM data type, the ``vt`` field " "specifies which one of the union fields is valid. Since the ``u`` field is " @@ -3546,7 +3551,7 @@ msgid "" "temporary union instance::" msgstr "" -#: library/ctypes.rst:2573 +#: library/ctypes.rst:2604 msgid "" "td = TYPEDESC()\n" "td.vt = VT_PTR\n" @@ -3554,7 +3559,7 @@ msgid "" "td.u.lptdesc = POINTER(some_type)" msgstr "" -#: library/ctypes.rst:2578 +#: library/ctypes.rst:2609 msgid "" "It is possible to define sub-subclasses of structures, they inherit the " "fields of the base class. If the subclass definition has a separate :attr:" @@ -3562,7 +3567,7 @@ msgid "" "of the base class." msgstr "" -#: library/ctypes.rst:2583 +#: library/ctypes.rst:2614 msgid "" "Structure and union constructors accept both positional and keyword " "arguments. Positional arguments are used to initialize member fields in the " @@ -3572,15 +3577,15 @@ msgid "" "names not present in :attr:`_fields_`." msgstr "" -#: library/ctypes.rst:2594 +#: library/ctypes.rst:2625 msgid "Arrays and pointers" msgstr "" -#: library/ctypes.rst:2598 +#: library/ctypes.rst:2629 msgid "Abstract base class for arrays." msgstr "" -#: library/ctypes.rst:2600 +#: library/ctypes.rst:2631 msgid "" "The recommended way to create concrete array types is by multiplying any :" "mod:`ctypes` data type with a non-negative integer. Alternatively, you can " @@ -3590,34 +3595,34 @@ msgid "" "an :class:`Array`." msgstr "" -#: library/ctypes.rst:2610 +#: library/ctypes.rst:2641 msgid "" "A positive integer specifying the number of elements in the array. Out-of-" "range subscripts result in an :exc:`IndexError`. Will be returned by :func:" "`len`." msgstr "" -#: library/ctypes.rst:2617 +#: library/ctypes.rst:2648 msgid "Specifies the type of each element in the array." msgstr "" -#: library/ctypes.rst:2620 +#: library/ctypes.rst:2651 msgid "" "Array subclass constructors accept positional arguments, used to initialize " "the elements in order." msgstr "" -#: library/ctypes.rst:2626 +#: library/ctypes.rst:2657 msgid "Private, abstract base class for pointers." msgstr "" -#: library/ctypes.rst:2628 +#: library/ctypes.rst:2659 msgid "" "Concrete pointer types are created by calling :func:`POINTER` with the type " "that will be pointed to; this is done automatically by :func:`pointer`." msgstr "" -#: library/ctypes.rst:2632 +#: library/ctypes.rst:2663 msgid "" "If a pointer points to an array, its elements can be read and written using " "standard subscript and slice accesses. Pointer objects have no size, so :" @@ -3626,11 +3631,11 @@ msgid "" "probably crash with an access violation (if you're lucky)." msgstr "" -#: library/ctypes.rst:2642 +#: library/ctypes.rst:2673 msgid "Specifies the type pointed to." msgstr "" -#: library/ctypes.rst:2646 +#: library/ctypes.rst:2677 msgid "" "Returns the object to which to pointer points. Assigning to this attribute " "changes the pointer to point to the assigned object." diff --git a/library/dataclasses.po b/library/dataclasses.po index 7c67102b0..1969c6345 100644 --- a/library/dataclasses.po +++ b/library/dataclasses.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -404,13 +404,15 @@ msgstr "" #: library/dataclasses.rst:279 msgid "" "*hash*: This can be a bool or ``None``. If true, this field is included in " -"the generated :meth:`~object.__hash__` method. If ``None`` (the default), " -"use the value of *compare*: this would normally be the expected behavior. A " -"field should be considered in the hash if it's used for comparisons. " -"Setting this value to anything other than ``None`` is discouraged." +"the generated :meth:`~object.__hash__` method. If false, this field is " +"excluded from the generated :meth:`~object.__hash__`. If ``None`` (the " +"default), use the value of *compare*: this would normally be the expected " +"behavior, since a field should be included in the hash if it's used for " +"comparisons. Setting this value to anything other than ``None`` is " +"discouraged." msgstr "" -#: library/dataclasses.rst:286 +#: library/dataclasses.rst:287 msgid "" "One possible reason to set ``hash=False`` but ``compare=True`` would be if a " "field is expensive to compute a hash value for, that field is needed for " @@ -419,14 +421,14 @@ msgid "" "used for comparisons." msgstr "" -#: library/dataclasses.rst:292 +#: library/dataclasses.rst:293 msgid "" "*compare*: If true (the default), this field is included in the generated " "equality and comparison methods (:meth:`~object.__eq__`, :meth:`~object." "__gt__`, et al.)." msgstr "" -#: library/dataclasses.rst:296 +#: library/dataclasses.rst:297 msgid "" "*metadata*: This can be a mapping or ``None``. ``None`` is treated as an " "empty dict. This value is wrapped in :func:`~types.MappingProxyType` to " @@ -436,13 +438,13 @@ msgid "" "namespace in the metadata." msgstr "" -#: library/dataclasses.rst:304 +#: library/dataclasses.rst:305 msgid "" "*kw_only*: If true, this field will be marked as keyword-only. This is used " "when the generated :meth:`~object.__init__` method's parameters are computed." msgstr "" -#: library/dataclasses.rst:310 +#: library/dataclasses.rst:311 msgid "" "If the default value of a field is specified by a call to :func:`!field`, " "then the class attribute for this field will be replaced by the specified " @@ -453,7 +455,7 @@ msgid "" "specified. For example, after::" msgstr "" -#: library/dataclasses.rst:319 +#: library/dataclasses.rst:320 msgid "" "@dataclass\n" "class C:\n" @@ -463,14 +465,14 @@ msgid "" " t: int = 20" msgstr "" -#: library/dataclasses.rst:326 +#: library/dataclasses.rst:327 msgid "" "The class attribute :attr:`!C.z` will be ``10``, the class attribute :attr:`!" "C.t` will be ``20``, and the class attributes :attr:`!C.x` and :attr:`!C.y` " "will not be set." msgstr "" -#: library/dataclasses.rst:332 +#: library/dataclasses.rst:333 msgid "" ":class:`!Field` objects describe each defined field. These objects are " "created internally, and are returned by the :func:`fields` module-level " @@ -478,28 +480,28 @@ msgid "" "directly. Its documented attributes are:" msgstr "" -#: library/dataclasses.rst:337 +#: library/dataclasses.rst:338 msgid ":attr:`!name`: The name of the field." msgstr "" -#: library/dataclasses.rst:338 +#: library/dataclasses.rst:339 msgid ":attr:`!type`: The type of the field." msgstr "" -#: library/dataclasses.rst:339 +#: library/dataclasses.rst:340 msgid "" ":attr:`!default`, :attr:`!default_factory`, :attr:`!init`, :attr:`!repr`, :" "attr:`!hash`, :attr:`!compare`, :attr:`!metadata`, and :attr:`!kw_only` have " "the identical meaning and values as they do in the :func:`field` function." msgstr "" -#: library/dataclasses.rst:343 +#: library/dataclasses.rst:344 msgid "" "Other attributes may exist, but they are private and must not be inspected " "or relied on." msgstr "" -#: library/dataclasses.rst:348 +#: library/dataclasses.rst:349 msgid "" "Returns a tuple of :class:`Field` objects that define the fields for this " "dataclass. Accepts either a dataclass, or an instance of a dataclass. " @@ -507,7 +509,7 @@ msgid "" "not return pseudo-fields which are ``ClassVar`` or ``InitVar``." msgstr "" -#: library/dataclasses.rst:355 +#: library/dataclasses.rst:356 msgid "" "Converts the dataclass *obj* to a dict (by using the factory function " "*dict_factory*). Each dataclass is converted to a dict of its fields, as " @@ -515,11 +517,11 @@ msgid "" "into. Other objects are copied with :func:`copy.deepcopy`." msgstr "" -#: library/dataclasses.rst:361 +#: library/dataclasses.rst:362 msgid "Example of using :func:`!asdict` on nested dataclasses::" msgstr "" -#: library/dataclasses.rst:363 +#: library/dataclasses.rst:364 msgid "" "@dataclass\n" "class Point:\n" @@ -537,20 +539,20 @@ msgid "" "assert asdict(c) == {'mylist': [{'x': 0, 'y': 0}, {'x': 10, 'y': 4}]}" msgstr "" -#: library/dataclasses.rst:398 +#: library/dataclasses.rst:399 msgid "To create a shallow copy, the following workaround may be used::" msgstr "" -#: library/dataclasses.rst:380 +#: library/dataclasses.rst:381 msgid "{field.name: getattr(obj, field.name) for field in fields(obj)}" msgstr "" -#: library/dataclasses.rst:382 +#: library/dataclasses.rst:383 msgid "" ":func:`!asdict` raises :exc:`TypeError` if *obj* is not a dataclass instance." msgstr "" -#: library/dataclasses.rst:387 +#: library/dataclasses.rst:388 msgid "" "Converts the dataclass *obj* to a tuple (by using the factory function " "*tuple_factory*). Each dataclass is converted to a tuple of its field " @@ -558,27 +560,27 @@ msgid "" "objects are copied with :func:`copy.deepcopy`." msgstr "" -#: library/dataclasses.rst:393 +#: library/dataclasses.rst:394 msgid "Continuing from the previous example::" msgstr "" -#: library/dataclasses.rst:395 +#: library/dataclasses.rst:396 msgid "" "assert astuple(p) == (10, 20)\n" "assert astuple(c) == ([(0, 0), (10, 4)],)" msgstr "" -#: library/dataclasses.rst:400 +#: library/dataclasses.rst:401 msgid "tuple(getattr(obj, field.name) for field in dataclasses.fields(obj))" msgstr "" -#: library/dataclasses.rst:402 +#: library/dataclasses.rst:403 msgid "" ":func:`!astuple` raises :exc:`TypeError` if *obj* is not a dataclass " "instance." msgstr "" -#: library/dataclasses.rst:407 +#: library/dataclasses.rst:408 msgid "" "Creates a new dataclass with name *cls_name*, fields as defined in *fields*, " "base classes as given in *bases*, and initialized with a namespace as given " @@ -590,13 +592,13 @@ msgid "" "`@dataclass `." msgstr "" -#: library/dataclasses.rst:417 +#: library/dataclasses.rst:418 msgid "" "If *module* is defined, the :attr:`!__module__` attribute of the dataclass " "is set to that value. By default, it is set to the module name of the caller." msgstr "" -#: library/dataclasses.rst:421 +#: library/dataclasses.rst:422 msgid "" "This function is not strictly required, because any Python mechanism for " "creating a new class with :attr:`!__annotations__` can then apply the :func:" @@ -604,7 +606,7 @@ msgid "" "This function is provided as a convenience. For example::" msgstr "" -#: library/dataclasses.rst:427 +#: library/dataclasses.rst:428 msgid "" "C = make_dataclass('C',\n" " [('x', int),\n" @@ -613,11 +615,11 @@ msgid "" " namespace={'add_one': lambda self: self.x + 1})" msgstr "" -#: library/dataclasses.rst:433 +#: library/dataclasses.rst:434 msgid "Is equivalent to::" msgstr "" -#: library/dataclasses.rst:435 +#: library/dataclasses.rst:436 msgid "" "@dataclass\n" "class C:\n" @@ -629,7 +631,7 @@ msgid "" " return self.x + 1" msgstr "" -#: library/dataclasses.rst:446 +#: library/dataclasses.rst:447 msgid "" "Creates a new object of the same type as *obj*, replacing fields with values " "from *changes*. If *obj* is not a Data Class, raises :exc:`TypeError`. If " @@ -637,27 +639,27 @@ msgid "" "`TypeError`." msgstr "" -#: library/dataclasses.rst:451 +#: library/dataclasses.rst:452 msgid "" "The newly returned object is created by calling the :meth:`~object.__init__` " "method of the dataclass. This ensures that :meth:`__post_init__`, if " "present, is also called." msgstr "" -#: library/dataclasses.rst:455 +#: library/dataclasses.rst:456 msgid "" "Init-only variables without default values, if any exist, must be specified " "on the call to :func:`!replace` so that they can be passed to :meth:`!" "__init__` and :meth:`__post_init__`." msgstr "" -#: library/dataclasses.rst:459 +#: library/dataclasses.rst:460 msgid "" "It is an error for *changes* to contain any fields that are defined as " "having ``init=False``. A :exc:`ValueError` will be raised in this case." msgstr "" -#: library/dataclasses.rst:463 +#: library/dataclasses.rst:464 msgid "" "Be forewarned about how ``init=False`` fields work during a call to :func:`!" "replace`. They are not copied from the source object, but rather are " @@ -668,30 +670,30 @@ msgid "" "instance copying." msgstr "" -#: library/dataclasses.rst:474 +#: library/dataclasses.rst:475 msgid "" "Return ``True`` if its parameter is a dataclass (including subclasses of a " "dataclass) or an instance of one, otherwise return ``False``." msgstr "" -#: library/dataclasses.rst:477 +#: library/dataclasses.rst:478 msgid "" "If you need to know if a class is an instance of a dataclass (and not a " "dataclass itself), then add a further check for ``not isinstance(obj, " "type)``::" msgstr "" -#: library/dataclasses.rst:481 +#: library/dataclasses.rst:482 msgid "" "def is_dataclass_instance(obj):\n" " return is_dataclass(obj) and not isinstance(obj, type)" msgstr "" -#: library/dataclasses.rst:486 +#: library/dataclasses.rst:487 msgid "A sentinel value signifying a missing default or default_factory." msgstr "" -#: library/dataclasses.rst:490 +#: library/dataclasses.rst:491 msgid "" "A sentinel value used as a type annotation. Any fields after a pseudo-field " "with the type of :const:`!KW_ONLY` are marked as keyword-only fields. Note " @@ -702,13 +704,13 @@ msgid "" "the class is instantiated." msgstr "" -#: library/dataclasses.rst:499 +#: library/dataclasses.rst:500 msgid "" "In this example, the fields ``y`` and ``z`` will be marked as keyword-only " "fields::" msgstr "" -#: library/dataclasses.rst:501 +#: library/dataclasses.rst:502 msgid "" "@dataclass\n" "class Point:\n" @@ -720,24 +722,24 @@ msgid "" "p = Point(0, y=1.5, z=2.0)" msgstr "" -#: library/dataclasses.rst:510 +#: library/dataclasses.rst:511 msgid "" "In a single dataclass, it is an error to specify more than one field whose " "type is :const:`!KW_ONLY`." msgstr "" -#: library/dataclasses.rst:517 +#: library/dataclasses.rst:518 msgid "" "Raised when an implicitly defined :meth:`~object.__setattr__` or :meth:" "`~object.__delattr__` is called on a dataclass which was defined with " "``frozen=True``. It is a subclass of :exc:`AttributeError`." msgstr "" -#: library/dataclasses.rst:524 +#: library/dataclasses.rst:525 msgid "Post-init processing" msgstr "" -#: library/dataclasses.rst:528 +#: library/dataclasses.rst:529 msgid "" "When defined on the class, it will be called by the generated :meth:`~object." "__init__`, normally as :meth:`!self.__post_init__`. However, if any " @@ -747,13 +749,13 @@ msgid "" "automatically be called." msgstr "" -#: library/dataclasses.rst:535 +#: library/dataclasses.rst:536 msgid "" "Among other uses, this allows for initializing field values that depend on " "one or more other fields. For example::" msgstr "" -#: library/dataclasses.rst:538 +#: library/dataclasses.rst:539 msgid "" "@dataclass\n" "class C:\n" @@ -765,7 +767,7 @@ msgid "" " self.c = self.a + self.b" msgstr "" -#: library/dataclasses.rst:547 +#: library/dataclasses.rst:548 msgid "" "The :meth:`~object.__init__` method generated by :func:`@dataclass " "` does not call base class :meth:`!__init__` methods. If the base " @@ -773,7 +775,7 @@ msgid "" "call this method in a :meth:`__post_init__` method::" msgstr "" -#: library/dataclasses.rst:552 +#: library/dataclasses.rst:553 msgid "" "class Rectangle:\n" " def __init__(self, height, width):\n" @@ -788,25 +790,25 @@ msgid "" " super().__init__(self.side, self.side)" msgstr "" -#: library/dataclasses.rst:564 +#: library/dataclasses.rst:565 msgid "" "Note, however, that in general the dataclass-generated :meth:`!__init__` " "methods don't need to be called, since the derived dataclass will take care " "of initializing all fields of any base class that is a dataclass itself." msgstr "" -#: library/dataclasses.rst:568 +#: library/dataclasses.rst:569 msgid "" "See the section below on init-only variables for ways to pass parameters to :" "meth:`!__post_init__`. Also see the warning about how :func:`replace` " "handles ``init=False`` fields." msgstr "" -#: library/dataclasses.rst:575 +#: library/dataclasses.rst:576 msgid "Class variables" msgstr "" -#: library/dataclasses.rst:577 +#: library/dataclasses.rst:578 msgid "" "One of the few places where :func:`@dataclass ` actually inspects " "the type of a field is to determine if a field is a class variable as " @@ -817,11 +819,11 @@ msgid "" "`fields` function." msgstr "" -#: library/dataclasses.rst:588 +#: library/dataclasses.rst:589 msgid "Init-only variables" msgstr "" -#: library/dataclasses.rst:590 +#: library/dataclasses.rst:591 msgid "" "Another place where :func:`@dataclass ` inspects a type " "annotation is to determine if a field is an init-only variable. It does " @@ -834,13 +836,13 @@ msgid "" "dataclasses." msgstr "" -#: library/dataclasses.rst:600 +#: library/dataclasses.rst:601 msgid "" "For example, suppose a field will be initialized from a database, if a value " "is not provided when creating the class::" msgstr "" -#: library/dataclasses.rst:603 +#: library/dataclasses.rst:604 msgid "" "@dataclass\n" "class C:\n" @@ -855,17 +857,17 @@ msgid "" "c = C(10, database=my_database)" msgstr "" -#: library/dataclasses.rst:615 +#: library/dataclasses.rst:616 msgid "" "In this case, :func:`fields` will return :class:`Field` objects for :attr:`!" "i` and :attr:`!j`, but not for :attr:`!database`." msgstr "" -#: library/dataclasses.rst:621 +#: library/dataclasses.rst:622 msgid "Frozen instances" msgstr "" -#: library/dataclasses.rst:623 +#: library/dataclasses.rst:624 msgid "" "It is not possible to create truly immutable Python objects. However, by " "passing ``frozen=True`` to the :func:`@dataclass ` decorator you " @@ -874,18 +876,18 @@ msgid "" "methods will raise a :exc:`FrozenInstanceError` when invoked." msgstr "" -#: library/dataclasses.rst:629 +#: library/dataclasses.rst:630 msgid "" "There is a tiny performance penalty when using ``frozen=True``: :meth:" "`~object.__init__` cannot use simple assignment to initialize fields, and " "must use :meth:`!object.__setattr__`." msgstr "" -#: library/dataclasses.rst:638 +#: library/dataclasses.rst:639 msgid "Inheritance" msgstr "" -#: library/dataclasses.rst:640 +#: library/dataclasses.rst:641 msgid "" "When the dataclass is being created by the :func:`@dataclass ` " "decorator, it looks through all of the class's base classes in reverse MRO " @@ -897,7 +899,7 @@ msgid "" "order, derived classes override base classes. An example::" msgstr "" -#: library/dataclasses.rst:650 +#: library/dataclasses.rst:651 msgid "" "@dataclass\n" "class Base:\n" @@ -910,28 +912,28 @@ msgid "" " x: int = 15" msgstr "" -#: library/dataclasses.rst:660 +#: library/dataclasses.rst:661 msgid "" "The final list of fields is, in order, :attr:`!x`, :attr:`!y`, :attr:`!z`. " "The final type of :attr:`!x` is :class:`int`, as specified in class :class:`!" "C`." msgstr "" -#: library/dataclasses.rst:663 +#: library/dataclasses.rst:664 msgid "" "The generated :meth:`~object.__init__` method for :class:`!C` will look " "like::" msgstr "" -#: library/dataclasses.rst:665 +#: library/dataclasses.rst:666 msgid "def __init__(self, x: int = 15, y: int = 0, z: int = 10):" msgstr "" -#: library/dataclasses.rst:668 +#: library/dataclasses.rst:669 msgid "Re-ordering of keyword-only parameters in :meth:`!__init__`" msgstr "" -#: library/dataclasses.rst:670 +#: library/dataclasses.rst:671 msgid "" "After the parameters needed for :meth:`~object.__init__` are computed, any " "keyword-only parameters are moved to come after all regular (non-keyword-" @@ -939,14 +941,14 @@ msgid "" "implemented in Python: they must come after non-keyword-only parameters." msgstr "" -#: library/dataclasses.rst:676 +#: library/dataclasses.rst:677 msgid "" "In this example, :attr:`!Base.y`, :attr:`!Base.w`, and :attr:`!D.t` are " "keyword-only fields, and :attr:`!Base.x` and :attr:`!D.z` are regular " "fields::" msgstr "" -#: library/dataclasses.rst:679 +#: library/dataclasses.rst:680 msgid "" "@dataclass\n" "class Base:\n" @@ -961,45 +963,45 @@ msgid "" " t: int = field(kw_only=True, default=0)" msgstr "" -#: library/dataclasses.rst:691 +#: library/dataclasses.rst:692 msgid "The generated :meth:`!__init__` method for :class:`!D` will look like::" msgstr "" -#: library/dataclasses.rst:693 +#: library/dataclasses.rst:694 msgid "" "def __init__(self, x: Any = 15.0, z: int = 10, *, y: int = 0, w: int = 1, t: " "int = 0):" msgstr "" -#: library/dataclasses.rst:695 +#: library/dataclasses.rst:696 msgid "" "Note that the parameters have been re-ordered from how they appear in the " "list of fields: parameters derived from regular fields are followed by " "parameters derived from keyword-only fields." msgstr "" -#: library/dataclasses.rst:699 +#: library/dataclasses.rst:700 msgid "" "The relative ordering of keyword-only parameters is maintained in the re-" "ordered :meth:`!__init__` parameter list." msgstr "" -#: library/dataclasses.rst:704 +#: library/dataclasses.rst:705 msgid "Default factory functions" msgstr "" -#: library/dataclasses.rst:706 +#: library/dataclasses.rst:707 msgid "" "If a :func:`field` specifies a *default_factory*, it is called with zero " "arguments when a default value for the field is needed. For example, to " "create a new instance of a list, use::" msgstr "" -#: library/dataclasses.rst:710 +#: library/dataclasses.rst:711 msgid "mylist: list = field(default_factory=list)" msgstr "" -#: library/dataclasses.rst:712 +#: library/dataclasses.rst:713 msgid "" "If a field is excluded from :meth:`~object.__init__` (using ``init=False``) " "and the field also specifies *default_factory*, then the default factory " @@ -1008,17 +1010,17 @@ msgid "" "initial value." msgstr "" -#: library/dataclasses.rst:719 +#: library/dataclasses.rst:720 msgid "Mutable default values" msgstr "" -#: library/dataclasses.rst:721 +#: library/dataclasses.rst:722 msgid "" "Python stores default member variable values in class attributes. Consider " "this example, not using dataclasses::" msgstr "" -#: library/dataclasses.rst:724 +#: library/dataclasses.rst:725 msgid "" "class C:\n" " x = []\n" @@ -1033,17 +1035,17 @@ msgid "" "assert o1.x is o2.x" msgstr "" -#: library/dataclasses.rst:736 +#: library/dataclasses.rst:737 msgid "" "Note that the two instances of class :class:`!C` share the same class " "variable :attr:`!x`, as expected." msgstr "" -#: library/dataclasses.rst:739 +#: library/dataclasses.rst:740 msgid "Using dataclasses, *if* this code was valid::" msgstr "" -#: library/dataclasses.rst:741 +#: library/dataclasses.rst:742 msgid "" "@dataclass\n" "class D:\n" @@ -1052,11 +1054,11 @@ msgid "" " self.x.append(element)" msgstr "" -#: library/dataclasses.rst:747 +#: library/dataclasses.rst:748 msgid "it would generate code similar to::" msgstr "" -#: library/dataclasses.rst:749 +#: library/dataclasses.rst:750 msgid "" "class D:\n" " x = []\n" @@ -1068,7 +1070,7 @@ msgid "" "assert D().x is D().x" msgstr "" -#: library/dataclasses.rst:758 +#: library/dataclasses.rst:759 msgid "" "This has the same issue as the original example using class :class:`!C`. " "That is, two instances of class :class:`!D` that do not specify a value for :" @@ -1081,13 +1083,13 @@ msgid "" "partial solution, but it does protect against many common errors." msgstr "" -#: library/dataclasses.rst:769 +#: library/dataclasses.rst:770 msgid "" "Using default factory functions is a way to create new instances of mutable " "types as default values for fields::" msgstr "" -#: library/dataclasses.rst:772 +#: library/dataclasses.rst:773 msgid "" "@dataclass\n" "class D:\n" @@ -1096,38 +1098,38 @@ msgid "" "assert D().x is not D().x" msgstr "" -#: library/dataclasses.rst:778 +#: library/dataclasses.rst:779 msgid "" "Instead of looking for and disallowing objects of type :class:`list`, :class:" "`dict`, or :class:`set`, unhashable objects are now not allowed as default " "values. Unhashability is used to approximate mutability." msgstr "" -#: library/dataclasses.rst:785 +#: library/dataclasses.rst:786 msgid "Descriptor-typed fields" msgstr "" -#: library/dataclasses.rst:787 +#: library/dataclasses.rst:788 msgid "" "Fields that are assigned :ref:`descriptor objects ` as their " "default value have the following special behaviors:" msgstr "" -#: library/dataclasses.rst:790 +#: library/dataclasses.rst:791 msgid "" "The value for the field passed to the dataclass's :meth:`~object.__init__` " "method is passed to the descriptor's :meth:`~object.__set__` method rather " "than overwriting the descriptor object." msgstr "" -#: library/dataclasses.rst:794 +#: library/dataclasses.rst:795 msgid "" "Similarly, when getting or setting the field, the descriptor's :meth:" "`~object.__get__` or :meth:`!__set__` method is called rather than returning " "or overwriting the descriptor object." msgstr "" -#: library/dataclasses.rst:798 +#: library/dataclasses.rst:799 msgid "" "To determine whether a field contains a default value, :func:`@dataclass " "` will call the descriptor's :meth:`!__get__` method using its " @@ -1137,7 +1139,7 @@ msgid "" "in this situation, no default value will be provided for the field." msgstr "" -#: library/dataclasses.rst:808 +#: library/dataclasses.rst:809 msgid "" "class IntConversionDescriptor:\n" " def __init__(self, *, default):\n" @@ -1166,7 +1168,7 @@ msgid "" "print(i.quantity_on_hand) # 2" msgstr "" -#: library/dataclasses.rst:833 +#: library/dataclasses.rst:834 msgid "" "Note that if a field is annotated with a descriptor type, but is not " "assigned a descriptor object as its default value, the field will act like a " diff --git a/library/datetime.po b/library/datetime.po index 2eb7a17cb..f3557f0d6 100644 --- a/library/datetime.po +++ b/library/datetime.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2024-04-15 00:06-0400\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -744,7 +744,7 @@ msgid "" "constructor call with canonical attribute values." msgstr "" -#: library/datetime.rst:623 library/datetime.rst:2553 +#: library/datetime.rst:623 library/datetime.rst:2570 msgid "Notes:" msgstr "" @@ -1340,7 +1340,7 @@ msgid "" "\n" ">>> # Methods for to extracting 'components' under different calendars\n" ">>> t = d.timetuple()\n" -">>> for i in t: \n" +">>> for i in t:\n" "... print(i)\n" "2002 # year\n" "3 # month\n" @@ -1352,7 +1352,7 @@ msgid "" "70 # 70th day in the year\n" "-1\n" ">>> ic = d.isocalendar()\n" -">>> for i in ic: \n" +">>> for i in ic:\n" "... print(i)\n" "2002 # ISO year\n" "11 # ISO week number\n" @@ -1498,7 +1498,7 @@ msgid "" msgstr "" #: library/datetime.rst:921 -msgid "Use :meth:`datetime.now` with :attr:`UTC` instead." +msgid "Use :meth:`datetime.now` with :const:`UTC` instead." msgstr "" #: library/datetime.rst:926 @@ -1597,7 +1597,7 @@ msgid "" msgstr "" #: library/datetime.rst:993 -msgid "Use :meth:`datetime.fromtimestamp` with :attr:`UTC` instead." +msgid "Use :meth:`datetime.fromtimestamp` with :const:`UTC` instead." msgstr "" #: library/datetime.rst:998 @@ -1668,7 +1668,7 @@ msgid "" ">>> datetime.fromisoformat('2011-11-04 00:05:23.283+00:00')\n" "datetime.datetime(2011, 11, 4, 0, 5, 23, 283000, tzinfo=datetime.timezone." "utc)\n" -">>> datetime.fromisoformat('2011-11-04T00:05:23+04:00') \n" +">>> datetime.fromisoformat('2011-11-04T00:05:23+04:00')\n" "datetime.datetime(2011, 11, 4, 0, 5, 23,\n" " tzinfo=datetime.timezone(datetime.timedelta(seconds=14400)))" msgstr "" @@ -1699,7 +1699,7 @@ msgid "" "equivalent to::" msgstr "" -#: library/datetime.rst:2533 +#: library/datetime.rst:2550 msgid "datetime(*(time.strptime(date_string, format)[0:6]))" msgstr "" @@ -2002,7 +2002,7 @@ msgid "" msgstr "" #: library/datetime.rst:1930 library/datetime.rst:2282 -#: library/datetime.rst:2606 +#: library/datetime.rst:2623 msgid "The UTC offset is not restricted to a whole number of minutes." msgstr "" @@ -2253,7 +2253,7 @@ msgstr "" #: library/datetime.rst:1519 msgid "" ">>> from datetime import datetime\n" -">>> datetime.now().isoformat(timespec='minutes') \n" +">>> datetime.now().isoformat(timespec='minutes')\n" "'2002-12-25T00:00'\n" ">>> dt = datetime(2015, 1, 1, 12, 30, 59, 0)\n" ">>> dt.isoformat(timespec='microseconds')\n" @@ -2328,9 +2328,9 @@ msgid "" "datetime.datetime(2005, 7, 14, 12, 30)\n" "\n" ">>> # Using datetime.now()\n" -">>> datetime.now() \n" +">>> datetime.now()\n" "datetime.datetime(2007, 12, 6, 16, 29, 43, 79043) # GMT +1\n" -">>> datetime.now(timezone.utc) \n" +">>> datetime.now(timezone.utc)\n" "datetime.datetime(2007, 12, 6, 15, 29, 43, 79060, tzinfo=datetime.timezone." "utc)\n" "\n" @@ -2341,7 +2341,7 @@ msgid "" "\n" ">>> # Using datetime.timetuple() to get tuple of all attributes\n" ">>> tt = dt.timetuple()\n" -">>> for it in tt: \n" +">>> for it in tt:\n" "... print(it)\n" "...\n" "2006 # year\n" @@ -2356,7 +2356,7 @@ msgid "" "\n" ">>> # Date in ISO format\n" ">>> ic = dt.isocalendar()\n" -">>> for it in ic: \n" +">>> for it in ic:\n" "... print(it)\n" "...\n" "2006 # ISO year\n" @@ -3687,7 +3687,7 @@ msgstr "" msgid "\\(5)" msgstr "" -#: library/datetime.rst:2594 +#: library/datetime.rst:2611 msgid "``%z``" msgstr "" @@ -3705,7 +3705,7 @@ msgstr "" msgid "\\(6)" msgstr "" -#: library/datetime.rst:2620 +#: library/datetime.rst:2637 msgid "``%Z``" msgstr "" @@ -3873,7 +3873,7 @@ msgstr "" msgid "\\(8), \\(9)" msgstr "" -#: library/datetime.rst:2616 +#: library/datetime.rst:2633 msgid "``%:z``" msgstr "" @@ -3929,35 +3929,55 @@ msgstr "" msgid "" "For the :meth:`.datetime.strptime` class method, the default value is " "``1900-01-01T00:00:00.000``: any components not specified in the format " -"string will be pulled from the default value. [#]_" +"string will be pulled from the default value." +msgstr "" + +#: library/datetime.rst:2532 +msgid "" +"When used to parse partial dates lacking a year, :meth:`~.datetime.strptime` " +"will raise when encountering February 29 because its default year of 1900 is " +"*not* a leap year. Always add a default leap year to partial date strings " +"before parsing." +msgstr "" + +#: library/datetime.rst:2537 +msgid "" +">>> from datetime import datetime\n" +">>> value = \"2/29\"\n" +">>> datetime.strptime(value, \"%m/%d\")\n" +"Traceback (most recent call last):\n" +"...\n" +"ValueError: day is out of range for month\n" +">>> datetime.strptime(f\"1904 {value}\", \"%Y %m/%d\")\n" +"datetime.datetime(1904, 2, 29, 0, 0)" msgstr "" -#: library/datetime.rst:2531 +#: library/datetime.rst:2548 msgid "Using ``datetime.strptime(date_string, format)`` is equivalent to::" msgstr "" -#: library/datetime.rst:2535 +#: library/datetime.rst:2552 msgid "" "except when the format includes sub-second components or time zone offset " "information, which are supported in ``datetime.strptime`` but are discarded " "by ``time.strptime``." msgstr "" -#: library/datetime.rst:2539 +#: library/datetime.rst:2556 msgid "" "For :class:`.time` objects, the format codes for year, month, and day should " "not be used, as :class:`!time` objects have no such values. If they're used " "anyway, 1900 is substituted for the year, and 1 for the month and day." msgstr "" -#: library/datetime.rst:2543 +#: library/datetime.rst:2560 msgid "" "For :class:`date` objects, the format codes for hours, minutes, seconds, and " "microseconds should not be used, as :class:`date` objects have no such " "values. If they're used anyway, 0 is substituted for them." msgstr "" -#: library/datetime.rst:2547 +#: library/datetime.rst:2564 msgid "" "For the same reason, handling of format strings containing Unicode code " "points that can't be represented in the charset of the current locale is " @@ -3966,7 +3986,7 @@ msgid "" "`UnicodeError` or return an empty string instead." msgstr "" -#: library/datetime.rst:2556 +#: library/datetime.rst:2573 msgid "" "Because the format depends on the current locale, care should be taken when " "making assumptions about the output value. Field orderings will vary (for " @@ -3974,38 +3994,38 @@ msgid "" "contain non-ASCII characters." msgstr "" -#: library/datetime.rst:2562 +#: library/datetime.rst:2579 msgid "" "The :meth:`~.datetime.strptime` method can parse years in the full [1, 9999] " "range, but years < 1000 must be zero-filled to 4-digit width." msgstr "" -#: library/datetime.rst:2565 +#: library/datetime.rst:2582 msgid "" "In previous versions, :meth:`~.datetime.strftime` method was restricted to " "years >= 1900." msgstr "" -#: library/datetime.rst:2569 +#: library/datetime.rst:2586 msgid "" "In version 3.2, :meth:`~.datetime.strftime` method was restricted to years " ">= 1000." msgstr "" -#: library/datetime.rst:2574 +#: library/datetime.rst:2591 msgid "" "When used with the :meth:`~.datetime.strptime` method, the ``%p`` directive " "only affects the output hour field if the ``%I`` directive is used to parse " "the hour." msgstr "" -#: library/datetime.rst:2578 +#: library/datetime.rst:2595 msgid "" "Unlike the :mod:`time` module, the :mod:`!datetime` module does not support " "leap seconds." msgstr "" -#: library/datetime.rst:2582 +#: library/datetime.rst:2599 msgid "" "When used with the :meth:`~.datetime.strptime` method, the ``%f`` directive " "accepts from one to six digits and zero pads on the right. ``%f`` is an " @@ -4013,17 +4033,17 @@ msgid "" "separately in datetime objects, and therefore always available)." msgstr "" -#: library/datetime.rst:2589 +#: library/datetime.rst:2606 msgid "" "For a naive object, the ``%z``, ``%:z`` and ``%Z`` format codes are replaced " "by empty strings." msgstr "" -#: library/datetime.rst:2592 +#: library/datetime.rst:2609 msgid "For an aware object:" msgstr "" -#: library/datetime.rst:2595 +#: library/datetime.rst:2612 msgid "" ":meth:`~.datetime.utcoffset` is transformed into a string of the form " "``±HHMM[SS[.ffffff]]``, where ``HH`` is a 2-digit string giving the number " @@ -4037,7 +4057,7 @@ msgid "" "replaced with the string ``'-0330'``." msgstr "" -#: library/datetime.rst:2609 +#: library/datetime.rst:2626 msgid "" "When the ``%z`` directive is provided to the :meth:`~.datetime.strptime` " "method, the UTC offsets can have a colon as a separator between hours, " @@ -4046,53 +4066,53 @@ msgid "" "``'+00:00'``." msgstr "" -#: library/datetime.rst:2617 +#: library/datetime.rst:2634 msgid "" "Behaves exactly as ``%z``, but has a colon separator added between hours, " "minutes and seconds." msgstr "" -#: library/datetime.rst:2621 +#: library/datetime.rst:2638 msgid "" "In :meth:`~.datetime.strftime`, ``%Z`` is replaced by an empty string if :" "meth:`~.datetime.tzname` returns ``None``; otherwise ``%Z`` is replaced by " "the returned value, which must be a string." msgstr "" -#: library/datetime.rst:2625 +#: library/datetime.rst:2642 msgid ":meth:`~.datetime.strptime` only accepts certain values for ``%Z``:" msgstr "" -#: library/datetime.rst:2627 +#: library/datetime.rst:2644 msgid "any value in ``time.tzname`` for your machine's locale" msgstr "" -#: library/datetime.rst:2628 +#: library/datetime.rst:2645 msgid "the hard-coded values ``UTC`` and ``GMT``" msgstr "" -#: library/datetime.rst:2630 +#: library/datetime.rst:2647 msgid "" "So someone living in Japan may have ``JST``, ``UTC``, and ``GMT`` as valid " "values, but probably not ``EST``. It will raise ``ValueError`` for invalid " "values." msgstr "" -#: library/datetime.rst:2634 +#: library/datetime.rst:2651 msgid "" "When the ``%z`` directive is provided to the :meth:`~.datetime.strptime` " "method, an aware :class:`.datetime` object will be produced. The ``tzinfo`` " "of the result will be set to a :class:`timezone` instance." msgstr "" -#: library/datetime.rst:2640 +#: library/datetime.rst:2657 msgid "" "When used with the :meth:`~.datetime.strptime` method, ``%U`` and ``%W`` are " "only used in calculations when the day of the week and the calendar year " "(``%Y``) are specified." msgstr "" -#: library/datetime.rst:2645 +#: library/datetime.rst:2662 msgid "" "Similar to ``%U`` and ``%W``, ``%V`` is only used in calculations when the " "day of the week and the ISO year (``%G``) are specified in a :meth:`~." @@ -4100,7 +4120,7 @@ msgid "" "interchangeable." msgstr "" -#: library/datetime.rst:2651 +#: library/datetime.rst:2668 msgid "" "When used with the :meth:`~.datetime.strptime` method, the leading zero is " "optional for formats ``%d``, ``%m``, ``%H``, ``%I``, ``%M``, ``%S``, " @@ -4108,15 +4128,22 @@ msgid "" "zero." msgstr "" -#: library/datetime.rst:2656 +#: library/datetime.rst:2673 +msgid "" +"Parsing dates without a year using :meth:`~.datetime.strptime` will fail on " +"representations of February 29 as that date does not exist in the default " +"year of 1900." +msgstr "" + +#: library/datetime.rst:2678 msgid "Footnotes" msgstr "" -#: library/datetime.rst:2657 +#: library/datetime.rst:2679 msgid "If, that is, we ignore the effects of Relativity" msgstr "" -#: library/datetime.rst:2659 +#: library/datetime.rst:2681 msgid "" "This matches the definition of the \"proleptic Gregorian\" calendar in " "Dershowitz and Reingold's book *Calendrical Calculations*, where it's the " @@ -4125,19 +4152,13 @@ msgid "" "systems." msgstr "" -#: library/datetime.rst:2665 +#: library/datetime.rst:2687 msgid "" "See R. H. van Gent's `guide to the mathematics of the ISO 8601 calendar " "`_ for a good explanation." msgstr "" -#: library/datetime.rst:2669 -msgid "" -"Passing ``datetime.strptime('Feb 29', '%b %d')`` will fail since 1900 is not " -"a leap year." -msgstr "" - #: library/datetime.rst:2329 msgid "% (percent)" msgstr "" diff --git a/library/dbm.po b/library/dbm.po index 1785fecc4..8c224c8c7 100644 --- a/library/dbm.po +++ b/library/dbm.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -509,7 +509,7 @@ msgstr "" #: library/dbm.rst:395 msgid "" "Synchronize the on-disk directory and data files. This method is called by " -"the :meth:`Shelve.sync` method." +"the :meth:`shelve.Shelf.sync` method." msgstr "" #: library/dbm.rst:400 diff --git a/library/decimal.po b/library/decimal.po index 104197fe8..874e0a669 100644 --- a/library/decimal.po +++ b/library/decimal.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -2630,7 +2630,7 @@ msgstr "" #: library/decimal.rst:2248 msgid "" -"For inexact results, :attr:`MAX_PREC` is far too large on 64-bit platforms " +"For inexact results, :const:`MAX_PREC` is far too large on 64-bit platforms " "and the available memory will be insufficient::" msgstr "" diff --git a/library/distutils.po b/library/distutils.po new file mode 100644 index 000000000..fed6944e5 --- /dev/null +++ b/library/distutils.po @@ -0,0 +1,35 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2001-2025, Python Software Foundation +# This file is distributed under the same license as the Python package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Python 3.12\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: library/distutils.rst:2 +msgid ":mod:`!distutils` --- Building and installing Python modules" +msgstr "" + +#: library/distutils.rst:10 +msgid "" +"This module is no longer part of the Python standard library. It was :ref:" +"`removed in Python 3.12 ` after being " +"deprecated in Python 3.10. The removal was decided in :pep:`632`, which has " +"`migration advice `_." +msgstr "" + +#: library/distutils.rst:16 +msgid "" +"The last version of Python that provided the :mod:`!distutils` module was " +"`Python 3.11 `_." +msgstr "" diff --git a/library/doctest.po b/library/doctest.po index 64510cdc9..ced42ce73 100644 --- a/library/doctest.po +++ b/library/doctest.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -241,45 +241,33 @@ msgstr "" #: library/doctest.rst:176 msgid "" -"There is also a command line shortcut for running :func:`testmod`. You can " -"instruct the Python interpreter to run the doctest module directly from the " -"standard library and pass the module name(s) on the command line::" +"There is also a command line shortcut for running :func:`testmod`, see " +"section :ref:`doctest-cli`." msgstr "" -#: library/doctest.rst:180 -msgid "python -m doctest -v example.py" -msgstr "" - -#: library/doctest.rst:182 -msgid "" -"This will import :file:`example.py` as a standalone module and run :func:" -"`testmod` on it. Note that this may not work correctly if the file is part " -"of a package and imports other submodules from that package." -msgstr "" - -#: library/doctest.rst:186 +#: library/doctest.rst:179 msgid "" "For more information on :func:`testmod`, see section :ref:`doctest-basic-" "api`." msgstr "" -#: library/doctest.rst:192 +#: library/doctest.rst:185 msgid "Simple Usage: Checking Examples in a Text File" msgstr "" -#: library/doctest.rst:194 +#: library/doctest.rst:187 msgid "" "Another simple application of doctest is testing interactive examples in a " "text file. This can be done with the :func:`testfile` function::" msgstr "" -#: library/doctest.rst:197 +#: library/doctest.rst:190 msgid "" "import doctest\n" "doctest.testfile(\"example.txt\")" msgstr "" -#: library/doctest.rst:200 +#: library/doctest.rst:193 msgid "" "That short script executes and verifies any interactive Python examples " "contained in the file :file:`example.txt`. The file content is treated as " @@ -287,7 +275,7 @@ msgid "" "Python program! For example, perhaps :file:`example.txt` contains this:" msgstr "" -#: library/doctest.rst:205 +#: library/doctest.rst:198 msgid "" "The ``example`` module\n" "======================\n" @@ -306,13 +294,13 @@ msgid "" " 120" msgstr "" -#: library/doctest.rst:223 +#: library/doctest.rst:216 msgid "" "Running ``doctest.testfile(\"example.txt\")`` then finds the error in this " "documentation::" msgstr "" -#: library/doctest.rst:226 +#: library/doctest.rst:219 msgid "" "File \"./example.txt\", line 14, in example.txt\n" "Failed example:\n" @@ -323,7 +311,7 @@ msgid "" " 720" msgstr "" -#: library/doctest.rst:234 +#: library/doctest.rst:227 msgid "" "As with :func:`testmod`, :func:`testfile` won't display anything unless an " "example fails. If an example does fail, then the failing example(s) and the " @@ -331,7 +319,7 @@ msgid "" "func:`testmod`." msgstr "" -#: library/doctest.rst:239 +#: library/doctest.rst:232 msgid "" "By default, :func:`testfile` looks for files in the calling module's " "directory. See section :ref:`doctest-basic-api` for a description of the " @@ -339,40 +327,79 @@ msgid "" "locations." msgstr "" -#: library/doctest.rst:243 +#: library/doctest.rst:236 msgid "" "Like :func:`testmod`, :func:`testfile`'s verbosity can be set with the ``-" "v`` command-line switch or with the optional keyword argument *verbose*." msgstr "" -#: library/doctest.rst:247 +#: library/doctest.rst:240 msgid "" -"There is also a command line shortcut for running :func:`testfile`. You can " -"instruct the Python interpreter to run the doctest module directly from the " -"standard library and pass the file name(s) on the command line::" +"There is also a command line shortcut for running :func:`testfile`, see " +"section :ref:`doctest-cli`." +msgstr "" + +#: library/doctest.rst:243 +msgid "" +"For more information on :func:`testfile`, see section :ref:`doctest-basic-" +"api`." +msgstr "" + +#: library/doctest.rst:249 +msgid "Command-line Usage" msgstr "" #: library/doctest.rst:251 -msgid "python -m doctest -v example.txt" +msgid "" +"The :mod:`doctest` module can be invoked as a script from the command line:" msgstr "" #: library/doctest.rst:253 +msgid "python -m doctest [-v] [-o OPTION] [-f] file [file ...]" +msgstr "" + +#: library/doctest.rst:261 msgid "" -"Because the file name does not end with :file:`.py`, :mod:`doctest` infers " -"that it must be run with :func:`testfile`, not :func:`testmod`." +"Detailed report of all examples tried is printed to standard output, along " +"with assorted summaries at the end::" msgstr "" -#: library/doctest.rst:256 +#: library/doctest.rst:264 +msgid "python -m doctest -v example.py" +msgstr "" + +#: library/doctest.rst:266 msgid "" -"For more information on :func:`testfile`, see section :ref:`doctest-basic-" -"api`." +"This will import :file:`example.py` as a standalone module and run :func:" +"`testmod` on it. Note that this may not work correctly if the file is part " +"of a package and imports other submodules from that package." +msgstr "" + +#: library/doctest.rst:270 +msgid "" +"If the file name does not end with :file:`.py`, :mod:`!doctest` infers that " +"it must be run with :func:`testfile` instead::" +msgstr "" + +#: library/doctest.rst:273 +msgid "python -m doctest -v example.txt" +msgstr "" + +#: library/doctest.rst:277 +msgid "" +"Option flags control various aspects of doctest's behavior, see section :ref:" +"`doctest-options`." +msgstr "" + +#: library/doctest.rst:284 +msgid "This is shorthand for ``-o FAIL_FAST``." msgstr "" -#: library/doctest.rst:262 +#: library/doctest.rst:292 msgid "How It Works" msgstr "" -#: library/doctest.rst:264 +#: library/doctest.rst:294 msgid "" "This section examines in detail how doctest works: which docstrings it looks " "at, how it finds interactive examples, what execution context it uses, how " @@ -382,17 +409,17 @@ msgid "" "see the following sections." msgstr "" -#: library/doctest.rst:275 +#: library/doctest.rst:305 msgid "Which Docstrings Are Examined?" msgstr "" -#: library/doctest.rst:277 +#: library/doctest.rst:307 msgid "" "The module docstring, and all function, class and method docstrings are " "searched. Objects imported into the module are not searched." msgstr "" -#: library/doctest.rst:280 +#: library/doctest.rst:310 msgid "" "In addition, there are cases when you want tests to be part of a module but " "not part of the help text, which requires that the tests not be included in " @@ -405,11 +432,11 @@ msgid "" "__test__.K``." msgstr "" -#: library/doctest.rst:289 +#: library/doctest.rst:319 msgid "For example, place this block of code at the top of :file:`example.py`:" msgstr "" -#: library/doctest.rst:291 +#: library/doctest.rst:321 msgid "" "__test__ = {\n" " 'numbers': \"\"\"\n" @@ -422,7 +449,7 @@ msgid "" "}" msgstr "" -#: library/doctest.rst:303 +#: library/doctest.rst:333 msgid "" "The value of ``example.__test__[\"numbers\"]`` will be treated as a " "docstring and all the tests inside it will be run. It is important to note " @@ -431,24 +458,24 @@ msgid "" "scanned for tests." msgstr "" -#: library/doctest.rst:309 +#: library/doctest.rst:339 msgid "" "Any classes found are recursively searched similarly, to test docstrings in " "their contained methods and nested classes." msgstr "" -#: library/doctest.rst:316 +#: library/doctest.rst:346 msgid "How are Docstring Examples Recognized?" msgstr "" -#: library/doctest.rst:318 +#: library/doctest.rst:348 msgid "" "In most cases a copy-and-paste of an interactive console session works fine, " "but doctest isn't trying to do an exact emulation of any specific Python " "shell." msgstr "" -#: library/doctest.rst:323 +#: library/doctest.rst:353 msgid "" ">>> # comments are ignored\n" ">>> x = 12\n" @@ -467,18 +494,18 @@ msgid "" ">>>" msgstr "" -#: library/doctest.rst:343 +#: library/doctest.rst:373 msgid "" "Any expected output must immediately follow the final ``'>>> '`` or ``'... " "'`` line containing the code, and the expected output (if any) extends to " "the next ``'>>> '`` or all-whitespace line." msgstr "" -#: library/doctest.rst:347 +#: library/doctest.rst:377 msgid "The fine print:" msgstr "" -#: library/doctest.rst:349 +#: library/doctest.rst:379 msgid "" "Expected output cannot contain an all-whitespace line, since such a line is " "taken to signal the end of expected output. If expected output does contain " @@ -486,7 +513,7 @@ msgid "" "line is expected." msgstr "" -#: library/doctest.rst:354 +#: library/doctest.rst:384 msgid "" "All hard tab characters are expanded to spaces, using 8-column tab stops. " "Tabs in output generated by the tested code are not modified. Because any " @@ -501,20 +528,20 @@ msgid "" "`DocTestParser` class." msgstr "" -#: library/doctest.rst:366 +#: library/doctest.rst:396 msgid "" "Output to stdout is captured, but not output to stderr (exception tracebacks " "are captured via a different means)." msgstr "" -#: library/doctest.rst:369 +#: library/doctest.rst:399 msgid "" "If you continue a line via backslashing in an interactive session, or for " "any other reason use a backslash, you should use a raw docstring, which will " "preserve your backslashes exactly as you type them::" msgstr "" -#: library/doctest.rst:373 +#: library/doctest.rst:403 msgid "" ">>> def f(x):\n" "... r'''Backslashes in a raw docstring: m\\n'''\n" @@ -523,7 +550,7 @@ msgid "" "Backslashes in a raw docstring: m\\n" msgstr "" -#: library/doctest.rst:379 +#: library/doctest.rst:409 msgid "" "Otherwise, the backslash will be interpreted as part of the string. For " "example, the ``\\n`` above would be interpreted as a newline character. " @@ -531,7 +558,7 @@ msgid "" "use a raw string)::" msgstr "" -#: library/doctest.rst:383 +#: library/doctest.rst:413 msgid "" ">>> def f(x):\n" "... '''Backslashes in a raw docstring: m\\\\n'''\n" @@ -540,11 +567,11 @@ msgid "" "Backslashes in a raw docstring: m\\n" msgstr "" -#: library/doctest.rst:389 +#: library/doctest.rst:419 msgid "The starting column doesn't matter::" msgstr "" -#: library/doctest.rst:391 +#: library/doctest.rst:421 msgid "" ">>> assert \"Easy!\"\n" " >>> import math\n" @@ -552,17 +579,17 @@ msgid "" " 1" msgstr "" -#: library/doctest.rst:396 +#: library/doctest.rst:426 msgid "" "and as many leading whitespace characters are stripped from the expected " "output as appeared in the initial ``'>>> '`` line that started the example." msgstr "" -#: library/doctest.rst:403 +#: library/doctest.rst:433 msgid "What's the Execution Context?" msgstr "" -#: library/doctest.rst:405 +#: library/doctest.rst:435 msgid "" "By default, each time :mod:`doctest` finds a docstring to test, it uses a " "*shallow copy* of :mod:`!M`'s globals, so that running tests doesn't change " @@ -573,17 +600,17 @@ msgid "" "defined in other docstrings." msgstr "" -#: library/doctest.rst:413 +#: library/doctest.rst:443 msgid "" "You can force use of your own dict as the execution context by passing " "``globs=your_dict`` to :func:`testmod` or :func:`testfile` instead." msgstr "" -#: library/doctest.rst:420 +#: library/doctest.rst:450 msgid "What About Exceptions?" msgstr "" -#: library/doctest.rst:422 +#: library/doctest.rst:452 msgid "" "No problem, provided that the traceback is the only output produced by the " "example: just paste in the traceback. [#]_ Since tracebacks contain details " @@ -592,11 +619,11 @@ msgid "" "it accepts." msgstr "" -#: library/doctest.rst:428 +#: library/doctest.rst:458 msgid "Simple example::" msgstr "" -#: library/doctest.rst:430 +#: library/doctest.rst:460 msgid "" ">>> [1, 2, 3].remove(42)\n" "Traceback (most recent call last):\n" @@ -604,33 +631,33 @@ msgid "" "ValueError: list.remove(x): x not in list" msgstr "" -#: library/doctest.rst:435 +#: library/doctest.rst:465 msgid "" "That doctest succeeds if :exc:`ValueError` is raised, with the ``list." "remove(x): x not in list`` detail as shown." msgstr "" -#: library/doctest.rst:438 +#: library/doctest.rst:468 msgid "" "The expected output for an exception must start with a traceback header, " "which may be either of the following two lines, indented the same as the " "first line of the example::" msgstr "" -#: library/doctest.rst:442 +#: library/doctest.rst:472 msgid "" "Traceback (most recent call last):\n" "Traceback (innermost last):" msgstr "" -#: library/doctest.rst:445 +#: library/doctest.rst:475 msgid "" "The traceback header is followed by an optional traceback stack, whose " "contents are ignored by doctest. The traceback stack is typically omitted, " "or copied verbatim from an interactive session." msgstr "" -#: library/doctest.rst:449 +#: library/doctest.rst:479 msgid "" "The traceback stack is followed by the most interesting part: the line(s) " "containing the exception type and detail. This is usually the last line of " @@ -638,7 +665,7 @@ msgid "" "multi-line detail::" msgstr "" -#: library/doctest.rst:454 +#: library/doctest.rst:484 msgid "" ">>> raise ValueError('multi\\n line\\ndetail')\n" "Traceback (most recent call last):\n" @@ -648,20 +675,20 @@ msgid "" "detail" msgstr "" -#: library/doctest.rst:461 +#: library/doctest.rst:491 msgid "" "The last three lines (starting with :exc:`ValueError`) are compared against " "the exception's type and detail, and the rest are ignored." msgstr "" -#: library/doctest.rst:464 +#: library/doctest.rst:494 msgid "" "Best practice is to omit the traceback stack, unless it adds significant " "documentation value to the example. So the last example is probably better " "as::" msgstr "" -#: library/doctest.rst:467 +#: library/doctest.rst:497 msgid "" ">>> raise ValueError('multi\\n line\\ndetail')\n" "Traceback (most recent call last):\n" @@ -671,7 +698,7 @@ msgid "" "detail" msgstr "" -#: library/doctest.rst:474 +#: library/doctest.rst:504 msgid "" "Note that tracebacks are treated very specially. In particular, in the " "rewritten example, the use of ``...`` is independent of doctest's :const:" @@ -680,11 +707,11 @@ msgid "" "transcript of a Monty Python skit." msgstr "" -#: library/doctest.rst:480 +#: library/doctest.rst:510 msgid "Some details you should read once, but won't need to remember:" msgstr "" -#: library/doctest.rst:482 +#: library/doctest.rst:512 msgid "" "Doctest can't guess whether your expected output came from an exception " "traceback or from ordinary printing. So, e.g., an example that expects " @@ -694,7 +721,7 @@ msgid "" "create real problems." msgstr "" -#: library/doctest.rst:489 +#: library/doctest.rst:519 msgid "" "Each line of the traceback stack (if present) must be indented further than " "the first line of the example, *or* start with a non-alphanumeric character. " @@ -703,14 +730,14 @@ msgid "" "course this does the right thing for genuine tracebacks." msgstr "" -#: library/doctest.rst:495 +#: library/doctest.rst:525 msgid "" "When the :const:`IGNORE_EXCEPTION_DETAIL` doctest option is specified, " "everything following the leftmost colon and any module information in the " "exception name is ignored." msgstr "" -#: library/doctest.rst:499 +#: library/doctest.rst:529 msgid "" "The interactive shell omits the traceback header line for some :exc:" "`SyntaxError`\\ s. But doctest uses the traceback header line to " @@ -719,13 +746,13 @@ msgid "" "need to manually add the traceback header line to your test example." msgstr "" -#: library/doctest.rst:507 +#: library/doctest.rst:537 msgid "" "For some exceptions, Python displays the position of the error using ``^`` " "markers and tildes::" msgstr "" -#: library/doctest.rst:510 +#: library/doctest.rst:540 msgid "" ">>> 1 + None\n" " File \"\", line 1\n" @@ -734,7 +761,7 @@ msgid "" "TypeError: unsupported operand type(s) for +: 'int' and 'NoneType'" msgstr "" -#: library/doctest.rst:516 +#: library/doctest.rst:546 msgid "" "Since the lines showing the position of the error come before the exception " "type and detail, they are not checked by doctest. For example, the " @@ -742,7 +769,7 @@ msgid "" "location::" msgstr "" -#: library/doctest.rst:520 +#: library/doctest.rst:550 msgid "" ">>> 1 + None\n" " File \"\", line 1\n" @@ -751,11 +778,11 @@ msgid "" "TypeError: unsupported operand type(s) for +: 'int' and 'NoneType'" msgstr "" -#: library/doctest.rst:531 +#: library/doctest.rst:561 msgid "Option Flags" msgstr "" -#: library/doctest.rst:533 +#: library/doctest.rst:563 msgid "" "A number of option flags control various aspects of doctest's behavior. " "Symbolic names for the flags are supplied as module constants, which can be :" @@ -765,17 +792,13 @@ msgid "" "option." msgstr "" -#: library/doctest.rst:539 -msgid "The ``-o`` command line option." -msgstr "" - -#: library/doctest.rst:542 +#: library/doctest.rst:569 msgid "" "The first group of options define test semantics, controlling aspects of how " "doctest decides whether actual output matches an example's expected output:" msgstr "" -#: library/doctest.rst:548 +#: library/doctest.rst:575 msgid "" "By default, if an expected output block contains just ``1``, an actual " "output block containing just ``1`` or just ``True`` is considered to be a " @@ -787,7 +810,7 @@ msgid "" "not for several years." msgstr "" -#: library/doctest.rst:560 +#: library/doctest.rst:587 msgid "" "By default, if an expected output block contains a line containing only the " "string ````, then that line will match a blank line in the actual " @@ -796,7 +819,7 @@ msgid "" "`DONT_ACCEPT_BLANKLINE` is specified, this substitution is not allowed." msgstr "" -#: library/doctest.rst:569 +#: library/doctest.rst:596 msgid "" "When specified, all sequences of whitespace (blanks and newlines) are " "treated as equal. Any sequence of whitespace within the expected output " @@ -806,7 +829,7 @@ msgid "" "across multiple lines in your source." msgstr "" -#: library/doctest.rst:580 +#: library/doctest.rst:607 msgid "" "When specified, an ellipsis marker (``...``) in the expected output can " "match any substring in the actual output. This includes substrings that " @@ -815,14 +838,14 @@ msgid "" "matched too much!\" surprises that ``.*`` is prone to in regular expressions." msgstr "" -#: library/doctest.rst:589 +#: library/doctest.rst:616 msgid "" "When specified, doctests expecting exceptions pass so long as an exception " "of the expected type is raised, even if the details (message and fully " "qualified exception name) don't match." msgstr "" -#: library/doctest.rst:593 +#: library/doctest.rst:620 msgid "" "For example, an example expecting ``ValueError: 42`` will pass if the actual " "exception raised is ``ValueError: 3*14``, but will fail if, say, a :exc:" @@ -832,7 +855,7 @@ msgid "" "these variations will work with the flag specified:" msgstr "" -#: library/doctest.rst:601 +#: library/doctest.rst:628 msgid "" ">>> raise Exception('message')\n" "Traceback (most recent call last):\n" @@ -847,20 +870,20 @@ msgid "" "__main__.Exception: message" msgstr "" -#: library/doctest.rst:615 +#: library/doctest.rst:642 msgid "" "Note that :const:`ELLIPSIS` can also be used to ignore the details of the " "exception message, but such a test may still fail based on whether the " "module name is present or matches exactly." msgstr "" -#: library/doctest.rst:619 +#: library/doctest.rst:646 msgid "" ":const:`IGNORE_EXCEPTION_DETAIL` now also ignores any information relating " "to the module containing the exception under test." msgstr "" -#: library/doctest.rst:626 +#: library/doctest.rst:653 msgid "" "When specified, do not run the example at all. This can be useful in " "contexts where doctest examples serve as both documentation and test cases, " @@ -869,32 +892,32 @@ msgid "" "might depend on resources which would be unavailable to the test driver." msgstr "" -#: library/doctest.rst:632 +#: library/doctest.rst:659 msgid "" "The SKIP flag can also be used for temporarily \"commenting out\" examples." msgstr "" -#: library/doctest.rst:637 +#: library/doctest.rst:664 msgid "A bitmask or'ing together all the comparison flags above." msgstr "" -#: library/doctest.rst:639 +#: library/doctest.rst:666 msgid "The second group of options controls how test failures are reported:" msgstr "" -#: library/doctest.rst:644 +#: library/doctest.rst:671 msgid "" "When specified, failures that involve multi-line expected and actual outputs " "are displayed using a unified diff." msgstr "" -#: library/doctest.rst:650 +#: library/doctest.rst:677 msgid "" "When specified, failures that involve multi-line expected and actual outputs " "will be displayed using a context diff." msgstr "" -#: library/doctest.rst:656 +#: library/doctest.rst:683 msgid "" "When specified, differences are computed by ``difflib.Differ``, using the " "same algorithm as the popular :file:`ndiff.py` utility. This is the only " @@ -904,7 +927,7 @@ msgid "" "mismatching column positions." msgstr "" -#: library/doctest.rst:665 +#: library/doctest.rst:692 msgid "" "When specified, display the first failing example in each doctest, but " "suppress output for all remaining examples. This will prevent doctest from " @@ -915,7 +938,7 @@ msgid "" "of failures reported; only the output is suppressed." msgstr "" -#: library/doctest.rst:676 +#: library/doctest.rst:703 msgid "" "When specified, exit after the first failing example and don't attempt to " "run the remaining examples. Thus, the number of failures reported will be at " @@ -923,23 +946,17 @@ msgid "" "first failure won't even produce debugging output." msgstr "" -#: library/doctest.rst:681 -msgid "" -"The doctest command line accepts the option ``-f`` as a shorthand for ``-o " -"FAIL_FAST``." -msgstr "" - -#: library/doctest.rst:689 +#: library/doctest.rst:711 msgid "A bitmask or'ing together all the reporting flags above." msgstr "" -#: library/doctest.rst:692 +#: library/doctest.rst:714 msgid "" "There is also a way to register new option flag names, though this isn't " "useful unless you intend to extend :mod:`doctest` internals via subclassing:" msgstr "" -#: library/doctest.rst:698 +#: library/doctest.rst:720 msgid "" "Create a new option flag with a given name, and return the new flag's " "integer value. :func:`register_optionflag` can be used when subclassing :" @@ -948,46 +965,46 @@ msgid "" "be called using the following idiom::" msgstr "" -#: library/doctest.rst:704 +#: library/doctest.rst:726 msgid "MY_FLAG = register_optionflag('MY_FLAG')" msgstr "" -#: library/doctest.rst:714 +#: library/doctest.rst:736 msgid "Directives" msgstr "" -#: library/doctest.rst:716 +#: library/doctest.rst:738 msgid "" "Doctest directives may be used to modify the :ref:`option flags ` for an individual example. Doctest directives are special Python " "comments following an example's source code:" msgstr "" -#: library/doctest.rst:727 +#: library/doctest.rst:749 msgid "" "Whitespace is not allowed between the ``+`` or ``-`` and the directive " "option name. The directive option name can be any of the option flag names " "explained above." msgstr "" -#: library/doctest.rst:731 +#: library/doctest.rst:753 msgid "" "An example's doctest directives modify doctest's behavior for that single " "example. Use ``+`` to enable the named behavior, or ``-`` to disable it." msgstr "" -#: library/doctest.rst:734 +#: library/doctest.rst:756 msgid "For example, this test passes:" msgstr "" -#: library/doctest.rst:736 +#: library/doctest.rst:758 msgid "" ">>> print(list(range(20))) # doctest: +NORMALIZE_WHITESPACE\n" "[0, 1, 2, 3, 4, 5, 6, 7, 8, 9,\n" "10, 11, 12, 13, 14, 15, 16, 17, 18, 19]" msgstr "" -#: library/doctest.rst:743 +#: library/doctest.rst:765 msgid "" "Without the directive it would fail, both because the actual output doesn't " "have two blanks before the single-digit list elements, and because the " @@ -995,52 +1012,52 @@ msgid "" "a directive to do so:" msgstr "" -#: library/doctest.rst:748 +#: library/doctest.rst:770 msgid "" ">>> print(list(range(20))) # doctest: +ELLIPSIS\n" "[0, 1, ..., 18, 19]" msgstr "" -#: library/doctest.rst:754 +#: library/doctest.rst:776 msgid "" "Multiple directives can be used on a single physical line, separated by " "commas:" msgstr "" -#: library/doctest.rst:757 +#: library/doctest.rst:779 msgid "" ">>> print(list(range(20))) # doctest: +ELLIPSIS, +NORMALIZE_WHITESPACE\n" "[0, 1, ..., 18, 19]" msgstr "" -#: library/doctest.rst:763 +#: library/doctest.rst:785 msgid "" "If multiple directive comments are used for a single example, then they are " "combined:" msgstr "" -#: library/doctest.rst:766 +#: library/doctest.rst:788 msgid "" ">>> print(list(range(20))) # doctest: +ELLIPSIS\n" "... # doctest: +NORMALIZE_WHITESPACE\n" "[0, 1, ..., 18, 19]" msgstr "" -#: library/doctest.rst:773 +#: library/doctest.rst:795 msgid "" "As the previous example shows, you can add ``...`` lines to your example " "containing only directives. This can be useful when an example is too long " "for a directive to comfortably fit on the same line:" msgstr "" -#: library/doctest.rst:777 +#: library/doctest.rst:799 msgid "" ">>> print(list(range(5)) + list(range(10, 20)) + list(range(30, 40)))\n" "... # doctest: +ELLIPSIS\n" "[0, ..., 4, 10, ..., 19, 30, ..., 39]" msgstr "" -#: library/doctest.rst:784 +#: library/doctest.rst:806 msgid "" "Note that since all options are disabled by default, and directives apply " "only to the example they appear in, enabling options (via ``+`` in a " @@ -1050,11 +1067,11 @@ msgid "" "be useful." msgstr "" -#: library/doctest.rst:794 +#: library/doctest.rst:816 msgid "Warnings" msgstr "" -#: library/doctest.rst:796 +#: library/doctest.rst:818 msgid "" ":mod:`doctest` is serious about requiring exact matches in expected output. " "If even a single character doesn't match, the test fails. This will " @@ -1064,69 +1081,69 @@ msgid "" "test like ::" msgstr "" -#: library/doctest.rst:802 +#: library/doctest.rst:824 msgid "" ">>> foo()\n" "{\"spam\", \"eggs\"}" msgstr "" -#: library/doctest.rst:805 +#: library/doctest.rst:827 msgid "is vulnerable! One workaround is to do ::" msgstr "" -#: library/doctest.rst:807 +#: library/doctest.rst:829 msgid "" ">>> foo() == {\"spam\", \"eggs\"}\n" "True" msgstr "" -#: library/doctest.rst:810 +#: library/doctest.rst:832 msgid "instead. Another is to do ::" msgstr "" -#: library/doctest.rst:812 +#: library/doctest.rst:834 msgid "" ">>> d = sorted(foo())\n" ">>> d\n" "['eggs', 'spam']" msgstr "" -#: library/doctest.rst:816 +#: library/doctest.rst:838 msgid "There are others, but you get the idea." msgstr "" -#: library/doctest.rst:818 +#: library/doctest.rst:840 msgid "Another bad idea is to print things that embed an object address, like" msgstr "" -#: library/doctest.rst:820 +#: library/doctest.rst:842 msgid "" -">>> id(1.0) # certain to fail some of the time \n" +">>> id(1.0) # certain to fail some of the time\n" "7948648\n" ">>> class C: pass\n" -">>> C() # the default repr() for instances embeds an address \n" +">>> C() # the default repr() for instances embeds an address\n" "" msgstr "" -#: library/doctest.rst:828 +#: library/doctest.rst:850 msgid "" "The :const:`ELLIPSIS` directive gives a nice approach for the last example:" msgstr "" -#: library/doctest.rst:830 +#: library/doctest.rst:852 msgid "" ">>> C() # doctest: +ELLIPSIS\n" "" msgstr "" -#: library/doctest.rst:836 +#: library/doctest.rst:858 msgid "" "Floating-point numbers are also subject to small output variations across " "platforms, because Python defers to the platform C library for float " "formatting, and C libraries vary widely in quality here. ::" msgstr "" -#: library/doctest.rst:840 +#: library/doctest.rst:862 msgid "" ">>> 1./7 # risky\n" "0.14285714285714285\n" @@ -1136,29 +1153,29 @@ msgid "" "0.142857" msgstr "" -#: library/doctest.rst:847 +#: library/doctest.rst:869 msgid "" "Numbers of the form ``I/2.**J`` are safe across all platforms, and I often " "contrive doctest examples to produce numbers of that form::" msgstr "" -#: library/doctest.rst:850 +#: library/doctest.rst:872 msgid "" ">>> 3./4 # utterly safe\n" "0.75" msgstr "" -#: library/doctest.rst:853 +#: library/doctest.rst:875 msgid "" "Simple fractions are also easier for people to understand, and that makes " "for better documentation." msgstr "" -#: library/doctest.rst:860 +#: library/doctest.rst:882 msgid "Basic API" msgstr "" -#: library/doctest.rst:862 +#: library/doctest.rst:884 msgid "" "The functions :func:`testmod` and :func:`testfile` provide a simple " "interface to doctest that should be sufficient for most basic uses. For a " @@ -1166,25 +1183,25 @@ msgid "" "simple-testmod` and :ref:`doctest-simple-testfile`." msgstr "" -#: library/doctest.rst:870 +#: library/doctest.rst:892 msgid "" "All arguments except *filename* are optional, and should be specified in " "keyword form." msgstr "" -#: library/doctest.rst:873 +#: library/doctest.rst:895 msgid "" "Test examples in the file named *filename*. Return ``(failure_count, " "test_count)``." msgstr "" -#: library/doctest.rst:876 +#: library/doctest.rst:898 msgid "" "Optional argument *module_relative* specifies how the filename should be " "interpreted:" msgstr "" -#: library/doctest.rst:879 +#: library/doctest.rst:901 msgid "" "If *module_relative* is ``True`` (the default), then *filename* specifies an " "OS-independent module-relative path. By default, this path is relative to " @@ -1194,20 +1211,20 @@ msgid "" "absolute path (i.e., it may not begin with ``/``)." msgstr "" -#: library/doctest.rst:886 +#: library/doctest.rst:908 msgid "" "If *module_relative* is ``False``, then *filename* specifies an OS-specific " "path. The path may be absolute or relative; relative paths are resolved " "with respect to the current working directory." msgstr "" -#: library/doctest.rst:890 +#: library/doctest.rst:912 msgid "" "Optional argument *name* gives the name of the test; by default, or if " "``None``, ``os.path.basename(filename)`` is used." msgstr "" -#: library/doctest.rst:893 +#: library/doctest.rst:915 msgid "" "Optional argument *package* is a Python package or the name of a Python " "package whose directory should be used as the base directory for a module-" @@ -1216,7 +1233,7 @@ msgid "" "is an error to specify *package* if *module_relative* is ``False``." msgstr "" -#: library/doctest.rst:899 +#: library/doctest.rst:921 msgid "" "Optional argument *globs* gives a dict to be used as the globals when " "executing examples. A new shallow copy of this dict is created for the " @@ -1224,7 +1241,7 @@ msgid "" "``None``, a new empty dict is used." msgstr "" -#: library/doctest.rst:904 +#: library/doctest.rst:926 msgid "" "Optional argument *extraglobs* gives a dict merged into the globals used to " "execute examples. This works like :meth:`dict.update`: if *globs* and " @@ -1237,27 +1254,27 @@ msgid "" "tested." msgstr "" -#: library/doctest.rst:913 +#: library/doctest.rst:935 msgid "" "Optional argument *verbose* prints lots of stuff if true, and prints only " "failures if false; by default, or if ``None``, it's true if and only if ``'-" "v'`` is in ``sys.argv``." msgstr "" -#: library/doctest.rst:917 +#: library/doctest.rst:939 msgid "" "Optional argument *report* prints a summary at the end when true, else " "prints nothing at the end. In verbose mode, the summary is detailed, else " "the summary is very brief (in fact, empty if all tests passed)." msgstr "" -#: library/doctest.rst:921 +#: library/doctest.rst:943 msgid "" "Optional argument *optionflags* (default value 0) takes the :ref:`bitwise OR " "` of option flags. See section :ref:`doctest-options`." msgstr "" -#: library/doctest.rst:925 +#: library/doctest.rst:947 msgid "" "Optional argument *raise_on_error* defaults to false. If true, an exception " "is raised upon the first failure or unexpected exception in an example. " @@ -1265,33 +1282,33 @@ msgid "" "continue running examples." msgstr "" -#: library/doctest.rst:1071 +#: library/doctest.rst:1093 msgid "" "Optional argument *parser* specifies a :class:`DocTestParser` (or subclass) " "that should be used to extract tests from the files. It defaults to a " "normal parser (i.e., ``DocTestParser()``)." msgstr "" -#: library/doctest.rst:1075 +#: library/doctest.rst:1097 msgid "" "Optional argument *encoding* specifies an encoding that should be used to " "convert the file to unicode." msgstr "" -#: library/doctest.rst:940 +#: library/doctest.rst:962 msgid "" "All arguments are optional, and all except for *m* should be specified in " "keyword form." msgstr "" -#: library/doctest.rst:943 +#: library/doctest.rst:965 msgid "" "Test examples in docstrings in functions and classes reachable from module " "*m* (or module :mod:`__main__` if *m* is not supplied or is ``None``), " "starting with ``m.__doc__``." msgstr "" -#: library/doctest.rst:947 +#: library/doctest.rst:969 msgid "" "Also test examples reachable from dict ``m.__test__``, if it exists. ``m." "__test__`` maps names (strings) to functions, classes and strings; function " @@ -1299,22 +1316,22 @@ msgid "" "directly, as if they were docstrings." msgstr "" -#: library/doctest.rst:952 +#: library/doctest.rst:974 msgid "" "Only docstrings attached to objects belonging to module *m* are searched." msgstr "" -#: library/doctest.rst:954 +#: library/doctest.rst:976 msgid "Return ``(failure_count, test_count)``." msgstr "" -#: library/doctest.rst:956 +#: library/doctest.rst:978 msgid "" "Optional argument *name* gives the name of the module; by default, or if " "``None``, ``m.__name__`` is used." msgstr "" -#: library/doctest.rst:959 +#: library/doctest.rst:981 msgid "" "Optional argument *exclude_empty* defaults to false. If true, objects for " "which no doctests are found are excluded from consideration. The default is " @@ -1325,39 +1342,39 @@ msgid "" "defaults to true." msgstr "" -#: library/doctest.rst:967 +#: library/doctest.rst:989 msgid "" "Optional arguments *extraglobs*, *verbose*, *report*, *optionflags*, " "*raise_on_error*, and *globs* are the same as for function :func:`testfile` " "above, except that *globs* defaults to ``m.__dict__``." msgstr "" -#: library/doctest.rst:974 +#: library/doctest.rst:996 msgid "" "Test examples associated with object *f*; for example, *f* may be a string, " "a module, a function, or a class object." msgstr "" -#: library/doctest.rst:977 +#: library/doctest.rst:999 msgid "" "A shallow copy of dictionary argument *globs* is used for the execution " "context." msgstr "" -#: library/doctest.rst:979 +#: library/doctest.rst:1001 msgid "" "Optional argument *name* is used in failure messages, and defaults to " "``\"NoName\"``." msgstr "" -#: library/doctest.rst:982 +#: library/doctest.rst:1004 msgid "" "If optional argument *verbose* is true, output is generated even if there " "are no failures. By default, output is generated only in case of an example " "failure." msgstr "" -#: library/doctest.rst:985 +#: library/doctest.rst:1007 msgid "" "Optional argument *compileflags* gives the set of flags that should be used " "by the Python compiler when running the examples. By default, or if " @@ -1365,16 +1382,16 @@ msgid "" "found in *globs*." msgstr "" -#: library/doctest.rst:989 +#: library/doctest.rst:1011 msgid "" "Optional argument *optionflags* works as for function :func:`testfile` above." msgstr "" -#: library/doctest.rst:995 +#: library/doctest.rst:1017 msgid "Unittest API" msgstr "" -#: library/doctest.rst:997 +#: library/doctest.rst:1019 msgid "" "As your collection of doctest'ed modules grows, you'll want a way to run all " "their doctests systematically. :mod:`doctest` provides two functions that " @@ -1384,7 +1401,7 @@ msgid "" "your test module::" msgstr "" -#: library/doctest.rst:1003 +#: library/doctest.rst:1025 msgid "" "import unittest\n" "import doctest\n" @@ -1395,19 +1412,19 @@ msgid "" " return tests" msgstr "" -#: library/doctest.rst:1011 +#: library/doctest.rst:1033 msgid "" "There are two main functions for creating :class:`unittest.TestSuite` " "instances from text files and modules with doctests:" msgstr "" -#: library/doctest.rst:1017 +#: library/doctest.rst:1039 msgid "" "Convert doctest tests from one or more text files to a :class:`unittest." "TestSuite`." msgstr "" -#: library/doctest.rst:1020 +#: library/doctest.rst:1042 msgid "" "The returned :class:`unittest.TestSuite` is to be run by the unittest " "framework and runs the interactive examples in each file. If an example in " @@ -1416,21 +1433,21 @@ msgid "" "containing the test and a (sometimes approximate) line number." msgstr "" -#: library/doctest.rst:1026 +#: library/doctest.rst:1048 msgid "Pass one or more paths (as strings) to text files to be examined." msgstr "" -#: library/doctest.rst:1028 +#: library/doctest.rst:1050 msgid "Options may be provided as keyword arguments:" msgstr "" -#: library/doctest.rst:1030 +#: library/doctest.rst:1052 msgid "" "Optional argument *module_relative* specifies how the filenames in *paths* " "should be interpreted:" msgstr "" -#: library/doctest.rst:1033 +#: library/doctest.rst:1055 msgid "" "If *module_relative* is ``True`` (the default), then each filename in " "*paths* specifies an OS-independent module-relative path. By default, this " @@ -1441,14 +1458,14 @@ msgid "" "``)." msgstr "" -#: library/doctest.rst:1041 +#: library/doctest.rst:1063 msgid "" "If *module_relative* is ``False``, then each filename in *paths* specifies " "an OS-specific path. The path may be absolute or relative; relative paths " "are resolved with respect to the current working directory." msgstr "" -#: library/doctest.rst:1045 +#: library/doctest.rst:1067 msgid "" "Optional argument *package* is a Python package or the name of a Python " "package whose directory should be used as the base directory for module-" @@ -1458,7 +1475,7 @@ msgid "" "``False``." msgstr "" -#: library/doctest.rst:1052 +#: library/doctest.rst:1074 msgid "" "Optional argument *setUp* specifies a set-up function for the test suite. " "This is called before running the tests in each file. The *setUp* function " @@ -1466,7 +1483,7 @@ msgid "" "test globals as the *globs* attribute of the test passed." msgstr "" -#: library/doctest.rst:1057 +#: library/doctest.rst:1079 msgid "" "Optional argument *tearDown* specifies a tear-down function for the test " "suite. This is called after running the tests in each file. The *tearDown* " @@ -1474,14 +1491,14 @@ msgid "" "access the test globals as the *globs* attribute of the test passed." msgstr "" -#: library/doctest.rst:1096 +#: library/doctest.rst:1118 msgid "" "Optional argument *globs* is a dictionary containing the initial global " "variables for the tests. A new copy of this dictionary is created for each " "test. By default, *globs* is a new empty dictionary." msgstr "" -#: library/doctest.rst:1066 +#: library/doctest.rst:1088 msgid "" "Optional argument *optionflags* specifies the default doctest options for " "the tests, created by or-ing together individual option flags. See section :" @@ -1489,17 +1506,17 @@ msgid "" "for a better way to set reporting options." msgstr "" -#: library/doctest.rst:1078 +#: library/doctest.rst:1100 msgid "" "The global ``__file__`` is added to the globals provided to doctests loaded " "from a text file using :func:`DocFileSuite`." msgstr "" -#: library/doctest.rst:1084 +#: library/doctest.rst:1106 msgid "Convert doctest tests for a module to a :class:`unittest.TestSuite`." msgstr "" -#: library/doctest.rst:1086 +#: library/doctest.rst:1108 msgid "" "The returned :class:`unittest.TestSuite` is to be run by the unittest " "framework and runs each doctest in the module. If any of the doctests fail, " @@ -1508,42 +1525,42 @@ msgid "" "(sometimes approximate) line number." msgstr "" -#: library/doctest.rst:1092 +#: library/doctest.rst:1114 msgid "" "Optional argument *module* provides the module to be tested. It can be a " "module object or a (possibly dotted) module name. If not specified, the " "module calling this function is used." msgstr "" -#: library/doctest.rst:1100 +#: library/doctest.rst:1122 msgid "" "Optional argument *extraglobs* specifies an extra set of global variables, " "which is merged into *globs*. By default, no extra globals are used." msgstr "" -#: library/doctest.rst:1103 +#: library/doctest.rst:1125 msgid "" "Optional argument *test_finder* is the :class:`DocTestFinder` object (or a " "drop-in replacement) that is used to extract doctests from the module." msgstr "" -#: library/doctest.rst:1106 +#: library/doctest.rst:1128 msgid "" "Optional arguments *setUp*, *tearDown*, and *optionflags* are the same as " "for function :func:`DocFileSuite` above." msgstr "" -#: library/doctest.rst:1109 +#: library/doctest.rst:1131 msgid "This function uses the same search technique as :func:`testmod`." msgstr "" -#: library/doctest.rst:1111 +#: library/doctest.rst:1133 msgid "" ":func:`DocTestSuite` returns an empty :class:`unittest.TestSuite` if " "*module* contains no docstrings instead of raising :exc:`ValueError`." msgstr "" -#: library/doctest.rst:1117 +#: library/doctest.rst:1139 msgid "" "When doctests which have been converted to unit tests by :func:" "`DocFileSuite` or :func:`DocTestSuite` fail, this exception is raised " @@ -1551,7 +1568,7 @@ msgid "" "approximate) line number." msgstr "" -#: library/doctest.rst:1121 +#: library/doctest.rst:1143 msgid "" "Under the covers, :func:`DocTestSuite` creates a :class:`unittest.TestSuite` " "out of :class:`!doctest.DocTestCase` instances, and :class:`!DocTestCase` is " @@ -1560,14 +1577,14 @@ msgid "" "questions about the exact details of :mod:`unittest` integration." msgstr "" -#: library/doctest.rst:1127 +#: library/doctest.rst:1149 msgid "" "Similarly, :func:`DocFileSuite` creates a :class:`unittest.TestSuite` out " "of :class:`!doctest.DocFileCase` instances, and :class:`!DocFileCase` is a " "subclass of :class:`!DocTestCase`." msgstr "" -#: library/doctest.rst:1131 +#: library/doctest.rst:1153 msgid "" "So both ways of creating a :class:`unittest.TestSuite` run instances of :" "class:`!DocTestCase`. This is important for a subtle reason: when you run :" @@ -1580,23 +1597,23 @@ msgid "" "through :mod:`unittest` to :mod:`doctest` test runners." msgstr "" -#: library/doctest.rst:1141 +#: library/doctest.rst:1163 msgid "" "For this reason, :mod:`doctest` also supports a notion of :mod:`doctest` " "reporting flags specific to :mod:`unittest` support, via this function:" msgstr "" -#: library/doctest.rst:1147 +#: library/doctest.rst:1169 msgid "Set the :mod:`doctest` reporting flags to use." msgstr "" -#: library/doctest.rst:1149 +#: library/doctest.rst:1171 msgid "" "Argument *flags* takes the :ref:`bitwise OR ` of option flags. See " "section :ref:`doctest-options`. Only \"reporting flags\" can be used." msgstr "" -#: library/doctest.rst:1152 +#: library/doctest.rst:1174 msgid "" "This is a module-global setting, and affects all future doctests run by " "module :mod:`unittest`: the :meth:`!runTest` method of :class:`!" @@ -1610,17 +1627,17 @@ msgid "" "`!doctest`'s :mod:`unittest` reporting flags are ignored." msgstr "" -#: library/doctest.rst:1163 +#: library/doctest.rst:1185 msgid "" "The value of the :mod:`unittest` reporting flags in effect before the " "function was called is returned by the function." msgstr "" -#: library/doctest.rst:1170 +#: library/doctest.rst:1192 msgid "Advanced API" msgstr "" -#: library/doctest.rst:1172 +#: library/doctest.rst:1194 msgid "" "The basic API is a simple wrapper that's intended to make doctest easy to " "use. It is fairly flexible, and should meet most users' needs; however, if " @@ -1628,62 +1645,62 @@ msgid "" "doctest's capabilities, then you should use the advanced API." msgstr "" -#: library/doctest.rst:1177 +#: library/doctest.rst:1199 msgid "" "The advanced API revolves around two container classes, which are used to " "store the interactive examples extracted from doctest cases:" msgstr "" -#: library/doctest.rst:1180 +#: library/doctest.rst:1202 msgid "" ":class:`Example`: A single Python :term:`statement`, paired with its " "expected output." msgstr "" -#: library/doctest.rst:1183 +#: library/doctest.rst:1205 msgid "" ":class:`DocTest`: A collection of :class:`Example`\\ s, typically extracted " "from a single docstring or text file." msgstr "" -#: library/doctest.rst:1186 +#: library/doctest.rst:1208 msgid "" "Additional processing classes are defined to find, parse, and run, and check " "doctest examples:" msgstr "" -#: library/doctest.rst:1189 +#: library/doctest.rst:1211 msgid "" ":class:`DocTestFinder`: Finds all docstrings in a given module, and uses a :" "class:`DocTestParser` to create a :class:`DocTest` from every docstring that " "contains interactive examples." msgstr "" -#: library/doctest.rst:1193 +#: library/doctest.rst:1215 msgid "" ":class:`DocTestParser`: Creates a :class:`DocTest` object from a string " "(such as an object's docstring)." msgstr "" -#: library/doctest.rst:1196 +#: library/doctest.rst:1218 msgid "" ":class:`DocTestRunner`: Executes the examples in a :class:`DocTest`, and " "uses an :class:`OutputChecker` to verify their output." msgstr "" -#: library/doctest.rst:1199 +#: library/doctest.rst:1221 msgid "" ":class:`OutputChecker`: Compares the actual output from a doctest example " "with the expected output, and decides whether they match." msgstr "" -#: library/doctest.rst:1202 +#: library/doctest.rst:1224 msgid "" "The relationships among these processing classes are summarized in the " "following diagram::" msgstr "" -#: library/doctest.rst:1205 +#: library/doctest.rst:1227 msgid "" " list of:\n" "+------+ +---------+\n" @@ -1695,30 +1712,30 @@ msgid "" " +---------+" msgstr "" -#: library/doctest.rst:1218 +#: library/doctest.rst:1240 msgid "DocTest Objects" msgstr "" -#: library/doctest.rst:1223 +#: library/doctest.rst:1245 msgid "" "A collection of doctest examples that should be run in a single namespace. " "The constructor arguments are used to initialize the attributes of the same " "names." msgstr "" -#: library/doctest.rst:1227 +#: library/doctest.rst:1249 msgid "" ":class:`DocTest` defines the following attributes. They are initialized by " "the constructor, and should not be modified directly." msgstr "" -#: library/doctest.rst:1233 +#: library/doctest.rst:1255 msgid "" "A list of :class:`Example` objects encoding the individual interactive " "Python examples that should be run by this test." msgstr "" -#: library/doctest.rst:1239 +#: library/doctest.rst:1261 msgid "" "The namespace (aka globals) that the examples should be run in. This is a " "dictionary mapping names to values. Any changes to the namespace made by " @@ -1726,57 +1743,57 @@ msgid "" "`globs` after the test is run." msgstr "" -#: library/doctest.rst:1247 +#: library/doctest.rst:1269 msgid "" "A string name identifying the :class:`DocTest`. Typically, this is the name " "of the object or file that the test was extracted from." msgstr "" -#: library/doctest.rst:1253 +#: library/doctest.rst:1275 msgid "" "The name of the file that this :class:`DocTest` was extracted from; or " "``None`` if the filename is unknown, or if the :class:`DocTest` was not " "extracted from a file." msgstr "" -#: library/doctest.rst:1260 +#: library/doctest.rst:1282 msgid "" "The line number within :attr:`filename` where this :class:`DocTest` begins, " "or ``None`` if the line number is unavailable. This line number is zero-" "based with respect to the beginning of the file." msgstr "" -#: library/doctest.rst:1267 +#: library/doctest.rst:1289 msgid "" "The string that the test was extracted from, or ``None`` if the string is " "unavailable, or if the test was not extracted from a string." msgstr "" -#: library/doctest.rst:1274 +#: library/doctest.rst:1296 msgid "Example Objects" msgstr "" -#: library/doctest.rst:1279 +#: library/doctest.rst:1301 msgid "" "A single interactive example, consisting of a Python statement and its " "expected output. The constructor arguments are used to initialize the " "attributes of the same names." msgstr "" -#: library/doctest.rst:1284 +#: library/doctest.rst:1306 msgid "" ":class:`Example` defines the following attributes. They are initialized by " "the constructor, and should not be modified directly." msgstr "" -#: library/doctest.rst:1290 +#: library/doctest.rst:1312 msgid "" "A string containing the example's source code. This source code consists of " "a single Python statement, and always ends with a newline; the constructor " "adds a newline when necessary." msgstr "" -#: library/doctest.rst:1297 +#: library/doctest.rst:1319 msgid "" "The expected output from running the example's source code (either from " "stdout, or a traceback in case of exception). :attr:`want` ends with a " @@ -1784,7 +1801,7 @@ msgid "" "The constructor adds a newline when necessary." msgstr "" -#: library/doctest.rst:1305 +#: library/doctest.rst:1327 msgid "" "The exception message generated by the example, if the example is expected " "to generate an exception; or ``None`` if it is not expected to generate an " @@ -1793,20 +1810,20 @@ msgid "" "unless it's ``None``. The constructor adds a newline if needed." msgstr "" -#: library/doctest.rst:1314 +#: library/doctest.rst:1336 msgid "" "The line number within the string containing this example where the example " "begins. This line number is zero-based with respect to the beginning of the " "containing string." msgstr "" -#: library/doctest.rst:1321 +#: library/doctest.rst:1343 msgid "" "The example's indentation in the containing string, i.e., the number of " "space characters that precede the example's first prompt." msgstr "" -#: library/doctest.rst:1327 +#: library/doctest.rst:1349 msgid "" "A dictionary mapping from option flags to ``True`` or ``False``, which is " "used to override default options for this example. Any option flags not " @@ -1815,11 +1832,11 @@ msgid "" "default, no options are set." msgstr "" -#: library/doctest.rst:1337 +#: library/doctest.rst:1359 msgid "DocTestFinder objects" msgstr "" -#: library/doctest.rst:1342 +#: library/doctest.rst:1364 msgid "" "A processing class used to extract the :class:`DocTest`\\ s that are " "relevant to a given object, from its docstring and the docstrings of its " @@ -1827,48 +1844,48 @@ msgid "" "classes, functions, methods, staticmethods, classmethods, and properties." msgstr "" -#: library/doctest.rst:1347 +#: library/doctest.rst:1369 msgid "" "The optional argument *verbose* can be used to display the objects searched " "by the finder. It defaults to ``False`` (no output)." msgstr "" -#: library/doctest.rst:1350 +#: library/doctest.rst:1372 msgid "" "The optional argument *parser* specifies the :class:`DocTestParser` object " "(or a drop-in replacement) that is used to extract doctests from docstrings." msgstr "" -#: library/doctest.rst:1353 +#: library/doctest.rst:1375 msgid "" "If the optional argument *recurse* is false, then :meth:`DocTestFinder.find` " "will only examine the given object, and not any contained objects." msgstr "" -#: library/doctest.rst:1356 +#: library/doctest.rst:1378 msgid "" "If the optional argument *exclude_empty* is false, then :meth:`DocTestFinder." "find` will include tests for objects with empty docstrings." msgstr "" -#: library/doctest.rst:1360 +#: library/doctest.rst:1382 msgid ":class:`DocTestFinder` defines the following method:" msgstr "" -#: library/doctest.rst:1365 +#: library/doctest.rst:1387 msgid "" "Return a list of the :class:`DocTest`\\ s that are defined by *obj*'s " "docstring, or by any of its contained objects' docstrings." msgstr "" -#: library/doctest.rst:1368 +#: library/doctest.rst:1390 msgid "" "The optional argument *name* specifies the object's name; this name will be " "used to construct names for the returned :class:`DocTest`\\ s. If *name* is " "not specified, then ``obj.__name__`` is used." msgstr "" -#: library/doctest.rst:1372 +#: library/doctest.rst:1394 msgid "" "The optional parameter *module* is the module that contains the given " "object. If the module is not specified or is ``None``, then the test finder " @@ -1876,26 +1893,26 @@ msgid "" "module is used:" msgstr "" -#: library/doctest.rst:1376 +#: library/doctest.rst:1398 msgid "As a default namespace, if *globs* is not specified." msgstr "" -#: library/doctest.rst:1378 +#: library/doctest.rst:1400 msgid "" "To prevent the DocTestFinder from extracting DocTests from objects that are " "imported from other modules. (Contained objects with modules other than " "*module* are ignored.)" msgstr "" -#: library/doctest.rst:1382 +#: library/doctest.rst:1404 msgid "To find the name of the file containing the object." msgstr "" -#: library/doctest.rst:1384 +#: library/doctest.rst:1406 msgid "To help find the line number of the object within its file." msgstr "" -#: library/doctest.rst:1386 +#: library/doctest.rst:1408 msgid "" "If *module* is ``False``, no attempt to find the module will be made. This " "is obscure, of use mostly in testing doctest itself: if *module* is " @@ -1904,7 +1921,7 @@ msgid "" "contained objects will (recursively) be searched for doctests." msgstr "" -#: library/doctest.rst:1392 +#: library/doctest.rst:1414 msgid "" "The globals for each :class:`DocTest` is formed by combining *globs* and " "*extraglobs* (bindings in *extraglobs* override bindings in *globs*). A new " @@ -1914,34 +1931,34 @@ msgid "" "defaults to ``{}``." msgstr "" -#: library/doctest.rst:1403 +#: library/doctest.rst:1425 msgid "DocTestParser objects" msgstr "" -#: library/doctest.rst:1408 +#: library/doctest.rst:1430 msgid "" "A processing class used to extract interactive examples from a string, and " "use them to create a :class:`DocTest` object." msgstr "" -#: library/doctest.rst:1412 +#: library/doctest.rst:1434 msgid ":class:`DocTestParser` defines the following methods:" msgstr "" -#: library/doctest.rst:1417 +#: library/doctest.rst:1439 msgid "" "Extract all doctest examples from the given string, and collect them into a :" "class:`DocTest` object." msgstr "" -#: library/doctest.rst:1420 +#: library/doctest.rst:1442 msgid "" "*globs*, *name*, *filename*, and *lineno* are attributes for the new :class:" "`DocTest` object. See the documentation for :class:`DocTest` for more " "information." msgstr "" -#: library/doctest.rst:1427 +#: library/doctest.rst:1449 msgid "" "Extract all doctest examples from the given string, and return them as a " "list of :class:`Example` objects. Line numbers are 0-based. The optional " @@ -1949,7 +1966,7 @@ msgid "" "error messages." msgstr "" -#: library/doctest.rst:1434 +#: library/doctest.rst:1456 msgid "" "Divide the given string into examples and intervening text, and return them " "as a list of alternating :class:`Example`\\ s and strings. Line numbers for " @@ -1957,17 +1974,17 @@ msgid "" "name identifying this string, and is only used for error messages." msgstr "" -#: library/doctest.rst:1443 +#: library/doctest.rst:1465 msgid "DocTestRunner objects" msgstr "" -#: library/doctest.rst:1448 +#: library/doctest.rst:1470 msgid "" "A processing class used to execute and verify the interactive examples in a :" "class:`DocTest`." msgstr "" -#: library/doctest.rst:1451 +#: library/doctest.rst:1473 msgid "" "The comparison between expected outputs and actual outputs is done by an :" "class:`OutputChecker`. This comparison may be customized with a number of " @@ -1977,7 +1994,7 @@ msgid "" "constructor." msgstr "" -#: library/doctest.rst:1457 +#: library/doctest.rst:1479 msgid "" "The test runner's display output can be controlled in two ways. First, an " "output function can be passed to :meth:`run`; this function will be called " @@ -1988,14 +2005,14 @@ msgid "" "`report_unexpected_exception`, and :meth:`report_failure`." msgstr "" -#: library/doctest.rst:1465 +#: library/doctest.rst:1487 msgid "" "The optional keyword argument *checker* specifies the :class:`OutputChecker` " "object (or drop-in replacement) that should be used to compare the expected " "outputs to the actual outputs of doctest examples." msgstr "" -#: library/doctest.rst:1469 +#: library/doctest.rst:1491 msgid "" "The optional keyword argument *verbose* controls the :class:" "`DocTestRunner`'s verbosity. If *verbose* is ``True``, then information is " @@ -2004,60 +2021,60 @@ msgid "" "verbose output is used iff the command-line switch ``-v`` is used." msgstr "" -#: library/doctest.rst:1475 +#: library/doctest.rst:1497 msgid "" "The optional keyword argument *optionflags* can be used to control how the " "test runner compares expected output to actual output, and how it displays " "failures. For more information, see section :ref:`doctest-options`." msgstr "" -#: library/doctest.rst:1480 +#: library/doctest.rst:1502 msgid ":class:`DocTestRunner` defines the following methods:" msgstr "" -#: library/doctest.rst:1485 +#: library/doctest.rst:1507 msgid "" "Report that the test runner is about to process the given example. This " "method is provided to allow subclasses of :class:`DocTestRunner` to " "customize their output; it should not be called directly." msgstr "" -#: library/doctest.rst:1489 +#: library/doctest.rst:1511 msgid "" "*example* is the example about to be processed. *test* is the test " "*containing example*. *out* is the output function that was passed to :meth:" "`DocTestRunner.run`." msgstr "" -#: library/doctest.rst:1496 +#: library/doctest.rst:1518 msgid "" "Report that the given example ran successfully. This method is provided to " "allow subclasses of :class:`DocTestRunner` to customize their output; it " "should not be called directly." msgstr "" -#: library/doctest.rst:1511 +#: library/doctest.rst:1533 msgid "" "*example* is the example about to be processed. *got* is the actual output " "from the example. *test* is the test containing *example*. *out* is the " "output function that was passed to :meth:`DocTestRunner.run`." msgstr "" -#: library/doctest.rst:1507 +#: library/doctest.rst:1529 msgid "" "Report that the given example failed. This method is provided to allow " "subclasses of :class:`DocTestRunner` to customize their output; it should " "not be called directly." msgstr "" -#: library/doctest.rst:1518 +#: library/doctest.rst:1540 msgid "" "Report that the given example raised an unexpected exception. This method is " "provided to allow subclasses of :class:`DocTestRunner` to customize their " "output; it should not be called directly." msgstr "" -#: library/doctest.rst:1522 +#: library/doctest.rst:1544 msgid "" "*example* is the example about to be processed. *exc_info* is a tuple " "containing information about the unexpected exception (as returned by :func:" @@ -2065,13 +2082,13 @@ msgid "" "output function that was passed to :meth:`DocTestRunner.run`." msgstr "" -#: library/doctest.rst:1530 +#: library/doctest.rst:1552 msgid "" "Run the examples in *test* (a :class:`DocTest` object), and display the " "results using the writer function *out*." msgstr "" -#: library/doctest.rst:1533 +#: library/doctest.rst:1555 msgid "" "The examples are run in the namespace ``test.globs``. If *clear_globs* is " "true (the default), then this namespace will be cleared after the test runs, " @@ -2079,39 +2096,39 @@ msgid "" "after the test completes, then use *clear_globs=False*." msgstr "" -#: library/doctest.rst:1538 +#: library/doctest.rst:1560 msgid "" "*compileflags* gives the set of flags that should be used by the Python " "compiler when running the examples. If not specified, then it will default " "to the set of future-import flags that apply to *globs*." msgstr "" -#: library/doctest.rst:1542 +#: library/doctest.rst:1564 msgid "" "The output of each example is checked using the :class:`DocTestRunner`'s " "output checker, and the results are formatted by the :meth:`!DocTestRunner." "report_\\*` methods." msgstr "" -#: library/doctest.rst:1549 +#: library/doctest.rst:1571 msgid "" "Print a summary of all the test cases that have been run by this " "DocTestRunner, and return a :term:`named tuple` ``TestResults(failed, " "attempted)``." msgstr "" -#: library/doctest.rst:1552 +#: library/doctest.rst:1574 msgid "" "The optional *verbose* argument controls how detailed the summary is. If " "the verbosity is not specified, then the :class:`DocTestRunner`'s verbosity " "is used." msgstr "" -#: library/doctest.rst:1559 +#: library/doctest.rst:1581 msgid "OutputChecker objects" msgstr "" -#: library/doctest.rst:1564 +#: library/doctest.rst:1586 msgid "" "A class used to check the whether the actual output from a doctest example " "matches the expected output. :class:`OutputChecker` defines two methods: :" @@ -2120,11 +2137,11 @@ msgid "" "string describing the differences between two outputs." msgstr "" -#: library/doctest.rst:1571 +#: library/doctest.rst:1593 msgid ":class:`OutputChecker` defines the following methods:" msgstr "" -#: library/doctest.rst:1575 +#: library/doctest.rst:1597 msgid "" "Return ``True`` iff the actual output from an example (*got*) matches the " "expected output (*want*). These strings are always considered to match if " @@ -2133,28 +2150,28 @@ msgid "" "`doctest-options` for more information about option flags." msgstr "" -#: library/doctest.rst:1584 +#: library/doctest.rst:1606 msgid "" "Return a string describing the differences between the expected output for a " "given example (*example*) and the actual output (*got*). *optionflags* is " "the set of option flags used to compare *want* and *got*." msgstr "" -#: library/doctest.rst:1592 +#: library/doctest.rst:1614 msgid "Debugging" msgstr "" -#: library/doctest.rst:1594 +#: library/doctest.rst:1616 msgid "Doctest provides several mechanisms for debugging doctest examples:" msgstr "" -#: library/doctest.rst:1596 +#: library/doctest.rst:1618 msgid "" "Several functions convert doctests to executable Python programs, which can " "be run under the Python debugger, :mod:`pdb`." msgstr "" -#: library/doctest.rst:1599 +#: library/doctest.rst:1621 msgid "" "The :class:`DebugRunner` class is a subclass of :class:`DocTestRunner` that " "raises an exception for the first failing example, containing information " @@ -2162,13 +2179,13 @@ msgid "" "debugging on the example." msgstr "" -#: library/doctest.rst:1604 +#: library/doctest.rst:1626 msgid "" "The :mod:`unittest` cases generated by :func:`DocTestSuite` support the :" "meth:`debug` method defined by :class:`unittest.TestCase`." msgstr "" -#: library/doctest.rst:1607 +#: library/doctest.rst:1629 msgid "" "You can add a call to :func:`pdb.set_trace` in a doctest example, and you'll " "drop into the Python debugger when that line is executed. Then you can " @@ -2176,7 +2193,7 @@ msgid "" "`a.py` contains just this module docstring::" msgstr "" -#: library/doctest.rst:1612 +#: library/doctest.rst:1634 msgid "" "\"\"\"\n" ">>> def f(x):\n" @@ -2189,11 +2206,11 @@ msgid "" "\"\"\"" msgstr "" -#: library/doctest.rst:1622 +#: library/doctest.rst:1644 msgid "Then an interactive Python session may look like this::" msgstr "" -#: library/doctest.rst:1624 +#: library/doctest.rst:1646 msgid "" ">>> import a, doctest\n" ">>> doctest.testmod(a)\n" @@ -2226,17 +2243,17 @@ msgid "" ">>>" msgstr "" -#: library/doctest.rst:1655 +#: library/doctest.rst:1677 msgid "" "Functions that convert doctests to Python code, and possibly run the " "synthesized code under the debugger:" msgstr "" -#: library/doctest.rst:1661 +#: library/doctest.rst:1683 msgid "Convert text with examples to a script." msgstr "" -#: library/doctest.rst:1663 +#: library/doctest.rst:1685 msgid "" "Argument *s* is a string containing doctest examples. The string is " "converted to a Python script, where doctest examples in *s* are converted to " @@ -2244,7 +2261,7 @@ msgid "" "generated script is returned as a string. For example, ::" msgstr "" -#: library/doctest.rst:1668 +#: library/doctest.rst:1690 msgid "" "import doctest\n" "print(doctest.script_from_examples(r\"\"\"\n" @@ -2257,11 +2274,11 @@ msgid "" "\"\"\"))" msgstr "" -#: library/doctest.rst:1678 +#: library/doctest.rst:1700 msgid "displays::" msgstr "" -#: library/doctest.rst:1680 +#: library/doctest.rst:1702 msgid "" "# Set x and y to 1 and 2.\n" "x, y = 1, 2\n" @@ -2272,18 +2289,18 @@ msgid "" "## 3" msgstr "" -#: library/doctest.rst:1688 +#: library/doctest.rst:1710 msgid "" "This function is used internally by other functions (see below), but can " "also be useful when you want to transform an interactive Python session into " "a Python script." msgstr "" -#: library/doctest.rst:1695 +#: library/doctest.rst:1717 msgid "Convert the doctest for an object to a script." msgstr "" -#: library/doctest.rst:1697 +#: library/doctest.rst:1719 msgid "" "Argument *module* is a module object, or dotted name of a module, containing " "the object whose doctests are of interest. Argument *name* is the name " @@ -2293,23 +2310,23 @@ msgid "" "module :file:`a.py` contains a top-level function :func:`!f`, then ::" msgstr "" -#: library/doctest.rst:1704 +#: library/doctest.rst:1726 msgid "" "import a, doctest\n" "print(doctest.testsource(a, \"a.f\"))" msgstr "" -#: library/doctest.rst:1707 +#: library/doctest.rst:1729 msgid "" "prints a script version of function :func:`!f`'s docstring, with doctests " "converted to code, and the rest placed in comments." msgstr "" -#: library/doctest.rst:1713 +#: library/doctest.rst:1735 msgid "Debug the doctests for an object." msgstr "" -#: library/doctest.rst:1715 +#: library/doctest.rst:1737 msgid "" "The *module* and *name* arguments are the same as for function :func:" "`testsource` above. The synthesized Python script for the named object's " @@ -2317,13 +2334,13 @@ msgid "" "the control of the Python debugger, :mod:`pdb`." msgstr "" -#: library/doctest.rst:1720 +#: library/doctest.rst:1742 msgid "" "A shallow copy of ``module.__dict__`` is used for both local and global " "execution context." msgstr "" -#: library/doctest.rst:1723 +#: library/doctest.rst:1745 msgid "" "Optional argument *pm* controls whether post-mortem debugging is used. If " "*pm* has a true value, the script file is run directly, and the debugger " @@ -2335,30 +2352,30 @@ msgid "" "to :func:`pdb.run`." msgstr "" -#: library/doctest.rst:1734 +#: library/doctest.rst:1756 msgid "Debug the doctests in a string." msgstr "" -#: library/doctest.rst:1736 +#: library/doctest.rst:1758 msgid "" "This is like function :func:`debug` above, except that a string containing " "doctest examples is specified directly, via the *src* argument." msgstr "" -#: library/doctest.rst:1739 +#: library/doctest.rst:1761 msgid "" "Optional argument *pm* has the same meaning as in function :func:`debug` " "above." msgstr "" -#: library/doctest.rst:1741 +#: library/doctest.rst:1763 msgid "" "Optional argument *globs* gives a dictionary to use as both local and global " "execution context. If not specified, or ``None``, an empty dictionary is " "used. If specified, a shallow copy of the dictionary is used." msgstr "" -#: library/doctest.rst:1746 +#: library/doctest.rst:1768 msgid "" "The :class:`DebugRunner` class, and the special exceptions it may raise, are " "of most interest to testing framework authors, and will only be sketched " @@ -2366,7 +2383,7 @@ msgid "" "(which is a doctest!) for more details:" msgstr "" -#: library/doctest.rst:1754 +#: library/doctest.rst:1776 msgid "" "A subclass of :class:`DocTestRunner` that raises an exception as soon as a " "failure is encountered. If an unexpected exception occurs, an :exc:" @@ -2376,89 +2393,89 @@ msgid "" "the actual output." msgstr "" -#: library/doctest.rst:1761 +#: library/doctest.rst:1783 msgid "" "For information about the constructor parameters and methods, see the " "documentation for :class:`DocTestRunner` in section :ref:`doctest-advanced-" "api`." msgstr "" -#: library/doctest.rst:1764 +#: library/doctest.rst:1786 msgid "" "There are two exceptions that may be raised by :class:`DebugRunner` " "instances:" msgstr "" -#: library/doctest.rst:1769 +#: library/doctest.rst:1791 msgid "" "An exception raised by :class:`DocTestRunner` to signal that a doctest " "example's actual output did not match its expected output. The constructor " "arguments are used to initialize the attributes of the same names." msgstr "" -#: library/doctest.rst:1773 +#: library/doctest.rst:1795 msgid ":exc:`DocTestFailure` defines the following attributes:" msgstr "" -#: library/doctest.rst:1802 +#: library/doctest.rst:1824 msgid "The :class:`DocTest` object that was being run when the example failed." msgstr "" -#: library/doctest.rst:1807 +#: library/doctest.rst:1829 msgid "The :class:`Example` that failed." msgstr "" -#: library/doctest.rst:1788 +#: library/doctest.rst:1810 msgid "The example's actual output." msgstr "" -#: library/doctest.rst:1793 +#: library/doctest.rst:1815 msgid "" "An exception raised by :class:`DocTestRunner` to signal that a doctest " "example raised an unexpected exception. The constructor arguments are used " "to initialize the attributes of the same names." msgstr "" -#: library/doctest.rst:1797 +#: library/doctest.rst:1819 msgid ":exc:`UnexpectedException` defines the following attributes:" msgstr "" -#: library/doctest.rst:1812 +#: library/doctest.rst:1834 msgid "" "A tuple containing information about the unexpected exception, as returned " "by :func:`sys.exc_info`." msgstr "" -#: library/doctest.rst:1819 +#: library/doctest.rst:1841 msgid "Soapbox" msgstr "" -#: library/doctest.rst:1821 +#: library/doctest.rst:1843 msgid "" "As mentioned in the introduction, :mod:`doctest` has grown to have three " "primary uses:" msgstr "" -#: library/doctest.rst:1824 +#: library/doctest.rst:1846 msgid "Checking examples in docstrings." msgstr "" -#: library/doctest.rst:1826 +#: library/doctest.rst:1848 msgid "Regression testing." msgstr "" -#: library/doctest.rst:1828 +#: library/doctest.rst:1850 msgid "Executable documentation / literate testing." msgstr "" -#: library/doctest.rst:1830 +#: library/doctest.rst:1852 msgid "" "These uses have different requirements, and it is important to distinguish " "them. In particular, filling your docstrings with obscure test cases makes " "for bad documentation." msgstr "" -#: library/doctest.rst:1834 +#: library/doctest.rst:1856 msgid "" "When writing a docstring, choose docstring examples with care. There's an " "art to this that needs to be learned---it may not be natural at first. " @@ -2470,7 +2487,7 @@ msgid "" "\"harmless\" change." msgstr "" -#: library/doctest.rst:1842 +#: library/doctest.rst:1864 msgid "" "Doctest also makes an excellent tool for regression testing, especially if " "you don't skimp on explanatory text. By interleaving prose and examples, it " @@ -2491,13 +2508,13 @@ msgid "" "different results, blurring the distinction between testing and explaining." msgstr "" -#: library/doctest.rst:1860 +#: library/doctest.rst:1882 msgid "" "Regression testing is best confined to dedicated objects or files. There " "are several options for organizing tests:" msgstr "" -#: library/doctest.rst:1863 +#: library/doctest.rst:1885 msgid "" "Write text files containing test cases as interactive examples, and test the " "files using :func:`testfile` or :func:`DocFileSuite`. This is recommended, " @@ -2505,7 +2522,7 @@ msgid "" "doctest." msgstr "" -#: library/doctest.rst:1868 +#: library/doctest.rst:1890 msgid "" "Define functions named ``_regrtest_topic`` that consist of single " "docstrings, containing test cases for the named topics. These functions can " @@ -2513,13 +2530,13 @@ msgid "" "test file." msgstr "" -#: library/doctest.rst:1872 +#: library/doctest.rst:1894 msgid "" "Define a ``__test__`` dictionary mapping from regression test topics to " "docstrings containing test cases." msgstr "" -#: library/doctest.rst:1875 +#: library/doctest.rst:1897 msgid "" "When you have placed your tests in a module, the module can itself be the " "test runner. When a test fails, you can arrange for your test runner to re-" @@ -2527,7 +2544,7 @@ msgid "" "example of such a test runner::" msgstr "" -#: library/doctest.rst:1880 +#: library/doctest.rst:1902 msgid "" "if __name__ == '__main__':\n" " import doctest\n" @@ -2545,53 +2562,53 @@ msgid "" " print(\"{} failures out of {} tests\".format(fail, total))" msgstr "" -#: library/doctest.rst:1897 +#: library/doctest.rst:1919 msgid "Footnotes" msgstr "" -#: library/doctest.rst:1898 +#: library/doctest.rst:1920 msgid "" "Examples containing both expected output and an exception are not supported. " "Trying to guess where one ends and the other begins is too error-prone, and " "that also makes for a confusing test." msgstr "" -#: library/doctest.rst:339 +#: library/doctest.rst:369 msgid ">>>" msgstr "" -#: library/doctest.rst:339 +#: library/doctest.rst:369 msgid "interpreter prompt" msgstr "" -#: library/doctest.rst:577 +#: library/doctest.rst:604 msgid "..." msgstr "" -#: library/doctest.rst:505 +#: library/doctest.rst:535 msgid "^ (caret)" msgstr "" -#: library/doctest.rst:505 +#: library/doctest.rst:535 msgid "marker" msgstr "" -#: library/doctest.rst:557 +#: library/doctest.rst:584 msgid "" msgstr "" -#: library/doctest.rst:707 +#: library/doctest.rst:729 msgid "in doctests" msgstr "" -#: library/doctest.rst:707 +#: library/doctest.rst:729 msgid "# (hash)" msgstr "" -#: library/doctest.rst:707 +#: library/doctest.rst:729 msgid "+ (plus)" msgstr "" -#: library/doctest.rst:707 +#: library/doctest.rst:729 msgid "- (minus)" msgstr "" diff --git a/library/email.contentmanager.po b/library/email.contentmanager.po index 79f1403dc..5e3ead6be 100644 --- a/library/email.contentmanager.po +++ b/library/email.contentmanager.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -216,10 +216,19 @@ msgstr "" #: library/email.contentmanager.rst:159 msgid "" "For ``str`` objects, if *cte* is not set use heuristics to determine the " -"most compact encoding." +"most compact encoding. Prior to encoding, :meth:`str.splitlines` is used to " +"normalize all line boundaries, ensuring that each line of the payload is " +"terminated by the current policy's :data:`~email.policy.Policy.linesep` " +"property (even if the original string did not end with one)." msgstr "" -#: library/email.contentmanager.rst:161 +#: library/email.contentmanager.rst:165 +msgid "" +"For ``bytes`` objects, *cte* is taken to be base64 if not set, and the " +"aforementioned newline translation is not performed." +msgstr "" + +#: library/email.contentmanager.rst:167 msgid "" "For :class:`~email.message.EmailMessage`, per :rfc:`2046`, raise an error if " "a *cte* of ``quoted-printable`` or ``base64`` is requested for *subtype* " @@ -228,14 +237,14 @@ msgid "" "For all other values of *subtype*, use ``7bit``." msgstr "" -#: library/email.contentmanager.rst:168 +#: library/email.contentmanager.rst:174 msgid "" "A *cte* of ``binary`` does not actually work correctly yet. The " "``EmailMessage`` object as modified by ``set_content`` is correct, but :" "class:`~email.generator.BytesGenerator` does not serialize it correctly." msgstr "" -#: library/email.contentmanager.rst:173 +#: library/email.contentmanager.rst:179 msgid "" "If *disposition* is set, use it as the value of the :mailheader:`Content-" "Disposition` header. If not specified, and *filename* is specified, add the " @@ -244,37 +253,37 @@ msgid "" "values for *disposition* are ``attachment`` and ``inline``." msgstr "" -#: library/email.contentmanager.rst:180 +#: library/email.contentmanager.rst:186 msgid "" "If *filename* is specified, use it as the value of the ``filename`` " "parameter of the :mailheader:`Content-Disposition` header." msgstr "" -#: library/email.contentmanager.rst:183 +#: library/email.contentmanager.rst:189 msgid "" "If *cid* is specified, add a :mailheader:`Content-ID` header with *cid* as " "its value." msgstr "" -#: library/email.contentmanager.rst:186 +#: library/email.contentmanager.rst:192 msgid "" "If *params* is specified, iterate its ``items`` method and use the resulting " "``(key, value)`` pairs to set additional parameters on the :mailheader:" "`Content-Type` header." msgstr "" -#: library/email.contentmanager.rst:190 +#: library/email.contentmanager.rst:196 msgid "" "If *headers* is specified and is a list of strings of the form ``headername: " "headervalue`` or a list of ``header`` objects (distinguished from strings by " "having a ``name`` attribute), add the headers to *msg*." msgstr "" -#: library/email.contentmanager.rst:197 +#: library/email.contentmanager.rst:203 msgid "Footnotes" msgstr "" -#: library/email.contentmanager.rst:198 +#: library/email.contentmanager.rst:204 msgid "" "Originally added in 3.4 as a :term:`provisional module `" msgstr "" diff --git a/library/email.errors.po b/library/email.errors.po index b7d88e421..92e62dc31 100644 --- a/library/email.errors.po +++ b/library/email.errors.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -62,40 +62,31 @@ msgstr "" #: library/email.errors.rst:48 msgid "" -"Raised when a payload is added to a :class:`~email.message.Message` object " -"using :meth:`add_payload`, but the payload is already a scalar and the " -"message's :mailheader:`Content-Type` main type is not either :mimetype:" -"`multipart` or missing. :exc:`MultipartConversionError` multiply inherits " -"from :exc:`MessageError` and the built-in :exc:`TypeError`." +"Raised if the :meth:`~email.message.Message.attach` method is called on an " +"instance of a class derived from :class:`~email.mime.nonmultipart." +"MIMENonMultipart` (e.g. :class:`~email.mime.image.MIMEImage`). :exc:" +"`MultipartConversionError` multiply inherits from :exc:`MessageError` and " +"the built-in :exc:`TypeError`." msgstr "" -#: library/email.errors.rst:54 -msgid "" -"Since :meth:`Message.add_payload` is deprecated, this exception is rarely " -"raised in practice. However the exception may also be raised if the :meth:" -"`~email.message.Message.attach` method is called on an instance of a class " -"derived from :class:`~email.mime.nonmultipart.MIMENonMultipart` (e.g. :class:" -"`~email.mime.image.MIMEImage`)." -msgstr "" - -#: library/email.errors.rst:64 +#: library/email.errors.rst:58 msgid "" "Raised when an error occurs when the :mod:`~email.generator` outputs headers." msgstr "" -#: library/email.errors.rst:70 +#: library/email.errors.rst:64 msgid "" "This is the base class for all defects found when parsing email messages. It " "is derived from :exc:`ValueError`." msgstr "" -#: library/email.errors.rst:75 +#: library/email.errors.rst:69 msgid "" "This is the base class for all defects found when parsing email headers. It " "is derived from :exc:`MessageDefect`." msgstr "" -#: library/email.errors.rst:78 +#: library/email.errors.rst:72 msgid "" "Here is the list of the defects that the :class:`~email.parser.FeedParser` " "can find while parsing messages. Note that the defects are added to the " @@ -105,90 +96,84 @@ msgid "" "not." msgstr "" -#: library/email.errors.rst:84 +#: library/email.errors.rst:78 msgid "" "All defect classes are subclassed from :class:`email.errors.MessageDefect`." msgstr "" -#: library/email.errors.rst:86 +#: library/email.errors.rst:82 msgid "" -":class:`NoBoundaryInMultipartDefect` -- A message claimed to be a multipart, " -"but had no :mimetype:`boundary` parameter." +"A message claimed to be a multipart, but had no :mimetype:`boundary` " +"parameter." msgstr "" -#: library/email.errors.rst:89 +#: library/email.errors.rst:87 msgid "" -":class:`StartBoundaryNotFoundDefect` -- The start boundary claimed in the :" -"mailheader:`Content-Type` header was never found." +"The start boundary claimed in the :mailheader:`Content-Type` header was " +"never found." msgstr "" #: library/email.errors.rst:92 msgid "" -":class:`CloseBoundaryNotFoundDefect` -- A start boundary was found, but no " -"corresponding close boundary was ever found." +"A start boundary was found, but no corresponding close boundary was ever " +"found." msgstr "" -#: library/email.errors.rst:97 -msgid "" -":class:`FirstHeaderLineIsContinuationDefect` -- The message had a " -"continuation line as its first header line." +#: library/email.errors.rst:99 +msgid "The message had a continuation line as its first header line." msgstr "" -#: library/email.errors.rst:100 -msgid "" -":class:`MisplacedEnvelopeHeaderDefect` - A \"Unix From\" header was found in " -"the middle of a header block." +#: library/email.errors.rst:103 +msgid "A \"Unix From\" header was found in the middle of a header block." msgstr "" -#: library/email.errors.rst:103 +#: library/email.errors.rst:107 msgid "" -":class:`MissingHeaderBodySeparatorDefect` - A line was found while parsing " -"headers that had no leading white space but contained no ':'. Parsing " -"continues assuming that the line represents the first line of the body." +"A line was found while parsing headers that had no leading white space but " +"contained no ':'. Parsing continues assuming that the line represents the " +"first line of the body." msgstr "" -#: library/email.errors.rst:109 +#: library/email.errors.rst:115 msgid "" -":class:`MalformedHeaderDefect` -- A header was found that was missing a " -"colon, or was otherwise malformed." +"A header was found that was missing a colon, or was otherwise malformed." msgstr "" -#: library/email.errors.rst:112 +#: library/email.errors.rst:117 msgid "This defect has not been used for several Python versions." msgstr "" -#: library/email.errors.rst:115 +#: library/email.errors.rst:122 msgid "" -":class:`MultipartInvariantViolationDefect` -- A message claimed to be a :" -"mimetype:`multipart`, but no subparts were found. Note that when a message " -"has this defect, its :meth:`~email.message.Message.is_multipart` method may " -"return ``False`` even though its content type claims to be :mimetype:" -"`multipart`." +"A message claimed to be a :mimetype:`multipart`, but no subparts were found. " +"Note that when a message has this defect, its :meth:`~email.message.Message." +"is_multipart` method may return ``False`` even though its content type " +"claims to be :mimetype:`multipart`." msgstr "" -#: library/email.errors.rst:120 +#: library/email.errors.rst:129 msgid "" -":class:`InvalidBase64PaddingDefect` -- When decoding a block of base64 " -"encoded bytes, the padding was not correct. Enough padding is added to " -"perform the decode, but the resulting decoded bytes may be invalid." +"When decoding a block of base64 encoded bytes, the padding was not correct. " +"Enough padding is added to perform the decode, but the resulting decoded " +"bytes may be invalid." msgstr "" -#: library/email.errors.rst:124 +#: library/email.errors.rst:135 msgid "" -":class:`InvalidBase64CharactersDefect` -- When decoding a block of base64 " -"encoded bytes, characters outside the base64 alphabet were encountered. The " -"characters are ignored, but the resulting decoded bytes may be invalid." +"When decoding a block of base64 encoded bytes, characters outside the base64 " +"alphabet were encountered. The characters are ignored, but the resulting " +"decoded bytes may be invalid." msgstr "" -#: library/email.errors.rst:128 +#: library/email.errors.rst:141 msgid "" -":class:`InvalidBase64LengthDefect` -- When decoding a block of base64 " -"encoded bytes, the number of non-padding base64 characters was invalid (1 " -"more than a multiple of 4). The encoded block was kept as-is." +"When decoding a block of base64 encoded bytes, the number of non-padding " +"base64 characters was invalid (1 more than a multiple of 4). The encoded " +"block was kept as-is." msgstr "" -#: library/email.errors.rst:132 +#: library/email.errors.rst:147 msgid "" -":class:`InvalidDateDefect` -- When decoding an invalid or unparsable date " -"field. The original value is kept as-is." +"When decoding an invalid or unparsable date field. The original value is " +"kept as-is." msgstr "" diff --git a/library/email.parser.po b/library/email.parser.po index 213fc5565..3d1a18b7d 100644 --- a/library/email.parser.po +++ b/library/email.parser.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -326,7 +326,7 @@ msgstr "" #: library/email.parser.rst:286 msgid "" ">>> import email\n" -">>> msg = email.message_from_bytes(myBytes) " +">>> msg = email.message_from_bytes(myBytes)" msgstr "" #: library/email.parser.rst:291 diff --git a/library/email.policy.po b/library/email.policy.po index fef8afc59..e692f7cae 100644 --- a/library/email.policy.po +++ b/library/email.policy.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -327,7 +327,7 @@ msgstr "" #: library/email.policy.rst:268 msgid "" "Handle a *defect* found on *obj*. When the email package calls this method, " -"*defect* will always be a subclass of :class:`~email.errors.Defect`." +"*defect* will always be a subclass of :class:`~email.errors.MessageDefect`." msgstr "" #: library/email.policy.rst:272 @@ -340,7 +340,7 @@ msgstr "" #: library/email.policy.rst:279 msgid "" "Register a *defect* on *obj*. In the email package, *defect* will always be " -"a subclass of :class:`~email.errors.Defect`." +"a subclass of :class:`~email.errors.MessageDefect`." msgstr "" #: library/email.policy.rst:282 diff --git a/library/ensurepip.po b/library/ensurepip.po index 489dee190..574bcc309 100644 --- a/library/ensurepip.po +++ b/library/ensurepip.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -79,20 +79,20 @@ msgstr "" msgid "Command line interface" msgstr "" -#: library/ensurepip.rst:46 +#: library/ensurepip.rst:48 msgid "" "The command line interface is invoked using the interpreter's ``-m`` switch." msgstr "" -#: library/ensurepip.rst:48 +#: library/ensurepip.rst:50 msgid "The simplest possible invocation is::" msgstr "" -#: library/ensurepip.rst:50 +#: library/ensurepip.rst:52 msgid "python -m ensurepip" msgstr "" -#: library/ensurepip.rst:52 +#: library/ensurepip.rst:54 msgid "" "This invocation will install ``pip`` if it is not already installed, but " "otherwise does nothing. To ensure the installed version of ``pip`` is at " @@ -100,11 +100,11 @@ msgid "" "upgrade`` option::" msgstr "" -#: library/ensurepip.rst:57 +#: library/ensurepip.rst:59 msgid "python -m ensurepip --upgrade" msgstr "" -#: library/ensurepip.rst:59 +#: library/ensurepip.rst:61 msgid "" "By default, ``pip`` is installed into the current virtual environment (if " "one is active) or into the system site packages (if there is no active " @@ -112,122 +112,122 @@ msgid "" "two additional command line options:" msgstr "" -#: library/ensurepip.rst:64 +#: library/ensurepip.rst:68 msgid "" -":samp:`--root {dir}`: Installs ``pip`` relative to the given root directory " -"rather than the root of the currently active virtual environment (if any) or " -"the default root for the current Python installation." +"Installs ``pip`` relative to the given root directory rather than the root " +"of the currently active virtual environment (if any) or the default root for " +"the current Python installation." msgstr "" -#: library/ensurepip.rst:67 +#: library/ensurepip.rst:74 msgid "" -"``--user``: Installs ``pip`` into the user site packages directory rather " -"than globally for the current Python installation (this option is not " -"permitted inside an active virtual environment)." +"Installs ``pip`` into the user site packages directory rather than globally " +"for the current Python installation (this option is not permitted inside an " +"active virtual environment)." msgstr "" -#: library/ensurepip.rst:71 +#: library/ensurepip.rst:78 msgid "" "By default, the scripts ``pipX`` and ``pipX.Y`` will be installed (where X.Y " "stands for the version of Python used to invoke ``ensurepip``). The scripts " "installed can be controlled through two additional command line options:" msgstr "" -#: library/ensurepip.rst:76 +#: library/ensurepip.rst:85 msgid "" -"``--altinstall``: if an alternate installation is requested, the ``pipX`` " -"script will *not* be installed." +"If an alternate installation is requested, the ``pipX`` script will *not* be " +"installed." msgstr "" -#: library/ensurepip.rst:79 +#: library/ensurepip.rst:90 msgid "" -"``--default-pip``: if a \"default pip\" installation is requested, the " -"``pip`` script will be installed in addition to the two regular scripts." +"If a \"default pip\" installation is requested, the ``pip`` script will be " +"installed in addition to the two regular scripts." msgstr "" -#: library/ensurepip.rst:82 +#: library/ensurepip.rst:93 msgid "" "Providing both of the script selection options will trigger an exception." msgstr "" -#: library/ensurepip.rst:86 +#: library/ensurepip.rst:96 msgid "Module API" msgstr "" -#: library/ensurepip.rst:88 +#: library/ensurepip.rst:98 msgid ":mod:`ensurepip` exposes two functions for programmatic use:" msgstr "" -#: library/ensurepip.rst:92 +#: library/ensurepip.rst:102 msgid "" "Returns a string specifying the available version of pip that will be " "installed when bootstrapping an environment." msgstr "" -#: library/ensurepip.rst:99 +#: library/ensurepip.rst:109 msgid "Bootstraps ``pip`` into the current or designated environment." msgstr "" -#: library/ensurepip.rst:101 +#: library/ensurepip.rst:111 msgid "" "*root* specifies an alternative root directory to install relative to. If " "*root* is ``None``, then installation uses the default install location for " "the current environment." msgstr "" -#: library/ensurepip.rst:105 +#: library/ensurepip.rst:115 msgid "" "*upgrade* indicates whether or not to upgrade an existing installation of an " "earlier version of ``pip`` to the available version." msgstr "" -#: library/ensurepip.rst:108 +#: library/ensurepip.rst:118 msgid "" "*user* indicates whether to use the user scheme rather than installing " "globally." msgstr "" -#: library/ensurepip.rst:111 +#: library/ensurepip.rst:121 msgid "" "By default, the scripts ``pipX`` and ``pipX.Y`` will be installed (where X.Y " "stands for the current version of Python)." msgstr "" -#: library/ensurepip.rst:114 +#: library/ensurepip.rst:124 msgid "If *altinstall* is set, then ``pipX`` will *not* be installed." msgstr "" -#: library/ensurepip.rst:116 +#: library/ensurepip.rst:126 msgid "" "If *default_pip* is set, then ``pip`` will be installed in addition to the " "two regular scripts." msgstr "" -#: library/ensurepip.rst:119 +#: library/ensurepip.rst:129 msgid "" "Setting both *altinstall* and *default_pip* will trigger :exc:`ValueError`." msgstr "" -#: library/ensurepip.rst:122 +#: library/ensurepip.rst:132 msgid "" "*verbosity* controls the level of output to :data:`sys.stdout` from the " "bootstrapping operation." msgstr "" -#: library/ensurepip.rst:125 +#: library/ensurepip.rst:135 msgid "" "Raises an :ref:`auditing event ` ``ensurepip.bootstrap`` with " "argument ``root``." msgstr "" -#: library/ensurepip.rst:129 +#: library/ensurepip.rst:139 msgid "" "The bootstrapping process has side effects on both ``sys.path`` and ``os." "environ``. Invoking the command line interface in a subprocess instead " "allows these side effects to be avoided." msgstr "" -#: library/ensurepip.rst:135 +#: library/ensurepip.rst:145 msgid "" "The bootstrapping process may install additional modules required by " "``pip``, but other software should not assume those dependencies will always " diff --git a/library/enum.po b/library/enum.po index be20d405a..9cf04e4c2 100644 --- a/library/enum.po +++ b/library/enum.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -81,7 +81,7 @@ msgid "" "... BLUE = 3\n" "\n" ">>> # functional syntax\n" -">>> Color = Enum('Color', ['RED', 'GREEN', 'BLUE'])" +">>> Color = Enum('Color', [('RED', 1), ('GREEN', 2), ('BLUE', 3)])" msgstr "" #: library/enum.rst:49 diff --git a/library/errno.po b/library/errno.po index 9d157e2cb..cf82b8bf8 100644 --- a/library/errno.po +++ b/library/errno.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -579,24 +579,128 @@ msgstr "" msgid "Interface output queue is full" msgstr "" -#: library/errno.rst:670 +#: library/errno.rst:671 +msgid "No medium found" +msgstr "" + +#: library/errno.rst:676 +msgid "Wrong medium type" +msgstr "" + +#: library/errno.rst:681 +msgid "Required key not available" +msgstr "" + +#: library/errno.rst:686 +msgid "Key has expired" +msgstr "" + +#: library/errno.rst:691 +msgid "Key has been revoked" +msgstr "" + +#: library/errno.rst:696 +msgid "Key was rejected by service" +msgstr "" + +#: library/errno.rst:701 +msgid "Operation not possible due to RF-kill" +msgstr "" + +#: library/errno.rst:706 +msgid "Locked lock was unmapped" +msgstr "" + +#: library/errno.rst:711 +msgid "Facility is not active" +msgstr "" + +#: library/errno.rst:716 +msgid "Authentication error" +msgstr "" + +#: library/errno.rst:723 +msgid "Bad CPU type in executable" +msgstr "" + +#: library/errno.rst:730 +msgid "Bad executable (or shared library)" +msgstr "" + +#: library/errno.rst:737 +msgid "Malformed Mach-o file" +msgstr "" + +#: library/errno.rst:744 +msgid "Device error" +msgstr "" + +#: library/errno.rst:751 +msgid "Inappropriate file type or format" +msgstr "" + +#: library/errno.rst:758 +msgid "Need authenticator" +msgstr "" + +#: library/errno.rst:765 +msgid "Attribute not found" +msgstr "" + +#: library/errno.rst:772 +msgid "Policy not found" +msgstr "" + +#: library/errno.rst:779 +msgid "Too many processes" +msgstr "" + +#: library/errno.rst:786 +msgid "Bad procedure for program" +msgstr "" + +#: library/errno.rst:793 +msgid "Program version wrong" +msgstr "" + +#: library/errno.rst:800 +msgid "RPC prog. not avail" +msgstr "" + +#: library/errno.rst:807 +msgid "Device power is off" +msgstr "" + +#: library/errno.rst:814 +msgid "RPC struct is bad" +msgstr "" + +#: library/errno.rst:821 +msgid "RPC version wrong" +msgstr "" + +#: library/errno.rst:828 +msgid "Shared library version mismatch" +msgstr "" + +#: library/errno.rst:835 msgid "" "Capabilities insufficient. This error is mapped to the exception :exc:" "`PermissionError`." msgstr "" -#: library/errno.rst:673 +#: library/errno.rst:838 msgid "Availability" msgstr "" -#: library/errno.rst:680 +#: library/errno.rst:845 msgid "Operation canceled" msgstr "" -#: library/errno.rst:687 +#: library/errno.rst:852 msgid "Owner died" msgstr "" -#: library/errno.rst:694 +#: library/errno.rst:859 msgid "State not recoverable" msgstr "" diff --git a/library/exceptions.po b/library/exceptions.po index d7f038ad3..09934ba0e 100644 --- a/library/exceptions.po +++ b/library/exceptions.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2024-02-17 13:11+0300\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -548,16 +548,16 @@ msgstr "" #: library/exceptions.rst:338 #, fuzzy msgid "" -"``NotImplementedError`` and :data:`NotImplemented` are not interchangeable, " -"even though they have similar names and purposes. See :data:`!" -"NotImplemented` for details on when to use it." +":exc:`!NotImplementedError` and :data:`!NotImplemented` are not " +"interchangeable. This exception should only be used as described above; see :" +"data:`NotImplemented` for details on correct usage of the built-in constant." msgstr "" "``NotImplementedError`` ve ``NotImplemented`` benzer isimlere ve amaçlara " "sahip olsalar da birbirlerinin yerine kullanılamazlar. Ne zaman " "kullanılacağına ilişkin ayrıntılar için :data:`NotImplemented` bölümüne " "bakın." -#: library/exceptions.rst:347 +#: library/exceptions.rst:349 msgid "" "This exception is raised when a system function returns a system-related " "error, including I/O failures such as \"file not found\" or \"disk " @@ -568,7 +568,7 @@ msgstr "" "ortaya çıkar (illegal argüman bağımsız değişken türleri veya diğer tesadüfi " "hatalar için değil)." -#: library/exceptions.rst:351 +#: library/exceptions.rst:353 msgid "" "The second form of the constructor sets the corresponding attributes, " "described below. The attributes default to :const:`None` if not specified. " @@ -582,7 +582,7 @@ msgstr "" "args` niteliği yalnızca ilk iki kurucu argümanının 2'li bir çiftini(tuple) " "içerir." -#: library/exceptions.rst:357 +#: library/exceptions.rst:359 msgid "" "The constructor often actually returns a subclass of :exc:`OSError`, as " "described in `OS exceptions`_ below. The particular subclass depends on the " @@ -596,11 +596,11 @@ msgstr "" "takma ad aracılığıyla oluşturulurken ortaya çıkar ve alt sınıf " "oluşturulurken miras alınmaz." -#: library/exceptions.rst:365 +#: library/exceptions.rst:367 msgid "A numeric error code from the C variable :c:data:`errno`." msgstr "C değişkeni :c:data:`errno` dan alınan sayısal bir hata kodu." -#: library/exceptions.rst:369 +#: library/exceptions.rst:371 msgid "" "Under Windows, this gives you the native Windows error code. The :attr:`." "errno` attribute is then an approximate translation, in POSIX terms, of that " @@ -610,7 +610,7 @@ msgstr "" "errno` niteliği bu yerel hata kodunun POSIX terimleriyle yaklaşık bir " "çevirisidir." -#: library/exceptions.rst:373 +#: library/exceptions.rst:375 msgid "" "Under Windows, if the *winerror* constructor argument is an integer, the :" "attr:`.errno` attribute is determined from the Windows error code, and the " @@ -622,7 +622,7 @@ msgstr "" "değişkeni yok sayılır. Diğer platformlarda, *winerror* argümanı yok sayılır " "ve :attr:`winerror` niteliği mevcut değildir." -#: library/exceptions.rst:381 +#: library/exceptions.rst:383 msgid "" "The corresponding error message, as provided by the operating system. It is " "formatted by the C functions :c:func:`perror` under POSIX, and :c:func:" @@ -632,7 +632,7 @@ msgstr "" "func:`perror` ve Windows altında :c:func:`FormatMessage` C işlevleri " "tarafından biçimlendirilir." -#: library/exceptions.rst:389 +#: library/exceptions.rst:391 msgid "" "For exceptions that involve a file system path (such as :func:`open` or :" "func:`os.unlink`), :attr:`filename` is the file name passed to the function. " @@ -645,7 +645,7 @@ msgstr "" "dosya sistemi yolu içeren fonksiyonlar için (:func:`os.rename` gibi), :attr:" "`filename2` fonksiyona aktarılan ikinci dosya adına karşılık gelir." -#: library/exceptions.rst:396 +#: library/exceptions.rst:398 msgid "" ":exc:`EnvironmentError`, :exc:`IOError`, :exc:`WindowsError`, :exc:`socket." "error`, :exc:`select.error` and :exc:`mmap.error` have been merged into :exc:" @@ -655,7 +655,7 @@ msgstr "" "error`, :exc:`select.error` ve :exc:`mmap.error`, :exc:`OSError` ile " "birleştirilmiştir ve kurucu bir alt sınıf döndürebilir." -#: library/exceptions.rst:402 +#: library/exceptions.rst:404 msgid "" "The :attr:`filename` attribute is now the original file name passed to the " "function, instead of the name encoded to or decoded from the :term:" @@ -666,7 +666,7 @@ msgstr "" "handler` ile kodlanan veya kodu çözülen ad yerine işleve aktarılan orijinal " "dosya adıdır. Ayrıca, *filename2* kurucu argümanı ve niteliği eklenmiştir." -#: library/exceptions.rst:411 +#: library/exceptions.rst:413 #, fuzzy msgid "" "Raised when the result of an arithmetic operation is too large to be " @@ -684,7 +684,7 @@ msgstr "" "point exception handling) standartlaştırılmaması nedeniyle, çoğu kayan nokta " "işlemi kontrol edilmez." -#: library/exceptions.rst:421 +#: library/exceptions.rst:423 msgid "" "This exception is derived from :exc:`RuntimeError`. It is raised when the " "interpreter detects that the maximum recursion depth (see :func:`sys." @@ -694,11 +694,11 @@ msgstr "" "özyineleme derinliğinin(recursion depth) (bkz. :func:`sys." "getrecursionlimit`) aşıldığını tespit ettiğinde ortaya çıkar." -#: library/exceptions.rst:425 +#: library/exceptions.rst:427 msgid "Previously, a plain :exc:`RuntimeError` was raised." msgstr "Önceden, düz bir :exc:`RuntimeError` oluşturulurdu." -#: library/exceptions.rst:431 +#: library/exceptions.rst:433 msgid "" "This exception is raised when a weak reference proxy, created by the :func:" "`weakref.proxy` function, is used to access an attribute of the referent " @@ -711,7 +711,7 @@ msgstr "" "çıkar. Zayıf referanslar hakkında daha fazla bilgi için :mod:`weakref` " "modülüne bakın." -#: library/exceptions.rst:439 +#: library/exceptions.rst:441 msgid "" "Raised when an error is detected that doesn't fall in any of the other " "categories. The associated value is a string indicating what precisely went " @@ -721,7 +721,7 @@ msgstr "" "oluşturulur. İlişkili değer, tam olarak neyin yanlış gittiğini gösteren bir " "dizedir." -#: library/exceptions.rst:446 +#: library/exceptions.rst:448 msgid "" "Raised by built-in function :func:`next` and an :term:`iterator`\\'s :meth:" "`~iterator.__next__` method to signal that there are no further items " @@ -731,7 +731,7 @@ msgstr "" "__next__` yöntemi tarafından yineleyici tarafından üretilen başka öğe " "olmadığını bildirmek için yükseltilir." -#: library/exceptions.rst:452 +#: library/exceptions.rst:454 msgid "" "The exception object has a single attribute :attr:`!value`, which is given " "as an argument when constructing the exception, and defaults to :const:" @@ -741,7 +741,7 @@ msgstr "" "istisna oluşturulurken argüman olarak verilir ve varsayılan olarak :const:" "`None` değerini alır." -#: library/exceptions.rst:456 +#: library/exceptions.rst:458 msgid "" "When a :term:`generator` or :term:`coroutine` function returns, a new :exc:" "`StopIteration` instance is raised, and the value returned by the function " @@ -752,7 +752,7 @@ msgstr "" "döndürülen değer, istisnanın yapıcısı için :attr:`value` parametresi olarak " "kullanılır." -#: library/exceptions.rst:461 +#: library/exceptions.rst:463 msgid "" "If a generator code directly or indirectly raises :exc:`StopIteration`, it " "is converted into a :exc:`RuntimeError` (retaining the :exc:`StopIteration` " @@ -763,7 +763,7 @@ msgstr "" "dönüştürülür (yeni istisnanın nedeni olarak :exc:`StopIteration` değeri " "korunur)." -#: library/exceptions.rst:465 +#: library/exceptions.rst:467 msgid "" "Added ``value`` attribute and the ability for generator functions to use it " "to return a value." @@ -771,7 +771,7 @@ msgstr "" "``value`` niteliği ve generator işlevlerin bir değer döndürmek için bunu " "kullanabilmesi özelliği eklendi." -#: library/exceptions.rst:469 +#: library/exceptions.rst:471 msgid "" "Introduced the RuntimeError transformation via ``from __future__ import " "generator_stop``, see :pep:`479`." @@ -779,7 +779,7 @@ msgstr "" "RuntimeError dönüşümü ``from __future__ import generator_stop`` aracılığıyla " "tanıtıldı, bkz :pep:`479`." -#: library/exceptions.rst:473 +#: library/exceptions.rst:475 msgid "" "Enable :pep:`479` for all code by default: a :exc:`StopIteration` error " "raised in a generator is transformed into a :exc:`RuntimeError`." @@ -788,7 +788,7 @@ msgstr "" "generator'da ortaya çıkan :exc:`StopIteration` hatası bir :exc:" "`RuntimeError` hatasına dönüştürülür." -#: library/exceptions.rst:479 +#: library/exceptions.rst:481 msgid "" "Must be raised by :meth:`~object.__anext__` method of an :term:`asynchronous " "iterator` object to stop the iteration." @@ -796,7 +796,7 @@ msgstr "" "Yinelemeyi durdurmak için bir :term:`asynchronous iterator` nesnesinin :meth:" "`~object.__anext__` yöntemi tarafından oluşturulmalıdır." -#: library/exceptions.rst:486 +#: library/exceptions.rst:488 msgid "" "Raised when the parser encounters a syntax error. This may occur in an :" "keyword:`import` statement, in a call to the built-in functions :func:" @@ -808,7 +808,7 @@ msgstr "" "func:`eval` işlevlerine yapılan bir çağrıda veya ilk kod veya standart girdi " "okunurken (etkileşimli olarak da) meydana gelebilir." -#: library/exceptions.rst:492 +#: library/exceptions.rst:494 msgid "" "The :func:`str` of the exception instance returns only the error message. " "Details is a tuple whose members are also available as separate attributes." @@ -816,11 +816,11 @@ msgstr "" "İstisna örneğinin :func:`str` öğesi yalnızca hata mesajını döndürür. " "Details, üyeleri ayrı nitelikler olarak da kullanılabilen bir tuple'dır." -#: library/exceptions.rst:497 +#: library/exceptions.rst:499 msgid "The name of the file the syntax error occurred in." msgstr "Sözdizimi hatasının oluştuğu dosyanın adı." -#: library/exceptions.rst:501 +#: library/exceptions.rst:503 msgid "" "Which line number in the file the error occurred in. This is 1-indexed: the " "first line in the file has a ``lineno`` of 1." @@ -828,7 +828,7 @@ msgstr "" "Hatanın dosyadaki hangi satır numarasında meydana geldiği. Bu 1 indekslidir: " "dosyadaki ilk satırın ``lineno`` değeri 1'dir." -#: library/exceptions.rst:506 +#: library/exceptions.rst:508 msgid "" "The column in the line where the error occurred. This is 1-indexed: the " "first character in the line has an ``offset`` of 1." @@ -836,11 +836,11 @@ msgstr "" "Hatanın meydana geldiği satırdaki sütun. Bu 1 indekslidir: satırdaki ilk " "karakter 1 ``offset`` değerine sahiptir." -#: library/exceptions.rst:511 +#: library/exceptions.rst:513 msgid "The source code text involved in the error." msgstr "Hataya dahil olan kaynak kod metni." -#: library/exceptions.rst:515 +#: library/exceptions.rst:517 msgid "" "Which line number in the file the error occurred ends in. This is 1-indexed: " "the first line in the file has a ``lineno`` of 1." @@ -848,7 +848,7 @@ msgstr "" "Hatanın meydana geldiği dosyadaki satır numarası. Bu, 1 indekslidir: " "Dosyanın ilk satırının lineno değeri 1'dir." -#: library/exceptions.rst:520 +#: library/exceptions.rst:522 msgid "" "The column in the end line where the error occurred finishes. This is 1-" "indexed: the first character in the line has an ``offset`` of 1." @@ -856,7 +856,7 @@ msgstr "" "Hatanın meydana geldiği son satırdaki sütun numarası. Bu, 1 indekslidir: " "Satırdaki ilk karakterin offset değeri 1'dir." -#: library/exceptions.rst:523 +#: library/exceptions.rst:525 msgid "" "For errors in f-string fields, the message is prefixed by \"f-string: \" and " "the offsets are offsets in a text constructed from the replacement " @@ -868,11 +868,11 @@ msgstr "" "Örneğin, f'Bad {a b} field' derlendiğinde şu args özniteliği elde edilir: " "('f-string: ...', ('', 1, 2, '(a b)\\n', 1, 5))." -#: library/exceptions.rst:528 +#: library/exceptions.rst:530 msgid "Added the :attr:`end_lineno` and :attr:`end_offset` attributes." msgstr ":attr:`end_lineno` ve :attr:`end_offset` nitelikleri eklendi." -#: library/exceptions.rst:533 +#: library/exceptions.rst:535 msgid "" "Base class for syntax errors related to incorrect indentation. This is a " "subclass of :exc:`SyntaxError`." @@ -880,7 +880,7 @@ msgstr "" "Yanlış girintileme ile ilgili sözdizimi hataları için temel sınıf. Bu, :exc:" "`SyntaxError` alt sınıfıdır." -#: library/exceptions.rst:539 +#: library/exceptions.rst:541 msgid "" "Raised when indentation contains an inconsistent use of tabs and spaces. " "This is a subclass of :exc:`IndentationError`." @@ -888,23 +888,29 @@ msgstr "" "Girintileme tutarsız sekme ve boşluk kullanımı içerdiğinde ortaya çıkar. " "Bu, :exc:`IndentationError` öğesinin bir alt sınıfıdır." -#: library/exceptions.rst:545 +#: library/exceptions.rst:547 +#, fuzzy msgid "" "Raised when the interpreter finds an internal error, but the situation does " "not look so serious to cause it to abandon all hope. The associated value is " -"a string indicating what went wrong (in low-level terms)." +"a string indicating what went wrong (in low-level terms). In :term:" +"`CPython`, this could be raised by incorrectly using Python's C API, such as " +"returning a ``NULL`` value without an exception set." msgstr "" "Yorumlayıcı dahili bir hata bulduğunda, ancak durum tüm umutlarını " "yitirmesine neden olacak kadar ciddi görünmediğinde yükseltilir. İlişkili " "değer, neyin yanlış gittiğini gösteren bir dizedir (düşük seviye terimlerle)." -#: library/exceptions.rst:549 +#: library/exceptions.rst:553 +#, fuzzy msgid "" -"You should report this to the author or maintainer of your Python " -"interpreter. Be sure to report the version of the Python interpreter (``sys." -"version``; it is also printed at the start of an interactive Python " -"session), the exact error message (the exception's associated value) and if " -"possible the source of the program that triggered the error." +"If you're confident that this exception wasn't your fault, or the fault of a " +"package you're using, you should report this to the author or maintainer of " +"your Python interpreter. Be sure to report the version of the Python " +"interpreter (``sys.version``; it is also printed at the start of an " +"interactive Python session), the exact error message (the exception's " +"associated value) and if possible the source of the program that triggered " +"the error." msgstr "" "Bunu Python yorumlayıcınızın yazarına veya geliştiricisine bildirmelisiniz. " "Python yorumlayıcısının sürümünü (``sys.version``; etkileşimli bir Python " @@ -912,7 +918,7 @@ msgstr "" "ilişkili değeri) ve mümkünse hatayı tetikleyen programın kaynağını " "bildirdiğinizden emin olun." -#: library/exceptions.rst:558 +#: library/exceptions.rst:564 msgid "" "This exception is raised by the :func:`sys.exit` function. It inherits " "from :exc:`BaseException` instead of :exc:`Exception` so that it is not " @@ -936,7 +942,7 @@ msgstr "" "``None`` ise, çıkış durumu sıfırdır; başka bir türe sahipse (string gibi), " "nesnenin değeri yazdırılır ve çıkış durumu birdir." -#: library/exceptions.rst:569 +#: library/exceptions.rst:575 msgid "" "A call to :func:`sys.exit` is translated into an exception so that clean-up " "handlers (:keyword:`finally` clauses of :keyword:`try` statements) can be " @@ -952,7 +958,7 @@ msgstr "" "kesinlikle gerekliyse :func:`os._exit` fonksiyonu kullanılabilir (örneğin, :" "func:`os.fork` çağrısından sonra alt süreçte)." -#: library/exceptions.rst:578 +#: library/exceptions.rst:584 msgid "" "The exit status or error message that is passed to the constructor. " "(Defaults to ``None``.)" @@ -960,7 +966,7 @@ msgstr "" "Yapıcıya aktarılan çıkış durumu veya hata mesajı. (Varsayılan değer " "``None``.)" -#: library/exceptions.rst:584 +#: library/exceptions.rst:590 msgid "" "Raised when an operation or function is applied to an object of " "inappropriate type. The associated value is a string giving details about " @@ -970,7 +976,7 @@ msgstr "" "oluşur. İlişkili değer, tür uyuşmazlığı hakkında ayrıntılar veren bir " "dizedir." -#: library/exceptions.rst:587 +#: library/exceptions.rst:593 msgid "" "This exception may be raised by user code to indicate that an attempted " "operation on an object is not supported, and is not meant to be. If an " @@ -983,7 +989,7 @@ msgstr "" "bir uygulama sağlamamışsa, :exc:`NotImplementedError` oluşması gereken uygun " "istisnadır." -#: library/exceptions.rst:592 +#: library/exceptions.rst:598 msgid "" "Passing arguments of the wrong type (e.g. passing a :class:`list` when an :" "class:`int` is expected) should result in a :exc:`TypeError`, but passing " @@ -995,7 +1001,7 @@ msgstr "" "yanlış değere sahip argümanlar geçirmek (örneğin beklenen sınırların dışında " "bir sayı) bir :exc:`ValueError` ile sonuçlanmalıdır." -#: library/exceptions.rst:599 +#: library/exceptions.rst:605 msgid "" "Raised when a reference is made to a local variable in a function or method, " "but no value has been bound to that variable. This is a subclass of :exc:" @@ -1005,7 +1011,7 @@ msgstr "" "ancak bu değişkene herhangi bir değer bağlanmadığında ortaya çıkar. Bu, :exc:" "`NameError` alt sınıfıdır." -#: library/exceptions.rst:606 +#: library/exceptions.rst:612 msgid "" "Raised when a Unicode-related encoding or decoding error occurs. It is a " "subclass of :exc:`ValueError`." @@ -1013,7 +1019,7 @@ msgstr "" "Unicode ile ilgili bir kodlama veya kod çözme hatası oluştuğunda ortaya " "çıkar. Bu, :exc:`ValueError` alt sınıfıdır." -#: library/exceptions.rst:609 +#: library/exceptions.rst:615 msgid "" ":exc:`UnicodeError` has attributes that describe the encoding or decoding " "error. For example, ``err.object[err.start:err.end]`` gives the particular " @@ -1023,27 +1029,27 @@ msgstr "" "tanımlayan özniteliklere sahiptir. Örneğin, ``err.object[err.start:err." "end]`` codec'in başarısız olduğu belirli geçersiz girdiyi verir." -#: library/exceptions.rst:615 +#: library/exceptions.rst:621 msgid "The name of the encoding that raised the error." msgstr "Hataya neden olan kodlamanın adı." -#: library/exceptions.rst:619 +#: library/exceptions.rst:625 msgid "A string describing the specific codec error." msgstr "Belirli kodek hatasını açıklayan bir dize." -#: library/exceptions.rst:623 +#: library/exceptions.rst:629 msgid "The object the codec was attempting to encode or decode." msgstr "Kodek'in kodlamaya veya kodunu çözmeye çalıştığı nesne." -#: library/exceptions.rst:627 +#: library/exceptions.rst:633 msgid "The first index of invalid data in :attr:`object`." msgstr ":attr:`object` içindeki geçersiz verilerin ilk indeksi." -#: library/exceptions.rst:631 +#: library/exceptions.rst:637 msgid "The index after the last invalid data in :attr:`object`." msgstr ":attr:`object` içindeki son geçersiz veriden sonraki dizin." -#: library/exceptions.rst:636 +#: library/exceptions.rst:642 msgid "" "Raised when a Unicode-related error occurs during encoding. It is a " "subclass of :exc:`UnicodeError`." @@ -1051,7 +1057,7 @@ msgstr "" "Kodlama sırasında Unicode ile ilgili bir hata oluştuğunda ortaya çıkar. Bu :" "exc:`UnicodeError` alt sınıfıdır." -#: library/exceptions.rst:642 +#: library/exceptions.rst:648 msgid "" "Raised when a Unicode-related error occurs during decoding. It is a " "subclass of :exc:`UnicodeError`." @@ -1059,7 +1065,7 @@ msgstr "" "Kod çözme sırasında Unicode ile ilgili bir hata oluştuğunda ortaya çıkar. " "Bu :exc:`UnicodeError` alt sınıfıdır." -#: library/exceptions.rst:648 +#: library/exceptions.rst:654 msgid "" "Raised when a Unicode-related error occurs during translating. It is a " "subclass of :exc:`UnicodeError`." @@ -1067,7 +1073,7 @@ msgstr "" "Çeviri sırasında Unicode ile ilgili bir hata oluştuğunda ortaya çıkar. Bu :" "exc:`UnicodeError` alt sınıfıdır." -#: library/exceptions.rst:654 +#: library/exceptions.rst:660 msgid "" "Raised when an operation or function receives an argument that has the right " "type but an inappropriate value, and the situation is not described by a " @@ -1077,7 +1083,7 @@ msgstr "" "bir argüman aldığında ve durum :exc:`IndexError` gibi daha kesin bir istisna " "ile tanımlanmadığında ortaya çıkar." -#: library/exceptions.rst:661 +#: library/exceptions.rst:667 msgid "" "Raised when the second argument of a division or modulo operation is zero. " "The associated value is a string indicating the type of the operands and the " @@ -1087,7 +1093,7 @@ msgstr "" "ortaya çıkar. İlişkili değer, işlenenlerin ve işlemin türünü belirten bir " "dizedir." -#: library/exceptions.rst:666 +#: library/exceptions.rst:672 msgid "" "The following exceptions are kept for compatibility with previous versions; " "starting from Python 3.3, they are aliases of :exc:`OSError`." @@ -1095,15 +1101,15 @@ msgstr "" "Aşağıdaki istisnalar önceki sürümlerle uyumluluk için tutulur; Python " "3.3'ten başlayarak, :exc:`OSError` takma adlarıdır." -#: library/exceptions.rst:675 +#: library/exceptions.rst:681 msgid "Only available on Windows." msgstr "Yalnızca Windows'ta kullanılabilir." -#: library/exceptions.rst:679 +#: library/exceptions.rst:685 msgid "OS exceptions" msgstr "İşletim sistemi istisnaları(ES exceptions)" -#: library/exceptions.rst:681 +#: library/exceptions.rst:687 msgid "" "The following exceptions are subclasses of :exc:`OSError`, they get raised " "depending on the system error code." @@ -1111,7 +1117,7 @@ msgstr "" "Aşağıdaki istisnalar :exc:`OSError` alt sınıflarıdır, sistem hata koduna " "bağlı olarak ortaya çıkarlar." -#: library/exceptions.rst:686 +#: library/exceptions.rst:692 msgid "" "Raised when an operation would block on an object (e.g. socket) set for non-" "blocking operation. Corresponds to :c:data:`errno` :py:const:`~errno." @@ -1123,7 +1129,7 @@ msgstr "" "const:`~errno.EAGAIN`, :py:const:`~errno.EALREADY`, :py:const:`~errno." "EWOULDBLOCK` ve :py:const:`~errno.EINPROGRESS` değerlerine karşılık gelir." -#: library/exceptions.rst:691 +#: library/exceptions.rst:697 msgid "" "In addition to those of :exc:`OSError`, :exc:`BlockingIOError` can have one " "more attribute:" @@ -1131,7 +1137,7 @@ msgstr "" ":exc:`OSError` özelliğine ek olarak, :exc:`BlockingIOError` bir özelliğe " "daha sahip olabilir:" -#: library/exceptions.rst:696 +#: library/exceptions.rst:702 msgid "" "An integer containing the number of characters written to the stream before " "it blocked. This attribute is available when using the buffered I/O classes " @@ -1141,7 +1147,7 @@ msgstr "" "kullanırken, akışa yazılmadan önce engellendiğinde yazılan karakterlerin " "sayısını içeren bir tamsayı içerir.\"" -#: library/exceptions.rst:702 +#: library/exceptions.rst:708 msgid "" "Raised when an operation on a child process failed. Corresponds to :c:data:" "`errno` :py:const:`~errno.ECHILD`." @@ -1149,11 +1155,11 @@ msgstr "" "Bir alt süreç(child process) üzerindeki bir işlem başarısız olduğunda " "yükseltilir. Karşılığı :c:data:`errno` :py:const:`~errno.ECHILD`." -#: library/exceptions.rst:707 +#: library/exceptions.rst:713 msgid "A base class for connection-related issues." msgstr "Bağlantı ile ilgili konular için bir temel sınıf." -#: library/exceptions.rst:709 +#: library/exceptions.rst:715 msgid "" "Subclasses are :exc:`BrokenPipeError`, :exc:`ConnectionAbortedError`, :exc:" "`ConnectionRefusedError` and :exc:`ConnectionResetError`." @@ -1161,7 +1167,7 @@ msgstr "" "Alt sınıflar :exc:`BrokenPipeError`, :exc:`ConnectionAbortedError`, :exc:" "`ConnectionRefusedError` ve :exc:`ConnectionResetError`." -#: library/exceptions.rst:714 +#: library/exceptions.rst:720 msgid "" "A subclass of :exc:`ConnectionError`, raised when trying to write on a pipe " "while the other end has been closed, or trying to write on a socket which " @@ -1173,7 +1179,7 @@ msgstr "" "çalışıldığında ortaya çıkar. :c:data:`errno` :py:const:`~errno.EPIPE` ve :py:" "const:`~errno.ESHUTDOWN` değerlerine karşılık gelir." -#: library/exceptions.rst:721 +#: library/exceptions.rst:727 msgid "" "A subclass of :exc:`ConnectionError`, raised when a connection attempt is " "aborted by the peer. Corresponds to :c:data:`errno` :py:const:`~errno." @@ -1183,7 +1189,7 @@ msgstr "" "exc:`ConnectionError` alt sınıfı. Karşılığı :c:data:`errno` :py:const:" "`~errno.ECONNABORTED`." -#: library/exceptions.rst:727 +#: library/exceptions.rst:733 msgid "" "A subclass of :exc:`ConnectionError`, raised when a connection attempt is " "refused by the peer. Corresponds to :c:data:`errno` :py:const:`~errno." @@ -1193,7 +1199,7 @@ msgstr "" "`ConnectionError` alt sınıfı. Karşılığı :c:data:`errno` :py:const:`~errno." "ECONNREFUSED`." -#: library/exceptions.rst:733 +#: library/exceptions.rst:739 msgid "" "A subclass of :exc:`ConnectionError`, raised when a connection is reset by " "the peer. Corresponds to :c:data:`errno` :py:const:`~errno.ECONNRESET`." @@ -1202,7 +1208,7 @@ msgstr "" "`ConnectionError` alt sınıfı. Karşılığı :c:data:`errno` :py:const:`~errno." "ECONNRESET`." -#: library/exceptions.rst:739 +#: library/exceptions.rst:745 msgid "" "Raised when trying to create a file or directory which already exists. " "Corresponds to :c:data:`errno` :py:const:`~errno.EEXIST`." @@ -1210,7 +1216,7 @@ msgstr "" "Zaten var olan bir dosya veya dizin oluşturulmaya çalışıldığında ortaya " "çıkar. Karşılığı :c:data:`errno` :py:const:`~errno.EEXIST`." -#: library/exceptions.rst:744 +#: library/exceptions.rst:750 msgid "" "Raised when a file or directory is requested but doesn't exist. Corresponds " "to :c:data:`errno` :py:const:`~errno.ENOENT`." @@ -1218,7 +1224,7 @@ msgstr "" "Bir dosya veya dizin isteğinde(request) ancak mevcut olmadığında ortaya " "çıakr. Karşılığı :c:data:`errno` :py:const:`~errno.ENOENT`." -#: library/exceptions.rst:749 +#: library/exceptions.rst:755 msgid "" "Raised when a system call is interrupted by an incoming signal. Corresponds " "to :c:data:`errno` :py:const:`~errno.EINTR`." @@ -1226,7 +1232,7 @@ msgstr "" "Bir sistem çağrısı gelen bir sinyal tarafından kesintiye uğradığında ortaya " "çıkar. Karşılığı :c:data:`errno` :py:const:`~errno.EINTR`." -#: library/exceptions.rst:752 +#: library/exceptions.rst:758 msgid "" "Python now retries system calls when a syscall is interrupted by a signal, " "except if the signal handler raises an exception (see :pep:`475` for the " @@ -1237,7 +1243,7 @@ msgstr "" "bakın), :exc:`InterruptedError` istisnası yükseltmek yerine sistem " "çağrılarını tekrar deniyor." -#: library/exceptions.rst:759 +#: library/exceptions.rst:765 msgid "" "Raised when a file operation (such as :func:`os.remove`) is requested on a " "directory. Corresponds to :c:data:`errno` :py:const:`~errno.EISDIR`." @@ -1245,7 +1251,7 @@ msgstr "" "Bir dizin üzerinde bir dosya işlemi (örneğin :func:`os.remove`) istendiğinde " "ortaya çıkar. Karşılığı :c:data:`errno` :py:const:`~errno.EISDIR`." -#: library/exceptions.rst:765 +#: library/exceptions.rst:771 msgid "" "Raised when a directory operation (such as :func:`os.listdir`) is requested " "on something which is not a directory. On most POSIX platforms, it may also " @@ -1258,7 +1264,7 @@ msgstr "" "bir dosyayı bir dizinmiş gibi açmaya veya geçmeye çalışırsa da ortaya " "çıkabilir. Karşılığı :c:data:`errno` :py:const:`~errno.ENOTDIR`." -#: library/exceptions.rst:773 +#: library/exceptions.rst:779 msgid "" "Raised when trying to run an operation without the adequate access rights - " "for example filesystem permissions. Corresponds to :c:data:`errno` :py:const:" @@ -1270,7 +1276,7 @@ msgstr "" "`~errno.EACCES`, :py:const:`~errno.EPERM` ve :py:const:`~errno.ENOTCAPABLE` " "değerlerine karşılık gelir." -#: library/exceptions.rst:778 +#: library/exceptions.rst:784 msgid "" "WASI's :py:const:`~errno.ENOTCAPABLE` is now mapped to :exc:" "`PermissionError`." @@ -1278,7 +1284,7 @@ msgstr "" "WASI'nin :py:const:`~errno.ENOTCAPABLE` ifadesi artık :exc:`PermissionError` " "ile eşleştirilmiştir." -#: library/exceptions.rst:784 +#: library/exceptions.rst:790 msgid "" "Raised when a given process doesn't exist. Corresponds to :c:data:`errno` :" "py:const:`~errno.ESRCH`." @@ -1286,7 +1292,7 @@ msgstr "" "Belirli bir süreç mevcut olmadığında ortaya çıkar. Karşılığı :c:data:" "`errno` :py:const:`~errno.ESRCH`." -#: library/exceptions.rst:789 +#: library/exceptions.rst:795 msgid "" "Raised when a system function timed out at the system level. Corresponds to :" "c:data:`errno` :py:const:`~errno.ETIMEDOUT`." @@ -1294,21 +1300,21 @@ msgstr "" "Bir sistem işlevi sistem düzeyinde zaman aşımına uğradığında ortaya çıkar. " "Karşılığı :c:data:`errno` :py:const:`~errno.ETIMEDOUT`." -#: library/exceptions.rst:792 +#: library/exceptions.rst:798 msgid "All the above :exc:`OSError` subclasses were added." msgstr "Yukarıdaki tüm :exc:`OSError` alt sınıfları eklendi." -#: library/exceptions.rst:798 +#: library/exceptions.rst:804 msgid ":pep:`3151` - Reworking the OS and IO exception hierarchy" msgstr "" ":pep:`3151` - İşletim sistemi ve IO istisna hiyerarşisinin yeniden " "düzenlenmesi" -#: library/exceptions.rst:804 +#: library/exceptions.rst:810 msgid "Warnings" msgstr "Uyarılar" -#: library/exceptions.rst:806 +#: library/exceptions.rst:812 msgid "" "The following exceptions are used as warning categories; see the :ref:" "`warning-categories` documentation for more details." @@ -1316,15 +1322,15 @@ msgstr "" "Aşağıdaki istisnalar uyarı kategorileri olarak kullanılır; daha fazla " "ayrıntı için :ref:`warning-categories` belgesine bakın." -#: library/exceptions.rst:811 +#: library/exceptions.rst:817 msgid "Base class for warning categories." msgstr "Uyarı kategorileri için temel sınıf." -#: library/exceptions.rst:816 +#: library/exceptions.rst:822 msgid "Base class for warnings generated by user code." msgstr "Kullanıcı kodu tarafından oluşturulan uyarılar için temel sınıf." -#: library/exceptions.rst:821 +#: library/exceptions.rst:827 msgid "" "Base class for warnings about deprecated features when those warnings are " "intended for other Python developers." @@ -1332,7 +1338,7 @@ msgstr "" "Kullanımdan kaldırılan özelliklerle ilgili uyarılar diğer Python " "geliştiricilerine yönelik olduğunda bu uyarılar için temel sınıf." -#: library/exceptions.rst:824 +#: library/exceptions.rst:830 msgid "" "Ignored by the default warning filters, except in the ``__main__`` module (:" "pep:`565`). Enabling the :ref:`Python Development Mode ` shows this " @@ -1342,11 +1348,11 @@ msgstr "" "tarafından yok sayılır. :ref:`Python Geliştirme Modu ` " "etkinleştirildiğinde bu uyarı gösterilir." -#: library/exceptions.rst:844 +#: library/exceptions.rst:850 msgid "The deprecation policy is described in :pep:`387`." msgstr "Kullanımdan kaldırma politikası :pep:`387` bölümünde açıklanmaktadır." -#: library/exceptions.rst:833 +#: library/exceptions.rst:839 msgid "" "Base class for warnings about features which are obsolete and expected to be " "deprecated in the future, but are not deprecated at the moment." @@ -1354,7 +1360,7 @@ msgstr "" "Eski olan ve gelecekte kullanımdan kaldırılması beklenen, ancak şu anda " "kullanımdan kaldırılmayan özelliklerle ilgili uyarılar için temel sınıf." -#: library/exceptions.rst:837 +#: library/exceptions.rst:843 msgid "" "This class is rarely used as emitting a warning about a possible upcoming " "deprecation is unusual, and :exc:`DeprecationWarning` is preferred for " @@ -1365,7 +1371,7 @@ msgstr "" "`DeprecationWarning` zaten aktif olan kullanımdan kaldırmalar için tercih " "edilir." -#: library/exceptions.rst:867 library/exceptions.rst:894 +#: library/exceptions.rst:873 library/exceptions.rst:900 msgid "" "Ignored by the default warning filters. Enabling the :ref:`Python " "Development Mode ` shows this warning." @@ -1373,16 +1379,16 @@ msgstr "" "Varsayılan uyarı filtreleri tarafından yok sayılır. :ref:`Python Geliştirme " "Modu ` etkinleştirildiğinde bu uyarı gösterilir." -#: library/exceptions.rst:849 +#: library/exceptions.rst:855 msgid "Base class for warnings about dubious syntax." msgstr "Şüpheli sözdizimiyle ilgili uyarılar için temel sınıf." -#: library/exceptions.rst:854 +#: library/exceptions.rst:860 msgid "Base class for warnings about dubious runtime behavior." msgstr "" "Şüpheli çalışma zamanı davranışları hakkındaki uyarılar için temel sınıf." -#: library/exceptions.rst:859 +#: library/exceptions.rst:865 msgid "" "Base class for warnings about deprecated features when those warnings are " "intended for end users of applications that are written in Python." @@ -1391,38 +1397,38 @@ msgstr "" "uygulamaların son kullanıcılarına yönelik olduğunda bu uyarılar için temel " "sınıf." -#: library/exceptions.rst:865 +#: library/exceptions.rst:871 msgid "Base class for warnings about probable mistakes in module imports." msgstr "" "Modül içe aktarmalarındaki olası hatalar hakkında uyarılar için temel sınıf." -#: library/exceptions.rst:873 +#: library/exceptions.rst:879 msgid "Base class for warnings related to Unicode." msgstr "Unicode ile ilgili uyarılar için temel sınıf." -#: library/exceptions.rst:878 +#: library/exceptions.rst:884 msgid "Base class for warnings related to encodings." msgstr "Kodlamalarla ilgili uyarılar için temel sınıf." -#: library/exceptions.rst:880 +#: library/exceptions.rst:886 msgid "See :ref:`io-encoding-warning` for details." msgstr "Ayrıntılar için :ref:`io-encoding-warning` sayfasına bakın." -#: library/exceptions.rst:887 +#: library/exceptions.rst:893 msgid "" "Base class for warnings related to :class:`bytes` and :class:`bytearray`." msgstr "" ":class:`bytes` ve :class:`bytearray` ile ilgili uyarılar için temel sınıf." -#: library/exceptions.rst:892 +#: library/exceptions.rst:898 msgid "Base class for warnings related to resource usage." msgstr "Kaynak kullanımıyla ilgili uyarılar için temel sınıf." -#: library/exceptions.rst:903 +#: library/exceptions.rst:909 msgid "Exception groups" msgstr "İstisna grupları" -#: library/exceptions.rst:905 +#: library/exceptions.rst:911 msgid "" "The following are used when it is necessary to raise multiple unrelated " "exceptions. They are part of the exception hierarchy so they can be handled " @@ -1436,7 +1442,7 @@ msgstr "" "içerdikleri istisnaların türlerine göre alt gruplarını eşleştiren :keyword:" "`except*` tarafından tanınırlar." -#: library/exceptions.rst:914 +#: library/exceptions.rst:920 msgid "" "Both of these exception types wrap the exceptions in the sequence ``excs``. " "The ``msg`` parameter must be a string. The difference between the two " @@ -1454,7 +1460,7 @@ msgstr "" "sayesinde ``except Exception`` bir :exc:`ExceptionGroup` u yakalar ancak :" "exc:`BaseExceptionGroup` u yakalayamaz." -#: library/exceptions.rst:922 +#: library/exceptions.rst:928 msgid "" "The :exc:`BaseExceptionGroup` constructor returns an :exc:`ExceptionGroup` " "rather than a :exc:`BaseExceptionGroup` if all contained exceptions are :exc:" @@ -1469,11 +1475,11 @@ msgstr "" "herhangi bir istisna bir :exc:`Exception` alt sınıfı değilse bir :exc:" "`TypeError` yükseltir." -#: library/exceptions.rst:931 +#: library/exceptions.rst:937 msgid "The ``msg`` argument to the constructor. This is a read-only attribute." msgstr "Kurucunun ``msg`` argümanı. Bu salt okunur bir niteliktir." -#: library/exceptions.rst:935 +#: library/exceptions.rst:941 msgid "" "A tuple of the exceptions in the ``excs`` sequence given to the constructor. " "This is a read-only attribute." @@ -1481,7 +1487,7 @@ msgstr "" "Yapıcıya verilen ``excs`` dizisindeki istisnaların bir demeti(tuple). Bu " "salt okunur bir özniteliktir." -#: library/exceptions.rst:940 +#: library/exceptions.rst:946 msgid "" "Returns an exception group that contains only the exceptions from the " "current group that match *condition*, or ``None`` if the result is empty." @@ -1489,7 +1495,7 @@ msgstr "" "Yalnızca geçerli gruptaki *condition* ile eşleşen istisnaları içeren bir " "istisna grubu veya sonuç boşsa ``None`` döndürür." -#: library/exceptions.rst:943 +#: library/exceptions.rst:949 msgid "" "The condition can be either a function that accepts an exception and returns " "true for those that should be in the subgroup, or it can be an exception " @@ -1502,7 +1508,7 @@ msgstr "" "etmek için kullanılan bir istisna türü veya istisna türleri demeti(tuple) de " "olabilir." -#: library/exceptions.rst:948 +#: library/exceptions.rst:954 msgid "" "The nesting structure of the current exception is preserved in the result, " "as are the values of its :attr:`message`, :attr:`~BaseException." @@ -1516,7 +1522,7 @@ msgstr "" "__notes__` alanlarının değerleri de korunur. Boş iç içe gruplar sonuçtan " "çıkarılır." -#: library/exceptions.rst:955 +#: library/exceptions.rst:961 msgid "" "The condition is checked for all exceptions in the nested exception group, " "including the top-level and any nested exception groups. If the condition is " @@ -1526,7 +1532,7 @@ msgstr "" "üzere, iç içe geçmiş istisna grubundaki tüm istisnalar için kontrol edilir. " "Koşul böyle bir istisna grubu için doğruysa, sonuca tam olarak dahil edilir." -#: library/exceptions.rst:961 +#: library/exceptions.rst:967 msgid "" "Like :meth:`subgroup`, but returns the pair ``(match, rest)`` where " "``match`` is ``subgroup(condition)`` and ``rest`` is the remaining non-" @@ -1535,7 +1541,7 @@ msgstr "" ":meth:`subgroup` gibi, ancak ``(match, rest)`` çiftini döndürür; burada " "``match`` ``subgroup(condition)`` ve ``rest`` kalan eşleşmeyen kısımdır." -#: library/exceptions.rst:967 +#: library/exceptions.rst:973 msgid "" "Returns an exception group with the same :attr:`message`, but which wraps " "the exceptions in ``excs``." @@ -1543,7 +1549,7 @@ msgstr "" "Aynı :attr:`message` ile bir istisna grubu döndürür, ancak istisnaları " "``excs`` içine sarar." -#: library/exceptions.rst:970 +#: library/exceptions.rst:976 #, fuzzy msgid "" "This method is used by :meth:`subgroup` and :meth:`split`, which are used in " @@ -1556,7 +1562,7 @@ msgstr "" "yerine alt sınıfın örneklerini döndürmesini sağlamak için bu metodu geçersiz " "kılması gerekir." -#: library/exceptions.rst:976 +#: library/exceptions.rst:982 msgid "" ":meth:`subgroup` and :meth:`split` copy the :attr:`~BaseException." "__traceback__`, :attr:`~BaseException.__cause__`, :attr:`~BaseException." @@ -1570,7 +1576,7 @@ msgstr "" "`derive` tarafından döndürülene kopyalar, böylece bu alanların :meth:" "`derive` tarafından güncellenmesi gerekmez." -#: library/exceptions.rst:983 +#: library/exceptions.rst:989 msgid "" ">>> class MyGroup(ExceptionGroup):\n" "... def derive(self, excs):\n" @@ -1599,7 +1605,7 @@ msgid "" "True" msgstr "" -#: library/exceptions.rst:1009 +#: library/exceptions.rst:1015 msgid "" "Note that :exc:`BaseExceptionGroup` defines :meth:`~object.__new__`, so " "subclasses that need a different constructor signature need to override that " @@ -1613,7 +1619,7 @@ msgstr "" "gerekir. Örneğin, aşağıda bir exit_code kabul eden ve grubun mesajını bundan " "oluşturan bir istisna grubu alt sınıfı tanımlanmaktadır:" -#: library/exceptions.rst:1015 +#: library/exceptions.rst:1021 msgid "" "class Errors(ExceptionGroup):\n" " def __new__(cls, errors, exit_code):\n" @@ -1625,7 +1631,7 @@ msgid "" " return Errors(excs, self.exit_code)" msgstr "" -#: library/exceptions.rst:1024 +#: library/exceptions.rst:1030 msgid "" "Like :exc:`ExceptionGroup`, any subclass of :exc:`BaseExceptionGroup` which " "is also a subclass of :exc:`Exception` can only wrap instances of :exc:" @@ -1635,15 +1641,15 @@ msgstr "" "exc:`Exception` alt sınıfı da yalnızca :exc:`Exception` örneklerini " "sarabilir." -#: library/exceptions.rst:1032 +#: library/exceptions.rst:1038 msgid "Exception hierarchy" msgstr "İstisna hiyerarşisi" -#: library/exceptions.rst:1034 +#: library/exceptions.rst:1040 msgid "The class hierarchy for built-in exceptions is:" msgstr "Gömülü istisnalar için sınıf hiyerarşisi şöyledir:" -#: library/exceptions.rst:1036 +#: library/exceptions.rst:1042 msgid "" "BaseException\n" " ├── BaseExceptionGroup\n" @@ -1754,10 +1760,10 @@ msgstr "__suppress_context__ (exception attribute)" msgid "assert" msgstr "assert" -#: library/exceptions.rst:345 +#: library/exceptions.rst:347 msgid "module" msgstr "module" -#: library/exceptions.rst:345 +#: library/exceptions.rst:347 msgid "errno" msgstr "errno" diff --git a/library/filecmp.po b/library/filecmp.po index 0154f2b14..eddc723ed 100644 --- a/library/filecmp.po +++ b/library/filecmp.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -245,6 +245,6 @@ msgid "" "... for sub_dcmp in dcmp.subdirs.values():\n" "... print_diff_files(sub_dcmp)\n" "...\n" -">>> dcmp = dircmp('dir1', 'dir2') \n" -">>> print_diff_files(dcmp) " +">>> dcmp = dircmp('dir1', 'dir2')\n" +">>> print_diff_files(dcmp)" msgstr "" diff --git a/library/fnmatch.po b/library/fnmatch.po index a638d06db..f3b80a082 100644 --- a/library/fnmatch.po +++ b/library/fnmatch.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -88,12 +88,20 @@ msgstr "" #: library/fnmatch.rst:49 msgid "" -"Also note that :func:`functools.lru_cache` with the *maxsize* of 32768 is " -"used to cache the compiled regex patterns in the following functions: :func:" -"`fnmatch`, :func:`fnmatchcase`, :func:`.filter`." +"Unless stated otherwise, \"filename string\" and \"pattern string\" either " +"refer to :class:`str` or ``ISO-8859-1`` encoded :class:`bytes` objects. Note " +"that the functions documented below do not allow to mix a :class:`!bytes` " +"pattern with a :class:`!str` filename, and vice-versa." msgstr "" -#: library/fnmatch.rst:55 +#: library/fnmatch.rst:54 +msgid "" +"Finally, note that :func:`functools.lru_cache` with a *maxsize* of 32768 is " +"used to cache the (typed) compiled regex patterns in the following " +"functions: :func:`fnmatch`, :func:`fnmatchcase`, :func:`.filter`." +msgstr "" + +#: library/fnmatch.rst:61 msgid "" "Test whether the filename string *name* matches the pattern string *pat*, " "returning ``True`` or ``False``. Both parameters are case-normalized using :" @@ -102,13 +110,13 @@ msgid "" "operating system." msgstr "" -#: library/fnmatch.rst:61 +#: library/fnmatch.rst:67 msgid "" "This example will print all file names in the current directory with the " "extension ``.txt``::" msgstr "" -#: library/fnmatch.rst:64 +#: library/fnmatch.rst:70 msgid "" "import fnmatch\n" "import os\n" @@ -118,35 +126,35 @@ msgid "" " print(file)" msgstr "" -#: library/fnmatch.rst:74 +#: library/fnmatch.rst:80 msgid "" "Test whether the filename string *name* matches the pattern string *pat*, " "returning ``True`` or ``False``; the comparison is case-sensitive and does " "not apply :func:`os.path.normcase`." msgstr "" -#: library/fnmatch.rst:81 +#: library/fnmatch.rst:87 msgid "" -"Construct a list from those elements of the :term:`iterable` *names* that " -"match pattern *pat*. It is the same as ``[n for n in names if fnmatch(n, " -"pat)]``, but implemented more efficiently." +"Construct a list from those elements of the :term:`iterable` of filename " +"strings *names* that match the pattern string *pat*. It is the same as ``[n " +"for n in names if fnmatch(n, pat)]``, but implemented more efficiently." msgstr "" -#: library/fnmatch.rst:89 +#: library/fnmatch.rst:95 msgid "" "Return the shell-style pattern *pat* converted to a regular expression for " -"using with :func:`re.match`." +"using with :func:`re.match`. The pattern is expected to be a :class:`str`." msgstr "" -#: library/fnmatch.rst:92 +#: library/fnmatch.rst:98 msgid "Example:" msgstr "" -#: library/fnmatch.rst:106 +#: library/fnmatch.rst:112 msgid "Module :mod:`glob`" msgstr "" -#: library/fnmatch.rst:107 +#: library/fnmatch.rst:113 msgid "Unix shell-style path expansion." msgstr "" diff --git a/library/functions.po b/library/functions.po index 74464a713..4af5a2a1f 100644 --- a/library/functions.po +++ b/library/functions.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2023-03-08 10:13-0500\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -1833,9 +1833,9 @@ msgstr "" #: library/functions.rst:952 msgid "" -">>> s = input('--> ') \n" +">>> s = input('--> ')\n" "--> Monty Python's Flying Circus\n" -">>> s \n" +">>> s\n" "\"Monty Python's Flying Circus\"" msgstr "" diff --git a/library/getopt.po b/library/getopt.po index a32ea796a..e8ad0cae3 100644 --- a/library/getopt.po +++ b/library/getopt.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -124,15 +124,44 @@ msgstr "" msgid "An example using only Unix style options:" msgstr "" -#: library/getopt.rst:105 +#: library/getopt.rst:95 +msgid "" +">>> import getopt\n" +">>> args = '-a -b -cfoo -d bar a1 a2'.split()\n" +">>> args\n" +"['-a', '-b', '-cfoo', '-d', 'bar', 'a1', 'a2']\n" +">>> optlist, args = getopt.getopt(args, 'abc:d:')\n" +">>> optlist\n" +"[('-a', ''), ('-b', ''), ('-c', 'foo'), ('-d', 'bar')]\n" +">>> args\n" +"['a1', 'a2']" +msgstr "" + +#: library/getopt.rst:107 msgid "Using long option names is equally easy:" msgstr "" -#: library/getopt.rst:118 -msgid "In a script, typical usage is something like this::" +#: library/getopt.rst:109 +msgid "" +">>> s = '--condition=foo --testing --output-file abc.def -x a1 a2'\n" +">>> args = s.split()\n" +">>> args\n" +"['--condition=foo', '--testing', '--output-file', 'abc.def', '-x', 'a1', " +"'a2']\n" +">>> optlist, args = getopt.getopt(args, 'x', [\n" +"... 'condition=', 'output-file=', 'testing'])\n" +">>> optlist\n" +"[('--condition', 'foo'), ('--testing', ''), ('--output-file', 'abc.def'), ('-" +"x', '')]\n" +">>> args\n" +"['a1', 'a2']" +msgstr "" + +#: library/getopt.rst:122 +msgid "In a script, typical usage is something like this:" msgstr "" -#: library/getopt.rst:120 +#: library/getopt.rst:124 msgid "" "import getopt, sys\n" "\n" @@ -164,14 +193,14 @@ msgid "" " main()" msgstr "" -#: library/getopt.rst:147 +#: library/getopt.rst:153 msgid "" "Note that an equivalent command line interface could be produced with less " "code and more informative help and error messages by using the :mod:" -"`argparse` module::" +"`argparse` module:" msgstr "" -#: library/getopt.rst:150 +#: library/getopt.rst:156 msgid "" "import argparse\n" "\n" @@ -184,10 +213,10 @@ msgid "" " # ... do something with args.verbose .." msgstr "" -#: library/getopt.rst:162 +#: library/getopt.rst:170 msgid "Module :mod:`argparse`" msgstr "" -#: library/getopt.rst:163 +#: library/getopt.rst:171 msgid "Alternative command line option and argument parsing library." msgstr "" diff --git a/library/http.cookies.po b/library/http.cookies.po index e7fdce535..79d8bde49 100644 --- a/library/http.cookies.po +++ b/library/http.cookies.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -132,9 +132,9 @@ msgstr "" #: library/http.cookies.rst:100 msgid "" "Return a string representation suitable to be sent as HTTP headers. *attrs* " -"and *header* are sent to each :class:`Morsel`'s :meth:`output` method. *sep* " -"is used to join the headers together, and is by default the combination " -"``'\\r\\n'`` (CRLF)." +"and *header* are sent to each :class:`Morsel`'s :meth:`~Morsel.output` " +"method. *sep* is used to join the headers together, and is by default the " +"combination ``'\\r\\n'`` (CRLF)." msgstr "" #: library/http.cookies.rst:108 diff --git a/library/http.server.po b/library/http.server.po index 5331d8808..1dc4127a8 100644 --- a/library/http.server.po +++ b/library/http.server.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -525,162 +525,158 @@ msgid "" "attribute :attr:`index_pages`." msgstr "" -#: library/http.server.rst:423 +#: library/http.server.rst:424 msgid "" -":mod:`http.server` can also be invoked directly using the :option:`-m` " -"switch of the interpreter. Similar to the previous example, this serves " -"files relative to the current directory::" -msgstr "" - -#: library/http.server.rst:427 -msgid "python -m http.server" +"This class is used to serve either files or output of CGI scripts from the " +"current directory and below. Note that mapping HTTP hierarchic structure to " +"local directory structure is exactly as in :class:`SimpleHTTPRequestHandler`." msgstr "" -#: library/http.server.rst:429 +#: library/http.server.rst:430 msgid "" -"The server listens to port 8000 by default. The default can be overridden by " -"passing the desired port number as an argument::" +"CGI scripts run by the :class:`CGIHTTPRequestHandler` class cannot execute " +"redirects (HTTP code 302), because code 200 (script output follows) is sent " +"prior to execution of the CGI script. This pre-empts the status code." msgstr "" -#: library/http.server.rst:432 -msgid "python -m http.server 9000" +#: library/http.server.rst:435 +msgid "" +"The class will however, run the CGI script, instead of serving it as a file, " +"if it guesses it to be a CGI script. Only directory-based CGI are used --- " +"the other common server configuration is to treat special extensions as " +"denoting CGI scripts." msgstr "" -#: library/http.server.rst:434 +#: library/http.server.rst:440 msgid "" -"By default, the server binds itself to all interfaces. The option ``-b/--" -"bind`` specifies a specific address to which it should bind. Both IPv4 and " -"IPv6 addresses are supported. For example, the following command causes the " -"server to bind to localhost only::" +"The :func:`do_GET` and :func:`do_HEAD` functions are modified to run CGI " +"scripts and serve the output, instead of serving files, if the request leads " +"to somewhere below the ``cgi_directories`` path." msgstr "" -#: library/http.server.rst:439 -msgid "python -m http.server --bind 127.0.0.1" +#: library/http.server.rst:444 +msgid "The :class:`CGIHTTPRequestHandler` defines the following data member:" msgstr "" -#: library/http.server.rst:441 -msgid "Added the ``--bind`` option." +#: library/http.server.rst:448 +msgid "" +"This defaults to ``['/cgi-bin', '/htbin']`` and describes directories to " +"treat as containing CGI scripts." msgstr "" -#: library/http.server.rst:444 -msgid "Support IPv6 in the ``--bind`` option." +#: library/http.server.rst:451 +msgid "The :class:`CGIHTTPRequestHandler` defines the following method:" msgstr "" -#: library/http.server.rst:447 +#: library/http.server.rst:455 msgid "" -"By default, the server uses the current directory. The option ``-d/--" -"directory`` specifies a directory to which it should serve the files. For " -"example, the following command uses a specific directory::" +"This method serves the ``'POST'`` request type, only allowed for CGI " +"scripts. Error 501, \"Can only POST to CGI scripts\", is output when trying " +"to POST to a non-CGI url." msgstr "" -#: library/http.server.rst:451 -msgid "python -m http.server --directory /tmp/" +#: library/http.server.rst:459 +msgid "" +"Note that CGI scripts will be run with UID of user nobody, for security " +"reasons. Problems with the CGI script will be translated to error 403." msgstr "" -#: library/http.server.rst:453 -msgid "Added the ``--directory`` option." +#: library/http.server.rst:466 +msgid "Command-line interface" msgstr "" -#: library/http.server.rst:456 +#: library/http.server.rst:468 msgid "" -"By default, the server is conformant to HTTP/1.0. The option ``-p/--" -"protocol`` specifies the HTTP version to which the server is conformant. For " -"example, the following command runs an HTTP/1.1 conformant server::" +":mod:`http.server` can also be invoked directly using the :option:`-m` " +"switch of the interpreter. The following example illustrates how to serve " +"files relative to the current directory::" msgstr "" -#: library/http.server.rst:460 -msgid "python -m http.server --protocol HTTP/1.1" +#: library/http.server.rst:472 +msgid "python -m http.server [OPTIONS] [port]" msgstr "" -#: library/http.server.rst:462 -msgid "Added the ``--protocol`` option." +#: library/http.server.rst:474 +msgid "The following options are accepted:" msgstr "" -#: library/http.server.rst:467 +#: library/http.server.rst:480 msgid "" -"This class is used to serve either files or output of CGI scripts from the " -"current directory and below. Note that mapping HTTP hierarchic structure to " -"local directory structure is exactly as in :class:`SimpleHTTPRequestHandler`." +"The server listens to port 8000 by default. The default can be overridden by " +"passing the desired port number as an argument::" msgstr "" -#: library/http.server.rst:473 -msgid "" -"CGI scripts run by the :class:`CGIHTTPRequestHandler` class cannot execute " -"redirects (HTTP code 302), because code 200 (script output follows) is sent " -"prior to execution of the CGI script. This pre-empts the status code." +#: library/http.server.rst:483 +msgid "python -m http.server 9000" msgstr "" -#: library/http.server.rst:478 +#: library/http.server.rst:487 msgid "" -"The class will however, run the CGI script, instead of serving it as a file, " -"if it guesses it to be a CGI script. Only directory-based CGI are used --- " -"the other common server configuration is to treat special extensions as " -"denoting CGI scripts." +"Specifies a specific address to which it should bind. Both IPv4 and IPv6 " +"addresses are supported. By default, the server binds itself to all " +"interfaces. For example, the following command causes the server to bind to " +"localhost only::" msgstr "" -#: library/http.server.rst:483 -msgid "" -"The :func:`do_GET` and :func:`do_HEAD` functions are modified to run CGI " -"scripts and serve the output, instead of serving files, if the request leads " -"to somewhere below the ``cgi_directories`` path." +#: library/http.server.rst:492 +msgid "python -m http.server --bind 127.0.0.1" msgstr "" -#: library/http.server.rst:487 -msgid "The :class:`CGIHTTPRequestHandler` defines the following data member:" +#: library/http.server.rst:496 +msgid "Support IPv6 in the ``--bind`` option." msgstr "" -#: library/http.server.rst:491 +#: library/http.server.rst:501 msgid "" -"This defaults to ``['/cgi-bin', '/htbin']`` and describes directories to " -"treat as containing CGI scripts." +"Specifies a directory to which it should serve the files. By default, the " +"server uses the current directory. For example, the following command uses a " +"specific directory::" msgstr "" -#: library/http.server.rst:494 -msgid "The :class:`CGIHTTPRequestHandler` defines the following method:" +#: library/http.server.rst:505 +msgid "python -m http.server --directory /tmp/" msgstr "" -#: library/http.server.rst:498 +#: library/http.server.rst:511 msgid "" -"This method serves the ``'POST'`` request type, only allowed for CGI " -"scripts. Error 501, \"Can only POST to CGI scripts\", is output when trying " -"to POST to a non-CGI url." +"Specifies the HTTP version to which the server is conformant. By default, " +"the server is conformant to HTTP/1.0. For example, the following command " +"runs an HTTP/1.1 conformant server::" msgstr "" -#: library/http.server.rst:502 -msgid "" -"Note that CGI scripts will be run with UID of user nobody, for security " -"reasons. Problems with the CGI script will be translated to error 403." +#: library/http.server.rst:515 +msgid "python -m http.server --protocol HTTP/1.1" msgstr "" -#: library/http.server.rst:505 +#: library/http.server.rst:521 msgid "" ":class:`CGIHTTPRequestHandler` can be enabled in the command line by passing " "the ``--cgi`` option::" msgstr "" -#: library/http.server.rst:508 +#: library/http.server.rst:524 msgid "python -m http.server --cgi" msgstr "" -#: library/http.server.rst:512 +#: library/http.server.rst:528 msgid "" -":class:`CGIHTTPRequestHandler` and the ``--cgi`` command line option are not " +":class:`CGIHTTPRequestHandler` and the ``--cgi`` command-line option are not " "intended for use by untrusted clients and may be vulnerable to exploitation. " "Always use within a secure environment." msgstr "" -#: library/http.server.rst:519 -msgid "Security Considerations" +#: library/http.server.rst:536 +msgid "Security considerations" msgstr "" -#: library/http.server.rst:523 +#: library/http.server.rst:540 msgid "" ":class:`SimpleHTTPRequestHandler` will follow symbolic links when handling " "requests, this makes it possible for files outside of the specified " "directory to be served." msgstr "" -#: library/http.server.rst:527 +#: library/http.server.rst:544 msgid "" "Earlier versions of Python did not scrub control characters from the log " "messages emitted to stderr from ``python -m http.server`` or the default :" @@ -689,7 +685,7 @@ msgid "" "codes to your terminal." msgstr "" -#: library/http.server.rst:533 +#: library/http.server.rst:550 msgid "Control characters are scrubbed in stderr logs." msgstr "" @@ -717,10 +713,10 @@ msgstr "" msgid "httpd" msgstr "" -#: library/http.server.rst:521 +#: library/http.server.rst:538 msgid "http.server" msgstr "" -#: library/http.server.rst:521 +#: library/http.server.rst:538 msgid "security" msgstr "" diff --git a/library/idle.po b/library/idle.po index fbb500c1a..2869f8669 100644 --- a/library/idle.po +++ b/library/idle.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -16,59 +16,59 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: library/idle.rst:10 -msgid "IDLE" +#: library/idle.rst:4 +msgid "IDLE --- Python editor and shell" msgstr "" #: library/idle.rst:8 msgid "**Source code:** :source:`Lib/idlelib/`" msgstr "" -#: library/idle.rst:17 +#: library/idle.rst:20 msgid "IDLE is Python's Integrated Development and Learning Environment." msgstr "" -#: library/idle.rst:19 +#: library/idle.rst:22 msgid "IDLE has the following features:" msgstr "" -#: library/idle.rst:21 +#: library/idle.rst:24 msgid "cross-platform: works mostly the same on Windows, Unix, and macOS" msgstr "" -#: library/idle.rst:23 +#: library/idle.rst:26 msgid "" "Python shell window (interactive interpreter) with colorizing of code input, " "output, and error messages" msgstr "" -#: library/idle.rst:26 +#: library/idle.rst:29 msgid "" "multi-window text editor with multiple undo, Python colorizing, smart " "indent, call tips, auto completion, and other features" msgstr "" -#: library/idle.rst:29 +#: library/idle.rst:32 msgid "" "search within any window, replace within editor windows, and search through " "multiple files (grep)" msgstr "" -#: library/idle.rst:32 +#: library/idle.rst:35 msgid "" "debugger with persistent breakpoints, stepping, and viewing of global and " "local namespaces" msgstr "" -#: library/idle.rst:35 +#: library/idle.rst:38 msgid "configuration, browsers, and other dialogs" msgstr "" -#: library/idle.rst:38 +#: library/idle.rst:41 msgid "Menus" msgstr "" -#: library/idle.rst:40 +#: library/idle.rst:43 msgid "" "IDLE has two main window types, the Shell window and the Editor window. It " "is possible to have multiple editor windows simultaneously. On Windows and " @@ -76,81 +76,81 @@ msgid "" "which window type it is associated with." msgstr "" -#: library/idle.rst:45 +#: library/idle.rst:48 msgid "" "Output windows, such as used for Edit => Find in Files, are a subtype of " "editor window. They currently have the same top menu but a different " "default title and context menu." msgstr "" -#: library/idle.rst:49 +#: library/idle.rst:52 msgid "" "On macOS, there is one application menu. It dynamically changes according " "to the window currently selected. It has an IDLE menu, and some entries " "described below are moved around to conform to Apple guidelines." msgstr "" -#: library/idle.rst:54 +#: library/idle.rst:57 msgid "File menu (Shell and Editor)" msgstr "" -#: library/idle.rst:56 +#: library/idle.rst:59 msgid "New File" msgstr "" -#: library/idle.rst:57 +#: library/idle.rst:60 msgid "Create a new file editing window." msgstr "" -#: library/idle.rst:59 +#: library/idle.rst:62 msgid "Open..." msgstr "" -#: library/idle.rst:60 +#: library/idle.rst:63 msgid "Open an existing file with an Open dialog." msgstr "" -#: library/idle.rst:62 +#: library/idle.rst:65 msgid "Open Module..." msgstr "" -#: library/idle.rst:63 +#: library/idle.rst:66 msgid "Open an existing module (searches sys.path)." msgstr "" -#: library/idle.rst:65 +#: library/idle.rst:68 msgid "Recent Files" msgstr "" -#: library/idle.rst:66 +#: library/idle.rst:69 msgid "Open a list of recent files. Click one to open it." msgstr "" -#: library/idle.rst:72 +#: library/idle.rst:75 msgid "Module Browser" msgstr "" -#: library/idle.rst:73 +#: library/idle.rst:76 msgid "" "Show functions, classes, and methods in the current Editor file in a tree " "structure. In the shell, open a module first." msgstr "" -#: library/idle.rst:76 +#: library/idle.rst:79 msgid "Path Browser" msgstr "" -#: library/idle.rst:77 +#: library/idle.rst:80 msgid "" "Show sys.path directories, modules, functions, classes and methods in a tree " "structure." msgstr "" -#: library/idle.rst:80 +#: library/idle.rst:83 msgid "Save" msgstr "" -#: library/idle.rst:81 +#: library/idle.rst:84 msgid "" "Save the current window to the associated file, if there is one. Windows " "that have been changed since being opened or last saved have a \\* before " @@ -158,11 +158,11 @@ msgid "" "instead." msgstr "" -#: library/idle.rst:86 +#: library/idle.rst:89 msgid "Save As..." msgstr "" -#: library/idle.rst:87 +#: library/idle.rst:90 msgid "" "Save the current window with a Save As dialog. The file saved becomes the " "new associated file for the window. (If your file namager is set to hide " @@ -171,280 +171,280 @@ msgid "" "text files, except that on macOS Aqua,'.py' is added for all files.)" msgstr "" -#: library/idle.rst:93 +#: library/idle.rst:96 msgid "Save Copy As..." msgstr "" -#: library/idle.rst:94 +#: library/idle.rst:97 msgid "" "Save the current window to different file without changing the associated " "file. (See Save As note above about filename extensions.)" msgstr "" -#: library/idle.rst:97 +#: library/idle.rst:100 msgid "Print Window" msgstr "" -#: library/idle.rst:98 +#: library/idle.rst:101 msgid "Print the current window to the default printer." msgstr "" -#: library/idle.rst:100 +#: library/idle.rst:103 msgid "Close Window" msgstr "" -#: library/idle.rst:101 +#: library/idle.rst:104 msgid "" "Close the current window (if an unsaved editor, ask to save; if an unsaved " "Shell, ask to quit execution). Calling ``exit()`` or ``close()`` in the " "Shell window also closes Shell. If this is the only window, also exit IDLE." msgstr "" -#: library/idle.rst:105 +#: library/idle.rst:108 msgid "Exit IDLE" msgstr "" -#: library/idle.rst:106 +#: library/idle.rst:109 msgid "Close all windows and quit IDLE (ask to save unsaved edit windows)." msgstr "" -#: library/idle.rst:109 +#: library/idle.rst:112 msgid "Edit menu (Shell and Editor)" msgstr "" -#: library/idle.rst:111 +#: library/idle.rst:114 msgid "Undo" msgstr "" -#: library/idle.rst:112 +#: library/idle.rst:115 msgid "" "Undo the last change to the current window. A maximum of 1000 changes may " "be undone." msgstr "" -#: library/idle.rst:115 +#: library/idle.rst:118 msgid "Redo" msgstr "" -#: library/idle.rst:116 +#: library/idle.rst:119 msgid "Redo the last undone change to the current window." msgstr "" -#: library/idle.rst:118 +#: library/idle.rst:121 msgid "Select All" msgstr "" -#: library/idle.rst:119 +#: library/idle.rst:122 msgid "Select the entire contents of the current window." msgstr "" -#: library/idle.rst:353 library/idle.rst:367 +#: library/idle.rst:356 library/idle.rst:370 msgid "Cut" msgstr "" -#: library/idle.rst:368 +#: library/idle.rst:371 msgid "" "Copy selection into the system-wide clipboard; then delete the selection." msgstr "" -#: library/idle.rst:353 library/idle.rst:370 +#: library/idle.rst:356 library/idle.rst:373 msgid "Copy" msgstr "" -#: library/idle.rst:371 +#: library/idle.rst:374 msgid "Copy selection into the system-wide clipboard." msgstr "" -#: library/idle.rst:353 library/idle.rst:373 +#: library/idle.rst:356 library/idle.rst:376 msgid "Paste" msgstr "" -#: library/idle.rst:374 +#: library/idle.rst:377 msgid "Insert contents of the system-wide clipboard into the current window." msgstr "" -#: library/idle.rst:130 +#: library/idle.rst:133 msgid "The clipboard functions are also available in context menus." msgstr "" -#: library/idle.rst:132 +#: library/idle.rst:135 msgid "Find..." msgstr "" -#: library/idle.rst:133 +#: library/idle.rst:136 msgid "Open a search dialog with many options" msgstr "" -#: library/idle.rst:135 +#: library/idle.rst:138 msgid "Find Again" msgstr "" -#: library/idle.rst:136 +#: library/idle.rst:139 msgid "Repeat the last search, if there is one." msgstr "" -#: library/idle.rst:138 +#: library/idle.rst:141 msgid "Find Selection" msgstr "" -#: library/idle.rst:139 +#: library/idle.rst:142 msgid "Search for the currently selected string, if there is one." msgstr "" -#: library/idle.rst:141 +#: library/idle.rst:144 msgid "Find in Files..." msgstr "" -#: library/idle.rst:142 +#: library/idle.rst:145 msgid "Open a file search dialog. Put results in a new output window." msgstr "" -#: library/idle.rst:144 +#: library/idle.rst:147 msgid "Replace..." msgstr "" -#: library/idle.rst:145 +#: library/idle.rst:148 msgid "Open a search-and-replace dialog." msgstr "" -#: library/idle.rst:147 +#: library/idle.rst:150 msgid "Go to Line" msgstr "" -#: library/idle.rst:148 +#: library/idle.rst:151 msgid "" "Move the cursor to the beginning of the line requested and make that line " "visible. A request past the end of the file goes to the end. Clear any " "selection and update the line and column status." msgstr "" -#: library/idle.rst:152 +#: library/idle.rst:155 msgid "Show Completions" msgstr "" -#: library/idle.rst:153 +#: library/idle.rst:156 msgid "" "Open a scrollable list allowing selection of existing names. See :ref:" "`Completions ` in the Editing and navigation section below." msgstr "" -#: library/idle.rst:156 +#: library/idle.rst:159 msgid "Expand Word" msgstr "" -#: library/idle.rst:157 +#: library/idle.rst:160 msgid "" "Expand a prefix you have typed to match a full word in the same window; " "repeat to get a different expansion." msgstr "" -#: library/idle.rst:160 +#: library/idle.rst:163 msgid "Show Call Tip" msgstr "" -#: library/idle.rst:161 +#: library/idle.rst:164 msgid "" "After an unclosed parenthesis for a function, open a small window with " "function parameter hints. See :ref:`Calltips ` in the Editing and " "navigation section below." msgstr "" -#: library/idle.rst:165 +#: library/idle.rst:168 msgid "Show Surrounding Parens" msgstr "" -#: library/idle.rst:166 +#: library/idle.rst:169 msgid "Highlight the surrounding parenthesis." msgstr "" -#: library/idle.rst:171 +#: library/idle.rst:174 msgid "Format menu (Editor window only)" msgstr "" -#: library/idle.rst:173 +#: library/idle.rst:176 msgid "Format Paragraph" msgstr "" -#: library/idle.rst:174 +#: library/idle.rst:177 msgid "" "Reformat the current blank-line-delimited paragraph in comment block or " "multiline string or selected line in a string. All lines in the paragraph " "will be formatted to less than N columns, where N defaults to 72." msgstr "" -#: library/idle.rst:178 +#: library/idle.rst:181 msgid "Indent Region" msgstr "" -#: library/idle.rst:179 +#: library/idle.rst:182 msgid "Shift selected lines right by the indent width (default 4 spaces)." msgstr "" -#: library/idle.rst:181 +#: library/idle.rst:184 msgid "Dedent Region" msgstr "" -#: library/idle.rst:182 +#: library/idle.rst:185 msgid "Shift selected lines left by the indent width (default 4 spaces)." msgstr "" -#: library/idle.rst:184 +#: library/idle.rst:187 msgid "Comment Out Region" msgstr "" -#: library/idle.rst:185 +#: library/idle.rst:188 msgid "Insert ## in front of selected lines." msgstr "" -#: library/idle.rst:187 +#: library/idle.rst:190 msgid "Uncomment Region" msgstr "" -#: library/idle.rst:188 +#: library/idle.rst:191 msgid "Remove leading # or ## from selected lines." msgstr "" -#: library/idle.rst:190 +#: library/idle.rst:193 msgid "Tabify Region" msgstr "" -#: library/idle.rst:191 +#: library/idle.rst:194 msgid "" "Turn *leading* stretches of spaces into tabs. (Note: We recommend using 4 " "space blocks to indent Python code.)" msgstr "" -#: library/idle.rst:194 +#: library/idle.rst:197 msgid "Untabify Region" msgstr "" -#: library/idle.rst:195 +#: library/idle.rst:198 msgid "Turn *all* tabs into the correct number of spaces." msgstr "" -#: library/idle.rst:197 +#: library/idle.rst:200 msgid "Toggle Tabs" msgstr "" -#: library/idle.rst:198 +#: library/idle.rst:201 msgid "Open a dialog to switch between indenting with spaces and tabs." msgstr "" -#: library/idle.rst:200 +#: library/idle.rst:203 msgid "New Indent Width" msgstr "" -#: library/idle.rst:201 +#: library/idle.rst:204 msgid "" "Open a dialog to change indent width. The accepted default by the Python " "community is 4 spaces." msgstr "" -#: library/idle.rst:204 +#: library/idle.rst:207 msgid "Strip Trailing Chitespace" msgstr "" -#: library/idle.rst:205 +#: library/idle.rst:208 msgid "" "Remove trailing space and other whitespace characters after the last non-" "whitespace character of a line by applying str.rstrip to each line, " @@ -452,15 +452,15 @@ msgid "" "extra newlines at the end of the file." msgstr "" -#: library/idle.rst:214 +#: library/idle.rst:217 msgid "Run menu (Editor window only)" msgstr "" -#: library/idle.rst:218 +#: library/idle.rst:221 msgid "Run Module" msgstr "" -#: library/idle.rst:219 +#: library/idle.rst:222 msgid "" "Do :ref:`Check Module `. If no error, restart the shell to " "clean the environment, then execute the module. Output is displayed in the " @@ -470,22 +470,22 @@ msgid "" "similar to executing a file with ``python -i file`` at a command line." msgstr "" -#: library/idle.rst:229 +#: library/idle.rst:232 msgid "Run... Customized" msgstr "" -#: library/idle.rst:230 +#: library/idle.rst:233 msgid "" "Same as :ref:`Run Module `, but run the module with customized " "settings. *Command Line Arguments* extend :data:`sys.argv` as if passed on " "a command line. The module can be run in the Shell without restarting." msgstr "" -#: library/idle.rst:236 +#: library/idle.rst:239 msgid "Check Module" msgstr "" -#: library/idle.rst:237 +#: library/idle.rst:240 msgid "" "Check the syntax of the module currently open in the Editor window. If the " "module has not been saved IDLE will either prompt the user to save or " @@ -494,70 +494,70 @@ msgid "" "window." msgstr "" -#: library/idle.rst:245 +#: library/idle.rst:248 msgid "Python Shell" msgstr "" -#: library/idle.rst:246 +#: library/idle.rst:249 msgid "Open or wake up the Python Shell window." msgstr "" -#: library/idle.rst:250 +#: library/idle.rst:253 msgid "Shell menu (Shell window only)" msgstr "" -#: library/idle.rst:252 +#: library/idle.rst:255 msgid "View Last Restart" msgstr "" -#: library/idle.rst:253 +#: library/idle.rst:256 msgid "Scroll the shell window to the last Shell restart." msgstr "" -#: library/idle.rst:255 +#: library/idle.rst:258 msgid "Restart Shell" msgstr "" -#: library/idle.rst:256 +#: library/idle.rst:259 msgid "" "Restart the shell to clean the environment and reset display and exception " "handling." msgstr "" -#: library/idle.rst:258 +#: library/idle.rst:261 msgid "Previous History" msgstr "" -#: library/idle.rst:259 +#: library/idle.rst:262 msgid "" "Cycle through earlier commands in history which match the current entry." msgstr "" -#: library/idle.rst:261 +#: library/idle.rst:264 msgid "Next History" msgstr "" -#: library/idle.rst:262 +#: library/idle.rst:265 msgid "Cycle through later commands in history which match the current entry." msgstr "" -#: library/idle.rst:264 +#: library/idle.rst:267 msgid "Interrupt Execution" msgstr "" -#: library/idle.rst:265 +#: library/idle.rst:268 msgid "Stop a running program." msgstr "" -#: library/idle.rst:268 +#: library/idle.rst:271 msgid "Debug menu (Shell window only)" msgstr "" -#: library/idle.rst:270 +#: library/idle.rst:273 msgid "Go to File/Line" msgstr "" -#: library/idle.rst:271 +#: library/idle.rst:274 msgid "" "Look on the current line. with the cursor, and the line above for a filename " "and line number. If found, open the file if not already open, and show the " @@ -566,45 +566,45 @@ msgid "" "Shell window and Output windows." msgstr "" -#: library/idle.rst:281 +#: library/idle.rst:284 msgid "Debugger (toggle)" msgstr "" -#: library/idle.rst:282 +#: library/idle.rst:285 msgid "" "When activated, code entered in the Shell or run from an Editor will run " "under the debugger. In the Editor, breakpoints can be set with the context " "menu. This feature is still incomplete and somewhat experimental." msgstr "" -#: library/idle.rst:286 +#: library/idle.rst:289 msgid "Stack Viewer" msgstr "" -#: library/idle.rst:287 +#: library/idle.rst:290 msgid "" "Show the stack traceback of the last exception in a tree widget, with access " "to locals and globals." msgstr "" -#: library/idle.rst:290 +#: library/idle.rst:293 msgid "Auto-open Stack Viewer" msgstr "" -#: library/idle.rst:291 +#: library/idle.rst:294 msgid "" "Toggle automatically opening the stack viewer on an unhandled exception." msgstr "" -#: library/idle.rst:294 +#: library/idle.rst:297 msgid "Options menu (Shell and Editor)" msgstr "" -#: library/idle.rst:296 +#: library/idle.rst:299 msgid "Configure IDLE" msgstr "" -#: library/idle.rst:297 +#: library/idle.rst:300 msgid "" "Open a configuration dialog and change preferences for the following: fonts, " "indentation, keybindings, text color themes, startup windows and size, " @@ -613,39 +613,39 @@ msgid "" "see :ref:`Setting preferences ` under Help and preferences." msgstr "" -#: library/idle.rst:304 +#: library/idle.rst:307 msgid "" "Most configuration options apply to all windows or all future windows. The " "option items below only apply to the active window." msgstr "" -#: library/idle.rst:307 +#: library/idle.rst:310 msgid "Show/Hide Code Context (Editor Window only)" msgstr "" -#: library/idle.rst:308 +#: library/idle.rst:311 msgid "" "Open a pane at the top of the edit window which shows the block context of " "the code which has scrolled above the top of the window. See :ref:`Code " "Context ` in the Editing and Navigation section below." msgstr "" -#: library/idle.rst:313 +#: library/idle.rst:316 msgid "Show/Hide Line Numbers (Editor Window only)" msgstr "" -#: library/idle.rst:314 +#: library/idle.rst:317 msgid "" "Open a column to the left of the edit window which shows the number of each " "line of text. The default is off, which may be changed in the preferences " "(see :ref:`Setting preferences `)." msgstr "" -#: library/idle.rst:318 +#: library/idle.rst:321 msgid "Zoom/Restore Height" msgstr "" -#: library/idle.rst:319 +#: library/idle.rst:322 msgid "" "Toggles the window between normal size and maximum height. The initial size " "defaults to 40 lines by 80 chars unless changed on the General tab of the " @@ -655,74 +655,74 @@ msgid "" "no effect when a window is maximized." msgstr "" -#: library/idle.rst:327 +#: library/idle.rst:330 msgid "Window menu (Shell and Editor)" msgstr "" -#: library/idle.rst:329 +#: library/idle.rst:332 msgid "" "Lists the names of all open windows; select one to bring it to the " "foreground (deiconifying it if necessary)." msgstr "" -#: library/idle.rst:333 +#: library/idle.rst:336 msgid "Help menu (Shell and Editor)" msgstr "" -#: library/idle.rst:335 +#: library/idle.rst:338 msgid "About IDLE" msgstr "" -#: library/idle.rst:336 +#: library/idle.rst:339 msgid "Display version, copyright, license, credits, and more." msgstr "" -#: library/idle.rst:338 +#: library/idle.rst:341 msgid "IDLE Help" msgstr "" -#: library/idle.rst:339 +#: library/idle.rst:342 msgid "" "Display this IDLE document, detailing the menu options, basic editing and " "navigation, and other tips." msgstr "" -#: library/idle.rst:342 +#: library/idle.rst:345 msgid "Python Docs" msgstr "" -#: library/idle.rst:343 +#: library/idle.rst:346 msgid "" "Access local Python documentation, if installed, or start a web browser and " "open docs.python.org showing the latest Python documentation." msgstr "" -#: library/idle.rst:346 +#: library/idle.rst:349 msgid "Turtle Demo" msgstr "" -#: library/idle.rst:347 +#: library/idle.rst:350 msgid "Run the turtledemo module with example Python code and turtle drawings." msgstr "" -#: library/idle.rst:349 +#: library/idle.rst:352 msgid "" "Additional help sources may be added here with the Configure IDLE dialog " "under the General tab. See the :ref:`Help sources ` subsection " "below for more on Help menu choices." msgstr "" -#: library/idle.rst:362 +#: library/idle.rst:365 msgid "Context menus" msgstr "" -#: library/idle.rst:364 +#: library/idle.rst:367 msgid "" "Open a context menu by right-clicking in a window (Control-click on macOS). " "Context menus have the standard clipboard functions also on the Edit menu." msgstr "" -#: library/idle.rst:376 +#: library/idle.rst:379 msgid "" "Editor windows also have breakpoint functions. Lines with a breakpoint set " "are specially marked. Breakpoints only have an effect when running under " @@ -730,66 +730,66 @@ msgid "" "directory." msgstr "" -#: library/idle.rst:381 +#: library/idle.rst:384 msgid "Set Breakpoint" msgstr "" -#: library/idle.rst:382 +#: library/idle.rst:385 msgid "Set a breakpoint on the current line." msgstr "" -#: library/idle.rst:384 +#: library/idle.rst:387 msgid "Clear Breakpoint" msgstr "" -#: library/idle.rst:385 +#: library/idle.rst:388 msgid "Clear the breakpoint on that line." msgstr "" -#: library/idle.rst:387 +#: library/idle.rst:390 msgid "Shell and Output windows also have the following." msgstr "" -#: library/idle.rst:389 +#: library/idle.rst:392 msgid "Go to file/line" msgstr "" -#: library/idle.rst:390 +#: library/idle.rst:393 msgid "Same as in Debug menu." msgstr "" -#: library/idle.rst:392 +#: library/idle.rst:395 msgid "" "The Shell window also has an output squeezing facility explained in the " "*Python Shell window* subsection below." msgstr "" -#: library/idle.rst:395 +#: library/idle.rst:398 msgid "Squeeze" msgstr "" -#: library/idle.rst:396 +#: library/idle.rst:399 msgid "" "If the cursor is over an output line, squeeze all the output between the " "code above and the prompt below down to a 'Squeezed text' label." msgstr "" -#: library/idle.rst:403 +#: library/idle.rst:406 msgid "Editing and Navigation" msgstr "" -#: library/idle.rst:406 +#: library/idle.rst:409 msgid "Editor windows" msgstr "" -#: library/idle.rst:408 +#: library/idle.rst:411 msgid "" "IDLE may open editor windows when it starts, depending on settings and how " "you start IDLE. Thereafter, use the File menu. There can be only one open " "editor window for a given file." msgstr "" -#: library/idle.rst:412 +#: library/idle.rst:415 msgid "" "The title bar contains the name of the file, the full path, and the version " "of Python and IDLE running the window. The status bar contains the line " @@ -797,17 +797,17 @@ msgid "" "numbers with 0." msgstr "" -#: library/idle.rst:417 +#: library/idle.rst:420 msgid "" "IDLE assumes that files with a known .py* extension contain Python code and " "that other files do not. Run Python code with the Run menu." msgstr "" -#: library/idle.rst:421 +#: library/idle.rst:424 msgid "Key bindings" msgstr "" -#: library/idle.rst:423 +#: library/idle.rst:426 msgid "" "The IDLE insertion cursor is a thin vertical bar between character " "positions. When characters are entered, the insertion cursor and everything " @@ -815,7 +815,7 @@ msgid "" "the new space." msgstr "" -#: library/idle.rst:428 +#: library/idle.rst:431 msgid "" "Several non-character keys move the cursor and possibly delete characters. " "Deletion does not puts text on the clipboard, but IDLE has an undo list. " @@ -824,52 +824,52 @@ msgid "" "discussions assume that the keys have not been re-bound to something else.)" msgstr "" -#: library/idle.rst:435 +#: library/idle.rst:438 msgid "Arrow keys move the cursor one character or line." msgstr "" -#: library/idle.rst:437 +#: library/idle.rst:440 msgid "" ":kbd:`C-LeftArrow` and :kbd:`C-RightArrow` moves left or right one word." msgstr "" -#: library/idle.rst:439 +#: library/idle.rst:442 msgid ":kbd:`Home` and :kbd:`End` go to the beginning or end of the line." msgstr "" -#: library/idle.rst:441 +#: library/idle.rst:444 msgid ":kbd:`Page Up` and :kbd:`Page Down` go up or down one screen." msgstr "" -#: library/idle.rst:443 +#: library/idle.rst:446 msgid ":kbd:`C-Home` and :kbd:`C-End` go to beginning or end of the file." msgstr "" -#: library/idle.rst:445 +#: library/idle.rst:448 msgid "" ":kbd:`Backspace` and :kbd:`Del` (or :kbd:`C-d`) delete the previous or next " "character." msgstr "" -#: library/idle.rst:448 +#: library/idle.rst:451 msgid ":kbd:`C-Backspace` and :kbd:`C-Del` delete one word left or right." msgstr "" -#: library/idle.rst:450 +#: library/idle.rst:453 msgid ":kbd:`C-k` deletes ('kills') everything to the right." msgstr "" -#: library/idle.rst:452 +#: library/idle.rst:455 msgid "" "Standard keybindings (like :kbd:`C-c` to copy and :kbd:`C-v` to paste) may " "work. Keybindings are selected in the Configure IDLE dialog." msgstr "" -#: library/idle.rst:456 +#: library/idle.rst:459 msgid "Automatic indentation" msgstr "" -#: library/idle.rst:458 +#: library/idle.rst:461 msgid "" "After a block-opening statement, the next line is indented by 4 spaces (in " "the Python Shell window by one tab). After certain keywords (break, return " @@ -879,17 +879,17 @@ msgid "" "tabs are restricted to four spaces due to Tcl/Tk limitations." msgstr "" -#: library/idle.rst:465 +#: library/idle.rst:468 msgid "" "See also the indent/dedent region commands on the :ref:`Format menu `." msgstr "" -#: library/idle.rst:469 +#: library/idle.rst:472 msgid "Search and Replace" msgstr "" -#: library/idle.rst:471 +#: library/idle.rst:474 msgid "" "Any selection becomes a search target. However, only selections within a " "line work because searches are only performed within lines with the terminal " @@ -897,11 +897,11 @@ msgid "" "interpreted according to the Python re module." msgstr "" -#: library/idle.rst:479 +#: library/idle.rst:482 msgid "Completions" msgstr "" -#: library/idle.rst:481 +#: library/idle.rst:484 msgid "" "Completions are supplied, when requested and available, for module names, " "attributes of classes or functions, or filenames. Each request method " @@ -914,7 +914,7 @@ msgid "" "box. A double click within the box selects and closes." msgstr "" -#: library/idle.rst:492 +#: library/idle.rst:495 msgid "" "One way to open a box is to type a key character and wait for a predefined " "interval. This defaults to 2 seconds; customize it in the settings dialog. " @@ -926,7 +926,7 @@ msgid "" "directory name and a separator." msgstr "" -#: library/idle.rst:502 +#: library/idle.rst:505 msgid "" "Instead of waiting, or after a box is closed, open a completion box " "immediately with Show Completions on the Edit menu. The default hot key is :" @@ -937,7 +937,7 @@ msgid "" "directory." msgstr "" -#: library/idle.rst:510 +#: library/idle.rst:513 msgid "" "Hitting :kbd:`Tab` after a prefix usually has the same effect as Show " "Completions. (With no prefix, it indents.) However, if there is only one " @@ -945,14 +945,14 @@ msgid "" "without opening a box." msgstr "" -#: library/idle.rst:515 +#: library/idle.rst:518 msgid "" "Invoking 'Show Completions', or hitting :kbd:`Tab` after a prefix, outside " "of a string and without a preceding '.' opens a box with keywords, builtin " "names, and available module-level names." msgstr "" -#: library/idle.rst:519 +#: library/idle.rst:522 msgid "" "When editing code in an editor (as oppose to Shell), increase the available " "module-level names by running your code and not restarting the Shell " @@ -960,18 +960,18 @@ msgid "" "file. This also increases possible attribute completions." msgstr "" -#: library/idle.rst:525 +#: library/idle.rst:528 msgid "" "Completion boxes initially exclude names beginning with '_' or, for modules, " "not included in '__all__'. The hidden names can be accessed by typing '_' " "after '.', either before or after the box is opened." msgstr "" -#: library/idle.rst:532 +#: library/idle.rst:535 msgid "Calltips" msgstr "" -#: library/idle.rst:534 +#: library/idle.rst:537 msgid "" "A calltip is shown automatically when one types :kbd:`(` after the name of " "an *accessible* function. A function name expression may include dots and " @@ -981,7 +981,7 @@ msgid "" "or enter its shortcut to display a calltip." msgstr "" -#: library/idle.rst:541 +#: library/idle.rst:544 msgid "" "The calltip consists of the function's signature and docstring up to the " "latter's first blank line or the fifth non-blank line. (Some builtin " @@ -990,14 +990,14 @@ msgid "" "or name (keyword) only. Details are subject to change." msgstr "" -#: library/idle.rst:547 +#: library/idle.rst:550 msgid "" "In Shell, the accessible functions depends on what modules have been " "imported into the user process, including those imported by Idle itself, and " "which definitions have been run, all since the last restart." msgstr "" -#: library/idle.rst:551 +#: library/idle.rst:554 msgid "" "For example, restart the Shell and enter ``itertools.count(``. A calltip " "appears because Idle imports itertools into the user process for its own " @@ -1007,18 +1007,18 @@ msgid "" "display a calltip." msgstr "" -#: library/idle.rst:558 +#: library/idle.rst:561 msgid "" "In an editor, import statements have no effect until one runs the file. One " "might want to run a file after writing import statements, after adding " "function definitions, or after opening an existing file." msgstr "" -#: library/idle.rst:565 +#: library/idle.rst:568 msgid "Code Context" msgstr "" -#: library/idle.rst:567 +#: library/idle.rst:570 msgid "" "Within an editor window containing Python code, code context can be toggled " "in order to show or hide a pane at the top of the window. When shown, this " @@ -1032,23 +1032,23 @@ msgid "" "the top of the editor." msgstr "" -#: library/idle.rst:578 +#: library/idle.rst:581 msgid "" "The text and background colors for the context pane can be configured under " "the Highlights tab in the Configure IDLE dialog." msgstr "" -#: library/idle.rst:582 +#: library/idle.rst:585 msgid "Shell window" msgstr "" -#: library/idle.rst:584 +#: library/idle.rst:587 msgid "" "In IDLE's Shell, enter, edit, and recall complete statements. (Most consoles " "and terminals only work with a single physical line at a time)." msgstr "" -#: library/idle.rst:587 +#: library/idle.rst:590 msgid "" "Submit a single-line statement for execution by hitting :kbd:`Return` with " "the cursor anywhere on the line. If a line is extended with Backslash (:kbd:" @@ -1056,7 +1056,7 @@ msgid "" "compound statement by entering a blank line after the statement." msgstr "" -#: library/idle.rst:593 +#: library/idle.rst:596 msgid "" "When one pastes code into Shell, it is not compiled and possibly executed " "until one hits :kbd:`Return`, as specified above. One may edit pasted code " @@ -1065,7 +1065,7 @@ msgid "" "one." msgstr "" -#: library/idle.rst:599 +#: library/idle.rst:602 msgid "" "Lines containing ``RESTART`` mean that the user execution process has been " "re-started. This occurs when the user execution process has crashed, when " @@ -1073,38 +1073,38 @@ msgid "" "window." msgstr "" -#: library/idle.rst:604 +#: library/idle.rst:607 msgid "" "The editing features described in previous subsections work when entering " "code interactively. IDLE's Shell window also responds to the following:" msgstr "" -#: library/idle.rst:607 +#: library/idle.rst:610 msgid ":kbd:`C-c` attempts to interrupt statement execution (but may fail)." msgstr "" -#: library/idle.rst:609 +#: library/idle.rst:612 msgid ":kbd:`C-d` closes Shell if typed at a ``>>>`` prompt." msgstr "" -#: library/idle.rst:611 +#: library/idle.rst:614 msgid "" ":kbd:`Alt-p` and :kbd:`Alt-n` (:kbd:`C-p` and :kbd:`C-n` on macOS) retrieve " "to the current prompt the previous or next previously entered statement that " "matches anything already typed." msgstr "" -#: library/idle.rst:615 +#: library/idle.rst:618 msgid "" ":kbd:`Return` while the cursor is on any previous statement appends the " "latter to anything already typed at the prompt." msgstr "" -#: library/idle.rst:619 +#: library/idle.rst:622 msgid "Text colors" msgstr "" -#: library/idle.rst:621 +#: library/idle.rst:624 msgid "" "Idle defaults to black on white text, but colors text with special meanings. " "For the shell, these are shell output, shell error, user output, and user " @@ -1114,7 +1114,7 @@ msgid "" "(when present), found text (when possible), and selected text." msgstr "" -#: library/idle.rst:628 +#: library/idle.rst:631 msgid "" "IDLE also highlights the :ref:`soft keywords ` :keyword:" "`match`, :keyword:`case `, and :keyword:`_ ` in " @@ -1123,7 +1123,7 @@ msgid "" "patterns." msgstr "" -#: library/idle.rst:634 +#: library/idle.rst:637 msgid "" "Text coloring is done in the background, so uncolorized text is occasionally " "visible. To change the color scheme, use the Configure IDLE dialog " @@ -1131,11 +1131,11 @@ msgid "" "and text in popups and dialogs is not user-configurable." msgstr "" -#: library/idle.rst:641 +#: library/idle.rst:644 msgid "Startup and Code Execution" msgstr "" -#: library/idle.rst:643 +#: library/idle.rst:646 msgid "" "Upon startup with the ``-s`` option, IDLE will execute the file referenced " "by the environment variables :envvar:`IDLESTARTUP` or :envvar:" @@ -1147,7 +1147,7 @@ msgid "" "modules." msgstr "" -#: library/idle.rst:651 +#: library/idle.rst:654 msgid "" "In addition, ``Tk`` also loads a startup file if it is present. Note that " "the Tk file is loaded unconditionally. This additional file is ``.Idle.py`` " @@ -1156,49 +1156,90 @@ msgid "" "importing functions to be used from IDLE's Python shell." msgstr "" -#: library/idle.rst:658 +#: library/idle.rst:661 msgid "Command line usage" msgstr "" -#: library/idle.rst:660 +#: library/idle.rst:665 msgid "" -"idle.py [-c command] [-d] [-e] [-h] [-i] [-r file] [-s] [-t title] [-] " -"[arg] ...\n" -"\n" -"-c command run command in the shell window\n" -"-d enable debugger and open shell window\n" -"-e open editor window\n" -"-h print help message with legal combinations and exit\n" -"-i open shell window\n" -"-r file run file in shell window\n" -"-s run $IDLESTARTUP or $PYTHONSTARTUP first, in shell window\n" -"-t title set title of shell window\n" -"- run stdin in shell (- must be last option before args)" +"IDLE can be invoked from the command line with various options. The general " +"syntax is:" msgstr "" -#: library/idle.rst:674 -msgid "If there are arguments:" +#: library/idle.rst:667 +msgid "python -m idlelib [options] [file ...]" msgstr "" -#: library/idle.rst:676 +#: library/idle.rst:671 +msgid "The following options are available:" +msgstr "" + +#: library/idle.rst:675 msgid "" -"If ``-``, ``-c``, or ``r`` is used, all arguments are placed in ``sys." -"argv[1:...]`` and ``sys.argv[0]`` is set to ``''``, ``'-c'``, or ``'-r'``. " -"No editor window is opened, even if that is the default set in the Options " -"dialog." +"Run the specified Python command in the shell window. For example, pass ``-c " +"\"print('Hello, World!')\"``. On Windows, the outer quotes must be double " +"quotes as shown." msgstr "" #: library/idle.rst:681 -msgid "" -"Otherwise, arguments are files opened for editing and ``sys.argv`` reflects " -"the arguments passed to IDLE itself." +msgid "Enable the debugger and open the shell window." msgstr "" #: library/idle.rst:685 +msgid "Open an editor window." +msgstr "" + +#: library/idle.rst:689 +msgid "Print a help message with legal combinations of options and exit." +msgstr "" + +#: library/idle.rst:693 +msgid "Open a shell window." +msgstr "" + +#: library/idle.rst:697 +msgid "Run the specified file in the shell window." +msgstr "" + +#: library/idle.rst:701 +msgid "" +"Run the startup file (as defined by the environment variables :envvar:" +"`IDLESTARTUP` or :envvar:`PYTHONSTARTUP`) before opening the shell window." +msgstr "" + +#: library/idle.rst:705 +msgid "Set the title of the shell window." +msgstr "" + +#: library/idle.rst:709 +msgid "" +"Read and execute standard input in the shell window. This option must be the " +"last one before any arguments." +msgstr "" + +#: library/idle.rst:711 +msgid "If arguments are provided:" +msgstr "" + +#: library/idle.rst:713 +msgid "" +"If ``-``, ``-c``, or ``-r`` is used, all arguments are placed in ``sys." +"argv[1:]``, and ``sys.argv[0]`` is set to ``''``, ``'-c'``, or ``'-r'`` " +"respectively. No editor window is opened, even if that is the default set in " +"the *Options* dialog." +msgstr "" + +#: library/idle.rst:716 +msgid "" +"Otherwise, arguments are treated as files to be opened for editing, and " +"``sys.argv`` reflects the arguments passed to IDLE itself." +msgstr "" + +#: library/idle.rst:720 msgid "Startup failure" msgstr "" -#: library/idle.rst:687 +#: library/idle.rst:722 msgid "" "IDLE uses a socket to communicate between the IDLE GUI process and the user " "code execution process. A connection must be established whenever the Shell " @@ -1208,7 +1249,7 @@ msgid "" "directs the user here. It then exits." msgstr "" -#: library/idle.rst:694 +#: library/idle.rst:729 msgid "" "One specific connection failure on Unix systems results from misconfigured " "masquerading rules somewhere in a system's network setup. When IDLE is " @@ -1218,7 +1259,7 @@ msgid "" "``tcplisten `` in another." msgstr "" -#: library/idle.rst:702 +#: library/idle.rst:737 msgid "" "A common cause of failure is a user-written file with the same name as a " "standard library module, such as *random.py* and *tkinter.py*. When such a " @@ -1227,7 +1268,7 @@ msgid "" "file." msgstr "" -#: library/idle.rst:708 +#: library/idle.rst:743 msgid "" "Though less common than in the past, an antivirus or firewall program may " "stop the connection. If the program cannot be taught to allow the " @@ -1237,7 +1278,7 @@ msgid "" "connections." msgstr "" -#: library/idle.rst:715 +#: library/idle.rst:750 msgid "" "Python installation issues occasionally stop IDLE: multiple versions can " "clash, or a single installation might need admin access. If one undo the " @@ -1245,7 +1286,7 @@ msgid "" "completely remove Python and start over." msgstr "" -#: library/idle.rst:720 +#: library/idle.rst:755 msgid "" "A zombie pythonw.exe process could be a problem. On Windows, use Task " "Manager to check for one and stop it if there is. Sometimes a restart " @@ -1254,7 +1295,7 @@ msgid "" "may fix a temporary problem." msgstr "" -#: library/idle.rst:726 +#: library/idle.rst:761 msgid "" "When IDLE first starts, it attempts to read user configuration files in ``~/." "idlerc/`` (~ is one's home directory). If there is a problem, an error " @@ -1265,14 +1306,14 @@ msgid "" "with the settings dialog." msgstr "" -#: library/idle.rst:734 +#: library/idle.rst:769 msgid "" "If IDLE quits with no message, and it was not started from a console, try " "starting it from a console or terminal (``python -m idlelib``) and see if " "this results in an error message." msgstr "" -#: library/idle.rst:738 +#: library/idle.rst:773 msgid "" "On Unix-based systems with tcl/tk older than ``8.6.11`` (see ``About IDLE``) " "certain characters of certain fonts can cause a tk failure with a message to " @@ -1281,11 +1322,11 @@ msgid "" "upgrade tcl/tk, then re-configure IDLE to use a font that works better." msgstr "" -#: library/idle.rst:746 +#: library/idle.rst:781 msgid "Running user code" msgstr "" -#: library/idle.rst:748 +#: library/idle.rst:783 msgid "" "With rare exceptions, the result of executing Python code with IDLE is " "intended to be the same as executing the same code by the default method, " @@ -1295,7 +1336,7 @@ msgid "" "``threading.active_count()`` returns 2 instead of 1." msgstr "" -#: library/idle.rst:755 +#: library/idle.rst:790 msgid "" "By default, IDLE runs user code in a separate OS process rather than in the " "user interface process that runs the shell and editor. In the execution " @@ -1305,7 +1346,7 @@ msgid "" "__stderr__`` are not touched, but may be ``None``." msgstr "" -#: library/idle.rst:762 +#: library/idle.rst:797 msgid "" "Sending print output from one process to a text widget in another is slower " "than printing to a system terminal in the same process. This has the most " @@ -1317,7 +1358,7 @@ msgid "" "fields and lines." msgstr "" -#: library/idle.rst:771 +#: library/idle.rst:806 msgid "" "IDLE's standard stream replacements are not inherited by subprocesses " "created in the execution process, whether directly by user code or by " @@ -1328,14 +1369,14 @@ msgid "" "attached to that window for input and output." msgstr "" -#: library/idle.rst:780 +#: library/idle.rst:815 msgid "" "If ``sys`` is reset by user code, such as with ``importlib.reload(sys)``, " "IDLE's changes are lost and input from the keyboard and output to the screen " "will not work correctly." msgstr "" -#: library/idle.rst:784 +#: library/idle.rst:819 msgid "" "When Shell has the focus, it controls the keyboard and screen. This is " "normally transparent, but functions that directly access the keyboard and " @@ -1343,7 +1384,7 @@ msgid "" "determine whether a key has been pressed and if so, which." msgstr "" -#: library/idle.rst:789 +#: library/idle.rst:824 msgid "" "The IDLE code running in the execution process adds frames to the call stack " "that would not be there otherwise. IDLE wraps ``sys.getrecursionlimit`` and " @@ -1351,17 +1392,17 @@ msgid "" "frames." msgstr "" -#: library/idle.rst:794 +#: library/idle.rst:829 msgid "" "When user code raises SystemExit either directly or by calling sys.exit, " "IDLE returns to a Shell prompt instead of exiting." msgstr "" -#: library/idle.rst:798 +#: library/idle.rst:833 msgid "User output in Shell" msgstr "" -#: library/idle.rst:800 +#: library/idle.rst:835 msgid "" "When a program outputs text, the result is determined by the corresponding " "output device. When IDLE executes user code, ``sys.stdout`` and ``sys." @@ -1371,7 +1412,7 @@ msgid "" "rather than production runs." msgstr "" -#: library/idle.rst:807 +#: library/idle.rst:842 msgid "" "For instance, Shell never throws away output. A program that sends " "unlimited output to Shell will eventually fill memory, resulting in a memory " @@ -1380,7 +1421,7 @@ msgid "" "lines, with 300 the default." msgstr "" -#: library/idle.rst:813 +#: library/idle.rst:848 msgid "" "A Tk Text widget, and hence IDLE's Shell, displays characters (codepoints) " "in the BMP (Basic Multilingual Plane) subset of Unicode. Which characters " @@ -1394,7 +1435,7 @@ msgid "" "spacing behavior.) ::" msgstr "" -#: library/idle.rst:823 +#: library/idle.rst:858 msgid "" ">>> s = 'a\\tb\\a<\\x02><\\r>\\bc\\nd' # Enter 22 chars.\n" ">>> len(s)\n" @@ -1405,7 +1446,7 @@ msgid "" "# Result varies by OS and font. Try it." msgstr "" -#: library/idle.rst:831 +#: library/idle.rst:866 msgid "" "The ``repr`` function is used for interactive echo of expression values. It " "returns an altered version of the input string in which control codes, some " @@ -1414,13 +1455,13 @@ msgid "" "regardless of how they are displayed." msgstr "" -#: library/idle.rst:837 +#: library/idle.rst:872 msgid "" "Normal and error output are generally kept separate (on separate lines) from " "code input and each other. They each get different highlight colors." msgstr "" -#: library/idle.rst:840 +#: library/idle.rst:875 msgid "" "For SyntaxError tracebacks, the normal '^' marking where the error was " "detected is replaced by coloring the text with an error highlight. When code " @@ -1429,7 +1470,7 @@ msgid "" "opened if necessary." msgstr "" -#: library/idle.rst:846 +#: library/idle.rst:881 msgid "" "Shell has a special facility for squeezing output lines down to a 'Squeezed " "text' label. This is done automatically for output over N lines (N = 50 by " @@ -1438,18 +1479,18 @@ msgid "" "on the output. This can be useful lines long enough to slow down scrolling." msgstr "" -#: library/idle.rst:854 +#: library/idle.rst:889 msgid "" "Squeezed output is expanded in place by double-clicking the label. It can " "also be sent to the clipboard or a separate view window by right-clicking " "the label." msgstr "" -#: library/idle.rst:859 +#: library/idle.rst:894 msgid "Developing tkinter applications" msgstr "" -#: library/idle.rst:861 +#: library/idle.rst:896 msgid "" "IDLE is intentionally different from standard Python in order to facilitate " "development of tkinter programs. Enter ``import tkinter as tk; root = tk." @@ -1461,7 +1502,7 @@ msgid "" "changes in standard Python until one enters ``root.update()``." msgstr "" -#: library/idle.rst:870 +#: library/idle.rst:905 msgid "" "Most tkinter programs run ``root.mainloop()``, which usually does not return " "until the tk app is destroyed. If the program is run with ``python -i`` or " @@ -1469,7 +1510,7 @@ msgid "" "``mainloop()`` returns, at which time there is nothing left to interact with." msgstr "" -#: library/idle.rst:876 +#: library/idle.rst:911 msgid "" "When running a tkinter program from an IDLE editor, one can comment out the " "mainloop call. One then gets a shell prompt immediately and can interact " @@ -1477,11 +1518,11 @@ msgid "" "mainloop call when running in standard Python." msgstr "" -#: library/idle.rst:882 +#: library/idle.rst:917 msgid "Running without a subprocess" msgstr "" -#: library/idle.rst:884 +#: library/idle.rst:919 msgid "" "By default, IDLE executes user code in a separate subprocess via a socket, " "which uses the internal loopback interface. This connection is not " @@ -1489,7 +1530,7 @@ msgid "" "firewall software complains anyway, you can ignore it." msgstr "" -#: library/idle.rst:889 +#: library/idle.rst:924 msgid "" "If the attempt to make the socket connection fails, Idle will notify you. " "Such failures are sometimes transient, but if persistent, the problem may be " @@ -1498,7 +1539,7 @@ msgid "" "command line switch." msgstr "" -#: library/idle.rst:895 +#: library/idle.rst:930 msgid "" "If IDLE is started with the -n command line switch it will run in a single " "process and will not create the subprocess which runs the RPC Python " @@ -1512,15 +1553,15 @@ msgid "" "at all possible." msgstr "" -#: library/idle.rst:910 +#: library/idle.rst:945 msgid "Help and Preferences" msgstr "" -#: library/idle.rst:915 +#: library/idle.rst:950 msgid "Help sources" msgstr "" -#: library/idle.rst:917 +#: library/idle.rst:952 msgid "" "Help menu entry \"IDLE Help\" displays a formatted html version of the IDLE " "chapter of the Library Reference. The result, in a read-only tkinter text " @@ -1530,7 +1571,7 @@ msgid "" "the opened box." msgstr "" -#: library/idle.rst:925 +#: library/idle.rst:960 msgid "" "Help menu entry \"Python Docs\" opens the extensive sources of help, " "including tutorials, available at ``docs.python.org/x.y``, where 'x.y' is " @@ -1539,17 +1580,17 @@ msgid "" "instead." msgstr "" -#: library/idle.rst:931 +#: library/idle.rst:966 msgid "" "Selected URLs can be added or removed from the help menu at any time using " "the General tab of the Configure IDLE dialog." msgstr "" -#: library/idle.rst:937 +#: library/idle.rst:972 msgid "Setting preferences" msgstr "" -#: library/idle.rst:939 +#: library/idle.rst:974 msgid "" "The font preferences, highlighting, keys, and general preferences can be " "changed via Configure IDLE on the Option menu. Non-default user settings are " @@ -1558,7 +1599,7 @@ msgid "" "or more of the files in ``.idlerc``." msgstr "" -#: library/idle.rst:945 +#: library/idle.rst:980 msgid "" "On the Font tab, see the text sample for the effect of font face and size on " "multiple characters in multiple languages. Edit the sample to add other " @@ -1567,7 +1608,7 @@ msgid "" "them to the top of the sample and try changing first size and then font." msgstr "" -#: library/idle.rst:952 +#: library/idle.rst:987 msgid "" "On the Highlights and Keys tab, select a built-in or custom color theme and " "key set. To use a newer built-in color theme or key set with older IDLEs, " @@ -1575,22 +1616,22 @@ msgid "" "IDLEs." msgstr "" -#: library/idle.rst:958 +#: library/idle.rst:993 msgid "IDLE on macOS" msgstr "" -#: library/idle.rst:960 +#: library/idle.rst:995 msgid "" "Under System Preferences: Dock, one can set \"Prefer tabs when opening " "documents\" to \"Always\". This setting is not compatible with the tk/" "tkinter GUI framework used by IDLE, and it breaks a few IDLE features." msgstr "" -#: library/idle.rst:965 +#: library/idle.rst:1000 msgid "Extensions" msgstr "" -#: library/idle.rst:967 +#: library/idle.rst:1002 msgid "" "IDLE contains an extension facility. Preferences for extensions can be " "changed with the Extensions tab of the preferences dialog. See the beginning " @@ -1599,21 +1640,21 @@ msgid "" "testing." msgstr "" -#: library/idle.rst:975 -msgid "idlelib" +#: library/idle.rst:1010 +msgid "idlelib --- implementation of IDLE application" msgstr "" -#: library/idle.rst:980 +#: library/idle.rst:1015 msgid "**Source code:** :source:`Lib/idlelib`" msgstr "" -#: library/idle.rst:984 +#: library/idle.rst:1019 msgid "" "The Lib/idlelib package implements the IDLE application. See the rest of " "this page for how to use IDLE." msgstr "" -#: library/idle.rst:987 +#: library/idle.rst:1022 msgid "" "The files in idlelib are described in idlelib/README.txt. Access it either " "in idlelib or click Help => About IDLE on the IDLE menu. This file also " @@ -1622,6 +1663,10 @@ msgid "" "changes can be backported (see :pep:`434`)." msgstr "" +#: library/idle.rst:10 +msgid "IDLE" +msgstr "" + #: library/idle.rst:10 msgid "Python Editor" msgstr "" @@ -1630,26 +1675,26 @@ msgstr "" msgid "Integrated Development Environment" msgstr "" -#: library/idle.rst:68 +#: library/idle.rst:71 msgid "Module browser" msgstr "" -#: library/idle.rst:68 +#: library/idle.rst:71 msgid "Path browser" msgstr "" -#: library/idle.rst:210 +#: library/idle.rst:213 msgid "Run script" msgstr "" -#: library/idle.rst:277 +#: library/idle.rst:280 msgid "debugger" msgstr "" -#: library/idle.rst:277 +#: library/idle.rst:280 msgid "stack viewer" msgstr "" -#: library/idle.rst:353 +#: library/idle.rst:356 msgid "breakpoints" msgstr "" diff --git a/library/imp.po b/library/imp.po new file mode 100644 index 000000000..eb08f8db2 --- /dev/null +++ b/library/imp.po @@ -0,0 +1,40 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2001-2025, Python Software Foundation +# This file is distributed under the same license as the Python package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Python 3.12\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: library/imp.rst:2 +msgid ":mod:`!imp` --- Access the import internals" +msgstr "" + +#: library/imp.rst:10 +msgid "" +"This module is no longer part of the Python standard library. It was :ref:" +"`removed in Python 3.12 ` after being deprecated in " +"Python 3.4." +msgstr "" + +#: library/imp.rst:14 +msgid "" +"The :ref:`removal notice ` includes guidance for " +"migrating code from :mod:`!imp` to :mod:`importlib`." +msgstr "" + +#: library/imp.rst:17 +msgid "" +"The last version of Python that provided the :mod:`!imp` module was `Python " +"3.11 `_." +msgstr "" diff --git a/library/importlib.metadata.po b/library/importlib.metadata.po index b4badfd25..cbc67e218 100644 --- a/library/importlib.metadata.po +++ b/library/importlib.metadata.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -110,8 +110,8 @@ msgstr "" #: library/importlib.metadata.rst:82 msgid "" "(example) $ python\n" -">>> from importlib.metadata import version \n" -">>> version('wheel') \n" +">>> from importlib.metadata import version\n" +">>> version('wheel')\n" "'0.32.3'" msgstr "" @@ -129,7 +129,7 @@ msgstr "" #: library/importlib.metadata.rst:95 msgid "" -">>> list(metadata('wheel')) \n" +">>> list(metadata('wheel'))\n" "['Metadata-Version', 'Name', 'Version', 'Summary', 'Home-page', 'Author', " "'Author-email', 'Maintainer', 'Maintainer-email', 'License', 'Project-URL', " "'Project-URL', 'Project-URL', 'Keywords', 'Platform', 'Classifier', " @@ -187,9 +187,9 @@ msgstr "" #: library/importlib.metadata.rst:136 msgid "" -"Also provides a ``.groups`` attribute that reports all identifed entry point " -"groups, and a ``.names`` attribute that reports all identified entry point " -"names." +"Also provides a ``.groups`` attribute that reports all identified entry " +"point groups, and a ``.names`` attribute that reports all identified entry " +"point names." msgstr "" #: library/importlib.metadata.rst:142 @@ -210,7 +210,7 @@ msgid "Query all entry points::" msgstr "" #: library/importlib.metadata.rst:152 -msgid ">>> eps = entry_points() " +msgid ">>> eps = entry_points()" msgstr "" #: library/importlib.metadata.rst:154 @@ -222,7 +222,7 @@ msgstr "" #: library/importlib.metadata.rst:158 msgid "" -">>> sorted(eps.groups) \n" +">>> sorted(eps.groups)\n" "['console_scripts', 'distutils.commands', 'distutils.setup_keywords', " "'egg_info.writers', 'setuptools.installation']" msgstr "" @@ -235,7 +235,7 @@ msgid "" msgstr "" #: library/importlib.metadata.rst:165 -msgid ">>> scripts = eps.select(group='console_scripts') " +msgid ">>> scripts = eps.select(group='console_scripts')" msgstr "" #: library/importlib.metadata.rst:167 @@ -245,7 +245,7 @@ msgid "" msgstr "" #: library/importlib.metadata.rst:170 -msgid ">>> scripts = entry_points(group='console_scripts') " +msgid ">>> scripts = entry_points(group='console_scripts')" msgstr "" #: library/importlib.metadata.rst:172 @@ -255,9 +255,9 @@ msgstr "" #: library/importlib.metadata.rst:174 msgid "" -">>> 'wheel' in scripts.names \n" +">>> 'wheel' in scripts.names\n" "True\n" -">>> wheel = scripts['wheel'] " +">>> wheel = scripts['wheel']" msgstr "" #: library/importlib.metadata.rst:178 @@ -266,8 +266,8 @@ msgstr "" #: library/importlib.metadata.rst:180 msgid "" -">>> (wheel,) = entry_points(group='console_scripts', name='wheel') \n" -">>> (wheel,) = entry_points().select(group='console_scripts', name='wheel') " +">>> (wheel,) = entry_points(group='console_scripts', name='wheel')\n" +">>> (wheel,) = entry_points().select(group='console_scripts', name='wheel')" msgstr "" #: library/importlib.metadata.rst:183 @@ -276,16 +276,16 @@ msgstr "" #: library/importlib.metadata.rst:185 msgid "" -">>> wheel \n" +">>> wheel\n" "EntryPoint(name='wheel', value='wheel.cli:main', group='console_scripts')\n" -">>> wheel.module \n" +">>> wheel.module\n" "'wheel.cli'\n" -">>> wheel.attr \n" +">>> wheel.attr\n" "'main'\n" -">>> wheel.extras \n" +">>> wheel.extras\n" "[]\n" -">>> main = wheel.load() \n" -">>> main \n" +">>> main = wheel.load()\n" +">>> main\n" "" msgstr "" @@ -322,9 +322,9 @@ msgid "" "package as a :class:`PackageMetadata` instance." msgstr "" -#: library/importlib.metadata.rst:224 library/importlib.metadata.rst:272 -#: library/importlib.metadata.rst:293 library/importlib.metadata.rst:356 -#: library/importlib.metadata.rst:407 +#: library/importlib.metadata.rst:224 library/importlib.metadata.rst:273 +#: library/importlib.metadata.rst:294 library/importlib.metadata.rst:357 +#: library/importlib.metadata.rst:408 msgid "" "Raises :exc:`PackageNotFoundError` if the named distribution package is not " "installed in the current Python environment." @@ -351,7 +351,7 @@ msgid "" msgstr "" #: library/importlib.metadata.rst:238 -msgid ">>> wheel_metadata = metadata('wheel') " +msgid ">>> wheel_metadata = metadata('wheel')" msgstr "" #: library/importlib.metadata.rst:240 @@ -362,7 +362,7 @@ msgstr "" #: library/importlib.metadata.rst:243 msgid "" -">>> wheel_metadata['Requires-Python'] \n" +">>> wheel_metadata['Requires-Python']\n" "'>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*'" msgstr "" @@ -378,7 +378,7 @@ msgid "" "'>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*'" msgstr "" -#: library/importlib.metadata.rst:252 library/importlib.metadata.rst:444 +#: library/importlib.metadata.rst:252 library/importlib.metadata.rst:445 msgid "" "The full set of available metadata is not described here. See the PyPA `Core " "metadata specification `__ for the named " +"distribution package." msgstr "" -#: library/importlib.metadata.rst:275 +#: library/importlib.metadata.rst:276 msgid "" "The :func:`!version` function is the quickest way to get a `Distribution " "Package `_'s version number, as a string::" msgstr "" -#: library/importlib.metadata.rst:279 +#: library/importlib.metadata.rst:280 msgid "" -">>> version('wheel') \n" +">>> version('wheel')\n" "'0.32.3'" msgstr "" -#: library/importlib.metadata.rst:286 +#: library/importlib.metadata.rst:287 msgid "Distribution files" msgstr "" -#: library/importlib.metadata.rst:290 +#: library/importlib.metadata.rst:291 msgid "" "Return the full set of files contained within the named distribution package." msgstr "" -#: library/importlib.metadata.rst:296 +#: library/importlib.metadata.rst:297 msgid "" "Returns :const:`None` if the distribution is found but the installation " "database records reporting the files associated with the distribuion package " "are missing." msgstr "" -#: library/importlib.metadata.rst:302 +#: library/importlib.metadata.rst:303 msgid "" "A :class:`pathlib.PurePath` derived object with additional ``dist``, " "``size``, and ``hash`` properties corresponding to the distribution " "package's installation metadata for that file." msgstr "" -#: library/importlib.metadata.rst:306 +#: library/importlib.metadata.rst:307 msgid "" "The :func:`!files` function takes a `Distribution Package `_ name and returns " @@ -449,26 +450,26 @@ msgid "" "class:`PackagePath` instance. For example::" msgstr "" -#: library/importlib.metadata.rst:311 +#: library/importlib.metadata.rst:312 msgid "" -">>> util = [p for p in files('wheel') if 'util.py' in str(p)][0] \n" -">>> util \n" +">>> util = [p for p in files('wheel') if 'util.py' in str(p)][0]\n" +">>> util\n" "PackagePath('wheel/util.py')\n" -">>> util.size \n" +">>> util.size\n" "859\n" -">>> util.dist \n" +">>> util.dist\n" "\n" -">>> util.hash \n" +">>> util.hash\n" "" msgstr "" -#: library/importlib.metadata.rst:321 +#: library/importlib.metadata.rst:322 msgid "Once you have the file, you can also read its contents::" msgstr "" -#: library/importlib.metadata.rst:323 +#: library/importlib.metadata.rst:324 msgid "" -">>> print(util.read_text()) \n" +">>> print(util.read_text())\n" "import base64\n" "import sys\n" "...\n" @@ -478,19 +479,19 @@ msgid "" " return s" msgstr "" -#: library/importlib.metadata.rst:332 +#: library/importlib.metadata.rst:333 msgid "" "You can also use the :meth:`!locate` method to get the absolute path to the " "file::" msgstr "" -#: library/importlib.metadata.rst:335 +#: library/importlib.metadata.rst:336 msgid "" -">>> util.locate() \n" +">>> util.locate()\n" "PosixPath('/home/gustav/example/lib/site-packages/wheel/util.py')" msgstr "" -#: library/importlib.metadata.rst:338 +#: library/importlib.metadata.rst:339 msgid "" "In the case where the metadata file listing files (``RECORD`` or ``SOURCES." "txt``) is missing, :func:`!files` will return :const:`None`. The caller may " @@ -500,47 +501,47 @@ msgid "" "distribution is not known to have the metadata present." msgstr "" -#: library/importlib.metadata.rst:349 +#: library/importlib.metadata.rst:350 msgid "Distribution requirements" msgstr "" -#: library/importlib.metadata.rst:353 +#: library/importlib.metadata.rst:354 msgid "" "Return the declared dependency specifiers for the named distribution package." msgstr "" -#: library/importlib.metadata.rst:359 +#: library/importlib.metadata.rst:360 msgid "" "To get the full set of requirements for a `Distribution Package `_, use " "the :func:`!requires` function::" msgstr "" -#: library/importlib.metadata.rst:363 +#: library/importlib.metadata.rst:364 msgid "" -">>> requires('wheel') \n" +">>> requires('wheel')\n" "[\"pytest (>=3.0.0) ; extra == 'test'\", \"pytest-cov ; extra == 'test'\"]" msgstr "" -#: library/importlib.metadata.rst:371 +#: library/importlib.metadata.rst:372 msgid "Mapping import to distribution packages" msgstr "" -#: library/importlib.metadata.rst:375 +#: library/importlib.metadata.rst:376 msgid "" "Return a mapping from the top level module and import package names found " -"via :attr:`sys.meta_path` to the names of the distribution packages (if any) " +"via :data:`sys.meta_path` to the names of the distribution packages (if any) " "that provide the corresponding files." msgstr "" -#: library/importlib.metadata.rst:379 +#: library/importlib.metadata.rst:380 msgid "" "To allow for namespace packages (which may have members provided by multiple " "distribution packages), each top level import name maps to a list of " "distribution names rather than mapping directly to a single name." msgstr "" -#: library/importlib.metadata.rst:383 +#: library/importlib.metadata.rst:384 msgid "" "A convenience method to resolve the `Distribution Package `_ name (or names, " @@ -549,91 +550,91 @@ msgid "" "glossary/#term-Import-Package>`_::" msgstr "" -#: library/importlib.metadata.rst:388 +#: library/importlib.metadata.rst:389 msgid "" ">>> packages_distributions()\n" "{'importlib_metadata': ['importlib-metadata'], 'yaml': ['PyYAML'], 'jaraco': " "['jaraco.classes', 'jaraco.functools'], ...}" msgstr "" -#: library/importlib.metadata.rst:391 +#: library/importlib.metadata.rst:392 msgid "" "Some editable installs, `do not supply top-level names `_, and thus this function is not " "reliable with such installs." msgstr "" -#: library/importlib.metadata.rst:400 +#: library/importlib.metadata.rst:401 msgid "Distributions" msgstr "" -#: library/importlib.metadata.rst:404 +#: library/importlib.metadata.rst:405 msgid "" "Return a :class:`Distribution` instance describing the named distribution " "package." msgstr "" -#: library/importlib.metadata.rst:412 +#: library/importlib.metadata.rst:413 msgid "Details of an installed distribution package." msgstr "" -#: library/importlib.metadata.rst:414 +#: library/importlib.metadata.rst:415 msgid "" "Note: different :class:`!Distribution` instances do not currently compare " "equal, even if they relate to the same installed distribution and " "accordingly have the same attributes." msgstr "" -#: library/importlib.metadata.rst:418 +#: library/importlib.metadata.rst:419 msgid "" "While the module level API described above is the most common and convenient " "usage, you can get all of that information from the :class:`!Distribution` " "class. :class:`!Distribution` is an abstract object that represents the " "metadata for a Python `Distribution Package `_. You can get the concreate :" +"latest/glossary/#term-Distribution-Package>`_. You can get the concrete :" "class:`!Distribution` subclass instance for an installed distribution " "package by calling the :func:`distribution` function::" msgstr "" -#: library/importlib.metadata.rst:425 +#: library/importlib.metadata.rst:426 msgid "" -">>> from importlib.metadata import distribution \n" -">>> dist = distribution('wheel') \n" -">>> type(dist) \n" +">>> from importlib.metadata import distribution\n" +">>> dist = distribution('wheel')\n" +">>> type(dist)\n" "" msgstr "" -#: library/importlib.metadata.rst:430 +#: library/importlib.metadata.rst:431 msgid "" "Thus, an alternative way to get the version number is through the :class:`!" "Distribution` instance::" msgstr "" -#: library/importlib.metadata.rst:433 +#: library/importlib.metadata.rst:434 msgid "" -">>> dist.version \n" +">>> dist.version\n" "'0.32.3'" msgstr "" -#: library/importlib.metadata.rst:436 +#: library/importlib.metadata.rst:437 msgid "" "There are all kinds of additional metadata available on :class:`!" "Distribution` instances::" msgstr "" -#: library/importlib.metadata.rst:439 +#: library/importlib.metadata.rst:440 msgid "" -">>> dist.metadata['Requires-Python'] \n" +">>> dist.metadata['Requires-Python']\n" "'>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*'\n" -">>> dist.metadata['License'] \n" +">>> dist.metadata['License']\n" "'MIT'" msgstr "" -#: library/importlib.metadata.rst:449 +#: library/importlib.metadata.rst:450 msgid "Distribution Discovery" msgstr "" -#: library/importlib.metadata.rst:451 +#: library/importlib.metadata.rst:452 msgid "" "By default, this package provides built-in support for discovery of metadata " "for file system and zip file `Distribution Package `_ metadata is not available through :" @@ -668,14 +669,14 @@ msgid "" "on :data:`sys.meta_path`." msgstr "" -#: library/importlib.metadata.rst:470 +#: library/importlib.metadata.rst:471 msgid "" "By default ``importlib.metadata`` installs a finder for distribution " "packages found on the file system. This finder doesn't actually find any " "*distributions*, but it can find their metadata." msgstr "" -#: library/importlib.metadata.rst:475 +#: library/importlib.metadata.rst:476 msgid "" "The abstract class :py:class:`importlib.abc.MetaPathFinder` defines the " "interface expected of finders by Python's import system. ``importlib." @@ -685,7 +686,7 @@ msgid "" "base class, which defines this abstract method::" msgstr "" -#: library/importlib.metadata.rst:483 +#: library/importlib.metadata.rst:484 msgid "" "@abc.abstractmethod\n" "def find_distributions(context=DistributionFinder.Context()):\n" @@ -694,14 +695,14 @@ msgid "" " \"\"\"" msgstr "" -#: library/importlib.metadata.rst:489 +#: library/importlib.metadata.rst:490 msgid "" "The ``DistributionFinder.Context`` object provides ``.path`` and ``.name`` " "properties indicating the path to search and name to match and may supply " "other relevant context." msgstr "" -#: library/importlib.metadata.rst:493 +#: library/importlib.metadata.rst:494 msgid "" "What this means in practice is that to support finding distribution package " "metadata in locations other than the file system, subclass ``Distribution`` " diff --git a/library/importlib.po b/library/importlib.po index 1d1442f70..b0b324601 100644 --- a/library/importlib.po +++ b/library/importlib.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -556,19 +556,23 @@ msgid "" "implemented." msgstr "" -#: library/importlib.rst:383 +#: library/importlib.rst:636 +msgid "*Superseded by TraversableResources*" +msgstr "" + +#: library/importlib.rst:385 msgid "" "An abstract base class for a :term:`loader` which implements the optional :" "pep:`302` protocol for loading arbitrary resources from the storage back-end." msgstr "" -#: library/importlib.rst:387 +#: library/importlib.rst:389 msgid "" "This ABC is deprecated in favour of supporting resource loading through :" -"class:`importlib.resources.abc.ResourceReader`." +"class:`importlib.resources.abc.TraversableResources`." msgstr "" -#: library/importlib.rst:393 +#: library/importlib.rst:396 msgid "" "An abstract method to return the bytes for the data located at *path*. " "Loaders that have a file-like storage back-end that allows storing arbitrary " @@ -578,34 +582,34 @@ msgid "" "__file__` attribute or an item from a package's :attr:`~module.__path__`." msgstr "" -#: library/importlib.rst:402 +#: library/importlib.rst:405 msgid "Raises :exc:`OSError` instead of :exc:`NotImplementedError`." msgstr "" -#: library/importlib.rst:408 +#: library/importlib.rst:411 msgid "" "An abstract base class for a :term:`loader` which implements the optional :" "pep:`302` protocol for loaders that inspect modules." msgstr "" -#: library/importlib.rst:413 +#: library/importlib.rst:416 msgid "" "Return the code object for a module, or ``None`` if the module does not have " "a code object (as would be the case, for example, for a built-in module). " "Raise an :exc:`ImportError` if loader cannot find the requested module." msgstr "" -#: library/importlib.rst:419 +#: library/importlib.rst:422 msgid "" "While the method has a default implementation, it is suggested that it be " "overridden if possible for performance." msgstr "" -#: library/importlib.rst:425 +#: library/importlib.rst:428 msgid "No longer abstract and a concrete implementation is provided." msgstr "" -#: library/importlib.rst:430 +#: library/importlib.rst:434 msgid "" "An abstract method to return the source of a module. It is returned as a " "text string using :term:`universal newlines`, translating all recognized " @@ -614,22 +618,22 @@ msgid "" "cannot find the module specified." msgstr "" -#: library/importlib.rst:445 library/importlib.rst:495 +#: library/importlib.rst:449 library/importlib.rst:500 msgid "Raises :exc:`ImportError` instead of :exc:`NotImplementedError`." msgstr "" -#: library/importlib.rst:441 +#: library/importlib.rst:445 msgid "" "An optional method to return a true value if the module is a package, a " "false value otherwise. :exc:`ImportError` is raised if the :term:`loader` " "cannot find the module." msgstr "" -#: library/importlib.rst:450 +#: library/importlib.rst:454 msgid "Create a code object from Python source." msgstr "" -#: library/importlib.rst:452 +#: library/importlib.rst:456 msgid "" "The *data* argument can be whatever the :func:`compile` function supports (i." "e. string or bytes). The *path* argument should be the \"path\" to where the " @@ -637,107 +641,107 @@ msgid "" "in a zip file)." msgstr "" -#: library/importlib.rst:457 +#: library/importlib.rst:461 msgid "" "With the subsequent code object one can execute it in a module by running " "``exec(code, module.__dict__)``." msgstr "" -#: library/importlib.rst:462 +#: library/importlib.rst:466 msgid "Made the method static." msgstr "" -#: library/importlib.rst:467 +#: library/importlib.rst:471 msgid "Implementation of :meth:`Loader.exec_module`." msgstr "" -#: library/importlib.rst:473 +#: library/importlib.rst:477 msgid "Implementation of :meth:`Loader.load_module`." msgstr "" -#: library/importlib.rst:475 +#: library/importlib.rst:479 msgid "use :meth:`exec_module` instead." msgstr "" -#: library/importlib.rst:481 +#: library/importlib.rst:485 msgid "" "An abstract base class which inherits from :class:`InspectLoader` that, when " "implemented, helps a module to be executed as a script. The ABC represents " "an optional :pep:`302` protocol." msgstr "" -#: library/importlib.rst:487 +#: library/importlib.rst:492 msgid "" "An abstract method that is to return the value of :attr:`~module.__file__` " "for the specified module. If no path is available, :exc:`ImportError` is " "raised." msgstr "" -#: library/importlib.rst:491 +#: library/importlib.rst:496 msgid "" "If source code is available, then the method should return the path to the " "source file, regardless of whether a bytecode was used to load the module." msgstr "" -#: library/importlib.rst:501 +#: library/importlib.rst:506 msgid "" "An abstract base class which inherits from :class:`ResourceLoader` and :" "class:`ExecutionLoader`, providing concrete implementations of :meth:" "`ResourceLoader.get_data` and :meth:`ExecutionLoader.get_filename`." msgstr "" -#: library/importlib.rst:505 +#: library/importlib.rst:510 msgid "" "The *fullname* argument is a fully resolved name of the module the loader is " "to handle. The *path* argument is the path to the file for the module." msgstr "" -#: library/importlib.rst:512 +#: library/importlib.rst:517 msgid "The name of the module the loader can handle." msgstr "" -#: library/importlib.rst:516 +#: library/importlib.rst:521 msgid "Path to the file of the module." msgstr "" -#: library/importlib.rst:520 +#: library/importlib.rst:525 msgid "Calls super's ``load_module()``." msgstr "" -#: library/importlib.rst:522 +#: library/importlib.rst:527 msgid "Use :meth:`Loader.exec_module` instead." msgstr "" -#: library/importlib.rst:1122 +#: library/importlib.rst:1140 msgid "Returns :attr:`path`." msgstr "" -#: library/importlib.rst:531 +#: library/importlib.rst:538 msgid "Reads *path* as a binary file and returns the bytes from it." msgstr "" -#: library/importlib.rst:536 +#: library/importlib.rst:543 msgid "" "An abstract base class for implementing source (and optionally bytecode) " "file loading. The class inherits from both :class:`ResourceLoader` and :" "class:`ExecutionLoader`, requiring the implementation of:" msgstr "" -#: library/importlib.rst:540 +#: library/importlib.rst:547 msgid ":meth:`ResourceLoader.get_data`" msgstr "" -#: library/importlib.rst:541 +#: library/importlib.rst:548 msgid ":meth:`ExecutionLoader.get_filename`" msgstr "" -#: library/importlib.rst:542 +#: library/importlib.rst:549 msgid "" "Should only return the path to the source file; sourceless loading is not " "supported." msgstr "" -#: library/importlib.rst:545 +#: library/importlib.rst:552 msgid "" "The abstract methods defined by this class are to add optional bytecode file " "support. Not implementing these optional methods (or causing them to raise :" @@ -749,83 +753,83 @@ msgid "" "bytecode-specific API is exposed." msgstr "" -#: library/importlib.rst:556 +#: library/importlib.rst:563 msgid "" "Optional abstract method which returns a :class:`dict` containing metadata " "about the specified path. Supported dictionary keys are:" msgstr "" -#: library/importlib.rst:559 +#: library/importlib.rst:566 msgid "" "``'mtime'`` (mandatory): an integer or floating-point number representing " "the modification time of the source code;" msgstr "" -#: library/importlib.rst:561 +#: library/importlib.rst:568 msgid "``'size'`` (optional): the size in bytes of the source code." msgstr "" -#: library/importlib.rst:563 +#: library/importlib.rst:570 msgid "" "Any other keys in the dictionary are ignored, to allow for future " "extensions. If the path cannot be handled, :exc:`OSError` is raised." msgstr "" -#: library/importlib.rst:581 +#: library/importlib.rst:588 msgid "Raise :exc:`OSError` instead of :exc:`NotImplementedError`." msgstr "" -#: library/importlib.rst:573 +#: library/importlib.rst:580 msgid "" "Optional abstract method which returns the modification time for the " "specified path." msgstr "" -#: library/importlib.rst:576 +#: library/importlib.rst:583 msgid "" "This method is deprecated in favour of :meth:`path_stats`. You don't have " "to implement it, but it is still available for compatibility purposes. " "Raise :exc:`OSError` if the path cannot be handled." msgstr "" -#: library/importlib.rst:586 +#: library/importlib.rst:593 msgid "" "Optional abstract method which writes the specified bytes to a file path. " "Any intermediate directories which do not exist are to be created " "automatically." msgstr "" -#: library/importlib.rst:590 +#: library/importlib.rst:597 msgid "" "When writing to the path fails because the path is read-only (:const:`errno." "EACCES`/:exc:`PermissionError`), do not propagate the exception." msgstr "" -#: library/importlib.rst:594 +#: library/importlib.rst:601 msgid "No longer raises :exc:`NotImplementedError` when called." msgstr "" -#: library/importlib.rst:599 +#: library/importlib.rst:606 msgid "Concrete implementation of :meth:`InspectLoader.get_code`." msgstr "" -#: library/importlib.rst:603 +#: library/importlib.rst:610 msgid "Concrete implementation of :meth:`Loader.exec_module`." msgstr "" -#: library/importlib.rst:609 +#: library/importlib.rst:616 msgid "Concrete implementation of :meth:`Loader.load_module`." msgstr "" -#: library/importlib.rst:611 +#: library/importlib.rst:618 msgid "Use :meth:`exec_module` instead." msgstr "" -#: library/importlib.rst:616 +#: library/importlib.rst:623 msgid "Concrete implementation of :meth:`InspectLoader.get_source`." msgstr "" -#: library/importlib.rst:620 +#: library/importlib.rst:627 msgid "" "Concrete implementation of :meth:`InspectLoader.is_package`. A module is " "determined to be a package if its file path (as provided by :meth:" @@ -834,16 +838,12 @@ msgid "" "``__init__``." msgstr "" -#: library/importlib.rst:629 -msgid "*Superseded by TraversableResources*" -msgstr "" - -#: library/importlib.rst:631 +#: library/importlib.rst:638 msgid "" "An :term:`abstract base class` to provide the ability to read *resources*." msgstr "" -#: library/importlib.rst:634 +#: library/importlib.rst:641 msgid "" "From the perspective of this ABC, a *resource* is a binary artifact that is " "shipped within a package. Typically this is something like a data file that " @@ -853,7 +853,7 @@ msgid "" "file versus on the file system." msgstr "" -#: library/importlib.rst:642 +#: library/importlib.rst:649 msgid "" "For any of methods of this class, a *resource* argument is expected to be a :" "term:`path-like object` which represents conceptually just a file name. This " @@ -865,7 +865,7 @@ msgid "" "potentially representing multiple packages or a module)." msgstr "" -#: library/importlib.rst:653 +#: library/importlib.rst:660 msgid "" "Loaders that wish to support resource reading are expected to provide a " "method called ``get_resource_reader(fullname)`` which returns an object " @@ -874,37 +874,37 @@ msgid "" "with this ABC should only be returned when the specified module is a package." msgstr "" -#: library/importlib.rst:772 +#: library/importlib.rst:789 msgid "Use :class:`importlib.resources.abc.TraversableResources` instead." msgstr "" -#: library/importlib.rst:667 +#: library/importlib.rst:675 msgid "" "Returns an opened, :term:`file-like object` for binary reading of the " "*resource*." msgstr "" -#: library/importlib.rst:670 +#: library/importlib.rst:678 msgid "If the resource cannot be found, :exc:`FileNotFoundError` is raised." msgstr "" -#: library/importlib.rst:675 +#: library/importlib.rst:684 msgid "Returns the file system path to the *resource*." msgstr "" -#: library/importlib.rst:677 +#: library/importlib.rst:686 msgid "" "If the resource does not concretely exist on the file system, raise :exc:" "`FileNotFoundError`." msgstr "" -#: library/importlib.rst:682 +#: library/importlib.rst:692 msgid "" "Returns ``True`` if the named *name* is considered a resource. :exc:" "`FileNotFoundError` is raised if *name* does not exist." msgstr "" -#: library/importlib.rst:687 +#: library/importlib.rst:698 msgid "" "Returns an :term:`iterable` of strings over the contents of the package. Do " "note that it is not required that all names returned by the iterator be " @@ -912,7 +912,7 @@ msgid "" "`is_resource` would be false." msgstr "" -#: library/importlib.rst:693 +#: library/importlib.rst:704 msgid "" "Allowing non-resource names to be returned is to allow for situations where " "how a package and its resources are stored are known a priori and the non-" @@ -921,71 +921,71 @@ msgid "" "stored on the file system then those subdirectory names can be used directly." msgstr "" -#: library/importlib.rst:701 +#: library/importlib.rst:712 msgid "The abstract method returns an iterable of no items." msgstr "" -#: library/importlib.rst:706 +#: library/importlib.rst:717 msgid "" "An object with a subset of :class:`pathlib.Path` methods suitable for " "traversing directories and opening files." msgstr "" -#: library/importlib.rst:709 +#: library/importlib.rst:720 msgid "" "For a representation of the object on the file-system, use :meth:`importlib." "resources.as_file`." msgstr "" -#: library/importlib.rst:714 +#: library/importlib.rst:725 msgid "Use :class:`importlib.resources.abc.Traversable` instead." msgstr "" -#: library/importlib.rst:719 +#: library/importlib.rst:730 msgid "Abstract. The base name of this object without any parent references." msgstr "" -#: library/importlib.rst:723 +#: library/importlib.rst:735 msgid "Yield ``Traversable`` objects in ``self``." msgstr "" -#: library/importlib.rst:727 +#: library/importlib.rst:740 msgid "Return ``True`` if ``self`` is a directory." msgstr "" -#: library/importlib.rst:731 +#: library/importlib.rst:745 msgid "Return ``True`` if ``self`` is a file." msgstr "" -#: library/importlib.rst:735 +#: library/importlib.rst:750 msgid "Return Traversable child in ``self``." msgstr "" -#: library/importlib.rst:739 +#: library/importlib.rst:755 msgid "Return ``Traversable`` child in ``self``." msgstr "" -#: library/importlib.rst:743 +#: library/importlib.rst:760 msgid "" "*mode* may be 'r' or 'rb' to open as text or binary. Return a handle " "suitable for reading (same as :attr:`pathlib.Path.open`)." msgstr "" -#: library/importlib.rst:746 +#: library/importlib.rst:763 msgid "" "When opening as text, accepts encoding parameters such as those accepted by :" -"attr:`io.TextIOWrapper`." +"class:`io.TextIOWrapper`." msgstr "" -#: library/importlib.rst:751 +#: library/importlib.rst:768 msgid "Read contents of ``self`` as bytes." msgstr "" -#: library/importlib.rst:755 +#: library/importlib.rst:772 msgid "Read contents of ``self`` as text." msgstr "" -#: library/importlib.rst:760 +#: library/importlib.rst:777 msgid "" "An abstract base class for resource readers capable of serving the :meth:" "`importlib.resources.files` interface. Subclasses :class:`importlib." @@ -995,71 +995,71 @@ msgid "" "also supplies ResourceReader." msgstr "" -#: library/importlib.rst:767 +#: library/importlib.rst:784 msgid "" "Loaders that wish to support resource reading are expected to implement this " "interface." msgstr "" -#: library/importlib.rst:777 +#: library/importlib.rst:795 msgid "" "Returns a :class:`importlib.resources.abc.Traversable` object for the loaded " "package." msgstr "" -#: library/importlib.rst:783 +#: library/importlib.rst:801 msgid ":mod:`importlib.machinery` -- Importers and path hooks" msgstr "" -#: library/importlib.rst:788 +#: library/importlib.rst:806 msgid "**Source code:** :source:`Lib/importlib/machinery.py`" msgstr "" -#: library/importlib.rst:792 +#: library/importlib.rst:810 msgid "" "This module contains the various objects that help :keyword:`import` find " "and load modules." msgstr "" -#: library/importlib.rst:797 +#: library/importlib.rst:815 msgid "" "A list of strings representing the recognized file suffixes for source " "modules." msgstr "" -#: library/importlib.rst:804 +#: library/importlib.rst:822 msgid "" "A list of strings representing the file suffixes for non-optimized bytecode " "modules." msgstr "" -#: library/importlib.rst:819 -msgid "Use :attr:`BYTECODE_SUFFIXES` instead." +#: library/importlib.rst:837 +msgid "Use :const:`BYTECODE_SUFFIXES` instead." msgstr "" -#: library/importlib.rst:814 +#: library/importlib.rst:832 msgid "" "A list of strings representing the file suffixes for optimized bytecode " "modules." msgstr "" -#: library/importlib.rst:824 +#: library/importlib.rst:842 msgid "" "A list of strings representing the recognized file suffixes for bytecode " "modules (including the leading dot)." msgstr "" -#: library/importlib.rst:829 +#: library/importlib.rst:847 msgid "The value is no longer dependent on ``__debug__``." msgstr "" -#: library/importlib.rst:834 +#: library/importlib.rst:852 msgid "" "A list of strings representing the recognized file suffixes for extension " "modules." msgstr "" -#: library/importlib.rst:841 +#: library/importlib.rst:859 msgid "" "Returns a combined list of strings representing all file suffixes for " "modules recognized by the standard import machinery. This is a helper for " @@ -1068,56 +1068,56 @@ msgid "" "`inspect.getmodulename`)." msgstr "" -#: library/importlib.rst:852 +#: library/importlib.rst:870 msgid "" "An :term:`importer` for built-in modules. All known built-in modules are " "listed in :data:`sys.builtin_module_names`. This class implements the :class:" "`importlib.abc.MetaPathFinder` and :class:`importlib.abc.InspectLoader` ABCs." msgstr "" -#: library/importlib.rst:871 library/importlib.rst:899 +#: library/importlib.rst:889 library/importlib.rst:917 msgid "" "Only class methods are defined by this class to alleviate the need for " "instantiation." msgstr "" -#: library/importlib.rst:860 +#: library/importlib.rst:878 msgid "" "As part of :pep:`489`, the builtin importer now implements :meth:`Loader." "create_module` and :meth:`Loader.exec_module`" msgstr "" -#: library/importlib.rst:867 +#: library/importlib.rst:885 msgid "" "An :term:`importer` for frozen modules. This class implements the :class:" "`importlib.abc.MetaPathFinder` and :class:`importlib.abc.InspectLoader` ABCs." msgstr "" -#: library/importlib.rst:874 +#: library/importlib.rst:892 msgid "" "Gained :meth:`~Loader.create_module` and :meth:`~Loader.exec_module` methods." msgstr "" -#: library/importlib.rst:881 +#: library/importlib.rst:899 msgid "" ":term:`Finder ` for modules declared in the Windows registry. This " "class implements the :class:`importlib.abc.MetaPathFinder` ABC." msgstr "" -#: library/importlib.rst:889 +#: library/importlib.rst:907 msgid "" "Use :mod:`site` configuration instead. Future versions of Python may not " "enable this finder by default." msgstr "" -#: library/importlib.rst:896 +#: library/importlib.rst:914 msgid "" "A :term:`Finder ` for :data:`sys.path` and package ``__path__`` " "attributes. This class implements the :class:`importlib.abc.MetaPathFinder` " "ABC." msgstr "" -#: library/importlib.rst:904 +#: library/importlib.rst:922 msgid "" "Class method that attempts to find a :term:`spec ` for the " "module specified by *fullname* on :data:`sys.path` or, if defined, on " @@ -1131,43 +1131,43 @@ msgid "" "cache and returned." msgstr "" -#: library/importlib.rst:918 +#: library/importlib.rst:936 msgid "" "If the current working directory -- represented by an empty string -- is no " "longer valid then ``None`` is returned but no value is cached in :data:`sys." "path_importer_cache`." msgstr "" -#: library/importlib.rst:925 +#: library/importlib.rst:943 msgid "" "Calls :meth:`importlib.abc.PathEntryFinder.invalidate_caches` on all finders " "stored in :data:`sys.path_importer_cache` that define the method. Otherwise " "entries in :data:`sys.path_importer_cache` set to ``None`` are deleted." msgstr "" -#: library/importlib.rst:930 +#: library/importlib.rst:948 msgid "Entries of ``None`` in :data:`sys.path_importer_cache` are deleted." msgstr "" -#: library/importlib.rst:933 +#: library/importlib.rst:951 msgid "" "Calls objects in :data:`sys.path_hooks` with the current working directory " "for ``''`` (i.e. the empty string)." msgstr "" -#: library/importlib.rst:940 +#: library/importlib.rst:958 msgid "" "A concrete implementation of :class:`importlib.abc.PathEntryFinder` which " "caches results from the file system." msgstr "" -#: library/importlib.rst:943 +#: library/importlib.rst:961 msgid "" "The *path* argument is the directory for which the finder is in charge of " "searching." msgstr "" -#: library/importlib.rst:946 +#: library/importlib.rst:964 msgid "" "The *loader_details* argument is a variable number of 2-item tuples each " "containing a loader and a sequence of file suffixes the loader recognizes. " @@ -1175,7 +1175,7 @@ msgid "" "module's name and the path to the file found." msgstr "" -#: library/importlib.rst:951 +#: library/importlib.rst:969 msgid "" "The finder will cache the directory contents as necessary, making stat calls " "for each module search to verify the cache is not outdated. Because cache " @@ -1188,166 +1188,166 @@ msgid "" "to call :func:`importlib.invalidate_caches`." msgstr "" -#: library/importlib.rst:965 +#: library/importlib.rst:983 msgid "The path the finder will search in." msgstr "" -#: library/importlib.rst:969 +#: library/importlib.rst:987 msgid "Attempt to find the spec to handle *fullname* within :attr:`path`." msgstr "" -#: library/importlib.rst:975 +#: library/importlib.rst:993 msgid "Clear out the internal cache." msgstr "" -#: library/importlib.rst:979 +#: library/importlib.rst:997 msgid "" "A class method which returns a closure for use on :data:`sys.path_hooks`. An " "instance of :class:`FileFinder` is returned by the closure using the path " "argument given to the closure directly and *loader_details* indirectly." msgstr "" -#: library/importlib.rst:984 +#: library/importlib.rst:1002 msgid "" "If the argument to the closure is not an existing directory, :exc:" "`ImportError` is raised." msgstr "" -#: library/importlib.rst:990 +#: library/importlib.rst:1008 msgid "" "A concrete implementation of :class:`importlib.abc.SourceLoader` by " "subclassing :class:`importlib.abc.FileLoader` and providing some concrete " "implementations of other methods." msgstr "" -#: library/importlib.rst:998 +#: library/importlib.rst:1016 msgid "The name of the module that this loader will handle." msgstr "" -#: library/importlib.rst:1002 +#: library/importlib.rst:1020 msgid "The path to the source file." msgstr "" -#: library/importlib.rst:1006 +#: library/importlib.rst:1024 msgid "Return ``True`` if :attr:`path` appears to be for a package." msgstr "" -#: library/importlib.rst:1010 +#: library/importlib.rst:1028 msgid "" "Concrete implementation of :meth:`importlib.abc.SourceLoader.path_stats`." msgstr "" -#: library/importlib.rst:1014 +#: library/importlib.rst:1032 msgid "Concrete implementation of :meth:`importlib.abc.SourceLoader.set_data`." msgstr "" -#: library/importlib.rst:1061 +#: library/importlib.rst:1079 msgid "" "Concrete implementation of :meth:`importlib.abc.Loader.load_module` where " "specifying the name of the module to load is optional." msgstr "" -#: library/importlib.rst:1066 +#: library/importlib.rst:1084 msgid "Use :meth:`importlib.abc.Loader.exec_module` instead." msgstr "" -#: library/importlib.rst:1028 +#: library/importlib.rst:1046 msgid "" "A concrete implementation of :class:`importlib.abc.FileLoader` which can " "import bytecode files (i.e. no source code files exist)." msgstr "" -#: library/importlib.rst:1031 +#: library/importlib.rst:1049 msgid "" "Please note that direct use of bytecode files (and thus not source code " "files) inhibits your modules from being usable by all Python implementations " "or new versions of Python which change the bytecode format." msgstr "" -#: library/importlib.rst:1040 +#: library/importlib.rst:1058 msgid "The name of the module the loader will handle." msgstr "" -#: library/importlib.rst:1044 +#: library/importlib.rst:1062 msgid "The path to the bytecode file." msgstr "" -#: library/importlib.rst:1048 +#: library/importlib.rst:1066 msgid "Determines if the module is a package based on :attr:`path`." msgstr "" -#: library/importlib.rst:1052 +#: library/importlib.rst:1070 msgid "Returns the code object for :attr:`name` created from :attr:`path`." msgstr "" -#: library/importlib.rst:1056 +#: library/importlib.rst:1074 msgid "" "Returns ``None`` as bytecode files have no source when this loader is used." msgstr "" -#: library/importlib.rst:1071 +#: library/importlib.rst:1089 msgid "" "A concrete implementation of :class:`importlib.abc.ExecutionLoader` for " "extension modules." msgstr "" -#: library/importlib.rst:1074 +#: library/importlib.rst:1092 msgid "" "The *fullname* argument specifies the name of the module the loader is to " "support. The *path* argument is the path to the extension module's file." msgstr "" -#: library/importlib.rst:1077 +#: library/importlib.rst:1095 msgid "" "Note that, by default, importing an extension module will fail in " "subinterpreters if it doesn't implement multi-phase init (see :pep:`489`), " "even if it would otherwise import successfully." msgstr "" -#: library/importlib.rst:1083 +#: library/importlib.rst:1101 msgid "Multi-phase init is now required for use in subinterpreters." msgstr "" -#: library/importlib.rst:1088 +#: library/importlib.rst:1106 msgid "Name of the module the loader supports." msgstr "" -#: library/importlib.rst:1092 +#: library/importlib.rst:1110 msgid "Path to the extension module." msgstr "" -#: library/importlib.rst:1096 +#: library/importlib.rst:1114 msgid "" "Creates the module object from the given specification in accordance with :" "pep:`489`." msgstr "" -#: library/importlib.rst:1103 +#: library/importlib.rst:1121 msgid "Initializes the given module object in accordance with :pep:`489`." msgstr "" -#: library/importlib.rst:1109 +#: library/importlib.rst:1127 msgid "" "Returns ``True`` if the file path points to a package's ``__init__`` module " -"based on :attr:`EXTENSION_SUFFIXES`." +"based on :const:`EXTENSION_SUFFIXES`." msgstr "" -#: library/importlib.rst:1114 +#: library/importlib.rst:1132 msgid "Returns ``None`` as extension modules lack a code object." msgstr "" -#: library/importlib.rst:1118 +#: library/importlib.rst:1136 msgid "Returns ``None`` as extension modules do not have source code." msgstr "" -#: library/importlib.rst:1129 +#: library/importlib.rst:1147 msgid "" "A concrete implementation of :class:`importlib.abc.InspectLoader` for " "namespace packages. This is an alias for a private class and is only made " "public for introspecting the ``__loader__`` attribute on namespace packages::" msgstr "" -#: library/importlib.rst:1134 +#: library/importlib.rst:1152 msgid "" ">>> from importlib.machinery import NamespaceLoader\n" ">>> import my_namespace\n" @@ -1358,7 +1358,7 @@ msgid "" "True" msgstr "" -#: library/importlib.rst:1147 +#: library/importlib.rst:1165 msgid "" "A specification for a module's import-system-related state. This is " "typically exposed as the module's :attr:`~module.__spec__` attribute. Many " @@ -1371,19 +1371,19 @@ msgid "" "origin>`, and vice versa." msgstr "" -#: library/importlib.rst:1161 +#: library/importlib.rst:1179 msgid "" "The module's fully qualified name (see :attr:`module.__name__`). The :term:" "`finder` should always set this attribute to a non-empty string." msgstr "" -#: library/importlib.rst:1166 +#: library/importlib.rst:1184 msgid "" "The :term:`loader` used to load the module (see :attr:`module.__loader__`). " "The :term:`finder` should always set this attribute." msgstr "" -#: library/importlib.rst:1171 +#: library/importlib.rst:1189 msgid "" "The location the :term:`loader` should use to load the module (see :attr:" "`module.__file__`). For example, for modules loaded from a ``.py`` file this " @@ -1392,14 +1392,14 @@ msgid "" "there is not one (like for namespace packages), it should be set to ``None``." msgstr "" -#: library/importlib.rst:1180 +#: library/importlib.rst:1198 msgid "" "A (possibly empty) :term:`sequence` of strings enumerating the locations in " "which a package's submodules will be found (see :attr:`module.__path__`). " "Most of the time there will only be a single directory in this list." msgstr "" -#: library/importlib.rst:1185 +#: library/importlib.rst:1203 msgid "" "The :term:`finder` should set this attribute to a sequence, even an empty " "one, to indicate to the import system that the module is a package. It " @@ -1407,55 +1407,55 @@ msgid "" "later to a special object for namespace packages." msgstr "" -#: library/importlib.rst:1193 +#: library/importlib.rst:1211 msgid "" "The :term:`finder` may set this attribute to an object containing " "additional, module-specific data to use when loading the module. Otherwise " "it should be set to ``None``." msgstr "" -#: library/importlib.rst:1199 +#: library/importlib.rst:1217 msgid "" "The filename of a compiled version of the module's code (see :attr:`module." "__cached__`). The :term:`finder` should always set this attribute but it may " "be ``None`` for modules that do not need compiled code stored." msgstr "" -#: library/importlib.rst:1206 +#: library/importlib.rst:1224 msgid "" "(Read-only) The fully qualified name of the package the module is in (or the " "empty string for a top-level module). See :attr:`module.__package__`. If the " "module is a package then this is the same as :attr:`name`." msgstr "" -#: library/importlib.rst:1213 +#: library/importlib.rst:1231 msgid "" "``True`` if the spec's :attr:`origin` refers to a loadable location, " "``False`` otherwise. This value impacts how :attr:`!origin` is interpreted " "and how the module's :attr:`~module.__file__` is populated." msgstr "" -#: library/importlib.rst:1219 +#: library/importlib.rst:1237 msgid ":mod:`importlib.util` -- Utility code for importers" msgstr "" -#: library/importlib.rst:1225 +#: library/importlib.rst:1243 msgid "**Source code:** :source:`Lib/importlib/util.py`" msgstr "" -#: library/importlib.rst:1229 +#: library/importlib.rst:1247 msgid "" "This module contains the various objects that help in the construction of " "an :term:`importer`." msgstr "" -#: library/importlib.rst:1234 +#: library/importlib.rst:1252 msgid "" "The bytes which represent the bytecode version number. If you need help with " "loading/writing bytecode then consider :class:`importlib.abc.SourceLoader`." msgstr "" -#: library/importlib.rst:1241 +#: library/importlib.rst:1259 msgid "" "Return the :pep:`3147`/:pep:`488` path to the byte-compiled file associated " "with the source *path*. For example, if *path* is ``/foo/bar/baz.py`` the " @@ -1465,7 +1465,7 @@ msgid "" "`NotImplementedError` will be raised)." msgstr "" -#: library/importlib.rst:1248 +#: library/importlib.rst:1266 msgid "" "The *optimization* parameter is used to specify the optimization level of " "the bytecode file. An empty string represents no optimization, so ``/foo/bar/" @@ -1478,7 +1478,7 @@ msgid "" "be alphanumeric, else :exc:`ValueError` is raised." msgstr "" -#: library/importlib.rst:1258 +#: library/importlib.rst:1276 msgid "" "The *debug_override* parameter is deprecated and can be used to override the " "system's value for ``__debug__``. A ``True`` value is the equivalent of " @@ -1487,17 +1487,17 @@ msgid "" "are not ``None`` then :exc:`TypeError` is raised." msgstr "" -#: library/importlib.rst:1266 +#: library/importlib.rst:1284 msgid "" "The *optimization* parameter was added and the *debug_override* parameter " "was deprecated." msgstr "" -#: library/importlib.rst:1286 library/importlib.rst:1375 +#: library/importlib.rst:1304 library/importlib.rst:1393 msgid "Accepts a :term:`path-like object`." msgstr "" -#: library/importlib.rst:1276 +#: library/importlib.rst:1294 msgid "" "Given the *path* to a :pep:`3147` file name, return the associated source " "code file path. For example, if *path* is ``/foo/bar/__pycache__/baz." @@ -1507,25 +1507,25 @@ msgid "" "cache_tag` is not defined, :exc:`NotImplementedError` is raised." msgstr "" -#: library/importlib.rst:1291 +#: library/importlib.rst:1309 msgid "" "Decode the given bytes representing source code and return it as a string " "with universal newlines (as required by :meth:`importlib.abc.InspectLoader." "get_source`)." msgstr "" -#: library/importlib.rst:1299 +#: library/importlib.rst:1317 msgid "Resolve a relative module name to an absolute one." msgstr "" -#: library/importlib.rst:1301 +#: library/importlib.rst:1319 msgid "" "If **name** has no leading dots, then **name** is simply returned. This " "allows for usage such as ``importlib.util.resolve_name('sys', __spec__." "parent)`` without doing a check to see if the **package** argument is needed." msgstr "" -#: library/importlib.rst:1306 +#: library/importlib.rst:1324 msgid "" ":exc:`ImportError` is raised if **name** is a relative module name but " "**package** is a false value (e.g. ``None`` or the empty string). :exc:" @@ -1533,13 +1533,13 @@ msgid "" "package (e.g. requesting ``..bacon`` from within the ``spam`` package)." msgstr "" -#: library/importlib.rst:1314 +#: library/importlib.rst:1332 msgid "" "To improve consistency with import statements, raise :exc:`ImportError` " "instead of :exc:`ValueError` for invalid relative import attempts." msgstr "" -#: library/importlib.rst:1321 +#: library/importlib.rst:1339 msgid "" "Find the :term:`spec ` for a module, optionally relative to the " "specified **package** name. If the module is in :data:`sys.modules`, then " @@ -1549,30 +1549,30 @@ msgid "" "if no spec is found." msgstr "" -#: library/importlib.rst:1328 +#: library/importlib.rst:1346 msgid "" "If **name** is for a submodule (contains a dot), the parent module is " "automatically imported." msgstr "" -#: library/importlib.rst:1331 +#: library/importlib.rst:1349 msgid "**name** and **package** work the same as for :func:`import_module`." msgstr "" -#: library/importlib.rst:1335 +#: library/importlib.rst:1353 msgid "" "Raises :exc:`ModuleNotFoundError` instead of :exc:`AttributeError` if " "**package** is in fact not a package (i.e. lacks a :attr:`~module.__path__` " "attribute)." msgstr "" -#: library/importlib.rst:1342 +#: library/importlib.rst:1360 msgid "" "Create a new module based on **spec** and :meth:`spec.loader.create_module " "`." msgstr "" -#: library/importlib.rst:1345 +#: library/importlib.rst:1363 msgid "" "If :meth:`spec.loader.create_module ` " "does not return ``None``, then any pre-existing attributes will not be " @@ -1580,14 +1580,14 @@ msgid "" "accessing **spec** or setting an attribute on the module." msgstr "" -#: library/importlib.rst:1350 +#: library/importlib.rst:1368 msgid "" "This function is preferred over using :class:`types.ModuleType` to create a " "new module as **spec** is used to set as many import-controlled attributes " "on the module as possible." msgstr "" -#: library/importlib.rst:1358 +#: library/importlib.rst:1376 msgid "" "A factory function for creating a :class:`~importlib.machinery.ModuleSpec` " "instance based on a loader. The parameters have the same meaning as they do " @@ -1596,7 +1596,7 @@ msgid "" "spec." msgstr "" -#: library/importlib.rst:1368 +#: library/importlib.rst:1386 msgid "" "A factory function for creating a :class:`~importlib.machinery.ModuleSpec` " "instance based on the path to a file. Missing information will be filled in " @@ -1604,14 +1604,14 @@ msgid "" "module will be file-based." msgstr "" -#: library/importlib.rst:1380 +#: library/importlib.rst:1398 msgid "" "Return the hash of *source_bytes* as bytes. A hash-based ``.pyc`` file " "embeds the :func:`source_hash` of the corresponding source file's contents " "in its header." msgstr "" -#: library/importlib.rst:1388 +#: library/importlib.rst:1406 msgid "" "A context manager that can temporarily skip the compatibility check for " "extension modules. By default the check is enabled and will fail when a " @@ -1620,33 +1620,33 @@ msgid "" "interpreter GIL, when imported in an interpreter with its own GIL." msgstr "" -#: library/importlib.rst:1395 +#: library/importlib.rst:1413 msgid "" "Note that this function is meant to accommodate an unusual case; one which " "is likely to eventually go away. There's is a pretty good chance this is " "not what you were looking for." msgstr "" -#: library/importlib.rst:1399 +#: library/importlib.rst:1417 msgid "" "You can get the same effect as this function by implementing the basic " "interface of multi-phase init (:pep:`489`) and lying about support for " "multiple interpreters (or per-interpreter GIL)." msgstr "" -#: library/importlib.rst:1404 +#: library/importlib.rst:1422 msgid "" "Using this function to disable the check can lead to unexpected behavior and " "even crashes. It should only be used during extension module development." msgstr "" -#: library/importlib.rst:1412 +#: library/importlib.rst:1430 msgid "" "A class which postpones the execution of the loader of a module until the " "module has an attribute accessed." msgstr "" -#: library/importlib.rst:1415 +#: library/importlib.rst:1433 msgid "" "This class **only** works with loaders that define :meth:`~importlib.abc." "Loader.exec_module` as control over what module type is used for the module " @@ -1659,7 +1659,7 @@ msgid "" "raised if such a substitution is detected." msgstr "" -#: library/importlib.rst:1426 +#: library/importlib.rst:1444 msgid "" "For projects where startup time is critical, this class allows for " "potentially minimizing the cost of loading a module if it is never used. For " @@ -1668,21 +1668,21 @@ msgid "" "postponed and thus occurring out of context." msgstr "" -#: library/importlib.rst:1434 +#: library/importlib.rst:1452 msgid "" "Began calling :meth:`~importlib.abc.Loader.create_module`, removing the " "compatibility warning for :class:`importlib.machinery.BuiltinImporter` and :" "class:`importlib.machinery.ExtensionFileLoader`." msgstr "" -#: library/importlib.rst:1441 +#: library/importlib.rst:1459 msgid "" "A class method which returns a callable that creates a lazy loader. This is " "meant to be used in situations where the loader is passed by class instead " "of by instance. ::" msgstr "" -#: library/importlib.rst:1446 +#: library/importlib.rst:1464 msgid "" "suffixes = importlib.machinery.SOURCE_SUFFIXES\n" "loader = importlib.machinery.SourceFileLoader\n" @@ -1690,43 +1690,43 @@ msgid "" "finder = importlib.machinery.FileFinder(path, (lazy_loader, suffixes))" msgstr "" -#: library/importlib.rst:1454 +#: library/importlib.rst:1472 msgid "Examples" msgstr "" -#: library/importlib.rst:1457 +#: library/importlib.rst:1475 msgid "Importing programmatically" msgstr "" -#: library/importlib.rst:1459 +#: library/importlib.rst:1477 msgid "" "To programmatically import a module, use :func:`importlib.import_module`. ::" msgstr "" -#: library/importlib.rst:1462 +#: library/importlib.rst:1480 msgid "" "import importlib\n" "\n" "itertools = importlib.import_module('itertools')" msgstr "" -#: library/importlib.rst:1468 +#: library/importlib.rst:1486 msgid "Checking if a module can be imported" msgstr "" -#: library/importlib.rst:1470 +#: library/importlib.rst:1488 msgid "" "If you need to find out if a module can be imported without actually doing " "the import, then you should use :func:`importlib.util.find_spec`." msgstr "" -#: library/importlib.rst:1473 +#: library/importlib.rst:1491 msgid "" "Note that if ``name`` is a submodule (contains a dot), :func:`importlib.util." "find_spec` will import the parent module. ::" msgstr "" -#: library/importlib.rst:1477 +#: library/importlib.rst:1495 msgid "" "import importlib.util\n" "import sys\n" @@ -1746,11 +1746,11 @@ msgid "" " print(f\"can't find the {name!r} module\")" msgstr "" -#: library/importlib.rst:1496 +#: library/importlib.rst:1514 msgid "Importing a source file directly" msgstr "" -#: library/importlib.rst:1498 +#: library/importlib.rst:1516 msgid "" "This recipe should be used with caution: it is an approximation of an import " "statement where the file path is specified directly, rather than :data:`sys." @@ -1760,13 +1760,13 @@ msgid "" "file is appropriate." msgstr "" -#: library/importlib.rst:1505 +#: library/importlib.rst:1523 msgid "" "To import a Python source file directly from a path, use the following " "recipe::" msgstr "" -#: library/importlib.rst:1507 +#: library/importlib.rst:1525 msgid "" "import importlib.util\n" "import sys\n" @@ -1789,15 +1789,15 @@ msgid "" "json = import_from_path(module_name, file_path)" msgstr "" -#: library/importlib.rst:1529 +#: library/importlib.rst:1547 msgid "Implementing lazy imports" msgstr "" -#: library/importlib.rst:1531 +#: library/importlib.rst:1549 msgid "The example below shows how to implement lazy imports::" msgstr "" -#: library/importlib.rst:1533 +#: library/importlib.rst:1551 msgid "" ">>> import importlib.util\n" ">>> import sys\n" @@ -1817,11 +1817,11 @@ msgid "" "False" msgstr "" -#: library/importlib.rst:1552 +#: library/importlib.rst:1570 msgid "Setting up an importer" msgstr "" -#: library/importlib.rst:1554 +#: library/importlib.rst:1572 msgid "" "For deep customizations of import, you typically want to implement an :term:" "`importer`. This means managing both the :term:`finder` and :term:`loader` " @@ -1835,7 +1835,7 @@ msgid "" "for the appropriate classes defined within this package)::" msgstr "" -#: library/importlib.rst:1565 +#: library/importlib.rst:1583 msgid "" "import importlib.machinery\n" "import sys\n" @@ -1859,11 +1859,11 @@ msgid "" "sys.path_hooks.append(SpamPathEntryFinder.path_hook(loader_details))" msgstr "" -#: library/importlib.rst:1586 +#: library/importlib.rst:1604 msgid "Approximating :func:`importlib.import_module`" msgstr "" -#: library/importlib.rst:1588 +#: library/importlib.rst:1606 msgid "" "Import itself is implemented in Python code, making it possible to expose " "most of the import machinery through importlib. The following helps " @@ -1871,7 +1871,7 @@ msgid "" "approximate implementation of :func:`importlib.import_module`::" msgstr "" -#: library/importlib.rst:1594 +#: library/importlib.rst:1612 msgid "" "import importlib.util\n" "import sys\n" @@ -1904,10 +1904,10 @@ msgid "" " return module" msgstr "" -#: library/importlib.rst:422 +#: library/importlib.rst:425 msgid "universal newlines" msgstr "" -#: library/importlib.rst:422 +#: library/importlib.rst:425 msgid "importlib.abc.InspectLoader.get_source method" msgstr "" diff --git a/library/importlib.resources.abc.po b/library/importlib.resources.abc.po index 350e94841..aa677d1ca 100644 --- a/library/importlib.resources.abc.po +++ b/library/importlib.resources.abc.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -68,33 +68,33 @@ msgstr "" msgid "Use :class:`importlib.resources.abc.TraversableResources` instead." msgstr "" -#: library/importlib.resources.abc.rst:51 +#: library/importlib.resources.abc.rst:52 msgid "" "Returns an opened, :term:`file-like object` for binary reading of the " "*resource*." msgstr "" -#: library/importlib.resources.abc.rst:54 +#: library/importlib.resources.abc.rst:55 msgid "If the resource cannot be found, :exc:`FileNotFoundError` is raised." msgstr "" -#: library/importlib.resources.abc.rst:59 +#: library/importlib.resources.abc.rst:61 msgid "Returns the file system path to the *resource*." msgstr "" -#: library/importlib.resources.abc.rst:61 +#: library/importlib.resources.abc.rst:63 msgid "" "If the resource does not concretely exist on the file system, raise :exc:" "`FileNotFoundError`." msgstr "" -#: library/importlib.resources.abc.rst:66 +#: library/importlib.resources.abc.rst:69 msgid "" "Returns ``True`` if the named *name* is considered a resource. :exc:" "`FileNotFoundError` is raised if *name* does not exist." msgstr "" -#: library/importlib.resources.abc.rst:71 +#: library/importlib.resources.abc.rst:75 msgid "" "Returns an :term:`iterable` of strings over the contents of the package. Do " "note that it is not required that all names returned by the iterator be " @@ -102,7 +102,7 @@ msgid "" "`is_resource` would be false." msgstr "" -#: library/importlib.resources.abc.rst:77 +#: library/importlib.resources.abc.rst:81 msgid "" "Allowing non-resource names to be returned is to allow for situations where " "how a package and its resources are stored are known a priori and the non-" @@ -111,58 +111,58 @@ msgid "" "stored on the file system then those subdirectory names can be used directly." msgstr "" -#: library/importlib.resources.abc.rst:85 +#: library/importlib.resources.abc.rst:89 msgid "The abstract method returns an iterable of no items." msgstr "" -#: library/importlib.resources.abc.rst:90 +#: library/importlib.resources.abc.rst:94 msgid "" "An object with a subset of :class:`pathlib.Path` methods suitable for " "traversing directories and opening files." msgstr "" -#: library/importlib.resources.abc.rst:93 +#: library/importlib.resources.abc.rst:97 msgid "" "For a representation of the object on the file-system, use :meth:`importlib." "resources.as_file`." msgstr "" -#: library/importlib.resources.abc.rst:98 +#: library/importlib.resources.abc.rst:102 msgid "Abstract. The base name of this object without any parent references." msgstr "" -#: library/importlib.resources.abc.rst:102 +#: library/importlib.resources.abc.rst:107 msgid "Yield Traversable objects in self." msgstr "" -#: library/importlib.resources.abc.rst:106 +#: library/importlib.resources.abc.rst:112 msgid "Return ``True`` if self is a directory." msgstr "" -#: library/importlib.resources.abc.rst:110 +#: library/importlib.resources.abc.rst:117 msgid "Return ``True`` if self is a file." msgstr "" -#: library/importlib.resources.abc.rst:114 +#: library/importlib.resources.abc.rst:122 msgid "" "Traverse directories according to *pathsegments* and return the result as :" "class:`!Traversable`." msgstr "" -#: library/importlib.resources.abc.rst:117 +#: library/importlib.resources.abc.rst:125 msgid "" "Each *pathsegments* argument may contain multiple names separated by forward " "slashes (``/``, ``posixpath.sep`` ). For example, the following are " "equivalent::" msgstr "" -#: library/importlib.resources.abc.rst:121 +#: library/importlib.resources.abc.rst:129 msgid "" "files.joinpath('subdir', 'subsuddir', 'file.txt')\n" "files.joinpath('subdir/subsuddir/file.txt')" msgstr "" -#: library/importlib.resources.abc.rst:124 +#: library/importlib.resources.abc.rst:132 msgid "" "Note that some :class:`!Traversable` implementations might not be updated to " "the latest version of the protocol. For compatibility with such " @@ -170,42 +170,42 @@ msgid "" "call to ``joinpath``. For example::" msgstr "" -#: library/importlib.resources.abc.rst:129 +#: library/importlib.resources.abc.rst:137 msgid "files.joinpath('subdir').joinpath('subsubdir').joinpath('file.txt')" msgstr "" -#: library/importlib.resources.abc.rst:133 +#: library/importlib.resources.abc.rst:141 msgid "" "``joinpath`` accepts multiple *pathsegments*, and these segments may contain " "forward slashes as path separators. Previously, only a single *child* " "argument was accepted." msgstr "" -#: library/importlib.resources.abc.rst:139 +#: library/importlib.resources.abc.rst:148 msgid "Return Traversable child in self. Equivalent to ``joinpath(child)``." msgstr "" -#: library/importlib.resources.abc.rst:144 +#: library/importlib.resources.abc.rst:154 msgid "" "*mode* may be 'r' or 'rb' to open as text or binary. Return a handle " "suitable for reading (same as :attr:`pathlib.Path.open`)." msgstr "" -#: library/importlib.resources.abc.rst:147 +#: library/importlib.resources.abc.rst:157 msgid "" "When opening as text, accepts encoding parameters such as those accepted by :" "class:`io.TextIOWrapper`." msgstr "" -#: library/importlib.resources.abc.rst:152 +#: library/importlib.resources.abc.rst:162 msgid "Read contents of self as bytes." msgstr "" -#: library/importlib.resources.abc.rst:156 +#: library/importlib.resources.abc.rst:166 msgid "Read contents of self as text." msgstr "" -#: library/importlib.resources.abc.rst:161 +#: library/importlib.resources.abc.rst:171 msgid "" "An abstract base class for resource readers capable of serving the :meth:" "`importlib.resources.files` interface. Subclasses :class:`ResourceReader` " @@ -214,13 +214,13 @@ msgid "" "TraversableResources` also supplies :class:`!ResourceReader`." msgstr "" -#: library/importlib.resources.abc.rst:168 +#: library/importlib.resources.abc.rst:178 msgid "" "Loaders that wish to support resource reading are expected to implement this " "interface." msgstr "" -#: library/importlib.resources.abc.rst:173 +#: library/importlib.resources.abc.rst:184 msgid "" "Returns a :class:`importlib.resources.abc.Traversable` object for the loaded " "package." diff --git a/library/itertools.po b/library/itertools.po index 1c924bd56..2ae3ac4f0 100644 --- a/library/itertools.po +++ b/library/itertools.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -1117,7 +1117,7 @@ msgid "" "the input iterator and there is no way to access it. This could be an issue " "if an application wants to further consume the input iterator after " "*takewhile* has been run to exhaustion. To work around this problem, " -"consider using `more-iterools before_and_after() `_ instead." msgstr "" @@ -1310,6 +1310,11 @@ msgid "" " \"Returns the sequence elements n times.\"\n" " return chain.from_iterable(repeat(tuple(iterable), n))\n" "\n" +"def loops(n):\n" +" \"Loop n times. Like range(n) but without creating integers.\"\n" +" # for _ in loops(100): ...\n" +" return repeat(None, n)\n" +"\n" "def tail(n, iterable):\n" " \"Return an iterator over the last n items.\"\n" " # tail(3, 'ABCDEFG') → E F G\n" @@ -1453,11 +1458,11 @@ msgid "" " yield func()" msgstr "" -#: library/itertools.rst:969 +#: library/itertools.rst:974 msgid "The following recipes have a more mathematical flavor:" msgstr "" -#: library/itertools.rst:971 +#: library/itertools.rst:976 msgid "" "def powerset(iterable):\n" " \"powerset([1,2,3]) → () (1,) (2,) (3,) (1,2) (1,3) (2,3) (1,2,3)\"\n" @@ -1549,6 +1554,11 @@ msgid "" " data[p*p : n : p+p] = bytes(len(range(p*p, n, p+p)))\n" " yield from iter_index(data, 1, start=3)\n" "\n" +"def is_prime(n):\n" +" \"Return True if n is prime.\"\n" +" # is_prime(1_000_000_000_000_403) → True\n" +" return n > 1 and all(n % p for p in sieve(math.isqrt(n) + 1))\n" +"\n" "def factor(n):\n" " \"Prime factors of n.\"\n" " # factor(99) → 3 3 11\n" @@ -1569,5 +1579,11 @@ msgid "" " # totient(12) → 4 because len([1, 5, 7, 11]) == 4\n" " for prime in set(factor(n)):\n" " n -= n // prime\n" -" return n" +" return n\n" +"\n" +"def multinomial(*counts):\n" +" \"Number of distinct arrangements of a multiset.\"\n" +" # Counter('abracadabra').values() -> 5 2 1 1 2\n" +" # multinomial(5, 2, 1, 1, 2) → 83160\n" +" return math.prod(map(math.comb, accumulate(counts), counts))" msgstr "" diff --git a/library/json.po b/library/json.po index d1ff5cc72..54394d2d3 100644 --- a/library/json.po +++ b/library/json.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -194,113 +194,118 @@ msgstr "" #: library/json.rst:142 msgid "" "Serialize *obj* as a JSON formatted stream to *fp* (a ``.write()``-" -"supporting :term:`file-like object`) using this :ref:`conversion table `." +"supporting :term:`file-like object`) using this :ref:`Python-to-JSON " +"conversion table `." msgstr "" -#: library/json.rst:146 +#: library/json.rst:148 msgid "" -"If *skipkeys* is true (default: ``False``), then dict keys that are not of a " -"basic type (:class:`str`, :class:`int`, :class:`float`, :class:`bool`, " -"``None``) will be skipped instead of raising a :exc:`TypeError`." +"Unlike :mod:`pickle` and :mod:`marshal`, JSON is not a framed protocol, so " +"trying to serialize multiple objects with repeated calls to :func:`dump` " +"using the same *fp* will result in an invalid JSON file." msgstr "" -#: library/json.rst:150 -msgid "" -"The :mod:`json` module always produces :class:`str` objects, not :class:" -"`bytes` objects. Therefore, ``fp.write()`` must support :class:`str` input." +#: library/json.rst:0 +msgid "Parameters" msgstr "" -#: library/json.rst:431 -msgid "" -"If *ensure_ascii* is true (the default), the output is guaranteed to have " -"all incoming non-ASCII characters escaped. If *ensure_ascii* is false, " -"these characters will be output as-is." +#: library/json.rst:152 +msgid "The Python object to be serialized." msgstr "" -#: library/json.rst:158 +#: library/json.rst:155 msgid "" -"If *check_circular* is false (default: ``True``), then the circular " -"reference check for container types will be skipped and a circular reference " -"will result in a :exc:`RecursionError` (or worse)." +"The file-like object *obj* will be serialized to. The :mod:`!json` module " +"always produces :class:`str` objects, not :class:`bytes` objects, therefore " +"``fp.write()`` must support :class:`str` input." msgstr "" #: library/json.rst:162 msgid "" -"If *allow_nan* is false (default: ``True``), then it will be a :exc:" -"`ValueError` to serialize out of range :class:`float` values (``nan``, " -"``inf``, ``-inf``) in strict compliance of the JSON specification. If " -"*allow_nan* is true, their JavaScript equivalents (``NaN``, ``Infinity``, ``-" -"Infinity``) will be used." +"If ``True``, keys that are not of a basic type (:class:`str`, :class:`int`, :" +"class:`float`, :class:`bool`, ``None``) will be skipped instead of raising " +"a :exc:`TypeError`. Default ``False``." msgstr "" -#: library/json.rst:450 +#: library/json.rst:168 msgid "" -"If *indent* is a non-negative integer or string, then JSON array elements " -"and object members will be pretty-printed with that indent level. An indent " -"level of 0, negative, or ``\"\"`` will only insert newlines. ``None`` (the " -"default) selects the most compact representation. Using a positive integer " -"indent indents that many spaces per level. If *indent* is a string (such as " -"``\"\\t\"``), that string is used to indent each level." +"If ``True`` (the default), the output is guaranteed to have all incoming non-" +"ASCII characters escaped. If ``False``, these characters will be outputted " +"as-is." msgstr "" -#: library/json.rst:457 -msgid "Allow strings for *indent* in addition to integers." +#: library/json.rst:173 +msgid "" +"If ``False``, the circular reference check for container types is skipped " +"and a circular reference will result in a :exc:`RecursionError` (or worse). " +"Default ``True``." msgstr "" -#: library/json.rst:460 +#: library/json.rst:178 msgid "" -"If specified, *separators* should be an ``(item_separator, key_separator)`` " -"tuple. The default is ``(', ', ': ')`` if *indent* is ``None`` and ``(',', " -"': ')`` otherwise. To get the most compact JSON representation, you should " -"specify ``(',', ':')`` to eliminate whitespace." +"If ``False``, serialization of out-of-range :class:`float` values (``nan``, " +"``inf``, ``-inf``) will result in a :exc:`ValueError`, in strict compliance " +"with the JSON specification. If ``True`` (the default), their JavaScript " +"equivalents (``NaN``, ``Infinity``, ``-Infinity``) are used." msgstr "" -#: library/json.rst:465 -msgid "Use ``(',', ': ')`` as default if *indent* is not ``None``." +#: library/json.rst:185 +msgid "" +"If set, a custom JSON encoder with the :meth:`~JSONEncoder.default` method " +"overridden, for serializing into custom datatypes. If ``None`` (the " +"default), :class:`!JSONEncoder` is used." msgstr "" -#: library/json.rst:468 +#: library/json.rst:192 msgid "" -"If specified, *default* should be a function that gets called for objects " -"that can't otherwise be serialized. It should return a JSON encodable " -"version of the object or raise a :exc:`TypeError`. If not specified, :exc:" -"`TypeError` is raised." +"If a positive integer or string, JSON array elements and object members will " +"be pretty-printed with that indent level. A positive integer indents that " +"many spaces per level; a string (such as ``\"\\t\"``) is used to indent each " +"level. If zero, negative, or ``\"\"`` (the empty string), only newlines are " +"inserted. If ``None`` (the default), the most compact representation is used." msgstr "" -#: library/json.rst:191 +#: library/json.rst:202 msgid "" -"If *sort_keys* is true (default: ``False``), then the output of dictionaries " -"will be sorted by key." +"A two-tuple: ``(item_separator, key_separator)``. If ``None`` (the default), " +"*separators* defaults to ``(', ', ': ')`` if *indent* is ``None``, and " +"``(',', ': ')`` otherwise. For the most compact JSON, specify ``(',', ':')`` " +"to eliminate whitespace." msgstr "" -#: library/json.rst:194 +#: library/json.rst:211 msgid "" -"To use a custom :class:`JSONEncoder` subclass (e.g. one that overrides the :" -"meth:`~JSONEncoder.default` method to serialize additional types), specify " -"it with the *cls* kwarg; otherwise :class:`JSONEncoder` is used." +"A function that is called for objects that can't otherwise be serialized. It " +"should return a JSON encodable version of the object or raise a :exc:" +"`TypeError`. If ``None`` (the default), :exc:`!TypeError` is raised." msgstr "" -#: library/json.rst:276 +#: library/json.rst:218 msgid "" -"All optional parameters are now :ref:`keyword-only `." +"If ``True``, dictionaries will be outputted sorted by key. Default ``False``." +msgstr "" + +#: library/json.rst:507 +msgid "Allow strings for *indent* in addition to integers." msgstr "" -#: library/json.rst:203 +#: library/json.rst:515 +msgid "Use ``(',', ': ')`` as default if *indent* is not ``None``." +msgstr "" + +#: library/json.rst:327 msgid "" -"Unlike :mod:`pickle` and :mod:`marshal`, JSON is not a framed protocol, so " -"trying to serialize multiple objects with repeated calls to :func:`dump` " -"using the same *fp* will result in an invalid JSON file." +"All optional parameters are now :ref:`keyword-only `." msgstr "" -#: library/json.rst:212 +#: library/json.rst:237 msgid "" "Serialize *obj* to a JSON formatted :class:`str` using this :ref:`conversion " "table `. The arguments have the same meaning as in :func:" "`dump`." msgstr "" -#: library/json.rst:218 +#: library/json.rst:243 msgid "" "Keys in key/value pairs of JSON are always of the type :class:`str`. When a " "dictionary is converted into JSON, all the keys of the dictionary are " @@ -309,200 +314,210 @@ msgid "" "original one. That is, ``loads(dumps(x)) != x`` if x has non-string keys." msgstr "" -#: library/json.rst:227 +#: library/json.rst:254 msgid "" -"Deserialize *fp* (a ``.read()``-supporting :term:`text file` or :term:" -"`binary file` containing a JSON document) to a Python object using this :ref:" -"`conversion table `." +"Deserialize *fp* to a Python object using the :ref:`JSON-to-Python " +"conversion table `." msgstr "" -#: library/json.rst:231 +#: library/json.rst:257 msgid "" -"*object_hook* is an optional function that will be called with the result of " -"any object literal decoded (a :class:`dict`). The return value of " -"*object_hook* will be used instead of the :class:`dict`. This feature can " -"be used to implement custom decoders (e.g. `JSON-RPC `_ class hinting)." +"A ``.read()``-supporting :term:`text file` or :term:`binary file` containing " +"the JSON document to be deserialized." msgstr "" -#: library/json.rst:237 +#: library/json.rst:262 msgid "" -"*object_pairs_hook* is an optional function that will be called with the " -"result of any object literal decoded with an ordered list of pairs. The " -"return value of *object_pairs_hook* will be used instead of the :class:" -"`dict`. This feature can be used to implement custom decoders. If " -"*object_hook* is also defined, the *object_pairs_hook* takes priority." +"If set, a custom JSON decoder. Additional keyword arguments to :func:`!load` " +"will be passed to the constructor of *cls*. If ``None`` (the default), :" +"class:`!JSONDecoder` is used." msgstr "" -#: library/json.rst:347 -msgid "Added support for *object_pairs_hook*." +#: library/json.rst:269 +msgid "" +"If set, a function that is called with the result of any object literal " +"decoded (a :class:`dict`). The return value of this function will be used " +"instead of the :class:`dict`. This feature can be used to implement custom " +"decoders, for example `JSON-RPC `_ class hinting. " +"Default ``None``." msgstr "" -#: library/json.rst:350 +#: library/json.rst:279 msgid "" -"*parse_float* is an optional function that will be called with the string of " -"every JSON float to be decoded. By default, this is equivalent to " -"``float(num_str)``. This can be used to use another datatype or parser for " -"JSON floats (e.g. :class:`decimal.Decimal`)." +"If set, a function that is called with the result of any object literal " +"decoded with an ordered list of pairs. The return value of this function " +"will be used instead of the :class:`dict`. This feature can be used to " +"implement custom decoders. If *object_hook* is also set, *object_pairs_hook* " +"takes priority. Default ``None``." msgstr "" -#: library/json.rst:355 +#: library/json.rst:289 msgid "" -"*parse_int* is an optional function that will be called with the string of " -"every JSON int to be decoded. By default, this is equivalent to " -"``int(num_str)``. This can be used to use another datatype or parser for " -"JSON integers (e.g. :class:`float`)." +"If set, a function that is called with the string of every JSON float to be " +"decoded. If ``None`` (the default), it is equivalent to ``float(num_str)``. " +"This can be used to parse JSON floats into custom datatypes, for example :" +"class:`decimal.Decimal`." msgstr "" -#: library/json.rst:256 +#: library/json.rst:297 msgid "" -"The default *parse_int* of :func:`int` now limits the maximum length of the " -"integer string via the interpreter's :ref:`integer string conversion length " -"limitation ` to help avoid denial of service attacks." +"If set, a function that is called with the string of every JSON int to be " +"decoded. If ``None`` (the default), it is equivalent to ``int(num_str)``. " +"This can be used to parse JSON integers into custom datatypes, for example :" +"class:`float`." msgstr "" -#: library/json.rst:360 +#: library/json.rst:305 msgid "" -"*parse_constant* is an optional function that will be called with one of the " -"following strings: ``'-Infinity'``, ``'Infinity'``, ``'NaN'``. This can be " -"used to raise an exception if invalid JSON numbers are encountered." +"If set, a function that is called with one of the following strings: ``'-" +"Infinity'``, ``'Infinity'``, or ``'NaN'``. This can be used to raise an " +"exception if invalid JSON numbers are encountered. Default ``None``." msgstr "" -#: library/json.rst:266 -msgid "*parse_constant* doesn't get called on 'null', 'true', 'false' anymore." +#: library/json.rst:0 +msgid "Raises" msgstr "" -#: library/json.rst:269 -msgid "" -"To use a custom :class:`JSONDecoder` subclass, specify it with the ``cls`` " -"kwarg; otherwise :class:`JSONDecoder` is used. Additional keyword arguments " -"will be passed to the constructor of the class." +#: library/json.rst:313 +msgid "When the data being deserialized is not a valid JSON document." msgstr "" -#: library/json.rst:291 library/json.rst:369 +#: library/json.rst:316 msgid "" -"If the data being deserialized is not a valid JSON document, a :exc:" -"`JSONDecodeError` will be raised." +"When the data being deserialized does not contain UTF-8, UTF-16 or UTF-32 " +"encoded data." msgstr "" -#: library/json.rst:279 +#: library/json.rst:322 +msgid "Added the optional *object_pairs_hook* parameter." +msgstr "" + +#: library/json.rst:323 +msgid "*parse_constant* doesn't get called on 'null', 'true', 'false' anymore." +msgstr "" + +#: library/json.rst:328 msgid "" "*fp* can now be a :term:`binary file`. The input encoding should be UTF-8, " "UTF-16 or UTF-32." msgstr "" -#: library/json.rst:285 +#: library/json.rst:331 msgid "" -"Deserialize *s* (a :class:`str`, :class:`bytes` or :class:`bytearray` " -"instance containing a JSON document) to a Python object using this :ref:" -"`conversion table `." +"The default *parse_int* of :func:`int` now limits the maximum length of the " +"integer string via the interpreter's :ref:`integer string conversion length " +"limitation ` to help avoid denial of service attacks." msgstr "" -#: library/json.rst:289 -msgid "The other arguments have the same meaning as in :func:`load`." +#: library/json.rst:339 +msgid "" +"Identical to :func:`load`, but instead of a file-like object, deserialize " +"*s* (a :class:`str`, :class:`bytes` or :class:`bytearray` instance " +"containing a JSON document) to a Python object using this :ref:`conversion " +"table `." msgstr "" -#: library/json.rst:294 +#: library/json.rst:344 msgid "" "*s* can now be of type :class:`bytes` or :class:`bytearray`. The input " "encoding should be UTF-8, UTF-16 or UTF-32." msgstr "" -#: library/json.rst:298 +#: library/json.rst:348 msgid "The keyword argument *encoding* has been removed." msgstr "" -#: library/json.rst:303 +#: library/json.rst:353 msgid "Encoders and Decoders" msgstr "" -#: library/json.rst:307 +#: library/json.rst:357 msgid "Simple JSON decoder." msgstr "" -#: library/json.rst:309 +#: library/json.rst:359 msgid "Performs the following translations in decoding by default:" msgstr "" -#: library/json.rst:402 +#: library/json.rst:452 msgid "JSON" msgstr "" -#: library/json.rst:402 +#: library/json.rst:452 msgid "Python" msgstr "" -#: library/json.rst:404 +#: library/json.rst:454 msgid "object" msgstr "" -#: library/json.rst:404 +#: library/json.rst:454 msgid "dict" msgstr "" -#: library/json.rst:406 +#: library/json.rst:456 msgid "array" msgstr "" -#: library/json.rst:318 +#: library/json.rst:368 msgid "list" msgstr "" -#: library/json.rst:408 +#: library/json.rst:458 msgid "string" msgstr "" -#: library/json.rst:408 +#: library/json.rst:458 msgid "str" msgstr "" -#: library/json.rst:322 +#: library/json.rst:372 msgid "number (int)" msgstr "" -#: library/json.rst:322 +#: library/json.rst:372 msgid "int" msgstr "" -#: library/json.rst:324 +#: library/json.rst:374 msgid "number (real)" msgstr "" -#: library/json.rst:324 +#: library/json.rst:374 msgid "float" msgstr "" -#: library/json.rst:412 +#: library/json.rst:462 msgid "true" msgstr "" -#: library/json.rst:412 +#: library/json.rst:462 msgid "True" msgstr "" -#: library/json.rst:414 +#: library/json.rst:464 msgid "false" msgstr "" -#: library/json.rst:414 +#: library/json.rst:464 msgid "False" msgstr "" -#: library/json.rst:416 +#: library/json.rst:466 msgid "null" msgstr "" -#: library/json.rst:416 +#: library/json.rst:466 msgid "None" msgstr "" -#: library/json.rst:333 +#: library/json.rst:383 msgid "" "It also understands ``NaN``, ``Infinity``, and ``-Infinity`` as their " "corresponding ``float`` values, which is outside the JSON spec." msgstr "" -#: library/json.rst:336 +#: library/json.rst:386 msgid "" "*object_hook* is an optional function that will be called with the result of " "every JSON object decoded and its return value will be used in place of the " @@ -510,7 +525,7 @@ msgid "" "g. to support `JSON-RPC `_ class hinting)." msgstr "" -#: library/json.rst:341 +#: library/json.rst:391 msgid "" "*object_pairs_hook* is an optional function that will be called with the " "result of every JSON object decoded with an ordered list of pairs. The " @@ -519,7 +534,34 @@ msgid "" "*object_hook* is also defined, the *object_pairs_hook* takes priority." msgstr "" -#: library/json.rst:364 +#: library/json.rst:397 +msgid "Added support for *object_pairs_hook*." +msgstr "" + +#: library/json.rst:400 +msgid "" +"*parse_float* is an optional function that will be called with the string of " +"every JSON float to be decoded. By default, this is equivalent to " +"``float(num_str)``. This can be used to use another datatype or parser for " +"JSON floats (e.g. :class:`decimal.Decimal`)." +msgstr "" + +#: library/json.rst:405 +msgid "" +"*parse_int* is an optional function that will be called with the string of " +"every JSON int to be decoded. By default, this is equivalent to " +"``int(num_str)``. This can be used to use another datatype or parser for " +"JSON integers (e.g. :class:`float`)." +msgstr "" + +#: library/json.rst:410 +msgid "" +"*parse_constant* is an optional function that will be called with one of the " +"following strings: ``'-Infinity'``, ``'Infinity'``, ``'NaN'``. This can be " +"used to raise an exception if invalid JSON numbers are encountered." +msgstr "" + +#: library/json.rst:414 msgid "" "If *strict* is false (``True`` is the default), then control characters will " "be allowed inside strings. Control characters in this context are those " @@ -527,60 +569,66 @@ msgid "" "``'\\n'``, ``'\\r'`` and ``'\\0'``." msgstr "" -#: library/json.rst:473 +#: library/json.rst:419 +msgid "" +"If the data being deserialized is not a valid JSON document, a :exc:" +"`JSONDecodeError` will be raised." +msgstr "" + +#: library/json.rst:523 msgid "All parameters are now :ref:`keyword-only `." msgstr "" -#: library/json.rst:377 +#: library/json.rst:427 msgid "" "Return the Python representation of *s* (a :class:`str` instance containing " "a JSON document)." msgstr "" -#: library/json.rst:380 +#: library/json.rst:430 msgid "" ":exc:`JSONDecodeError` will be raised if the given JSON document is not " "valid." msgstr "" -#: library/json.rst:385 +#: library/json.rst:435 msgid "" "Decode a JSON document from *s* (a :class:`str` beginning with a JSON " "document) and return a 2-tuple of the Python representation and the index in " "*s* where the document ended." msgstr "" -#: library/json.rst:389 +#: library/json.rst:439 msgid "" "This can be used to decode a JSON document from a string that may have " "extraneous data at the end." msgstr "" -#: library/json.rst:395 +#: library/json.rst:445 msgid "Extensible JSON encoder for Python data structures." msgstr "" -#: library/json.rst:397 +#: library/json.rst:447 msgid "Supports the following objects and types by default:" msgstr "" -#: library/json.rst:406 +#: library/json.rst:456 msgid "list, tuple" msgstr "" -#: library/json.rst:410 +#: library/json.rst:460 msgid "int, float, int- & float-derived Enums" msgstr "" -#: library/json.rst:410 +#: library/json.rst:460 msgid "number" msgstr "" -#: library/json.rst:419 +#: library/json.rst:469 msgid "Added support for int- and float-derived Enum classes." msgstr "" -#: library/json.rst:422 +#: library/json.rst:472 msgid "" "To extend this to recognize other objects, subclass and implement a :meth:" "`~JSONEncoder.default` method with another method that returns a " @@ -588,14 +636,21 @@ msgid "" "superclass implementation (to raise :exc:`TypeError`)." msgstr "" -#: library/json.rst:427 +#: library/json.rst:477 msgid "" "If *skipkeys* is false (the default), a :exc:`TypeError` will be raised when " "trying to encode keys that are not :class:`str`, :class:`int`, :class:" "`float` or ``None``. If *skipkeys* is true, such items are simply skipped." msgstr "" -#: library/json.rst:435 +#: library/json.rst:481 +msgid "" +"If *ensure_ascii* is true (the default), the output is guaranteed to have " +"all incoming non-ASCII characters escaped. If *ensure_ascii* is false, " +"these characters will be output as-is." +msgstr "" + +#: library/json.rst:485 msgid "" "If *check_circular* is true (the default), then lists, dicts, and custom " "encoded objects will be checked for circular references during encoding to " @@ -603,7 +658,7 @@ msgid "" "Otherwise, no such check takes place." msgstr "" -#: library/json.rst:440 +#: library/json.rst:490 msgid "" "If *allow_nan* is true (the default), then ``NaN``, ``Infinity``, and ``-" "Infinity`` will be encoded as such. This behavior is not JSON specification " @@ -611,27 +666,53 @@ msgid "" "decoders. Otherwise, it will be a :exc:`ValueError` to encode such floats." msgstr "" -#: library/json.rst:446 +#: library/json.rst:496 msgid "" "If *sort_keys* is true (default: ``False``), then the output of dictionaries " "will be sorted by key; this is useful for regression tests to ensure that " "JSON serializations can be compared on a day-to-day basis." msgstr "" -#: library/json.rst:479 +#: library/json.rst:500 +msgid "" +"If *indent* is a non-negative integer or string, then JSON array elements " +"and object members will be pretty-printed with that indent level. An indent " +"level of 0, negative, or ``\"\"`` will only insert newlines. ``None`` (the " +"default) selects the most compact representation. Using a positive integer " +"indent indents that many spaces per level. If *indent* is a string (such as " +"``\"\\t\"``), that string is used to indent each level." +msgstr "" + +#: library/json.rst:510 +msgid "" +"If specified, *separators* should be an ``(item_separator, key_separator)`` " +"tuple. The default is ``(', ', ': ')`` if *indent* is ``None`` and ``(',', " +"': ')`` otherwise. To get the most compact JSON representation, you should " +"specify ``(',', ':')`` to eliminate whitespace." +msgstr "" + +#: library/json.rst:518 +msgid "" +"If specified, *default* should be a function that gets called for objects " +"that can't otherwise be serialized. It should return a JSON encodable " +"version of the object or raise a :exc:`TypeError`. If not specified, :exc:" +"`TypeError` is raised." +msgstr "" + +#: library/json.rst:529 msgid "" "Implement this method in a subclass such that it returns a serializable " "object for *o*, or calls the base implementation (to raise a :exc:" "`TypeError`)." msgstr "" -#: library/json.rst:483 +#: library/json.rst:533 msgid "" "For example, to support arbitrary iterators, you could implement :meth:" "`~JSONEncoder.default` like this::" msgstr "" -#: library/json.rst:486 +#: library/json.rst:536 msgid "" "def default(self, o):\n" " try:\n" @@ -644,63 +725,63 @@ msgid "" " return super().default(o)" msgstr "" -#: library/json.rst:499 +#: library/json.rst:549 msgid "" "Return a JSON string representation of a Python data structure, *o*. For " "example::" msgstr "" -#: library/json.rst:502 +#: library/json.rst:552 msgid "" ">>> json.JSONEncoder().encode({\"foo\": [\"bar\", \"baz\"]})\n" "'{\"foo\": [\"bar\", \"baz\"]}'" msgstr "" -#: library/json.rst:508 +#: library/json.rst:558 msgid "" "Encode the given object, *o*, and yield each string representation as " "available. For example::" msgstr "" -#: library/json.rst:511 +#: library/json.rst:561 msgid "" "for chunk in json.JSONEncoder().iterencode(bigobject):\n" " mysocket.write(chunk)" msgstr "" -#: library/json.rst:516 +#: library/json.rst:566 msgid "Exceptions" msgstr "" -#: library/json.rst:520 +#: library/json.rst:570 msgid "Subclass of :exc:`ValueError` with the following additional attributes:" msgstr "" -#: library/json.rst:524 +#: library/json.rst:574 msgid "The unformatted error message." msgstr "" -#: library/json.rst:528 +#: library/json.rst:578 msgid "The JSON document being parsed." msgstr "" -#: library/json.rst:532 +#: library/json.rst:582 msgid "The start index of *doc* where parsing failed." msgstr "" -#: library/json.rst:536 +#: library/json.rst:586 msgid "The line corresponding to *pos*." msgstr "" -#: library/json.rst:540 +#: library/json.rst:590 msgid "The column corresponding to *pos*." msgstr "" -#: library/json.rst:546 +#: library/json.rst:596 msgid "Standard Compliance and Interoperability" msgstr "" -#: library/json.rst:548 +#: library/json.rst:598 msgid "" "The JSON format is specified by :rfc:`7159` and by `ECMA-404 `_. This " @@ -709,48 +790,48 @@ msgid "" "parameters other than those explicitly mentioned, are not considered." msgstr "" -#: library/json.rst:554 +#: library/json.rst:604 msgid "" "This module does not comply with the RFC in a strict fashion, implementing " "some extensions that are valid JavaScript but not valid JSON. In particular:" msgstr "" -#: library/json.rst:557 +#: library/json.rst:607 msgid "Infinite and NaN number values are accepted and output;" msgstr "" -#: library/json.rst:558 +#: library/json.rst:608 msgid "" "Repeated names within an object are accepted, and only the value of the last " "name-value pair is used." msgstr "" -#: library/json.rst:561 +#: library/json.rst:611 msgid "" "Since the RFC permits RFC-compliant parsers to accept input texts that are " "not RFC-compliant, this module's deserializer is technically RFC-compliant " "under default settings." msgstr "" -#: library/json.rst:566 +#: library/json.rst:616 msgid "Character Encodings" msgstr "" -#: library/json.rst:568 +#: library/json.rst:618 msgid "" "The RFC requires that JSON be represented using either UTF-8, UTF-16, or " "UTF-32, with UTF-8 being the recommended default for maximum " "interoperability." msgstr "" -#: library/json.rst:571 +#: library/json.rst:621 msgid "" "As permitted, though not required, by the RFC, this module's serializer sets " "*ensure_ascii=True* by default, thus escaping the output so that the " "resulting strings only contain ASCII characters." msgstr "" -#: library/json.rst:575 +#: library/json.rst:625 msgid "" "Other than the *ensure_ascii* parameter, this module is defined strictly in " "terms of conversion between Python objects and :class:`Unicode strings " @@ -758,7 +839,7 @@ msgid "" "encodings." msgstr "" -#: library/json.rst:580 +#: library/json.rst:630 msgid "" "The RFC prohibits adding a byte order mark (BOM) to the start of a JSON " "text, and this module's serializer does not add a BOM to its output. The RFC " @@ -767,7 +848,7 @@ msgid "" "an initial BOM is present." msgstr "" -#: library/json.rst:586 +#: library/json.rst:636 msgid "" "The RFC does not explicitly forbid JSON strings which contain byte sequences " "that don't correspond to valid Unicode characters (e.g. unpaired UTF-16 " @@ -776,18 +857,18 @@ msgid "" "class:`str`) code points for such sequences." msgstr "" -#: library/json.rst:594 +#: library/json.rst:644 msgid "Infinite and NaN Number Values" msgstr "" -#: library/json.rst:596 +#: library/json.rst:646 msgid "" "The RFC does not permit the representation of infinite or NaN number values. " "Despite that, by default, this module accepts and outputs ``Infinity``, ``-" "Infinity``, and ``NaN`` as if they were valid JSON number literal values::" msgstr "" -#: library/json.rst:600 +#: library/json.rst:650 msgid "" ">>> # Neither of these calls raises an exception, but the results are not " "valid JSON\n" @@ -802,18 +883,18 @@ msgid "" "nan" msgstr "" -#: library/json.rst:611 +#: library/json.rst:661 msgid "" "In the serializer, the *allow_nan* parameter can be used to alter this " "behavior. In the deserializer, the *parse_constant* parameter can be used " "to alter this behavior." msgstr "" -#: library/json.rst:617 +#: library/json.rst:667 msgid "Repeated Names Within an Object" msgstr "" -#: library/json.rst:619 +#: library/json.rst:669 msgid "" "The RFC specifies that the names within a JSON object should be unique, but " "does not mandate how repeated names in JSON objects should be handled. By " @@ -821,22 +902,22 @@ msgid "" "but the last name-value pair for a given name::" msgstr "" -#: library/json.rst:624 +#: library/json.rst:674 msgid "" ">>> weird_json = '{\"x\": 1, \"x\": 2, \"x\": 3}'\n" ">>> json.loads(weird_json)\n" "{'x': 3}" msgstr "" -#: library/json.rst:628 +#: library/json.rst:678 msgid "The *object_pairs_hook* parameter can be used to alter this behavior." msgstr "" -#: library/json.rst:632 +#: library/json.rst:682 msgid "Top-level Non-Object, Non-Array Values" msgstr "" -#: library/json.rst:634 +#: library/json.rst:684 msgid "" "The old version of JSON specified by the obsolete :rfc:`4627` required that " "the top-level value of a JSON text must be either a JSON object or array " @@ -846,43 +927,43 @@ msgid "" "its serializer or its deserializer." msgstr "" -#: library/json.rst:641 +#: library/json.rst:691 msgid "" "Regardless, for maximum interoperability, you may wish to voluntarily adhere " "to the restriction yourself." msgstr "" -#: library/json.rst:646 +#: library/json.rst:696 msgid "Implementation Limitations" msgstr "" -#: library/json.rst:648 +#: library/json.rst:698 msgid "Some JSON deserializer implementations may set limits on:" msgstr "" -#: library/json.rst:650 +#: library/json.rst:700 msgid "the size of accepted JSON texts" msgstr "" -#: library/json.rst:651 +#: library/json.rst:701 msgid "the maximum level of nesting of JSON objects and arrays" msgstr "" -#: library/json.rst:652 +#: library/json.rst:702 msgid "the range and precision of JSON numbers" msgstr "" -#: library/json.rst:653 +#: library/json.rst:703 msgid "the content and maximum length of JSON strings" msgstr "" -#: library/json.rst:655 +#: library/json.rst:705 msgid "" "This module does not impose any such limits beyond those of the relevant " "Python datatypes themselves or the Python interpreter itself." msgstr "" -#: library/json.rst:658 +#: library/json.rst:708 msgid "" "When serializing to JSON, beware any such limitations in applications that " "may consume your JSON. In particular, it is common for JSON numbers to be " @@ -893,27 +974,27 @@ msgid "" "as :class:`decimal.Decimal`." msgstr "" -#: library/json.rst:671 +#: library/json.rst:721 msgid "Command Line Interface" msgstr "" -#: library/json.rst:676 +#: library/json.rst:726 msgid "**Source code:** :source:`Lib/json/tool.py`" msgstr "" -#: library/json.rst:680 +#: library/json.rst:730 msgid "" "The :mod:`json.tool` module provides a simple command line interface to " "validate and pretty-print JSON objects." msgstr "" -#: library/json.rst:683 +#: library/json.rst:733 msgid "" "If the optional ``infile`` and ``outfile`` arguments are not specified, :" "data:`sys.stdin` and :data:`sys.stdout` will be used respectively:" msgstr "" -#: library/json.rst:686 +#: library/json.rst:736 msgid "" "$ echo '{\"json\": \"obj\"}' | python -m json.tool\n" "{\n" @@ -923,21 +1004,21 @@ msgid "" "Expecting property name enclosed in double quotes: line 1 column 2 (char 1)" msgstr "" -#: library/json.rst:695 +#: library/json.rst:745 msgid "" "The output is now in the same order as the input. Use the :option:`--sort-" "keys` option to sort the output of dictionaries alphabetically by key." msgstr "" -#: library/json.rst:702 +#: library/json.rst:752 msgid "Command line options" msgstr "" -#: library/json.rst:706 +#: library/json.rst:756 msgid "The JSON file to be validated or pretty-printed:" msgstr "" -#: library/json.rst:708 +#: library/json.rst:758 msgid "" "$ python -m json.tool mp_films.json\n" "[\n" @@ -952,43 +1033,43 @@ msgid "" "]" msgstr "" -#: library/json.rst:722 +#: library/json.rst:772 msgid "If *infile* is not specified, read from :data:`sys.stdin`." msgstr "" -#: library/json.rst:726 +#: library/json.rst:776 msgid "" "Write the output of the *infile* to the given *outfile*. Otherwise, write it " "to :data:`sys.stdout`." msgstr "" -#: library/json.rst:731 +#: library/json.rst:781 msgid "Sort the output of dictionaries alphabetically by key." msgstr "" -#: library/json.rst:737 +#: library/json.rst:787 msgid "" "Disable escaping of non-ascii characters, see :func:`json.dumps` for more " "information." msgstr "" -#: library/json.rst:743 +#: library/json.rst:793 msgid "Parse every input line as separate JSON object." msgstr "" -#: library/json.rst:749 +#: library/json.rst:799 msgid "Mutually exclusive options for whitespace control." msgstr "" -#: library/json.rst:755 +#: library/json.rst:805 msgid "Show the help message." msgstr "" -#: library/json.rst:759 +#: library/json.rst:809 msgid "Footnotes" msgstr "" -#: library/json.rst:760 +#: library/json.rst:810 msgid "" "As noted in `the errata for RFC 7159 `_, JSON permits literal U+2028 (LINE SEPARATOR) " diff --git a/library/locale.po b/library/locale.po index f20a9a07b..556f1dd16 100644 --- a/library/locale.po +++ b/library/locale.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -427,10 +427,12 @@ msgid "" msgstr "" #: library/locale.rst:284 -msgid "Get a string that represents the era used in the current locale." +msgid "" +"Get a string which describes how years are counted and displayed for each " +"era in a locale." msgstr "" -#: library/locale.rst:286 +#: library/locale.rst:287 msgid "" "Most locales do not define this value. An example of a locale which does " "define this value is the Japanese one. In Japan, the traditional " @@ -438,47 +440,48 @@ msgid "" "then-emperor's reign." msgstr "" -#: library/locale.rst:291 +#: library/locale.rst:292 msgid "" "Normally it should not be necessary to use this value directly. Specifying " "the ``E`` modifier in their format strings causes the :func:`time.strftime` " -"function to use this information. The format of the returned string is not " -"specified, and therefore you should not assume knowledge of it on different " -"systems." +"function to use this information. The format of the returned string is " +"specified in *The Open Group Base Specifications Issue 8*, paragraph " +"`7.3.5.2 LC_TIME C-Language Access `_." msgstr "" -#: library/locale.rst:299 +#: library/locale.rst:301 msgid "" "Get a format string for :func:`time.strftime` to represent date and time in " "a locale-specific era-based way." msgstr "" -#: library/locale.rst:304 +#: library/locale.rst:306 msgid "" "Get a format string for :func:`time.strftime` to represent a date in a " "locale-specific era-based way." msgstr "" -#: library/locale.rst:309 +#: library/locale.rst:311 msgid "" "Get a format string for :func:`time.strftime` to represent a time in a " "locale-specific era-based way." msgstr "" -#: library/locale.rst:314 +#: library/locale.rst:316 msgid "" "Get a string consisting of up to 100 semicolon-separated symbols used to " "represent the values 0 to 99 in a locale-specific way. In most locales this " "is an empty string." msgstr "" -#: library/locale.rst:321 +#: library/locale.rst:323 msgid "" "Tries to determine the default locale settings and returns them as a tuple " "of the form ``(language code, encoding)``." msgstr "" -#: library/locale.rst:324 +#: library/locale.rst:326 msgid "" "According to POSIX, a program which has not called ``setlocale(LC_ALL, '')`` " "runs using the portable ``'C'`` locale. Calling ``setlocale(LC_ALL, '')`` " @@ -487,7 +490,7 @@ msgid "" "emulate the behavior in the way described above." msgstr "" -#: library/locale.rst:330 +#: library/locale.rst:332 msgid "" "To maintain compatibility with other platforms, not only the :envvar:`LANG` " "variable is tested, but a list of variables given as envvars parameter. The " @@ -497,21 +500,21 @@ msgid "" "``'LC_CTYPE'``, ``'LANG'`` and ``'LANGUAGE'``, in that order." msgstr "" -#: library/locale.rst:350 +#: library/locale.rst:352 msgid "" "Except for the code ``'C'``, the language code corresponds to :rfc:`1766`. " "*language code* and *encoding* may be ``None`` if their values cannot be " "determined." msgstr "" -#: library/locale.rst:346 +#: library/locale.rst:348 msgid "" "Returns the current setting for the given locale category as sequence " "containing *language code*, *encoding*. *category* may be one of the :const:" "`!LC_\\*` values except :const:`LC_ALL`. It defaults to :const:`LC_CTYPE`." msgstr "" -#: library/locale.rst:357 +#: library/locale.rst:359 msgid "" "Return the :term:`locale encoding` used for text data, according to user " "preferences. User preferences are expressed differently on different " @@ -519,82 +522,82 @@ msgid "" "this function only returns a guess." msgstr "" -#: library/locale.rst:362 +#: library/locale.rst:364 msgid "" "On some systems, it is necessary to invoke :func:`setlocale` to obtain the " "user preferences, so this function is not thread-safe. If invoking setlocale " "is not necessary or desired, *do_setlocale* should be set to ``False``." msgstr "" -#: library/locale.rst:366 +#: library/locale.rst:368 msgid "" "On Android or if the :ref:`Python UTF-8 Mode ` is enabled, always " "return ``'utf-8'``, the :term:`locale encoding` and the *do_setlocale* " "argument are ignored." msgstr "" -#: library/locale.rst:388 +#: library/locale.rst:390 msgid "" "The :ref:`Python preinitialization ` configures the LC_CTYPE " "locale. See also the :term:`filesystem encoding and error handler`." msgstr "" -#: library/locale.rst:373 +#: library/locale.rst:375 msgid "" "The function now always returns ``\"utf-8\"`` on Android or if the :ref:" "`Python UTF-8 Mode ` is enabled." msgstr "" -#: library/locale.rst:380 +#: library/locale.rst:382 msgid "Get the current :term:`locale encoding`:" msgstr "" -#: library/locale.rst:382 +#: library/locale.rst:384 msgid "On Android and VxWorks, return ``\"utf-8\"``." msgstr "" -#: library/locale.rst:383 +#: library/locale.rst:385 msgid "" "On Unix, return the encoding of the current :data:`LC_CTYPE` locale. Return " "``\"utf-8\"`` if ``nl_langinfo(CODESET)`` returns an empty string: for " "example, if the current LC_CTYPE locale is not supported." msgstr "" -#: library/locale.rst:386 +#: library/locale.rst:388 msgid "On Windows, return the ANSI code page." msgstr "" -#: library/locale.rst:391 +#: library/locale.rst:393 msgid "" "This function is similar to :func:`getpreferredencoding(False) " "` except this function ignores the :ref:`Python UTF-8 " "Mode `." msgstr "" -#: library/locale.rst:400 +#: library/locale.rst:402 msgid "" "Returns a normalized locale code for the given locale name. The returned " "locale code is formatted for use with :func:`setlocale`. If normalization " "fails, the original name is returned unchanged." msgstr "" -#: library/locale.rst:404 +#: library/locale.rst:406 msgid "" "If the given encoding is not known, the function defaults to the default " "encoding for the locale code just like :func:`setlocale`." msgstr "" -#: library/locale.rst:410 +#: library/locale.rst:412 msgid "Sets the locale for *category* to the default setting." msgstr "" -#: library/locale.rst:412 +#: library/locale.rst:414 msgid "" "The default setting is determined by calling :func:`getdefaultlocale`. " "*category* defaults to :const:`LC_ALL`." msgstr "" -#: library/locale.rst:420 +#: library/locale.rst:422 msgid "" "Compares two strings according to the current :const:`LC_COLLATE` setting. " "As any other compare function, returns a negative, or a positive value, or " @@ -602,7 +605,7 @@ msgid "" "is equal to it." msgstr "" -#: library/locale.rst:428 +#: library/locale.rst:430 msgid "" "Transforms a string to one that can be used in locale-aware comparisons. " "For example, ``strxfrm(s1) < strxfrm(s2)`` is equivalent to ``strcoll(s1, " @@ -610,7 +613,7 @@ msgid "" "repeatedly, e.g. when collating a sequence of strings." msgstr "" -#: library/locale.rst:437 +#: library/locale.rst:439 msgid "" "Formats a number *val* according to the current :const:`LC_NUMERIC` setting. " "The format follows the conventions of the ``%`` operator. For floating-" @@ -618,29 +621,29 @@ msgid "" "is ``True``, also takes the grouping into account." msgstr "" -#: library/locale.rst:442 +#: library/locale.rst:444 msgid "" "If *monetary* is true, the conversion uses monetary thousands separator and " "grouping strings." msgstr "" -#: library/locale.rst:445 +#: library/locale.rst:447 msgid "" "Processes formatting specifiers as in ``format % val``, but takes the " "current locale settings into account." msgstr "" -#: library/locale.rst:448 +#: library/locale.rst:450 msgid "The *monetary* keyword parameter was added." msgstr "" -#: library/locale.rst:454 +#: library/locale.rst:456 msgid "" "Formats a number *val* according to the current :const:`LC_MONETARY` " "settings." msgstr "" -#: library/locale.rst:456 +#: library/locale.rst:458 msgid "" "The returned string includes the currency symbol if *symbol* is true, which " "is the default. If *grouping* is ``True`` (which is not the default), " @@ -648,43 +651,43 @@ msgid "" "not the default), the international currency symbol is used." msgstr "" -#: library/locale.rst:463 +#: library/locale.rst:465 msgid "" "This function will not work with the 'C' locale, so you have to set a locale " "via :func:`setlocale` first." msgstr "" -#: library/locale.rst:469 +#: library/locale.rst:471 msgid "" "Formats a floating-point number using the same format as the built-in " "function ``str(float)``, but takes the decimal point into account." msgstr "" -#: library/locale.rst:475 +#: library/locale.rst:477 msgid "" "Converts a string into a normalized number string, following the :const:" "`LC_NUMERIC` settings." msgstr "" -#: library/locale.rst:483 +#: library/locale.rst:485 msgid "" "Converts a normalized number string into a formatted string following the :" "const:`LC_NUMERIC` settings." msgstr "" -#: library/locale.rst:491 +#: library/locale.rst:493 msgid "" "Converts a string to a number, following the :const:`LC_NUMERIC` settings, " "by calling *func* on the result of calling :func:`delocalize` on *string*." msgstr "" -#: library/locale.rst:497 +#: library/locale.rst:499 msgid "" "Converts a string to an integer, following the :const:`LC_NUMERIC` " "conventions." msgstr "" -#: library/locale.rst:502 +#: library/locale.rst:504 msgid "" "Locale category for the character type functions. Most importantly, this " "category defines the text encoding, i.e. how bytes are interpreted as " @@ -694,32 +697,32 @@ msgid "" "SSH connections." msgstr "" -#: library/locale.rst:509 +#: library/locale.rst:511 msgid "" "Python doesn't internally use locale-dependent character transformation " "functions from ``ctype.h``. Instead, an internal ``pyctype.h`` provides " "locale-independent equivalents like :c:macro:`!Py_TOLOWER`." msgstr "" -#: library/locale.rst:516 +#: library/locale.rst:518 msgid "" "Locale category for sorting strings. The functions :func:`strcoll` and :" "func:`strxfrm` of the :mod:`locale` module are affected." msgstr "" -#: library/locale.rst:522 +#: library/locale.rst:524 msgid "" "Locale category for the formatting of time. The function :func:`time." "strftime` follows these conventions." msgstr "" -#: library/locale.rst:528 +#: library/locale.rst:530 msgid "" "Locale category for formatting of monetary values. The available options " "are available from the :func:`localeconv` function." msgstr "" -#: library/locale.rst:534 +#: library/locale.rst:536 msgid "" "Locale category for message display. Python currently does not support " "application specific locale-aware messages. Messages displayed by the " @@ -727,13 +730,13 @@ msgid "" "affected by this category." msgstr "" -#: library/locale.rst:539 +#: library/locale.rst:541 msgid "" "This value may not be available on operating systems not conforming to the " "POSIX standard, most notably Windows." msgstr "" -#: library/locale.rst:545 +#: library/locale.rst:547 msgid "" "Locale category for formatting numbers. The functions :func:" "`format_string`, :func:`atoi`, :func:`atof` and :func:`.str` of the :mod:" @@ -741,7 +744,7 @@ msgid "" "operations are not affected." msgstr "" -#: library/locale.rst:553 +#: library/locale.rst:555 msgid "" "Combination of all locale settings. If this flag is used when the locale is " "changed, setting the locale for all categories is attempted. If that fails " @@ -751,17 +754,17 @@ msgid "" "settings." msgstr "" -#: library/locale.rst:562 +#: library/locale.rst:564 msgid "" "This is a symbolic constant used for different values returned by :func:" "`localeconv`." msgstr "" -#: library/locale.rst:566 +#: library/locale.rst:568 msgid "Example::" msgstr "" -#: library/locale.rst:568 +#: library/locale.rst:570 msgid "" ">>> import locale\n" ">>> loc = locale.getlocale() # get current locale\n" @@ -774,11 +777,11 @@ msgid "" ">>> locale.setlocale(locale.LC_ALL, loc) # restore saved locale" msgstr "" -#: library/locale.rst:579 +#: library/locale.rst:581 msgid "Background, details, hints, tips and caveats" msgstr "" -#: library/locale.rst:581 +#: library/locale.rst:583 msgid "" "The C standard defines the locale as a program-wide property that may be " "relatively expensive to change. On top of that, some implementations are " @@ -786,7 +789,7 @@ msgid "" "This makes the locale somewhat painful to use correctly." msgstr "" -#: library/locale.rst:586 +#: library/locale.rst:588 msgid "" "Initially, when a program is started, the locale is the ``C`` locale, no " "matter what the user's preferred locale is. There is one exception: the :" @@ -796,7 +799,7 @@ msgid "" "categories by calling ``setlocale(LC_ALL, '')``." msgstr "" -#: library/locale.rst:593 +#: library/locale.rst:595 msgid "" "It is generally a bad idea to call :func:`setlocale` in some library " "routine, since as a side effect it affects the entire program. Saving and " @@ -804,7 +807,7 @@ msgid "" "that happen to run before the settings have been restored." msgstr "" -#: library/locale.rst:598 +#: library/locale.rst:600 msgid "" "If, when coding a module for general use, you need a locale independent " "version of an operation that is affected by the locale (such as certain " @@ -815,14 +818,14 @@ msgid "" "settings." msgstr "" -#: library/locale.rst:605 +#: library/locale.rst:607 msgid "" "The only way to perform numeric operations according to the locale is to use " "the special functions defined by this module: :func:`atof`, :func:`atoi`, :" "func:`format_string`, :func:`.str`." msgstr "" -#: library/locale.rst:609 +#: library/locale.rst:611 msgid "" "There is no way to perform case conversions and character classifications " "according to the locale. For (Unicode) text strings these are done " @@ -833,11 +836,11 @@ msgid "" "whitespace." msgstr "" -#: library/locale.rst:620 +#: library/locale.rst:622 msgid "For extension writers and programs that embed Python" msgstr "" -#: library/locale.rst:622 +#: library/locale.rst:624 msgid "" "Extension modules should never call :func:`setlocale`, except to find out " "what the current locale is. But since the return value can only be used " @@ -845,7 +848,7 @@ msgid "" "whether or not the locale is ``C``)." msgstr "" -#: library/locale.rst:627 +#: library/locale.rst:629 msgid "" "When Python code uses the :mod:`locale` module to change the locale, this " "also affects the embedding application. If the embedding application " @@ -855,11 +858,11 @@ msgid "" "accessible as a shared library." msgstr "" -#: library/locale.rst:638 +#: library/locale.rst:640 msgid "Access to message catalogs" msgstr "" -#: library/locale.rst:647 +#: library/locale.rst:649 msgid "" "The locale module exposes the C library's gettext interface on systems that " "provide this interface. It consists of the functions :func:`gettext`, :func:" @@ -870,7 +873,7 @@ msgid "" "locating message catalogs." msgstr "" -#: library/locale.rst:654 +#: library/locale.rst:656 msgid "" "Python applications should normally find no need to invoke these functions, " "and should use :mod:`gettext` instead. A known exception to this rule are " diff --git a/library/logging.po b/library/logging.po index 9176186aa..2284deb7c 100644 --- a/library/logging.po +++ b/library/logging.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -485,7 +485,7 @@ msgstr "" msgid "" "If no handler is attached to this logger (or any of its ancestors, taking " "into account the relevant :attr:`Logger.propagate` attributes), the message " -"will be sent to the handler set on :attr:`lastResort`." +"will be sent to the handler set on :data:`lastResort`." msgstr "" #: library/logging.rst:347 @@ -747,18 +747,20 @@ msgid "" msgstr "" #: library/logging.rst:565 -msgid "Sets the :class:`Formatter` for this handler to *fmt*." +msgid "" +"Sets the formatter for this handler to *fmt*. The *fmt* argument must be a :" +"class:`Formatter` instance or ``None``." msgstr "" -#: library/logging.rst:570 +#: library/logging.rst:571 msgid "Adds the specified filter *filter* to this handler." msgstr "" -#: library/logging.rst:575 +#: library/logging.rst:576 msgid "Removes the specified filter *filter* from this handler." msgstr "" -#: library/logging.rst:580 +#: library/logging.rst:581 msgid "" "Apply this handler's filters to the record and return ``True`` if the record " "is to be processed. The filters are consulted in turn, until one of them " @@ -767,28 +769,33 @@ msgid "" "record." msgstr "" -#: library/logging.rst:589 +#: library/logging.rst:590 msgid "" "Ensure all logging output has been flushed. This version does nothing and is " "intended to be implemented by subclasses." msgstr "" -#: library/logging.rst:595 +#: library/logging.rst:596 msgid "" "Tidy up any resources used by the handler. This version does no output but " -"removes the handler from an internal list of handlers which is closed when :" -"func:`shutdown` is called. Subclasses should ensure that this gets called " -"from overridden :meth:`close` methods." +"removes the handler from an internal map of handlers, which is used for " +"handler lookup by name." +msgstr "" + +#: library/logging.rst:600 +msgid "" +"Subclasses should ensure that this gets called from overridden :meth:`close` " +"methods." msgstr "" -#: library/logging.rst:603 +#: library/logging.rst:606 msgid "" "Conditionally emits the specified logging record, depending on filters which " "may have been added to the handler. Wraps the actual emission of the record " "with acquisition/release of the I/O thread lock." msgstr "" -#: library/logging.rst:610 +#: library/logging.rst:613 msgid "" "This method should be called from handlers when an exception is encountered " "during an :meth:`emit` call. If the module-level attribute :data:" @@ -801,20 +808,20 @@ msgid "" "is more useful during development)." msgstr "" -#: library/logging.rst:623 +#: library/logging.rst:626 msgid "" "Do formatting for a record - if a formatter is set, use it. Otherwise, use " "the default formatter for the module." msgstr "" -#: library/logging.rst:629 +#: library/logging.rst:632 msgid "" "Do whatever it takes to actually log the specified logging record. This " "version is intended to be implemented by subclasses and so raises a :exc:" "`NotImplementedError`." msgstr "" -#: library/logging.rst:633 +#: library/logging.rst:636 msgid "" "This method is called after a handler-level lock is acquired, which is " "released after this method returns. When you override this method, note that " @@ -823,13 +830,13 @@ msgid "" "Specifically:" msgstr "" -#: library/logging.rst:639 +#: library/logging.rst:642 msgid "" "Logging configuration APIs acquire the module-level lock, and then " "individual handler-level locks as those handlers are configured." msgstr "" -#: library/logging.rst:642 +#: library/logging.rst:645 msgid "" "Many logging APIs lock the module-level lock. If such an API is called from " "this method, it could cause a deadlock if a configuration call is made on " @@ -839,16 +846,16 @@ msgid "" "method, the handler-level lock has already been acquired)." msgstr "" -#: library/logging.rst:649 +#: library/logging.rst:652 msgid "" "For a list of handlers included as standard, see :mod:`logging.handlers`." msgstr "" -#: library/logging.rst:654 +#: library/logging.rst:657 msgid "Formatter Objects" msgstr "" -#: library/logging.rst:660 +#: library/logging.rst:663 msgid "" "Responsible for converting a :class:`LogRecord` to an output string to be " "interpreted by a human or external system." @@ -858,7 +865,7 @@ msgstr "" msgid "Parameters" msgstr "" -#: library/logging.rst:663 +#: library/logging.rst:666 msgid "" "A format string in the given *style* for the logged output as a whole. The " "possible mapping keys are drawn from the :class:`LogRecord` object's :ref:" @@ -866,14 +873,14 @@ msgid "" "is just the logged message." msgstr "" -#: library/logging.rst:671 +#: library/logging.rst:674 msgid "" "A format string in the given *style* for the date/time portion of the logged " "output. If not specified, the default described in :meth:`formatTime` is " "used." msgstr "" -#: library/logging.rst:676 +#: library/logging.rst:679 msgid "" "Can be one of ``'%'``, ``'{'`` or ``'$'`` and determines how the format " "string will be merged with its data: using one of :ref:`old-string-" @@ -884,32 +891,32 @@ msgid "" "use ``{``- and ``$``-formatting for log messages." msgstr "" -#: library/logging.rst:686 +#: library/logging.rst:689 msgid "" "If ``True`` (the default), incorrect or mismatched *fmt* and *style* will " "raise a :exc:`ValueError`; for example, ``logging.Formatter('%(asctime)s - " "%(message)s', style='{')``." msgstr "" -#: library/logging.rst:691 +#: library/logging.rst:694 msgid "" "A dictionary with default values to use in custom fields. For example, " "``logging.Formatter('%(ip)s %(message)s', defaults={\"ip\": None})``" msgstr "" -#: library/logging.rst:696 +#: library/logging.rst:699 msgid "Added the *style* parameter." msgstr "" -#: library/logging.rst:699 +#: library/logging.rst:702 msgid "Added the *validate* parameter." msgstr "" -#: library/logging.rst:702 +#: library/logging.rst:705 msgid "Added the *defaults* parameter." msgstr "" -#: library/logging.rst:708 +#: library/logging.rst:711 msgid "" "The record's attribute dictionary is used as the operand to a string " "formatting operation. Returns the resulting string. Before formatting the " @@ -928,13 +935,13 @@ msgid "" "recalculates it afresh." msgstr "" -#: library/logging.rst:724 +#: library/logging.rst:727 msgid "" "If stack information is available, it's appended after the exception " "information, using :meth:`formatStack` to transform it if necessary." msgstr "" -#: library/logging.rst:730 +#: library/logging.rst:733 msgid "" "This method should be called from :meth:`format` by a formatter which wants " "to make use of a formatted time. This method can be overridden in formatters " @@ -947,7 +954,7 @@ msgid "" "resulting string is returned." msgstr "" -#: library/logging.rst:740 +#: library/logging.rst:743 msgid "" "This function uses a user-configurable function to convert the creation time " "to a tuple. By default, :func:`time.localtime` is used; to change this for a " @@ -957,7 +964,7 @@ msgid "" "be shown in GMT, set the ``converter`` attribute in the ``Formatter`` class." msgstr "" -#: library/logging.rst:748 +#: library/logging.rst:751 msgid "" "Previously, the default format was hard-coded as in this example: " "``2010-09-06 22:38:15,292`` where the part before the comma is handled by a " @@ -972,11 +979,11 @@ msgid "" "the millisecond value)." msgstr "" -#: library/logging.rst:761 +#: library/logging.rst:764 msgid "The ``default_msec_format`` can be ``None``." msgstr "" -#: library/logging.rst:766 +#: library/logging.rst:769 msgid "" "Formats the specified exception information (a standard exception tuple as " "returned by :func:`sys.exc_info`) as a string. This default implementation " @@ -984,14 +991,14 @@ msgid "" "returned." msgstr "" -#: library/logging.rst:773 +#: library/logging.rst:776 msgid "" "Formats the specified stack information (a string as returned by :func:" "`traceback.print_stack`, but with the last newline removed) as a string. " "This default implementation just returns the input value." msgstr "" -#: library/logging.rst:779 +#: library/logging.rst:782 msgid "" "A base formatter class suitable for subclassing when you want to format a " "number of records. You can pass a :class:`Formatter` instance which you want " @@ -1000,7 +1007,7 @@ msgid "" "used as the line formatter." msgstr "" -#: library/logging.rst:787 +#: library/logging.rst:790 msgid "" "Return a header for a list of *records*. The base implementation just " "returns the empty string. You will need to override this method if you want " @@ -1008,14 +1015,14 @@ msgid "" "separator line." msgstr "" -#: library/logging.rst:794 +#: library/logging.rst:797 msgid "" "Return a footer for a list of *records*. The base implementation just " "returns the empty string. You will need to override this method if you want " "specific behaviour, e.g. to show the count of records or a separator line." msgstr "" -#: library/logging.rst:801 +#: library/logging.rst:804 msgid "" "Return formatted text for a list of *records*. The base implementation just " "returns the empty string if there are no records; otherwise, it returns the " @@ -1023,11 +1030,11 @@ msgid "" "and the footer." msgstr "" -#: library/logging.rst:809 +#: library/logging.rst:812 msgid "Filter Objects" msgstr "" -#: library/logging.rst:811 +#: library/logging.rst:814 msgid "" "``Filters`` can be used by ``Handlers`` and ``Loggers`` for more " "sophisticated filtering than is provided by levels. The base filter class " @@ -1037,7 +1044,7 @@ msgid "" "If initialized with the empty string, all events are passed." msgstr "" -#: library/logging.rst:821 +#: library/logging.rst:824 msgid "" "Returns an instance of the :class:`Filter` class. If *name* is specified, it " "names a logger which, together with its children, will have its events " @@ -1045,7 +1052,7 @@ msgid "" "event." msgstr "" -#: library/logging.rst:828 +#: library/logging.rst:831 msgid "" "Is the specified record to be logged? Returns false for no, true for yes. " "Filters can either modify log records in-place or return a completely " @@ -1053,7 +1060,7 @@ msgid "" "future processing of the event." msgstr "" -#: library/logging.rst:833 +#: library/logging.rst:836 msgid "" "Note that filters attached to handlers are consulted before an event is " "emitted by the handler, whereas filters attached to loggers are consulted " @@ -1063,13 +1070,13 @@ msgid "" "setting, unless the filter has also been applied to those descendant loggers." msgstr "" -#: library/logging.rst:840 +#: library/logging.rst:843 msgid "" "You don't actually need to subclass ``Filter``: you can pass any instance " "which has a ``filter`` method with the same semantics." msgstr "" -#: library/logging.rst:843 +#: library/logging.rst:846 msgid "" "You don't need to create specialized ``Filter`` classes, or use other " "classes with a ``filter`` method: you can use a function (or other callable) " @@ -1080,7 +1087,7 @@ msgid "" "value should conform to that returned by :meth:`~Filter.filter`." msgstr "" -#: library/logging.rst:853 +#: library/logging.rst:856 msgid "" "You can now return a :class:`LogRecord` instance from filters to replace the " "log record rather than modifying it in place. This allows filters attached " @@ -1088,7 +1095,7 @@ msgid "" "having side effects on other handlers." msgstr "" -#: library/logging.rst:859 +#: library/logging.rst:862 msgid "" "Although filters are used primarily to filter records based on more " "sophisticated criteria than levels, they get to see every record which is " @@ -1100,11 +1107,11 @@ msgid "" "contextual information into logs (see :ref:`filters-contextual`)." msgstr "" -#: library/logging.rst:872 +#: library/logging.rst:875 msgid "LogRecord Objects" msgstr "" -#: library/logging.rst:874 +#: library/logging.rst:877 msgid "" ":class:`LogRecord` instances are created automatically by the :class:" "`Logger` every time something is logged, and can be created manually via :" @@ -1112,17 +1119,17 @@ msgid "" "wire)." msgstr "" -#: library/logging.rst:882 +#: library/logging.rst:885 msgid "Contains all the information pertinent to the event being logged." msgstr "" -#: library/logging.rst:884 +#: library/logging.rst:887 msgid "" "The primary information is passed in *msg* and *args*, which are combined " "using ``msg % args`` to create the :attr:`!message` attribute of the record." msgstr "" -#: library/logging.rst:888 +#: library/logging.rst:891 msgid "" "The name of the logger used to log the event represented by this :class:`!" "LogRecord`. Note that the logger name in the :class:`!LogRecord` will always " @@ -1130,7 +1137,7 @@ msgid "" "different (ancestor) logger." msgstr "" -#: library/logging.rst:896 +#: library/logging.rst:899 msgid "" "The :ref:`numeric level ` of the logging event (such as ``10`` for " "``DEBUG``, ``20`` for ``INFO``, etc). Note that this is converted to *two* " @@ -1138,46 +1145,46 @@ msgid "" "attr:`!levelname` for the corresponding level name." msgstr "" -#: library/logging.rst:903 +#: library/logging.rst:906 msgid "" "The full string path of the source file where the logging call was made." msgstr "" -#: library/logging.rst:907 +#: library/logging.rst:910 msgid "The line number in the source file where the logging call was made." msgstr "" -#: library/logging.rst:911 +#: library/logging.rst:914 msgid "" "The event description message, which can be a %-format string with " "placeholders for variable data, or an arbitrary object (see :ref:`arbitrary-" "object-messages`)." msgstr "" -#: library/logging.rst:916 +#: library/logging.rst:919 msgid "" "Variable data to merge into the *msg* argument to obtain the event " "description." msgstr "" -#: library/logging.rst:920 +#: library/logging.rst:923 msgid "" "An exception tuple with the current exception information, as returned by :" "func:`sys.exc_info`, or ``None`` if no exception information is available." msgstr "" -#: library/logging.rst:925 +#: library/logging.rst:928 msgid "" "The name of the function or method from which the logging call was invoked." msgstr "" -#: library/logging.rst:929 +#: library/logging.rst:932 msgid "" "A text string representing stack information from the base of the stack in " "the current thread, up to the logging call." msgstr "" -#: library/logging.rst:936 +#: library/logging.rst:939 msgid "" "Returns the message for this :class:`LogRecord` instance after merging any " "user-supplied arguments with the message. If the user-supplied message " @@ -1186,7 +1193,7 @@ msgid "" "whose ``__str__`` method can return the actual format string to be used." msgstr "" -#: library/logging.rst:943 +#: library/logging.rst:946 msgid "" "The creation of a :class:`LogRecord` has been made more configurable by " "providing a factory which is used to create the record. The factory can be " @@ -1194,13 +1201,13 @@ msgid "" "this for the factory's signature)." msgstr "" -#: library/logging.rst:949 +#: library/logging.rst:952 msgid "" "This functionality can be used to inject your own values into a :class:" "`LogRecord` at creation time. You can use the following pattern::" msgstr "" -#: library/logging.rst:952 +#: library/logging.rst:955 msgid "" "old_factory = logging.getLogRecordFactory()\n" "\n" @@ -1212,18 +1219,18 @@ msgid "" "logging.setLogRecordFactory(record_factory)" msgstr "" -#: library/logging.rst:961 +#: library/logging.rst:964 msgid "" "With this pattern, multiple factories could be chained, and as long as they " "don't overwrite each other's attributes or unintentionally overwrite the " "standard attributes listed above, there should be no surprises." msgstr "" -#: library/logging.rst:970 +#: library/logging.rst:973 msgid "LogRecord attributes" msgstr "" -#: library/logging.rst:972 +#: library/logging.rst:975 msgid "" "The LogRecord has a number of attributes, most of which are derived from the " "parameters to the constructor. (Note that the names do not always correspond " @@ -1234,7 +1241,7 @@ msgid "" "style format string." msgstr "" -#: library/logging.rst:980 +#: library/logging.rst:983 msgid "" "If you are using {}-formatting (:func:`str.format`), you can use ``{attrname}" "`` as the placeholder in the format string. If you are using $-formatting (:" @@ -1242,7 +1249,7 @@ msgid "" "course, replace ``attrname`` with the actual attribute name you want to use." msgstr "" -#: library/logging.rst:986 +#: library/logging.rst:989 msgid "" "In the case of {}-formatting, you can specify formatting flags by placing " "them after the attribute name, separated from it with a colon. For example: " @@ -1251,323 +1258,323 @@ msgid "" "on the options available to you." msgstr "" -#: library/logging.rst:993 +#: library/logging.rst:996 msgid "Attribute name" msgstr "" -#: library/logging.rst:1355 +#: library/logging.rst:1358 msgid "Format" msgstr "" -#: library/logging.rst:1355 +#: library/logging.rst:1358 msgid "Description" msgstr "" -#: library/logging.rst:995 +#: library/logging.rst:998 msgid "args" msgstr "" -#: library/logging.rst:1009 library/logging.rst:1055 +#: library/logging.rst:1012 library/logging.rst:1058 msgid "You shouldn't need to format this yourself." msgstr "" -#: library/logging.rst:995 +#: library/logging.rst:998 msgid "" "The tuple of arguments merged into ``msg`` to produce ``message``, or a dict " "whose values are used for the merge (when there is only one argument, and it " "is a dictionary)." msgstr "" -#: library/logging.rst:1000 +#: library/logging.rst:1003 msgid "asctime" msgstr "" -#: library/logging.rst:1000 +#: library/logging.rst:1003 msgid "``%(asctime)s``" msgstr "" -#: library/logging.rst:1000 +#: library/logging.rst:1003 msgid "" "Human-readable time when the :class:`LogRecord` was created. By default " "this is of the form '2003-07-08 16:49:45,896' (the numbers after the comma " "are millisecond portion of the time)." msgstr "" -#: library/logging.rst:1006 +#: library/logging.rst:1009 msgid "created" msgstr "" -#: library/logging.rst:1006 +#: library/logging.rst:1009 msgid "``%(created)f``" msgstr "" -#: library/logging.rst:1006 +#: library/logging.rst:1009 msgid "" "Time when the :class:`LogRecord` was created (as returned by :func:`time." "time`)." msgstr "" -#: library/logging.rst:1009 +#: library/logging.rst:1012 msgid "exc_info" msgstr "" -#: library/logging.rst:1009 +#: library/logging.rst:1012 msgid "" "Exception tuple (à la ``sys.exc_info``) or, if no exception has occurred, " "``None``." msgstr "" -#: library/logging.rst:1012 +#: library/logging.rst:1015 msgid "filename" msgstr "" -#: library/logging.rst:1012 +#: library/logging.rst:1015 msgid "``%(filename)s``" msgstr "" -#: library/logging.rst:1012 +#: library/logging.rst:1015 msgid "Filename portion of ``pathname``." msgstr "" -#: library/logging.rst:1014 +#: library/logging.rst:1017 msgid "funcName" msgstr "" -#: library/logging.rst:1014 +#: library/logging.rst:1017 msgid "``%(funcName)s``" msgstr "" -#: library/logging.rst:1014 +#: library/logging.rst:1017 msgid "Name of function containing the logging call." msgstr "" -#: library/logging.rst:1016 +#: library/logging.rst:1019 msgid "levelname" msgstr "" -#: library/logging.rst:1016 +#: library/logging.rst:1019 msgid "``%(levelname)s``" msgstr "" -#: library/logging.rst:1016 +#: library/logging.rst:1019 msgid "" "Text logging level for the message (``'DEBUG'``, ``'INFO'``, ``'WARNING'``, " "``'ERROR'``, ``'CRITICAL'``)." msgstr "" -#: library/logging.rst:1020 +#: library/logging.rst:1023 msgid "levelno" msgstr "" -#: library/logging.rst:1020 +#: library/logging.rst:1023 msgid "``%(levelno)s``" msgstr "" -#: library/logging.rst:1020 +#: library/logging.rst:1023 msgid "" "Numeric logging level for the message (:const:`DEBUG`, :const:`INFO`, :const:" "`WARNING`, :const:`ERROR`, :const:`CRITICAL`)." msgstr "" -#: library/logging.rst:1025 +#: library/logging.rst:1028 msgid "lineno" msgstr "" -#: library/logging.rst:1025 +#: library/logging.rst:1028 msgid "``%(lineno)d``" msgstr "" -#: library/logging.rst:1025 +#: library/logging.rst:1028 msgid "Source line number where the logging call was issued (if available)." msgstr "" -#: library/logging.rst:1028 +#: library/logging.rst:1031 msgid "message" msgstr "" -#: library/logging.rst:1028 +#: library/logging.rst:1031 msgid "``%(message)s``" msgstr "" -#: library/logging.rst:1028 +#: library/logging.rst:1031 msgid "" "The logged message, computed as ``msg % args``. This is set when :meth:" "`Formatter.format` is invoked." msgstr "" -#: library/logging.rst:1032 +#: library/logging.rst:1035 msgid "module" msgstr "" -#: library/logging.rst:1032 +#: library/logging.rst:1035 msgid "``%(module)s``" msgstr "" -#: library/logging.rst:1032 +#: library/logging.rst:1035 msgid "Module (name portion of ``filename``)." msgstr "" -#: library/logging.rst:1034 +#: library/logging.rst:1037 msgid "msecs" msgstr "" -#: library/logging.rst:1034 +#: library/logging.rst:1037 msgid "``%(msecs)d``" msgstr "" -#: library/logging.rst:1034 +#: library/logging.rst:1037 msgid "" "Millisecond portion of the time when the :class:`LogRecord` was created." msgstr "" -#: library/logging.rst:1037 +#: library/logging.rst:1040 msgid "msg" msgstr "" -#: library/logging.rst:1037 +#: library/logging.rst:1040 msgid "" "The format string passed in the original logging call. Merged with ``args`` " "to produce ``message``, or an arbitrary object (see :ref:`arbitrary-object-" "messages`)." msgstr "" -#: library/logging.rst:1042 +#: library/logging.rst:1045 msgid "name" msgstr "" -#: library/logging.rst:1042 +#: library/logging.rst:1045 msgid "``%(name)s``" msgstr "" -#: library/logging.rst:1042 +#: library/logging.rst:1045 msgid "Name of the logger used to log the call." msgstr "" -#: library/logging.rst:1044 +#: library/logging.rst:1047 msgid "pathname" msgstr "" -#: library/logging.rst:1044 +#: library/logging.rst:1047 msgid "``%(pathname)s``" msgstr "" -#: library/logging.rst:1044 +#: library/logging.rst:1047 msgid "" "Full pathname of the source file where the logging call was issued (if " "available)." msgstr "" -#: library/logging.rst:1047 +#: library/logging.rst:1050 msgid "process" msgstr "" -#: library/logging.rst:1047 +#: library/logging.rst:1050 msgid "``%(process)d``" msgstr "" -#: library/logging.rst:1047 +#: library/logging.rst:1050 msgid "Process ID (if available)." msgstr "" -#: library/logging.rst:1049 +#: library/logging.rst:1052 msgid "processName" msgstr "" -#: library/logging.rst:1049 +#: library/logging.rst:1052 msgid "``%(processName)s``" msgstr "" -#: library/logging.rst:1049 +#: library/logging.rst:1052 msgid "Process name (if available)." msgstr "" -#: library/logging.rst:1051 +#: library/logging.rst:1054 msgid "relativeCreated" msgstr "" -#: library/logging.rst:1051 +#: library/logging.rst:1054 msgid "``%(relativeCreated)d``" msgstr "" -#: library/logging.rst:1051 +#: library/logging.rst:1054 msgid "" "Time in milliseconds when the LogRecord was created, relative to the time " "the logging module was loaded." msgstr "" -#: library/logging.rst:1055 +#: library/logging.rst:1058 msgid "stack_info" msgstr "" -#: library/logging.rst:1055 +#: library/logging.rst:1058 msgid "" "Stack frame information (where available) from the bottom of the stack in " "the current thread, up to and including the stack frame of the logging call " "which resulted in the creation of this record." msgstr "" -#: library/logging.rst:1061 +#: library/logging.rst:1064 msgid "thread" msgstr "" -#: library/logging.rst:1061 +#: library/logging.rst:1064 msgid "``%(thread)d``" msgstr "" -#: library/logging.rst:1061 +#: library/logging.rst:1064 msgid "Thread ID (if available)." msgstr "" -#: library/logging.rst:1063 +#: library/logging.rst:1066 msgid "threadName" msgstr "" -#: library/logging.rst:1063 +#: library/logging.rst:1066 msgid "``%(threadName)s``" msgstr "" -#: library/logging.rst:1063 +#: library/logging.rst:1066 msgid "Thread name (if available)." msgstr "" -#: library/logging.rst:1065 +#: library/logging.rst:1068 msgid "taskName" msgstr "" -#: library/logging.rst:1065 +#: library/logging.rst:1068 msgid "``%(taskName)s``" msgstr "" -#: library/logging.rst:1065 +#: library/logging.rst:1068 msgid ":class:`asyncio.Task` name (if available)." msgstr "" -#: library/logging.rst:1068 +#: library/logging.rst:1071 msgid "*processName* was added." msgstr "" -#: library/logging.rst:1071 +#: library/logging.rst:1074 msgid "*taskName* was added." msgstr "" -#: library/logging.rst:1077 +#: library/logging.rst:1080 msgid "LoggerAdapter Objects" msgstr "" -#: library/logging.rst:1079 +#: library/logging.rst:1082 msgid "" ":class:`LoggerAdapter` instances are used to conveniently pass contextual " "information into logging calls. For a usage example, see the section on :ref:" "`adding contextual information to your logging output `." msgstr "" -#: library/logging.rst:1085 +#: library/logging.rst:1088 msgid "" "Returns an instance of :class:`LoggerAdapter` initialized with an " "underlying :class:`Logger` instance and a dict-like object." msgstr "" -#: library/logging.rst:1090 +#: library/logging.rst:1093 msgid "" "Modifies the message and/or keyword arguments passed to a logging call in " "order to insert contextual information. This implementation takes the object " @@ -1576,15 +1583,15 @@ msgid "" "(possibly modified) versions of the arguments passed in." msgstr "" -#: library/logging.rst:1098 +#: library/logging.rst:1101 msgid "Delegates to the underlying :attr:`!manager` on *logger*." msgstr "" -#: library/logging.rst:1102 +#: library/logging.rst:1105 msgid "Delegates to the underlying :meth:`!_log` method on *logger*." msgstr "" -#: library/logging.rst:1104 +#: library/logging.rst:1107 msgid "" "In addition to the above, :class:`LoggerAdapter` supports the following " "methods of :class:`Logger`: :meth:`~Logger.debug`, :meth:`~Logger.info`, :" @@ -1596,24 +1603,24 @@ msgid "" "interchangeably." msgstr "" -#: library/logging.rst:1115 +#: library/logging.rst:1118 msgid "" "The :meth:`~Logger.isEnabledFor`, :meth:`~Logger.getEffectiveLevel`, :meth:" "`~Logger.setLevel` and :meth:`~Logger.hasHandlers` methods were added to :" "class:`LoggerAdapter`. These methods delegate to the underlying logger." msgstr "" -#: library/logging.rst:1121 +#: library/logging.rst:1124 msgid "" "Attribute :attr:`!manager` and method :meth:`!_log` were added, which " "delegate to the underlying logger and allow adapters to be nested." msgstr "" -#: library/logging.rst:1126 +#: library/logging.rst:1129 msgid "Thread Safety" msgstr "" -#: library/logging.rst:1128 +#: library/logging.rst:1131 msgid "" "The logging module is intended to be thread-safe without any special work " "needing to be done by its clients. It achieves this though using threading " @@ -1622,7 +1629,7 @@ msgid "" "O." msgstr "" -#: library/logging.rst:1133 +#: library/logging.rst:1136 msgid "" "If you are implementing asynchronous signal handlers using the :mod:`signal` " "module, you may not be able to use logging from within such handlers. This " @@ -1630,17 +1637,17 @@ msgid "" "always re-entrant, and so cannot be invoked from such signal handlers." msgstr "" -#: library/logging.rst:1140 +#: library/logging.rst:1143 msgid "Module-Level Functions" msgstr "" -#: library/logging.rst:1142 +#: library/logging.rst:1145 msgid "" "In addition to the classes described above, there are a number of module-" "level functions." msgstr "" -#: library/logging.rst:1148 +#: library/logging.rst:1151 msgid "" "Return a logger with the specified name or, if name is ``None``, return the " "root logger of the hierarchy. If specified, the name is typically a dot-" @@ -1650,14 +1657,14 @@ msgid "" "for not doing that, as mentioned in :ref:`logger`." msgstr "" -#: library/logging.rst:1155 +#: library/logging.rst:1158 msgid "" "All calls to this function with a given name return the same logger " "instance. This means that logger instances never need to be passed between " "different parts of an application." msgstr "" -#: library/logging.rst:1162 +#: library/logging.rst:1165 msgid "" "Return either the standard :class:`Logger` class, or the last class passed " "to :func:`setLoggerClass`. This function may be called from within a new " @@ -1666,43 +1673,43 @@ msgid "" "example::" msgstr "" -#: library/logging.rst:1167 +#: library/logging.rst:1170 msgid "" "class MyLogger(logging.getLoggerClass()):\n" " # ... override behaviour here" msgstr "" -#: library/logging.rst:1173 +#: library/logging.rst:1176 msgid "Return a callable which is used to create a :class:`LogRecord`." msgstr "" -#: library/logging.rst:1175 +#: library/logging.rst:1178 msgid "" "This function has been provided, along with :func:`setLogRecordFactory`, to " "allow developers more control over how the :class:`LogRecord` representing a " "logging event is constructed." msgstr "" -#: library/logging.rst:1180 +#: library/logging.rst:1183 msgid "" "See :func:`setLogRecordFactory` for more information about the how the " "factory is called." msgstr "" -#: library/logging.rst:1185 +#: library/logging.rst:1188 msgid "" "This is a convenience function that calls :meth:`Logger.debug`, on the root " "logger. The handling of the arguments is in every way identical to what is " "described in that method." msgstr "" -#: library/logging.rst:1189 +#: library/logging.rst:1192 msgid "" "The only difference is that if the root logger has no handlers, then :func:" "`basicConfig` is called, prior to calling ``debug`` on the root logger." msgstr "" -#: library/logging.rst:1192 +#: library/logging.rst:1195 msgid "" "For very short scripts or quick demonstrations of ``logging`` facilities, " "``debug`` and the other module-level functions may be convenient. However, " @@ -1712,38 +1719,38 @@ msgid "" "described at the beginnning of this documentation." msgstr "" -#: library/logging.rst:1202 +#: library/logging.rst:1205 msgid "" "Logs a message with level :const:`INFO` on the root logger. The arguments " "and behavior are otherwise the same as for :func:`debug`." msgstr "" -#: library/logging.rst:1208 +#: library/logging.rst:1211 msgid "" "Logs a message with level :const:`WARNING` on the root logger. The arguments " "and behavior are otherwise the same as for :func:`debug`." msgstr "" -#: library/logging.rst:1211 +#: library/logging.rst:1214 msgid "" "There is an obsolete function ``warn`` which is functionally identical to " "``warning``. As ``warn`` is deprecated, please do not use it - use " "``warning`` instead." msgstr "" -#: library/logging.rst:1218 +#: library/logging.rst:1221 msgid "" "Logs a message with level :const:`ERROR` on the root logger. The arguments " "and behavior are otherwise the same as for :func:`debug`." msgstr "" -#: library/logging.rst:1224 +#: library/logging.rst:1227 msgid "" "Logs a message with level :const:`CRITICAL` on the root logger. The " "arguments and behavior are otherwise the same as for :func:`debug`." msgstr "" -#: library/logging.rst:1230 +#: library/logging.rst:1233 msgid "" "Logs a message with level :const:`ERROR` on the root logger. The arguments " "and behavior are otherwise the same as for :func:`debug`. Exception info is " @@ -1751,13 +1758,13 @@ msgid "" "exception handler." msgstr "" -#: library/logging.rst:1236 +#: library/logging.rst:1239 msgid "" "Logs a message with level *level* on the root logger. The arguments and " "behavior are otherwise the same as for :func:`debug`." msgstr "" -#: library/logging.rst:1241 +#: library/logging.rst:1244 msgid "" "Provides an overriding level *level* for all loggers which takes precedence " "over the logger's own level. When the need arises to temporarily throttle " @@ -1771,7 +1778,7 @@ msgid "" "individual loggers." msgstr "" -#: library/logging.rst:1252 +#: library/logging.rst:1255 msgid "" "Note that if you have defined any custom logging level higher than " "``CRITICAL`` (this is not recommended), you won't be able to rely on the " @@ -1779,13 +1786,13 @@ msgid "" "a suitable value." msgstr "" -#: library/logging.rst:1257 +#: library/logging.rst:1260 msgid "" "The *level* parameter was defaulted to level ``CRITICAL``. See :issue:" "`28524` for more information about this change." msgstr "" -#: library/logging.rst:1263 +#: library/logging.rst:1266 msgid "" "Associates level *level* with text *levelName* in an internal dictionary, " "which is used to map numeric levels to a textual representation, for example " @@ -1795,24 +1802,24 @@ msgid "" "and they should increase in increasing order of severity." msgstr "" -#: library/logging.rst:1270 +#: library/logging.rst:1273 msgid "" "If you are thinking of defining your own levels, please see the section on :" "ref:`custom-levels`." msgstr "" -#: library/logging.rst:1275 +#: library/logging.rst:1278 msgid "" "Returns a mapping from level names to their corresponding logging levels. " "For example, the string \"CRITICAL\" maps to :const:`CRITICAL`. The returned " "mapping is copied from an internal mapping on each call to this function." msgstr "" -#: library/logging.rst:1283 +#: library/logging.rst:1286 msgid "Returns the textual or numeric representation of logging level *level*." msgstr "" -#: library/logging.rst:1285 +#: library/logging.rst:1288 msgid "" "If *level* is one of the predefined levels :const:`CRITICAL`, :const:" "`ERROR`, :const:`WARNING`, :const:`INFO` or :const:`DEBUG` then you get the " @@ -1822,20 +1829,20 @@ msgid "" "the corresponding string representation is returned." msgstr "" -#: library/logging.rst:1292 +#: library/logging.rst:1295 msgid "" "The *level* parameter also accepts a string representation of the level such " "as 'INFO'. In such cases, this functions returns the corresponding numeric " "value of the level." msgstr "" -#: library/logging.rst:1296 +#: library/logging.rst:1299 msgid "" "If no matching numeric or string value is passed in, the string 'Level %s' % " "level is returned." msgstr "" -#: library/logging.rst:1299 +#: library/logging.rst:1302 msgid "" "Levels are internally integers (as they need to be compared in the logging " "logic). This function is used to convert between an integer level and the " @@ -1844,7 +1851,7 @@ msgid "" "vice versa." msgstr "" -#: library/logging.rst:1305 +#: library/logging.rst:1308 msgid "" "In Python versions earlier than 3.4, this function could also be passed a " "text level, and would return the corresponding numeric value of the level. " @@ -1852,17 +1859,17 @@ msgid "" "Python 3.4, but reinstated in 3.4.2 due to retain backward compatibility." msgstr "" -#: library/logging.rst:1313 +#: library/logging.rst:1316 msgid "" "Returns a handler with the specified *name*, or ``None`` if there is no " "handler with that name." msgstr "" -#: library/logging.rst:1320 +#: library/logging.rst:1323 msgid "Returns an immutable set of all known handler names." msgstr "" -#: library/logging.rst:1326 +#: library/logging.rst:1329 msgid "" "Creates and returns a new :class:`LogRecord` instance whose attributes are " "defined by *attrdict*. This function is useful for taking a pickled :class:" @@ -1870,7 +1877,7 @@ msgid "" "as a :class:`LogRecord` instance at the receiving end." msgstr "" -#: library/logging.rst:1334 +#: library/logging.rst:1337 msgid "" "Does basic configuration for the logging system by creating a :class:" "`StreamHandler` with a default :class:`Formatter` and adding it to the root " @@ -1879,13 +1886,13 @@ msgid "" "no handlers are defined for the root logger." msgstr "" -#: library/logging.rst:1340 +#: library/logging.rst:1343 msgid "" "This function does nothing if the root logger already has handlers " "configured, unless the keyword argument *force* is set to ``True``." msgstr "" -#: library/logging.rst:1343 +#: library/logging.rst:1346 msgid "" "This function should be called from the main thread before other threads are " "started. In versions of Python prior to 2.7.1 and 3.2, if this function is " @@ -1894,54 +1901,54 @@ msgid "" "unexpected results such as messages being duplicated in the log." msgstr "" -#: library/logging.rst:1350 +#: library/logging.rst:1353 msgid "The following keyword arguments are supported." msgstr "" -#: library/logging.rst:1357 +#: library/logging.rst:1360 msgid "*filename*" msgstr "" -#: library/logging.rst:1357 +#: library/logging.rst:1360 msgid "" "Specifies that a :class:`FileHandler` be created, using the specified " "filename, rather than a :class:`StreamHandler`." msgstr "" -#: library/logging.rst:1361 +#: library/logging.rst:1364 msgid "*filemode*" msgstr "" -#: library/logging.rst:1361 +#: library/logging.rst:1364 msgid "" "If *filename* is specified, open the file in this :ref:`mode `. " "Defaults to ``'a'``." msgstr "" -#: library/logging.rst:1365 +#: library/logging.rst:1368 msgid "*format*" msgstr "" -#: library/logging.rst:1365 +#: library/logging.rst:1368 msgid "" "Use the specified format string for the handler. Defaults to attributes " "``levelname``, ``name`` and ``message`` separated by colons." msgstr "" -#: library/logging.rst:1370 +#: library/logging.rst:1373 msgid "*datefmt*" msgstr "" -#: library/logging.rst:1370 +#: library/logging.rst:1373 msgid "" "Use the specified date/time format, as accepted by :func:`time.strftime`." msgstr "" -#: library/logging.rst:1373 +#: library/logging.rst:1376 msgid "*style*" msgstr "" -#: library/logging.rst:1373 +#: library/logging.rst:1376 msgid "" "If *format* is specified, use this style for the format string. One of " "``'%'``, ``'{'`` or ``'$'`` for :ref:`printf-style `." msgstr "" -#: library/logging.rst:1384 +#: library/logging.rst:1387 msgid "*stream*" msgstr "" -#: library/logging.rst:1384 +#: library/logging.rst:1387 msgid "" "Use the specified stream to initialize the :class:`StreamHandler`. Note that " "this argument is incompatible with *filename* - if both are present, a " "``ValueError`` is raised." msgstr "" -#: library/logging.rst:1390 +#: library/logging.rst:1393 msgid "*handlers*" msgstr "" -#: library/logging.rst:1390 +#: library/logging.rst:1393 msgid "" "If specified, this should be an iterable of already created handlers to add " "to the root logger. Any handlers which don't already have a formatter set " @@ -1981,33 +1988,33 @@ msgid "" "present, a ``ValueError`` is raised." msgstr "" -#: library/logging.rst:1399 +#: library/logging.rst:1402 msgid "*force*" msgstr "" -#: library/logging.rst:1399 +#: library/logging.rst:1402 msgid "" "If this keyword argument is specified as true, any existing handlers " "attached to the root logger are removed and closed, before carrying out the " "configuration as specified by the other arguments." msgstr "" -#: library/logging.rst:1405 +#: library/logging.rst:1408 msgid "*encoding*" msgstr "" -#: library/logging.rst:1405 +#: library/logging.rst:1408 msgid "" "If this keyword argument is specified along with *filename*, its value is " "used when the :class:`FileHandler` is created, and thus used when opening " "the output file." msgstr "" -#: library/logging.rst:1410 +#: library/logging.rst:1413 msgid "*errors*" msgstr "" -#: library/logging.rst:1410 +#: library/logging.rst:1413 msgid "" "If this keyword argument is specified along with *filename*, its value is " "used when the :class:`FileHandler` is created, and thus used when opening " @@ -2016,39 +2023,39 @@ msgid "" "`open`, which means that it will be treated the same as passing 'errors'." msgstr "" -#: library/logging.rst:1421 +#: library/logging.rst:1424 msgid "The *style* argument was added." msgstr "" -#: library/logging.rst:1424 +#: library/logging.rst:1427 msgid "" "The *handlers* argument was added. Additional checks were added to catch " "situations where incompatible arguments are specified (e.g. *handlers* " "together with *stream* or *filename*, or *stream* together with *filename*)." msgstr "" -#: library/logging.rst:1430 +#: library/logging.rst:1433 msgid "The *force* argument was added." msgstr "" -#: library/logging.rst:1433 +#: library/logging.rst:1436 msgid "The *encoding* and *errors* arguments were added." msgstr "" -#: library/logging.rst:1438 +#: library/logging.rst:1441 msgid "" "Informs the logging system to perform an orderly shutdown by flushing and " "closing all handlers. This should be called at application exit and no " "further use of the logging system should be made after this call." msgstr "" -#: library/logging.rst:1442 +#: library/logging.rst:1445 msgid "" "When the logging module is imported, it registers this function as an exit " "handler (see :mod:`atexit`), so normally there's no need to do that manually." msgstr "" -#: library/logging.rst:1449 +#: library/logging.rst:1452 msgid "" "Tells the logging system to use the class *klass* when instantiating a " "logger. The class should define :meth:`!__init__` such that only a name " @@ -2060,32 +2067,32 @@ msgid "" "loggers." msgstr "" -#: library/logging.rst:1460 +#: library/logging.rst:1463 msgid "Set a callable which is used to create a :class:`LogRecord`." msgstr "" -#: library/logging.rst:1462 +#: library/logging.rst:1465 msgid "The factory callable to be used to instantiate a log record." msgstr "" -#: library/logging.rst:1464 +#: library/logging.rst:1467 msgid "" "This function has been provided, along with :func:`getLogRecordFactory`, to " "allow developers more control over how the :class:`LogRecord` representing a " "logging event is constructed." msgstr "" -#: library/logging.rst:1469 +#: library/logging.rst:1472 msgid "The factory has the following signature:" msgstr "" -#: library/logging.rst:1471 +#: library/logging.rst:1474 msgid "" "``factory(name, level, fn, lno, msg, args, exc_info, func=None, sinfo=None, " "**kwargs)``" msgstr "" -#: library/logging.rst:1473 +#: library/logging.rst:1476 msgid "The logger name." msgstr "" @@ -2093,7 +2100,7 @@ msgstr "" msgid "level" msgstr "" -#: library/logging.rst:1474 +#: library/logging.rst:1477 msgid "The logging level (numeric)." msgstr "" @@ -2101,7 +2108,7 @@ msgstr "" msgid "fn" msgstr "" -#: library/logging.rst:1475 +#: library/logging.rst:1478 msgid "The full pathname of the file where the logging call was made." msgstr "" @@ -2109,19 +2116,19 @@ msgstr "" msgid "lno" msgstr "" -#: library/logging.rst:1476 +#: library/logging.rst:1479 msgid "The line number in the file where the logging call was made." msgstr "" -#: library/logging.rst:1477 +#: library/logging.rst:1480 msgid "The logging message." msgstr "" -#: library/logging.rst:1478 +#: library/logging.rst:1481 msgid "The arguments for the logging message." msgstr "" -#: library/logging.rst:1479 +#: library/logging.rst:1482 msgid "An exception tuple, or ``None``." msgstr "" @@ -2129,7 +2136,7 @@ msgstr "" msgid "func" msgstr "" -#: library/logging.rst:1480 +#: library/logging.rst:1483 msgid "The name of the function or method which invoked the logging call." msgstr "" @@ -2137,7 +2144,7 @@ msgstr "" msgid "sinfo" msgstr "" -#: library/logging.rst:1482 +#: library/logging.rst:1485 msgid "" "A stack traceback such as is provided by :func:`traceback.print_stack`, " "showing the call hierarchy." @@ -2147,15 +2154,15 @@ msgstr "" msgid "kwargs" msgstr "" -#: library/logging.rst:1484 +#: library/logging.rst:1487 msgid "Additional keyword arguments." msgstr "" -#: library/logging.rst:1488 +#: library/logging.rst:1491 msgid "Module-Level Attributes" msgstr "" -#: library/logging.rst:1492 +#: library/logging.rst:1495 msgid "" "A \"handler of last resort\" is available through this attribute. This is a :" "class:`StreamHandler` writing to ``sys.stderr`` with a level of ``WARNING``, " @@ -2166,15 +2173,15 @@ msgid "" "reason, ``lastResort`` can be set to ``None``." msgstr "" -#: library/logging.rst:1504 +#: library/logging.rst:1507 msgid "Used to see if exceptions during handling should be propagated." msgstr "" -#: library/logging.rst:1506 +#: library/logging.rst:1509 msgid "Default: ``True``." msgstr "" -#: library/logging.rst:1508 +#: library/logging.rst:1511 msgid "" "If :data:`raiseExceptions` is ``False``, exceptions get silently ignored. " "This is what is mostly wanted for a logging system - most users will not " @@ -2182,22 +2189,22 @@ msgid "" "application errors." msgstr "" -#: library/logging.rst:1515 +#: library/logging.rst:1518 msgid "Integration with the warnings module" msgstr "" -#: library/logging.rst:1517 +#: library/logging.rst:1520 msgid "" "The :func:`captureWarnings` function can be used to integrate :mod:`logging` " "with the :mod:`warnings` module." msgstr "" -#: library/logging.rst:1522 +#: library/logging.rst:1525 msgid "" "This function is used to turn the capture of warnings by logging on and off." msgstr "" -#: library/logging.rst:1525 +#: library/logging.rst:1528 msgid "" "If *capture* is ``True``, warnings issued by the :mod:`warnings` module will " "be redirected to the logging system. Specifically, a warning will be " @@ -2206,46 +2213,46 @@ msgid "" "`WARNING`." msgstr "" -#: library/logging.rst:1530 +#: library/logging.rst:1533 msgid "" "If *capture* is ``False``, the redirection of warnings to the logging system " "will stop, and warnings will be redirected to their original destinations (i." "e. those in effect before ``captureWarnings(True)`` was called)." msgstr "" -#: library/logging.rst:1537 +#: library/logging.rst:1540 msgid "Module :mod:`logging.config`" msgstr "" -#: library/logging.rst:1538 +#: library/logging.rst:1541 msgid "Configuration API for the logging module." msgstr "" -#: library/logging.rst:1540 +#: library/logging.rst:1543 msgid "Module :mod:`logging.handlers`" msgstr "" -#: library/logging.rst:1541 +#: library/logging.rst:1544 msgid "Useful handlers included with the logging module." msgstr "" -#: library/logging.rst:1543 +#: library/logging.rst:1546 msgid ":pep:`282` - A Logging System" msgstr "" -#: library/logging.rst:1544 +#: library/logging.rst:1547 msgid "" "The proposal which described this feature for inclusion in the Python " "standard library." msgstr "" -#: library/logging.rst:1547 +#: library/logging.rst:1550 msgid "" "`Original Python logging package `_" msgstr "" -#: library/logging.rst:1548 +#: library/logging.rst:1551 msgid "" "This is the original source for the :mod:`logging` package. The version of " "the package available from this site is suitable for use with Python 1.5.2, " diff --git a/library/mailbox.po b/library/mailbox.po index c3ece5fcd..9ab296196 100644 --- a/library/mailbox.po +++ b/library/mailbox.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -419,7 +419,7 @@ msgid "" "addition to the following:" msgstr "" -#: library/mailbox.rst:545 +#: library/mailbox.rst:560 msgid "Return a list of the names of all folders." msgstr "" @@ -436,7 +436,7 @@ msgid "" "instance representing it." msgstr "" -#: library/mailbox.rst:563 +#: library/mailbox.rst:578 msgid "" "Delete the folder whose name is *folder*. If the folder contains any " "messages, a :exc:`NotEmptyError` exception will be raised and the folder " @@ -549,54 +549,61 @@ msgid "" "remarks:" msgstr "" -#: library/mailbox.rst:487 +#: library/mailbox.rst:497 library/mailbox.rst:762 library/mailbox.rst:772 +msgid "" +"Note: This method has an extra parameter (*from_*) compared with other " +"classes. The first line of an mbox file entry is the Unix \"From \" line. If " +"*from_* is False, the first line of the file is dropped." +msgstr "" + +#: library/mailbox.rst:493 msgid "" "Using the file after calling :meth:`~Mailbox.flush` or :meth:`~Mailbox." "close` on the :class:`!mbox` instance may yield unpredictable results or " "raise an exception." msgstr "" -#: library/mailbox.rst:704 library/mailbox.rst:755 +#: library/mailbox.rst:719 library/mailbox.rst:780 msgid "" "Three locking mechanisms are used---dot locking and, if available, the :c:" "func:`!flock` and :c:func:`!lockf` system calls." msgstr "" -#: library/mailbox.rst:501 +#: library/mailbox.rst:516 msgid "" "`mbox man page from tin `_" msgstr "" -#: library/mailbox.rst:502 +#: library/mailbox.rst:517 msgid "A specification of the format, with details on locking." msgstr "" -#: library/mailbox.rst:504 +#: library/mailbox.rst:519 msgid "" "`Configuring Netscape Mail on Unix: Why The Content-Length Format is Bad " "`_" msgstr "" -#: library/mailbox.rst:505 +#: library/mailbox.rst:520 msgid "An argument for using the original mbox format rather than a variation." msgstr "" -#: library/mailbox.rst:507 +#: library/mailbox.rst:522 msgid "" "`\"mbox\" is a family of several mutually incompatible mailbox formats " "`_" msgstr "" -#: library/mailbox.rst:508 +#: library/mailbox.rst:523 msgid "A history of mbox variations." msgstr "" -#: library/mailbox.rst:514 +#: library/mailbox.rst:529 msgid ":class:`!MH` objects" msgstr "" -#: library/mailbox.rst:519 +#: library/mailbox.rst:534 msgid "" "A subclass of :class:`Mailbox` for mailboxes in MH format. Parameter " "*factory* is a callable object that accepts a file-like message " @@ -606,7 +613,7 @@ msgid "" "is created if it does not exist." msgstr "" -#: library/mailbox.rst:526 +#: library/mailbox.rst:541 msgid "" "MH is a directory-based mailbox format invented for the MH Message Handling " "System, a mail user agent. Each message in an MH mailbox resides in its own " @@ -617,7 +624,7 @@ msgid "" "called :file:`.mh_sequences` in each folder." msgstr "" -#: library/mailbox.rst:534 +#: library/mailbox.rst:549 msgid "" "The :class:`!MH` class manipulates MH mailboxes, but it does not attempt to " "emulate all of :program:`mh`'s behaviors. In particular, it does not modify " @@ -625,63 +632,63 @@ msgid "" "are used by :program:`mh` to store its state and configuration." msgstr "" -#: library/mailbox.rst:539 +#: library/mailbox.rst:554 msgid "" ":class:`!MH` instances have all of the methods of :class:`Mailbox` in " "addition to the following:" msgstr "" -#: library/mailbox.rst:550 +#: library/mailbox.rst:565 msgid "" "Return an :class:`!MH` instance representing the folder whose name is " "*folder*. A :exc:`NoSuchMailboxError` exception is raised if the folder does " "not exist." msgstr "" -#: library/mailbox.rst:557 +#: library/mailbox.rst:572 msgid "" "Create a folder whose name is *folder* and return an :class:`!MH` instance " "representing it." msgstr "" -#: library/mailbox.rst:570 +#: library/mailbox.rst:585 msgid "" "Return a dictionary of sequence names mapped to key lists. If there are no " "sequences, the empty dictionary is returned." msgstr "" -#: library/mailbox.rst:576 +#: library/mailbox.rst:591 msgid "" "Re-define the sequences that exist in the mailbox based upon *sequences*, a " "dictionary of names mapped to key lists, like returned by :meth:" "`get_sequences`." msgstr "" -#: library/mailbox.rst:583 +#: library/mailbox.rst:598 msgid "" "Rename messages in the mailbox as necessary to eliminate gaps in numbering. " "Entries in the sequences list are updated correspondingly." msgstr "" -#: library/mailbox.rst:588 +#: library/mailbox.rst:603 msgid "" "Already-issued keys are invalidated by this operation and should not be " "subsequently used." msgstr "" -#: library/mailbox.rst:591 +#: library/mailbox.rst:606 msgid "" "Some :class:`Mailbox` methods implemented by :class:`!MH` deserve special " "remarks:" msgstr "" -#: library/mailbox.rst:599 +#: library/mailbox.rst:614 msgid "" "These methods immediately delete the message. The MH convention of marking a " "message for deletion by prepending a comma to its name is not used." msgstr "" -#: library/mailbox.rst:606 +#: library/mailbox.rst:621 msgid "" "Three locking mechanisms are used---dot locking and, if available, the :c:" "func:`!flock` and :c:func:`!lockf` system calls. For MH mailboxes, locking " @@ -690,51 +697,51 @@ msgid "" "files." msgstr "" -#: library/mailbox.rst:615 +#: library/mailbox.rst:630 msgid "" "Depending upon the host platform, it may not be possible to remove the " "underlying message while the returned file remains open." msgstr "" -#: library/mailbox.rst:621 +#: library/mailbox.rst:636 msgid "" "All changes to MH mailboxes are immediately applied, so this method does " "nothing." msgstr "" -#: library/mailbox.rst:627 +#: library/mailbox.rst:642 msgid "" ":class:`!MH` instances do not keep any open files, so this method is " "equivalent to :meth:`unlock`." msgstr "" -#: library/mailbox.rst:633 +#: library/mailbox.rst:648 msgid "`nmh - Message Handling System `_" msgstr "" -#: library/mailbox.rst:634 +#: library/mailbox.rst:649 msgid "" "Home page of :program:`nmh`, an updated version of the original :program:" "`mh`." msgstr "" -#: library/mailbox.rst:636 +#: library/mailbox.rst:651 msgid "" "`MH & nmh: Email for Users & Programmers `_" msgstr "" -#: library/mailbox.rst:637 +#: library/mailbox.rst:652 msgid "" "A GPL-licensed book on :program:`mh` and :program:`nmh`, with some " "information on the mailbox format." msgstr "" -#: library/mailbox.rst:644 +#: library/mailbox.rst:659 msgid ":class:`!Babyl` objects" msgstr "" -#: library/mailbox.rst:649 +#: library/mailbox.rst:664 msgid "" "A subclass of :class:`Mailbox` for mailboxes in Babyl format. Parameter " "*factory* is a callable object that accepts a file-like message " @@ -744,7 +751,7 @@ msgid "" "mailbox is created if it does not exist." msgstr "" -#: library/mailbox.rst:656 +#: library/mailbox.rst:671 msgid "" "Babyl is a single-file mailbox format used by the Rmail mail user agent " "included with Emacs. The beginning of a message is indicated by a line " @@ -754,7 +761,7 @@ msgid "" "Underscore (``'\\037'``) character." msgstr "" -#: library/mailbox.rst:663 +#: library/mailbox.rst:678 msgid "" "Messages in a Babyl mailbox have two sets of headers, original headers and " "so-called visible headers. Visible headers are typically a subset of the " @@ -765,31 +772,31 @@ msgid "" "in the Babyl options section." msgstr "" -#: library/mailbox.rst:671 +#: library/mailbox.rst:686 msgid "" ":class:`!Babyl` instances have all of the methods of :class:`Mailbox` in " "addition to the following:" msgstr "" -#: library/mailbox.rst:677 +#: library/mailbox.rst:692 msgid "" "Return a list of the names of all user-defined labels used in the mailbox." msgstr "" -#: library/mailbox.rst:681 +#: library/mailbox.rst:696 msgid "" "The actual messages are inspected to determine which labels exist in the " "mailbox rather than consulting the list of labels in the Babyl options " "section, but the Babyl section is updated whenever the mailbox is modified." msgstr "" -#: library/mailbox.rst:686 +#: library/mailbox.rst:701 msgid "" "Some :class:`Mailbox` methods implemented by :class:`!Babyl` deserve special " "remarks:" msgstr "" -#: library/mailbox.rst:692 +#: library/mailbox.rst:707 msgid "" "In Babyl mailboxes, the headers of a message are not stored contiguously " "with the body of the message. To generate a file-like representation, the " @@ -799,30 +806,30 @@ msgid "" "memory compared to a string representation." msgstr "" -#: library/mailbox.rst:710 +#: library/mailbox.rst:725 msgid "" "`Format of Version 5 Babyl Files `_" msgstr "" -#: library/mailbox.rst:711 +#: library/mailbox.rst:726 msgid "A specification of the Babyl format." msgstr "" -#: library/mailbox.rst:713 +#: library/mailbox.rst:728 msgid "" "`Reading Mail with Rmail `_" msgstr "" -#: library/mailbox.rst:714 +#: library/mailbox.rst:729 msgid "The Rmail manual, with some information on Babyl semantics." msgstr "" -#: library/mailbox.rst:720 +#: library/mailbox.rst:735 msgid ":class:`!MMDF` objects" msgstr "" -#: library/mailbox.rst:725 +#: library/mailbox.rst:740 msgid "" "A subclass of :class:`Mailbox` for mailboxes in MMDF format. Parameter " "*factory* is a callable object that accepts a file-like message " @@ -832,7 +839,7 @@ msgid "" "mailbox is created if it does not exist." msgstr "" -#: library/mailbox.rst:732 +#: library/mailbox.rst:747 msgid "" "MMDF is a single-file mailbox format invented for the Multichannel " "Memorandum Distribution Facility, a mail transfer agent. Each message is in " @@ -845,52 +852,52 @@ msgid "" "subsequent messages." msgstr "" -#: library/mailbox.rst:741 +#: library/mailbox.rst:756 msgid "" "Some :class:`Mailbox` methods implemented by :class:`!MMDF` deserve special " "remarks:" msgstr "" -#: library/mailbox.rst:747 +#: library/mailbox.rst:768 msgid "" "Using the file after calling :meth:`~Mailbox.flush` or :meth:`~Mailbox." "close` on the :class:`!MMDF` instance may yield unpredictable results or " "raise an exception." msgstr "" -#: library/mailbox.rst:761 +#: library/mailbox.rst:786 msgid "" "`mmdf man page from tin `_" msgstr "" -#: library/mailbox.rst:762 +#: library/mailbox.rst:787 msgid "" "A specification of MMDF format from the documentation of tin, a newsreader." msgstr "" -#: library/mailbox.rst:764 +#: library/mailbox.rst:789 msgid "`MMDF `_" msgstr "" -#: library/mailbox.rst:765 +#: library/mailbox.rst:790 msgid "" "A Wikipedia article describing the Multichannel Memorandum Distribution " "Facility." msgstr "" -#: library/mailbox.rst:772 +#: library/mailbox.rst:797 msgid ":class:`!Message` objects" msgstr "" -#: library/mailbox.rst:777 +#: library/mailbox.rst:802 msgid "" "A subclass of the :mod:`email.message` module's :class:`~email.message." "Message`. Subclasses of :class:`!mailbox.Message` add mailbox-format-" "specific state and behavior." msgstr "" -#: library/mailbox.rst:781 +#: library/mailbox.rst:806 msgid "" "If *message* is omitted, the new instance is created in a default, empty " "state. If *message* is an :class:`email.message.Message` instance, its " @@ -902,7 +909,7 @@ msgid "" "compatibility." msgstr "" -#: library/mailbox.rst:790 +#: library/mailbox.rst:815 msgid "" "The format-specific state and behaviors offered by subclasses vary, but in " "general it is only the properties that are not specific to a particular " @@ -914,7 +921,7 @@ msgid "" "important is retained, because it applies to the message itself." msgstr "" -#: library/mailbox.rst:799 +#: library/mailbox.rst:824 msgid "" "There is no requirement that :class:`!Message` instances be used to " "represent messages retrieved using :class:`Mailbox` instances. In some " @@ -925,17 +932,17 @@ msgid "" "initialized." msgstr "" -#: library/mailbox.rst:810 +#: library/mailbox.rst:835 msgid ":class:`!MaildirMessage` objects" msgstr "" -#: library/mailbox.rst:815 +#: library/mailbox.rst:840 msgid "" "A message with Maildir-specific behaviors. Parameter *message* has the same " "meaning as with the :class:`Message` constructor." msgstr "" -#: library/mailbox.rst:818 +#: library/mailbox.rst:843 msgid "" "Typically, a mail user agent application moves all of the messages in the :" "file:`new` subdirectory to the :file:`cur` subdirectory after the first time " @@ -949,115 +956,115 @@ msgid "" "flags for Maildir messages are as follows:" msgstr "" -#: library/mailbox.rst:997 library/mailbox.rst:1368 +#: library/mailbox.rst:1022 library/mailbox.rst:1393 msgid "Flag" msgstr "" -#: library/mailbox.rst:997 library/mailbox.rst:1368 +#: library/mailbox.rst:1022 library/mailbox.rst:1393 msgid "Meaning" msgstr "" -#: library/mailbox.rst:997 library/mailbox.rst:1235 library/mailbox.rst:1368 +#: library/mailbox.rst:1022 library/mailbox.rst:1260 library/mailbox.rst:1393 msgid "Explanation" msgstr "" -#: library/mailbox.rst:1003 library/mailbox.rst:1374 +#: library/mailbox.rst:1028 library/mailbox.rst:1399 msgid "D" msgstr "" -#: library/mailbox.rst:832 +#: library/mailbox.rst:857 msgid "Draft" msgstr "" -#: library/mailbox.rst:832 +#: library/mailbox.rst:857 msgid "Under composition" msgstr "" -#: library/mailbox.rst:1005 library/mailbox.rst:1376 +#: library/mailbox.rst:1030 library/mailbox.rst:1401 msgid "F" msgstr "" -#: library/mailbox.rst:1005 library/mailbox.rst:1376 +#: library/mailbox.rst:1030 library/mailbox.rst:1401 msgid "Flagged" msgstr "" -#: library/mailbox.rst:1005 library/mailbox.rst:1376 +#: library/mailbox.rst:1030 library/mailbox.rst:1401 msgid "Marked as important" msgstr "" -#: library/mailbox.rst:836 +#: library/mailbox.rst:861 msgid "P" msgstr "" -#: library/mailbox.rst:836 +#: library/mailbox.rst:861 msgid "Passed" msgstr "" -#: library/mailbox.rst:836 +#: library/mailbox.rst:861 msgid "Forwarded, resent, or bounced" msgstr "" -#: library/mailbox.rst:999 library/mailbox.rst:1370 +#: library/mailbox.rst:1024 library/mailbox.rst:1395 msgid "R" msgstr "" -#: library/mailbox.rst:838 +#: library/mailbox.rst:863 msgid "Replied" msgstr "" -#: library/mailbox.rst:1007 library/mailbox.rst:1243 library/mailbox.rst:1378 +#: library/mailbox.rst:1032 library/mailbox.rst:1268 library/mailbox.rst:1403 msgid "Replied to" msgstr "" -#: library/mailbox.rst:840 +#: library/mailbox.rst:865 msgid "S" msgstr "" -#: library/mailbox.rst:840 +#: library/mailbox.rst:865 msgid "Seen" msgstr "" -#: library/mailbox.rst:999 library/mailbox.rst:1370 +#: library/mailbox.rst:1024 library/mailbox.rst:1395 msgid "Read" msgstr "" -#: library/mailbox.rst:842 +#: library/mailbox.rst:867 msgid "T" msgstr "" -#: library/mailbox.rst:842 +#: library/mailbox.rst:867 msgid "Trashed" msgstr "" -#: library/mailbox.rst:1003 library/mailbox.rst:1374 +#: library/mailbox.rst:1028 library/mailbox.rst:1399 msgid "Marked for subsequent deletion" msgstr "" -#: library/mailbox.rst:845 +#: library/mailbox.rst:870 msgid ":class:`!MaildirMessage` instances offer the following methods:" msgstr "" -#: library/mailbox.rst:850 +#: library/mailbox.rst:875 msgid "" "Return either \"new\" (if the message should be stored in the :file:`new` " "subdirectory) or \"cur\" (if the message should be stored in the :file:`cur` " "subdirectory)." msgstr "" -#: library/mailbox.rst:856 +#: library/mailbox.rst:881 msgid "" "A message is typically moved from :file:`new` to :file:`cur` after its " "mailbox has been accessed, whether or not the message is has been read. A " "message ``msg`` has been read if ``\"S\" in msg.get_flags()`` is ``True``." msgstr "" -#: library/mailbox.rst:864 +#: library/mailbox.rst:889 msgid "" "Set the subdirectory the message should be stored in. Parameter *subdir* " "must be either \"new\" or \"cur\"." msgstr "" -#: library/mailbox.rst:870 +#: library/mailbox.rst:895 msgid "" "Return a string specifying the flags that are currently set. If the message " "complies with the standard Maildir format, the result is the concatenation " @@ -1066,11 +1073,11 @@ msgid "" "flags are set or if \"info\" contains experimental semantics." msgstr "" -#: library/mailbox.rst:880 +#: library/mailbox.rst:905 msgid "Set the flags specified by *flags* and unset all others." msgstr "" -#: library/mailbox.rst:885 +#: library/mailbox.rst:910 msgid "" "Set the flag(s) specified by *flag* without changing other flags. To add " "more than one flag at a time, *flag* may be a string of more than one " @@ -1078,7 +1085,7 @@ msgid "" "experimental information rather than flags." msgstr "" -#: library/mailbox.rst:893 +#: library/mailbox.rst:918 msgid "" "Unset the flag(s) specified by *flag* without changing other flags. To " "remove more than one flag at a time, *flag* maybe a string of more than one " @@ -1086,30 +1093,30 @@ msgid "" "the current \"info\" is not modified." msgstr "" -#: library/mailbox.rst:901 +#: library/mailbox.rst:926 msgid "" "Return the delivery date of the message as a floating-point number " "representing seconds since the epoch." msgstr "" -#: library/mailbox.rst:907 +#: library/mailbox.rst:932 msgid "" "Set the delivery date of the message to *date*, a floating-point number " "representing seconds since the epoch." msgstr "" -#: library/mailbox.rst:913 +#: library/mailbox.rst:938 msgid "" "Return a string containing the \"info\" for a message. This is useful for " "accessing and modifying \"info\" that is experimental (i.e., not a list of " "flags)." msgstr "" -#: library/mailbox.rst:920 +#: library/mailbox.rst:945 msgid "Set \"info\" to *info*, which should be a string." msgstr "" -#: library/mailbox.rst:922 +#: library/mailbox.rst:947 msgid "" "When a :class:`!MaildirMessage` instance is created based upon an :class:" "`mboxMessage` or :class:`MMDFMessage` instance, the :mailheader:`Status` " @@ -1117,132 +1124,132 @@ msgid "" "take place:" msgstr "" -#: library/mailbox.rst:946 library/mailbox.rst:1068 library/mailbox.rst:1100 -#: library/mailbox.rst:1183 library/mailbox.rst:1212 library/mailbox.rst:1326 -#: library/mailbox.rst:1440 library/mailbox.rst:1472 library/mailbox.rst:1488 +#: library/mailbox.rst:971 library/mailbox.rst:1093 library/mailbox.rst:1125 +#: library/mailbox.rst:1208 library/mailbox.rst:1237 library/mailbox.rst:1351 +#: library/mailbox.rst:1465 library/mailbox.rst:1497 library/mailbox.rst:1513 msgid "Resulting state" msgstr "" -#: library/mailbox.rst:1198 library/mailbox.rst:1326 +#: library/mailbox.rst:1223 library/mailbox.rst:1351 msgid ":class:`mboxMessage` or :class:`MMDFMessage` state" msgstr "" -#: library/mailbox.rst:948 library/mailbox.rst:1072 library/mailbox.rst:1444 +#: library/mailbox.rst:973 library/mailbox.rst:1097 library/mailbox.rst:1469 msgid "\"cur\" subdirectory" msgstr "" -#: library/mailbox.rst:1072 library/mailbox.rst:1104 library/mailbox.rst:1444 -#: library/mailbox.rst:1476 library/mailbox.rst:1492 +#: library/mailbox.rst:1097 library/mailbox.rst:1129 library/mailbox.rst:1469 +#: library/mailbox.rst:1501 library/mailbox.rst:1517 msgid "O flag" msgstr "" -#: library/mailbox.rst:952 library/mailbox.rst:1091 library/mailbox.rst:1189 -#: library/mailbox.rst:1448 library/mailbox.rst:1496 +#: library/mailbox.rst:977 library/mailbox.rst:1116 library/mailbox.rst:1214 +#: library/mailbox.rst:1473 library/mailbox.rst:1521 msgid "F flag" msgstr "" -#: library/mailbox.rst:937 library/mailbox.rst:969 library/mailbox.rst:1078 -#: library/mailbox.rst:1187 library/mailbox.rst:1442 library/mailbox.rst:1490 +#: library/mailbox.rst:962 library/mailbox.rst:994 library/mailbox.rst:1103 +#: library/mailbox.rst:1212 library/mailbox.rst:1467 library/mailbox.rst:1515 msgid "R flag" msgstr "" -#: library/mailbox.rst:1078 library/mailbox.rst:1108 library/mailbox.rst:1203 -#: library/mailbox.rst:1450 library/mailbox.rst:1480 library/mailbox.rst:1498 +#: library/mailbox.rst:1103 library/mailbox.rst:1133 library/mailbox.rst:1228 +#: library/mailbox.rst:1475 library/mailbox.rst:1505 library/mailbox.rst:1523 msgid "A flag" msgstr "" -#: library/mailbox.rst:1070 library/mailbox.rst:1442 +#: library/mailbox.rst:1095 library/mailbox.rst:1467 msgid "S flag" msgstr "" -#: library/mailbox.rst:971 library/mailbox.rst:1313 library/mailbox.rst:1446 +#: library/mailbox.rst:996 library/mailbox.rst:1338 library/mailbox.rst:1471 msgid "T flag" msgstr "" -#: library/mailbox.rst:1074 library/mailbox.rst:1122 library/mailbox.rst:1446 -#: library/mailbox.rst:1494 +#: library/mailbox.rst:1099 library/mailbox.rst:1147 library/mailbox.rst:1471 +#: library/mailbox.rst:1519 msgid "D flag" msgstr "" -#: library/mailbox.rst:942 +#: library/mailbox.rst:967 msgid "" "When a :class:`!MaildirMessage` instance is created based upon an :class:" "`MHMessage` instance, the following conversions take place:" msgstr "" -#: library/mailbox.rst:1085 library/mailbox.rst:1457 +#: library/mailbox.rst:1110 library/mailbox.rst:1482 msgid ":class:`MHMessage` state" msgstr "" -#: library/mailbox.rst:1089 library/mailbox.rst:1201 library/mailbox.rst:1342 -#: library/mailbox.rst:1461 +#: library/mailbox.rst:1114 library/mailbox.rst:1226 library/mailbox.rst:1367 +#: library/mailbox.rst:1486 msgid "\"unseen\" sequence" msgstr "" -#: library/mailbox.rst:965 +#: library/mailbox.rst:990 msgid "\"cur\" subdirectory and S flag" msgstr "" -#: library/mailbox.rst:1087 library/mailbox.rst:1459 +#: library/mailbox.rst:1112 library/mailbox.rst:1484 msgid "no \"unseen\" sequence" msgstr "" -#: library/mailbox.rst:1091 library/mailbox.rst:1205 library/mailbox.rst:1463 +#: library/mailbox.rst:1116 library/mailbox.rst:1230 library/mailbox.rst:1488 msgid "\"flagged\" sequence" msgstr "" -#: library/mailbox.rst:1093 library/mailbox.rst:1203 library/mailbox.rst:1344 -#: library/mailbox.rst:1465 +#: library/mailbox.rst:1118 library/mailbox.rst:1228 library/mailbox.rst:1369 +#: library/mailbox.rst:1490 msgid "\"replied\" sequence" msgstr "" -#: library/mailbox.rst:957 +#: library/mailbox.rst:982 msgid "" "When a :class:`!MaildirMessage` instance is created based upon a :class:" "`BabylMessage` instance, the following conversions take place:" msgstr "" -#: library/mailbox.rst:1100 library/mailbox.rst:1472 +#: library/mailbox.rst:1125 library/mailbox.rst:1497 msgid ":class:`BabylMessage` state" msgstr "" -#: library/mailbox.rst:1104 library/mailbox.rst:1311 library/mailbox.rst:1342 -#: library/mailbox.rst:1476 +#: library/mailbox.rst:1129 library/mailbox.rst:1336 library/mailbox.rst:1367 +#: library/mailbox.rst:1501 msgid "\"unseen\" label" msgstr "" -#: library/mailbox.rst:1102 library/mailbox.rst:1474 +#: library/mailbox.rst:1127 library/mailbox.rst:1499 msgid "no \"unseen\" label" msgstr "" -#: library/mailbox.rst:1317 +#: library/mailbox.rst:1342 msgid "P flag" msgstr "" -#: library/mailbox.rst:967 +#: library/mailbox.rst:992 msgid "\"forwarded\" or \"resent\" label" msgstr "" -#: library/mailbox.rst:1108 library/mailbox.rst:1315 library/mailbox.rst:1344 -#: library/mailbox.rst:1480 +#: library/mailbox.rst:1133 library/mailbox.rst:1340 library/mailbox.rst:1369 +#: library/mailbox.rst:1505 msgid "\"answered\" label" msgstr "" -#: library/mailbox.rst:1106 library/mailbox.rst:1331 library/mailbox.rst:1478 +#: library/mailbox.rst:1131 library/mailbox.rst:1356 library/mailbox.rst:1503 msgid "\"deleted\" label" msgstr "" -#: library/mailbox.rst:978 +#: library/mailbox.rst:1003 msgid ":class:`!mboxMessage` objects" msgstr "" -#: library/mailbox.rst:983 +#: library/mailbox.rst:1008 msgid "" "A message with mbox-specific behaviors. Parameter *message* has the same " "meaning as with the :class:`Message` constructor." msgstr "" -#: library/mailbox.rst:986 +#: library/mailbox.rst:1011 msgid "" "Messages in an mbox mailbox are stored together in a single file. The " "sender's envelope address and the time of delivery are typically stored in a " @@ -1253,53 +1260,53 @@ msgid "" "typically stored in :mailheader:`Status` and :mailheader:`X-Status` headers." msgstr "" -#: library/mailbox.rst:994 +#: library/mailbox.rst:1019 msgid "Conventional flags for mbox messages are as follows:" msgstr "" -#: library/mailbox.rst:1372 +#: library/mailbox.rst:1397 msgid "O" msgstr "" -#: library/mailbox.rst:1372 +#: library/mailbox.rst:1397 msgid "Old" msgstr "" -#: library/mailbox.rst:1372 +#: library/mailbox.rst:1397 msgid "Previously detected by MUA" msgstr "" -#: library/mailbox.rst:1374 +#: library/mailbox.rst:1399 msgid "Deleted" msgstr "" -#: library/mailbox.rst:1378 +#: library/mailbox.rst:1403 msgid "A" msgstr "" -#: library/mailbox.rst:1378 +#: library/mailbox.rst:1403 msgid "Answered" msgstr "" -#: library/mailbox.rst:1381 +#: library/mailbox.rst:1406 msgid "" "The \"R\" and \"O\" flags are stored in the :mailheader:`Status` header, and " "the \"D\", \"F\", and \"A\" flags are stored in the :mailheader:`X-Status` " "header. The flags and headers typically appear in the order mentioned." msgstr "" -#: library/mailbox.rst:1014 +#: library/mailbox.rst:1039 msgid ":class:`!mboxMessage` instances offer the following methods:" msgstr "" -#: library/mailbox.rst:1391 +#: library/mailbox.rst:1416 msgid "" "Return a string representing the \"From \" line that marks the start of the " "message in an mbox mailbox. The leading \"From \" and the trailing newline " "are excluded." msgstr "" -#: library/mailbox.rst:1398 +#: library/mailbox.rst:1423 msgid "" "Set the \"From \" line to *from_*, which should be specified without a " "leading \"From \" or trailing newline. For convenience, *time_* may be " @@ -1309,7 +1316,7 @@ msgid "" "func:`time.gmtime`)." msgstr "" -#: library/mailbox.rst:1408 +#: library/mailbox.rst:1433 msgid "" "Return a string specifying the flags that are currently set. If the message " "complies with the conventional format, the result is the concatenation in " @@ -1317,28 +1324,28 @@ msgid "" "``'D'``, ``'F'``, and ``'A'``." msgstr "" -#: library/mailbox.rst:1416 +#: library/mailbox.rst:1441 msgid "" "Set the flags specified by *flags* and unset all others. Parameter *flags* " "should be the concatenation in any order of zero or more occurrences of each " "of ``'R'``, ``'O'``, ``'D'``, ``'F'``, and ``'A'``." msgstr "" -#: library/mailbox.rst:1423 +#: library/mailbox.rst:1448 msgid "" "Set the flag(s) specified by *flag* without changing other flags. To add " "more than one flag at a time, *flag* may be a string of more than one " "character." msgstr "" -#: library/mailbox.rst:1430 +#: library/mailbox.rst:1455 msgid "" "Unset the flag(s) specified by *flag* without changing other flags. To " "remove more than one flag at a time, *flag* maybe a string of more than one " "character." msgstr "" -#: library/mailbox.rst:1062 +#: library/mailbox.rst:1087 msgid "" "When an :class:`!mboxMessage` instance is created based upon a :class:" "`MaildirMessage` instance, a \"From \" line is generated based upon the :" @@ -1346,48 +1353,48 @@ msgid "" "conversions take place:" msgstr "" -#: library/mailbox.rst:1183 library/mailbox.rst:1440 +#: library/mailbox.rst:1208 library/mailbox.rst:1465 msgid ":class:`MaildirMessage` state" msgstr "" -#: library/mailbox.rst:1081 +#: library/mailbox.rst:1106 msgid "" "When an :class:`!mboxMessage` instance is created based upon an :class:" "`MHMessage` instance, the following conversions take place:" msgstr "" -#: library/mailbox.rst:1102 library/mailbox.rst:1474 +#: library/mailbox.rst:1127 library/mailbox.rst:1499 msgid "R flag and O flag" msgstr "" -#: library/mailbox.rst:1096 +#: library/mailbox.rst:1121 msgid "" "When an :class:`!mboxMessage` instance is created based upon a :class:" "`BabylMessage` instance, the following conversions take place:" msgstr "" -#: library/mailbox.rst:1111 +#: library/mailbox.rst:1136 msgid "" "When a :class:`!mboxMessage` instance is created based upon an :class:" "`MMDFMessage` instance, the \"From \" line is copied and all flags directly " "correspond:" msgstr "" -#: library/mailbox.rst:1116 +#: library/mailbox.rst:1141 msgid ":class:`MMDFMessage` state" msgstr "" -#: library/mailbox.rst:1133 +#: library/mailbox.rst:1158 msgid ":class:`!MHMessage` objects" msgstr "" -#: library/mailbox.rst:1138 +#: library/mailbox.rst:1163 msgid "" "A message with MH-specific behaviors. Parameter *message* has the same " "meaning as with the :class:`Message` constructor." msgstr "" -#: library/mailbox.rst:1141 +#: library/mailbox.rst:1166 msgid "" "MH messages do not support marks or flags in the traditional sense, but they " "do support sequences, which are logical groupings of arbitrary messages. " @@ -1396,57 +1403,57 @@ msgid "" "formats, as follows:" msgstr "" -#: library/mailbox.rst:1148 +#: library/mailbox.rst:1173 msgid "Sequence" msgstr "" -#: library/mailbox.rst:1237 +#: library/mailbox.rst:1262 msgid "unseen" msgstr "" -#: library/mailbox.rst:1237 +#: library/mailbox.rst:1262 msgid "Not read, but previously detected by MUA" msgstr "" -#: library/mailbox.rst:1152 +#: library/mailbox.rst:1177 msgid "replied" msgstr "" -#: library/mailbox.rst:1154 +#: library/mailbox.rst:1179 msgid "flagged" msgstr "" -#: library/mailbox.rst:1157 +#: library/mailbox.rst:1182 msgid ":class:`!MHMessage` instances offer the following methods:" msgstr "" -#: library/mailbox.rst:1162 +#: library/mailbox.rst:1187 msgid "Return a list of the names of sequences that include this message." msgstr "" -#: library/mailbox.rst:1167 +#: library/mailbox.rst:1192 msgid "Set the list of sequences that include this message." msgstr "" -#: library/mailbox.rst:1172 +#: library/mailbox.rst:1197 msgid "Add *sequence* to the list of sequences that include this message." msgstr "" -#: library/mailbox.rst:1177 +#: library/mailbox.rst:1202 msgid "Remove *sequence* from the list of sequences that include this message." msgstr "" -#: library/mailbox.rst:1179 +#: library/mailbox.rst:1204 msgid "" "When an :class:`!MHMessage` instance is created based upon a :class:" "`MaildirMessage` instance, the following conversions take place:" msgstr "" -#: library/mailbox.rst:1311 +#: library/mailbox.rst:1336 msgid "no S flag" msgstr "" -#: library/mailbox.rst:1192 +#: library/mailbox.rst:1217 msgid "" "When an :class:`!MHMessage` instance is created based upon an :class:" "`mboxMessage` or :class:`MMDFMessage` instance, the :mailheader:`Status` " @@ -1454,110 +1461,110 @@ msgid "" "take place:" msgstr "" -#: library/mailbox.rst:1329 +#: library/mailbox.rst:1354 msgid "no R flag" msgstr "" -#: library/mailbox.rst:1208 +#: library/mailbox.rst:1233 msgid "" "When an :class:`!MHMessage` instance is created based upon a :class:" "`BabylMessage` instance, the following conversions take place:" msgstr "" -#: library/mailbox.rst:1223 +#: library/mailbox.rst:1248 msgid ":class:`!BabylMessage` objects" msgstr "" -#: library/mailbox.rst:1228 +#: library/mailbox.rst:1253 msgid "" "A message with Babyl-specific behaviors. Parameter *message* has the same " "meaning as with the :class:`Message` constructor." msgstr "" -#: library/mailbox.rst:1231 +#: library/mailbox.rst:1256 msgid "" "Certain message labels, called :dfn:`attributes`, are defined by convention " "to have special meanings. The attributes are as follows:" msgstr "" -#: library/mailbox.rst:1235 +#: library/mailbox.rst:1260 msgid "Label" msgstr "" -#: library/mailbox.rst:1239 +#: library/mailbox.rst:1264 msgid "deleted" msgstr "" -#: library/mailbox.rst:1241 +#: library/mailbox.rst:1266 msgid "filed" msgstr "" -#: library/mailbox.rst:1241 +#: library/mailbox.rst:1266 msgid "Copied to another file or mailbox" msgstr "" -#: library/mailbox.rst:1243 +#: library/mailbox.rst:1268 msgid "answered" msgstr "" -#: library/mailbox.rst:1245 +#: library/mailbox.rst:1270 msgid "forwarded" msgstr "" -#: library/mailbox.rst:1245 +#: library/mailbox.rst:1270 msgid "Forwarded" msgstr "" -#: library/mailbox.rst:1247 +#: library/mailbox.rst:1272 msgid "edited" msgstr "" -#: library/mailbox.rst:1247 +#: library/mailbox.rst:1272 msgid "Modified by the user" msgstr "" -#: library/mailbox.rst:1249 +#: library/mailbox.rst:1274 msgid "resent" msgstr "" -#: library/mailbox.rst:1249 +#: library/mailbox.rst:1274 msgid "Resent" msgstr "" -#: library/mailbox.rst:1252 +#: library/mailbox.rst:1277 msgid "" "By default, Rmail displays only visible headers. The :class:`!BabylMessage` " "class, though, uses the original headers because they are more complete. " "Visible headers may be accessed explicitly if desired." msgstr "" -#: library/mailbox.rst:1256 +#: library/mailbox.rst:1281 msgid ":class:`!BabylMessage` instances offer the following methods:" msgstr "" -#: library/mailbox.rst:1261 +#: library/mailbox.rst:1286 msgid "Return a list of labels on the message." msgstr "" -#: library/mailbox.rst:1266 +#: library/mailbox.rst:1291 msgid "Set the list of labels on the message to *labels*." msgstr "" -#: library/mailbox.rst:1271 +#: library/mailbox.rst:1296 msgid "Add *label* to the list of labels on the message." msgstr "" -#: library/mailbox.rst:1276 +#: library/mailbox.rst:1301 msgid "Remove *label* from the list of labels on the message." msgstr "" -#: library/mailbox.rst:1281 +#: library/mailbox.rst:1306 msgid "" "Return a :class:`Message` instance whose headers are the message's visible " "headers and whose body is empty." msgstr "" -#: library/mailbox.rst:1287 +#: library/mailbox.rst:1312 msgid "" "Set the message's visible headers to be the same as the headers in " "*message*. Parameter *visible* should be a :class:`Message` instance, an :" @@ -1565,7 +1572,7 @@ msgid "" "(which should be open in text mode)." msgstr "" -#: library/mailbox.rst:1295 +#: library/mailbox.rst:1320 msgid "" "When a :class:`!BabylMessage` instance's original headers are modified, the " "visible headers are not automatically modified to correspond. This method " @@ -1578,17 +1585,17 @@ msgid "" "visible headers." msgstr "" -#: library/mailbox.rst:1305 +#: library/mailbox.rst:1330 msgid "" "When a :class:`!BabylMessage` instance is created based upon a :class:" "`MaildirMessage` instance, the following conversions take place:" msgstr "" -#: library/mailbox.rst:1317 +#: library/mailbox.rst:1342 msgid "\"forwarded\" label" msgstr "" -#: library/mailbox.rst:1320 +#: library/mailbox.rst:1345 msgid "" "When a :class:`!BabylMessage` instance is created based upon an :class:" "`mboxMessage` or :class:`MMDFMessage` instance, the :mailheader:`Status` " @@ -1596,23 +1603,23 @@ msgid "" "take place:" msgstr "" -#: library/mailbox.rst:1336 +#: library/mailbox.rst:1361 msgid "" "When a :class:`!BabylMessage` instance is created based upon an :class:" "`MHMessage` instance, the following conversions take place:" msgstr "" -#: library/mailbox.rst:1351 +#: library/mailbox.rst:1376 msgid ":class:`!MMDFMessage` objects" msgstr "" -#: library/mailbox.rst:1356 +#: library/mailbox.rst:1381 msgid "" "A message with MMDF-specific behaviors. Parameter *message* has the same " "meaning as with the :class:`Message` constructor." msgstr "" -#: library/mailbox.rst:1359 +#: library/mailbox.rst:1384 msgid "" "As with message in an mbox mailbox, MMDF messages are stored with the " "sender's address and the delivery date in an initial line beginning with " @@ -1620,19 +1627,19 @@ msgid "" "typically stored in :mailheader:`Status` and :mailheader:`X-Status` headers." msgstr "" -#: library/mailbox.rst:1364 +#: library/mailbox.rst:1389 msgid "" "Conventional flags for MMDF messages are identical to those of mbox message " "and are as follows:" msgstr "" -#: library/mailbox.rst:1385 +#: library/mailbox.rst:1410 msgid "" ":class:`!MMDFMessage` instances offer the following methods, which are " "identical to those offered by :class:`mboxMessage`:" msgstr "" -#: library/mailbox.rst:1434 +#: library/mailbox.rst:1459 msgid "" "When an :class:`!MMDFMessage` instance is created based upon a :class:" "`MaildirMessage` instance, a \"From \" line is generated based upon the :" @@ -1640,43 +1647,43 @@ msgid "" "conversions take place:" msgstr "" -#: library/mailbox.rst:1453 +#: library/mailbox.rst:1478 msgid "" "When an :class:`!MMDFMessage` instance is created based upon an :class:" "`MHMessage` instance, the following conversions take place:" msgstr "" -#: library/mailbox.rst:1468 +#: library/mailbox.rst:1493 msgid "" "When an :class:`!MMDFMessage` instance is created based upon a :class:" "`BabylMessage` instance, the following conversions take place:" msgstr "" -#: library/mailbox.rst:1483 +#: library/mailbox.rst:1508 msgid "" "When an :class:`!MMDFMessage` instance is created based upon an :class:" "`mboxMessage` instance, the \"From \" line is copied and all flags directly " "correspond:" msgstr "" -#: library/mailbox.rst:1488 +#: library/mailbox.rst:1513 msgid ":class:`mboxMessage` state" msgstr "" -#: library/mailbox.rst:1503 +#: library/mailbox.rst:1528 msgid "Exceptions" msgstr "" -#: library/mailbox.rst:1505 +#: library/mailbox.rst:1530 msgid "" "The following exception classes are defined in the :mod:`!mailbox` module:" msgstr "" -#: library/mailbox.rst:1510 +#: library/mailbox.rst:1535 msgid "The based class for all other module-specific exceptions." msgstr "" -#: library/mailbox.rst:1515 +#: library/mailbox.rst:1540 msgid "" "Raised when a mailbox is expected but is not found, such as when " "instantiating a :class:`Mailbox` subclass with a path that does not exist " @@ -1684,13 +1691,13 @@ msgid "" "that does not exist." msgstr "" -#: library/mailbox.rst:1522 +#: library/mailbox.rst:1547 msgid "" "Raised when a mailbox is not empty but is expected to be, such as when " "deleting a folder that contains messages." msgstr "" -#: library/mailbox.rst:1528 +#: library/mailbox.rst:1553 msgid "" "Raised when some mailbox-related condition beyond the control of the program " "causes it to be unable to proceed, such as when failing to acquire a lock " @@ -1698,23 +1705,23 @@ msgid "" "name already exists." msgstr "" -#: library/mailbox.rst:1536 +#: library/mailbox.rst:1561 msgid "" "Raised when the data in a file cannot be parsed, such as when an :class:`MH` " "instance attempts to read a corrupted :file:`.mh_sequences` file." msgstr "" -#: library/mailbox.rst:1543 +#: library/mailbox.rst:1568 msgid "Examples" msgstr "" -#: library/mailbox.rst:1545 +#: library/mailbox.rst:1570 msgid "" "A simple example of printing the subjects of all messages in a mailbox that " "seem interesting::" msgstr "" -#: library/mailbox.rst:1548 +#: library/mailbox.rst:1573 msgid "" "import mailbox\n" "for message in mailbox.mbox('~/mbox'):\n" @@ -1723,13 +1730,13 @@ msgid "" " print(subject)" msgstr "" -#: library/mailbox.rst:1554 +#: library/mailbox.rst:1579 msgid "" "To copy all mail from a Babyl mailbox to an MH mailbox, converting all of " "the format-specific information that can be converted::" msgstr "" -#: library/mailbox.rst:1557 +#: library/mailbox.rst:1582 msgid "" "import mailbox\n" "destination = mailbox.MH('~/Mail')\n" @@ -1740,7 +1747,7 @@ msgid "" "destination.unlock()" msgstr "" -#: library/mailbox.rst:1565 +#: library/mailbox.rst:1590 msgid "" "This example sorts mail from several mailing lists into different mailboxes, " "being careful to avoid mail corruption due to concurrent modification by " @@ -1748,7 +1755,7 @@ msgid "" "termination due to malformed messages in the mailbox::" msgstr "" -#: library/mailbox.rst:1570 +#: library/mailbox.rst:1595 msgid "" "import mailbox\n" "import email.errors\n" diff --git a/library/math.po b/library/math.po index b3113cb90..d936ea5f1 100644 --- a/library/math.po +++ b/library/math.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2023-03-31 00:00+0300\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -95,7 +95,7 @@ msgstr "" "Binom katsayısı olarak da adlandırılır. Çünkü ``(1 + x)ⁿ`` polinom " "açılımındaki k. terimin katsayısına eşittir." -#: library/math.rst:258 +#: library/math.rst:261 msgid "" "Raises :exc:`TypeError` if either of the arguments are not integers. Raises :" "exc:`ValueError` if either of the arguments are negative." @@ -143,19 +143,20 @@ msgstr "" "vermelidir." #: library/math.rst:87 +#, fuzzy msgid "" -"Return ``fmod(x, y)``, as defined by the platform C library. Note that the " -"Python expression ``x % y`` may not return the same result. The intent of " -"the C standard is that ``fmod(x, y)`` be exactly (mathematically; to " -"infinite precision) equal to ``x - n*y`` for some integer *n* such that the " -"result has the same sign as *x* and magnitude less than ``abs(y)``. " -"Python's ``x % y`` returns a result with the sign of *y* instead, and may " -"not be exactly computable for float arguments. For example, ``fmod(-1e-100, " -"1e100)`` is ``-1e-100``, but the result of Python's ``-1e-100 % 1e100`` is " -"``1e100-1e-100``, which cannot be represented exactly as a float, and rounds " -"to the surprising ``1e100``. For this reason, function :func:`fmod` is " -"generally preferred when working with floats, while Python's ``x % y`` is " -"preferred when working with integers." +"Return the floating-point remainder of ``x / y``, as defined by the platform " +"C library function ``fmod(x, y)``. Note that the Python expression ``x % y`` " +"may not return the same result. The intent of the C standard is that " +"``fmod(x, y)`` be exactly (mathematically; to infinite precision) equal to " +"``x - n*y`` for some integer *n* such that the result has the same sign as " +"*x* and magnitude less than ``abs(y)``. Python's ``x % y`` returns a result " +"with the sign of *y* instead, and may not be exactly computable for float " +"arguments. For example, ``fmod(-1e-100, 1e100)`` is ``-1e-100``, but the " +"result of Python's ``-1e-100 % 1e100`` is ``1e100-1e-100``, which cannot be " +"represented exactly as a float, and rounds to the surprising ``1e100``. For " +"this reason, function :func:`fmod` is generally preferred when working with " +"floats, while Python's ``x % y`` is preferred when working with integers." msgstr "" "Platform C kütüphanesi tarafından tanımlandığı gibi ``fmod(x, y)`` döndürür. " "Python ifadesinin ``x % y`` aynı sonucu döndürmeyebileceğini unutmayın. C " @@ -171,7 +172,7 @@ msgstr "" "floatlarla çalışırken genellikle :func:`fmod` fonksiyonu tercih edilirken, " "tamsayılarla çalışırken Python'un ``x % y`` fonksiyonu tercih edilir." -#: library/math.rst:102 +#: library/math.rst:103 msgid "" "Return the mantissa and exponent of *x* as the pair ``(m, e)``. *m* is a " "float and *e* is an integer such that ``x == m * 2**e`` exactly. If *x* is " @@ -184,7 +185,7 @@ msgstr "" "abs(m) < 1`` döndürür. Bu, bir ondalıklı sayının iç temsilini taşınabilir " "bir şekilde \"ayırmak\" için kullanılır." -#: library/math.rst:110 +#: library/math.rst:111 #, fuzzy msgid "" "Return an accurate floating-point sum of values in the iterable. Avoids " @@ -193,7 +194,7 @@ msgstr "" "Iterable içindeki değerlerin doğru bir kayan noktalı toplamını döndür. " "Birden fazla ara toplamı takip ederek hassasiyet kaybını önler:" -#: library/math.rst:113 +#: library/math.rst:114 msgid "" "The algorithm's accuracy depends on IEEE-754 arithmetic guarantees and the " "typical case where the rounding mode is half-even. On some non-Windows " @@ -207,7 +208,7 @@ msgstr "" "toplamı çift yuvarlayarak en az anlamlı bitinde eksik olmasına neden " "olabilir." -#: library/math.rst:119 +#: library/math.rst:120 #, fuzzy msgid "" "For further discussion and two alternative approaches, see the `ASPN " @@ -219,7 +220,7 @@ msgstr "" "for accurate floating point summation `_ sayfasına bakın." -#: library/math.rst:126 +#: library/math.rst:127 msgid "" "Return the greatest common divisor of the specified integer arguments. If " "any of the arguments is nonzero, then the returned value is the largest " @@ -233,7 +234,7 @@ msgstr "" "tamsayıdır. Tüm bağımsız değişkenler sıfırsa, döndürülen değer ``0`` olur. " "bağımsız değişkenler olmadan ``gcd()`` fonksiyonu ``0`` değerini döndürür." -#: library/math.rst:134 +#: library/math.rst:135 msgid "" "Added support for an arbitrary number of arguments. Formerly, only two " "arguments were supported." @@ -241,7 +242,7 @@ msgstr "" "İsteğe bağlı sayıda bağımsız değişken için destek eklendi. Önceden sadece " "iki argüman destekleniyordu." -#: library/math.rst:141 +#: library/math.rst:142 msgid "" "Return ``True`` if the values *a* and *b* are close to each other and " "``False`` otherwise." @@ -249,21 +250,25 @@ msgstr "" "Eğer *a* ve *b* değerleri birbirine yakınsa ``True``, değilse ``False`` " "döndürür." -#: library/math.rst:144 +#: library/math.rst:145 +#, fuzzy msgid "" "Whether or not two values are considered close is determined according to " -"given absolute and relative tolerances." +"given absolute and relative tolerances. If no errors occur, the result will " +"be: ``abs(a-b) <= max(rel_tol * max(abs(a), abs(b)), abs_tol)``." msgstr "" "İki değerin yakın kabul edilip edilmeyeceği, verilen mutlak ve göreceli " "toleranslara göre belirlenir." -#: library/math.rst:147 +#: library/math.rst:149 +#, fuzzy msgid "" "*rel_tol* is the relative tolerance -- it is the maximum allowed difference " "between *a* and *b*, relative to the larger absolute value of *a* or *b*. " "For example, to set a tolerance of 5%, pass ``rel_tol=0.05``. The default " "tolerance is ``1e-09``, which assures that the two values are the same " -"within about 9 decimal digits. *rel_tol* must be greater than zero." +"within about 9 decimal digits. *rel_tol* must be nonnegative and less than " +"``1.0``." msgstr "" "*rel_tol* göreli toleranstır - *a* veya *b*'nin daha büyük mutlak değerine " "göre *a* ve *b* arasında izin verilen maksimum farktır. Örneğin, %5'lik bir " @@ -271,23 +276,16 @@ msgstr "" "tolerans, iki değerin yaklaşık 9 ondalık basamak içinde aynı olmasını " "sağlayan ``1e-09`` değeridir. *rel_tol* sıfırdan büyük olmalıdır." -#: library/math.rst:153 -msgid "" -"*abs_tol* is the minimum absolute tolerance -- useful for comparisons near " -"zero. *abs_tol* must be at least zero." -msgstr "" -"*abs_tol* minimum mutlak toleranstır -- sıfıra yakın karşılaştırmalar için " -"kullanışlıdır. *abs_tol* en az sıfır olmalıdır." - #: library/math.rst:156 msgid "" -"If no errors occur, the result will be: ``abs(a-b) <= max(rel_tol * " -"max(abs(a), abs(b)), abs_tol)``." +"*abs_tol* is the absolute tolerance; it defaults to ``0.0`` and it must be " +"nonnegative. When comparing ``x`` to ``0.0``, ``isclose(x, 0)`` is computed " +"as ``abs(x) <= rel_tol * abs(x)``, which is ``False`` for any nonzero ``x`` " +"and *rel_tol* less than ``1.0``. So add an appropriate positive *abs_tol* " +"argument to the call." msgstr "" -"Herhangi bir hata oluşmazsa, sonuç şöyle olacaktır: ``abs(a-b) <= " -"max(rel_tol * max(abs(a), abs(b)), abs_tol)``." -#: library/math.rst:159 +#: library/math.rst:162 msgid "" "The IEEE 754 special values of ``NaN``, ``inf``, and ``-inf`` will be " "handled according to IEEE rules. Specifically, ``NaN`` is not considered " @@ -299,11 +297,11 @@ msgstr "" "hiçbir değere yakın kabul edilmez. ``inf`` ve ``-inf`` yalnızca kendilerine " "yakın kabul edilir." -#: library/math.rst:168 +#: library/math.rst:171 msgid ":pep:`485` -- A function for testing approximate equality" msgstr ":pep:`485` -- Yaklaşık eşitliği test etmek için bir fonksiyon" -#: library/math.rst:173 +#: library/math.rst:176 msgid "" "Return ``True`` if *x* is neither an infinity nor a NaN, and ``False`` " "otherwise. (Note that ``0.0`` *is* considered finite.)" @@ -311,7 +309,7 @@ msgstr "" "Eğer *x* sonsuz bir değer ya da NaN ise ``True``, aksi takdirde ``False`` " "döndürür. (``0.0`` *sonlu* olarak kabul edilir.)" -#: library/math.rst:181 +#: library/math.rst:184 msgid "" "Return ``True`` if *x* is a positive or negative infinity, and ``False`` " "otherwise." @@ -319,13 +317,13 @@ msgstr "" "Eğer *x* pozitif veya negatif bir sonsuz ise ``True``, aksi takdirde " "``False`` döndürür." -#: library/math.rst:187 +#: library/math.rst:190 msgid "" "Return ``True`` if *x* is a NaN (not a number), and ``False`` otherwise." msgstr "" "Eğer *x* bir NaN (sayı değil) ise ``True``, aksi takdirde ``False`` döndürür." -#: library/math.rst:192 +#: library/math.rst:195 msgid "" "Return the integer square root of the nonnegative integer *n*. This is the " "floor of the exact square root of *n*, or equivalently the greatest integer " @@ -335,7 +333,7 @@ msgstr "" "karekökünün tabanıdır veya eşdeğer olarak *a*\\ ² |nbsp| ≤ |nbsp| *n* olacak " "şekilde en büyük *a* tamsayısıdır." -#: library/math.rst:196 +#: library/math.rst:199 msgid "" "For some applications, it may be more convenient to have the least integer " "*a* such that *n* |nbsp| ≤ |nbsp| *a*\\ ², or in other words the ceiling of " @@ -347,7 +345,7 @@ msgstr "" "sahip olmak daha uygun olabilir. Pozitif *n* için bu, ``a = 1 + isqrt(n - " "1)`` kullanılarak hesaplanabilir." -#: library/math.rst:206 +#: library/math.rst:209 msgid "" "Return the least common multiple of the specified integer arguments. If all " "arguments are nonzero, then the returned value is the smallest positive " @@ -361,14 +359,14 @@ msgstr "" "değişkenlerden herhangi biri sıfırsa, döndürülen değer ``0`` olur. Bağımsız " "değişkenler olmadan ``lcm()`` işlevi ``1`` değerini döndürür." -#: library/math.rst:217 +#: library/math.rst:220 msgid "" "Return ``x * (2**i)``. This is essentially the inverse of function :func:" "`frexp`." msgstr "" "``x * (2**i)`` döndürür. Bu aslında :func:`frexp` fonksiyonunun tersidir." -#: library/math.rst:223 +#: library/math.rst:226 msgid "" "Return the fractional and integer parts of *x*. Both results carry the sign " "of *x* and are floats." @@ -376,47 +374,47 @@ msgstr "" "x*'in kesirli ve tamsayı kısımlarını döndürür. Her iki sonuç da *x* " "işaretini taşır ve kayan değerdir." -#: library/math.rst:229 +#: library/math.rst:232 #, fuzzy msgid "Return the floating-point value *steps* steps after *x* towards *y*." msgstr "" "x* değerinden sonra *y* değerine doğru bir sonraki kayan noktalı değeri " "döndürür." -#: library/math.rst:231 +#: library/math.rst:234 #, fuzzy msgid "If *x* is equal to *y*, return *y*, unless *steps* is zero." msgstr "Eğer *x*, *y*'ye eşitse, *y* değerini döndürür." -#: library/math.rst:233 +#: library/math.rst:236 msgid "Examples:" msgstr "Örnekler:" -#: library/math.rst:235 +#: library/math.rst:238 msgid "``math.nextafter(x, math.inf)`` goes up: towards positive infinity." msgstr "``math.nextafter(x, math.inf)`` yukarı gider: pozitif sonsuza doğru." -#: library/math.rst:236 +#: library/math.rst:239 msgid "``math.nextafter(x, -math.inf)`` goes down: towards minus infinity." msgstr "``math.nextafter(x, -math.inf)`` aşağı iner: eksi sonsuza doğru." -#: library/math.rst:237 +#: library/math.rst:240 msgid "``math.nextafter(x, 0.0)`` goes towards zero." msgstr "``math.nextafter(x, 0.0)`` sıfıra doğru gider." -#: library/math.rst:238 +#: library/math.rst:241 msgid "``math.nextafter(x, math.copysign(math.inf, x))`` goes away from zero." msgstr "``math.nextafter(x, math.copysign(math.inf, x))`` sıfırdan uzaklaşır." -#: library/math.rst:240 +#: library/math.rst:243 msgid "See also :func:`math.ulp`." msgstr "Ayrıca bakınız :func:`math.ulp`." -#: library/math.rst:244 +#: library/math.rst:247 msgid "Added the *steps* argument." msgstr "" -#: library/math.rst:249 +#: library/math.rst:252 msgid "" "Return the number of ways to choose *k* items from *n* items without " "repetition and with order." @@ -424,7 +422,7 @@ msgstr "" "Tekrarlama olmadan ve sırayla *n* öğe arasından *k* öğeyi seçmenin " "yollarının sayısını döndürür." -#: library/math.rst:252 +#: library/math.rst:255 msgid "" "Evaluates to ``n! / (n - k)!`` when ``k <= n`` and evaluates to zero when " "``k > n``." @@ -432,7 +430,7 @@ msgstr "" "``n! / (k! * (n - k)!)`` değerini ``k <= n`` olduğunda verir ve ``k > n`` " "olduğunda sıfır olarak değerlendirir." -#: library/math.rst:255 +#: library/math.rst:258 #, fuzzy msgid "" "If *k* is not specified or is ``None``, then *k* defaults to *n* and the " @@ -441,7 +439,7 @@ msgstr "" "Eğer *k* belirtilmemişse veya None ise, *k* varsayılan olarak *n* değerini " "alır ve fonksiyon ``n!`` döndürür." -#: library/math.rst:266 +#: library/math.rst:269 msgid "" "Calculate the product of all the elements in the input *iterable*. The " "default *start* value for the product is ``1``." @@ -449,7 +447,7 @@ msgstr "" "Girdi *iterable* içindeki tüm elemanların çarpımını hesaplar. Çarpım için " "varsayılan *başlangıç* değeri ``1`` 'dir." -#: library/math.rst:269 +#: library/math.rst:272 msgid "" "When the iterable is empty, return the start value. This function is " "intended specifically for use with numeric values and may reject non-numeric " @@ -459,7 +457,7 @@ msgstr "" "özellikle sayısal değerlerle kullanılmak üzere tasarlanmıştır ve sayısal " "olmayan türleri reddedebilir." -#: library/math.rst:278 +#: library/math.rst:281 msgid "" "Return the IEEE 754-style remainder of *x* with respect to *y*. For finite " "*x* and finite nonzero *y*, this is the difference ``x - n*y``, where ``n`` " @@ -475,7 +473,7 @@ msgstr "" "Kalan ``r = remainder(x, y)`` böylece her zaman ``abs(r) <= 0.5 * abs(y)`` " "sağlar." -#: library/math.rst:285 +#: library/math.rst:288 msgid "" "Special cases follow IEEE 754: in particular, ``remainder(x, math.inf)`` is " "*x* for any finite *x*, and ``remainder(x, 0)`` and ``remainder(math.inf, " @@ -488,7 +486,7 @@ msgstr "" "`ValueError` yükseltir. Eğer kalan işleminin sonucu sıfır ise, bu sıfır *x* " "ile aynı işarete sahip olacaktır." -#: library/math.rst:291 +#: library/math.rst:294 #, fuzzy msgid "" "On platforms using IEEE 754 binary floating point, the result of this " @@ -497,29 +495,29 @@ msgstr "" "IEEE 754 ikili kayan nokta kullanan platformlarda, bu işlemin sonucu her " "zaman tam olarak gösterilebilir: yuvarlama hatası oluşmaz." -#: library/math.rst:299 +#: library/math.rst:302 msgid "Return the sum of products of values from two iterables *p* and *q*." msgstr "" -#: library/math.rst:301 +#: library/math.rst:304 msgid "Raises :exc:`ValueError` if the inputs do not have the same length." msgstr "" -#: library/math.rst:498 +#: library/math.rst:501 msgid "Roughly equivalent to::" msgstr "Kabaca şuna eşdeğerdir::" -#: library/math.rst:305 +#: library/math.rst:308 msgid "sum(itertools.starmap(operator.mul, zip(p, q, strict=True)))" msgstr "" -#: library/math.rst:307 +#: library/math.rst:310 msgid "" "For float and mixed int/float inputs, the intermediate products and sums are " "computed with extended precision." msgstr "" -#: library/math.rst:315 +#: library/math.rst:318 msgid "" "Return *x* with the fractional part removed, leaving the integer part. This " "rounds toward 0: ``trunc()`` is equivalent to :func:`floor` for positive " @@ -533,24 +531,24 @@ msgstr "" "Integral` değeri döndürmesi gereken :meth:`x.__trunc__ `'a " "delege eder." -#: library/math.rst:323 +#: library/math.rst:326 msgid "Return the value of the least significant bit of the float *x*:" msgstr "float *x* öğesinin en az anlamlı bitinin değerini döndürür:" -#: library/math.rst:325 +#: library/math.rst:328 msgid "If *x* is a NaN (not a number), return *x*." msgstr "" "Eğer *x* bir NaN (sayı değil) ise ``True``, aksi takdirde ``False`` döndürür." -#: library/math.rst:326 +#: library/math.rst:329 msgid "If *x* is negative, return ``ulp(-x)``." msgstr "Eğer *x* negatif ise, ``ulp(-x)`` döndürür." -#: library/math.rst:327 +#: library/math.rst:330 msgid "If *x* is a positive infinity, return *x*." msgstr "Eğer *x* pozitif bir sonsuzluk ise, *x* değerini döndürür." -#: library/math.rst:328 +#: library/math.rst:331 msgid "" "If *x* is equal to zero, return the smallest positive *denormalized* " "representable float (smaller than the minimum positive *normalized* float, :" @@ -560,7 +558,7 @@ msgstr "" "floatı döndürür (minimum pozitif *normalize* floattan daha küçük, :data:`sys." "float_info.min `)." -#: library/math.rst:331 +#: library/math.rst:334 msgid "" "If *x* is equal to the largest positive representable float, return the " "value of the least significant bit of *x*, such that the first float smaller " @@ -570,7 +568,7 @@ msgstr "" "*x* değerinden küçük olan ilk float değeri ``x - ulp(x)`` olacak şekilde *x* " "değerinin en küçük anlamlı bitinin değerini döndürür." -#: library/math.rst:334 +#: library/math.rst:337 msgid "" "Otherwise (*x* is a positive finite number), return the value of the least " "significant bit of *x*, such that the first float bigger than *x* is ``x + " @@ -579,11 +577,11 @@ msgstr "" "Aksi takdirde (*x* pozitif bir sonlu sayıdır), *x*'in en az anlamlı bitinin " "değerini döndürür, öyle ki *x*'ten büyük ilk float ``x + ulp(x)`` olur." -#: library/math.rst:338 +#: library/math.rst:341 msgid "ULP stands for \"Unit in the Last Place\"." msgstr "ULP, \"Son Yerdeki Birim\" anlamına gelmektedir." -#: library/math.rst:340 +#: library/math.rst:343 msgid "" "See also :func:`math.nextafter` and :data:`sys.float_info.epsilon `." @@ -591,7 +589,7 @@ msgstr "" "Ayrıca bakınız :func:`math.nextafter` ve :data:`sys.float_info.epsilon `." -#: library/math.rst:346 +#: library/math.rst:349 msgid "" "Note that :func:`frexp` and :func:`modf` have a different call/return " "pattern than their C equivalents: they take a single argument and return a " @@ -603,7 +601,7 @@ msgstr "" "dönüş değerlerini bir 'çıktı parametresi' aracılığıyla döndürmek yerine bir " "çift değer döndürürler (Python'da böyle bir şey yoktur)." -#: library/math.rst:351 +#: library/math.rst:354 msgid "" "For the :func:`ceil`, :func:`floor`, and :func:`modf` functions, note that " "*all* floating-point numbers of sufficiently large magnitude are exact " @@ -618,15 +616,15 @@ msgstr "" "``abs(x) >= 2**52`` olan herhangi bir *x* kayan noktalı sayısı zorunlu " "olarak kesirli bitlere sahip değildir." -#: library/math.rst:359 +#: library/math.rst:362 msgid "Power and logarithmic functions" msgstr "Güç ve logaritmik fonksiyonlar" -#: library/math.rst:363 +#: library/math.rst:366 msgid "Return the cube root of *x*." msgstr "x*'in küp kökünü döndürür." -#: library/math.rst:370 +#: library/math.rst:373 msgid "" "Return *e* raised to the power *x*, where *e* = 2.718281... is the base of " "natural logarithms. This is usually more accurate than ``math.e ** x`` or " @@ -636,11 +634,11 @@ msgstr "" "doğal logaritma tabanıdır. Bu genellikle ``math.e ** x`` veya ``pow(math.e, " "x)`` değerinden daha doğrudur." -#: library/math.rst:377 +#: library/math.rst:380 msgid "Return *2* raised to the power *x*." msgstr "*2*'nin *x* kuvvetine yükseltilmiş halini döndürür." -#: library/math.rst:384 +#: library/math.rst:387 #, fuzzy msgid "" "Return *e* raised to the power *x*, minus 1. Here *e* is the base of " @@ -655,13 +653,13 @@ msgstr "" "Loss_of_significance>`_\\ neden olabilir; :func:`expm1` fonksiyonu bu " "miktarı tam hassasiyetle hesaplamak için bir yol sağlar::" -#: library/math.rst:401 +#: library/math.rst:404 msgid "With one argument, return the natural logarithm of *x* (to base *e*)." msgstr "" "Bir bağımsız değişkenle, *x*'in doğal logaritmasını döndürür (*e* tabanına " "göre)." -#: library/math.rst:403 +#: library/math.rst:406 msgid "" "With two arguments, return the logarithm of *x* to the given *base*, " "calculated as ``log(x)/log(base)``." @@ -669,7 +667,7 @@ msgstr "" "İki bağımsız değişkenle, ``log(x)/log(taban)`` şeklinde hesaplanan *x* " "değerinin verilen *taban* değerine göre logaritmasını döndürür." -#: library/math.rst:409 +#: library/math.rst:412 msgid "" "Return the natural logarithm of *1+x* (base *e*). The result is calculated " "in a way which is accurate for *x* near zero." @@ -677,7 +675,7 @@ msgstr "" "*1+x*'in (*e* tabanı) doğal logaritmasını döndürür. Sonuç, sıfıra yakın *x* " "için doğru olacak şekilde hesaplanır." -#: library/math.rst:415 +#: library/math.rst:418 msgid "" "Return the base-2 logarithm of *x*. This is usually more accurate than " "``log(x, 2)``." @@ -685,7 +683,7 @@ msgstr "" "x*'in 2 taban logaritmasını döndürür. Bu genellikle ``log(x, 2)`` değerinden " "daha doğrudur." -#: library/math.rst:422 +#: library/math.rst:425 msgid "" ":meth:`int.bit_length` returns the number of bits necessary to represent an " "integer in binary, excluding the sign and leading zeros." @@ -693,7 +691,7 @@ msgstr "" ":meth:`int.bit_length`, işaret ve baştaki sıfırlar hariç olmak üzere, bir " "tamsayıyı ikili olarak temsil etmek için gerekli bit sayısını döndürür." -#: library/math.rst:428 +#: library/math.rst:431 msgid "" "Return the base-10 logarithm of *x*. This is usually more accurate than " "``log(x, 10)``." @@ -701,7 +699,7 @@ msgstr "" "*x* 'in 10 tabanında logaritmasını döndürür. Bu genellikle ``log(x, 10)`` " "'dan daha doğrudur." -#: library/math.rst:434 +#: library/math.rst:437 msgid "" "Return ``x`` raised to the power ``y``. Exceptional cases follow the IEEE " "754 standard as far as possible. In particular, ``pow(1.0, x)`` and " @@ -715,7 +713,7 @@ msgstr "" "Eğer hem ``x`` hem de ``y`` sonlu ise, ``x`` negatif ise ve ``y`` bir " "tamsayı değilse, ``pow(x, y)`` tanımsızdır ve :exc:`ValueError` yükseltir." -#: library/math.rst:441 +#: library/math.rst:444 msgid "" "Unlike the built-in ``**`` operator, :func:`math.pow` converts both its " "arguments to type :class:`float`. Use ``**`` or the built-in :func:`pow` " @@ -725,7 +723,7 @@ msgstr "" "class:`float` türüne dönüştürür. Tam sayı kuvvetlerini hesaplamak için " "``**`` veya yerleşik :func:`pow` fonksiyonunu kullanın." -#: library/math.rst:445 +#: library/math.rst:448 msgid "" "The special cases ``pow(0.0, -inf)`` and ``pow(-0.0, -inf)`` were changed to " "return ``inf`` instead of raising :exc:`ValueError`, for consistency with " @@ -735,15 +733,15 @@ msgstr "" "tutarlılık için :exc:`ValueError`` yükseltmek yerine ``inf`` döndürmek üzere " "değiştirildi." -#: library/math.rst:453 +#: library/math.rst:456 msgid "Return the square root of *x*." msgstr "*x*'in karekökünü döndürür." -#: library/math.rst:457 +#: library/math.rst:460 msgid "Trigonometric functions" msgstr "Trigonometrik fonksiyonlar" -#: library/math.rst:461 +#: library/math.rst:464 msgid "" "Return the arc cosine of *x*, in radians. The result is between ``0`` and " "``pi``." @@ -751,7 +749,7 @@ msgstr "" "Radyan cinsinden *x*'in yay kosinüsünü döndürür. Sonuç ``0`` ile ``pi`` " "arasındadır." -#: library/math.rst:467 +#: library/math.rst:470 msgid "" "Return the arc sine of *x*, in radians. The result is between ``-pi/2`` and " "``pi/2``." @@ -759,7 +757,7 @@ msgstr "" "Radyan cinsinden *x*'in yay sinüsünü döndürür. Sonuç ``-pi/2`` ile ``pi/2`` " "arasındadır." -#: library/math.rst:473 +#: library/math.rst:476 msgid "" "Return the arc tangent of *x*, in radians. The result is between ``-pi/2`` " "and ``pi/2``." @@ -767,7 +765,7 @@ msgstr "" "Radyan cinsinden *x*'in yay tanjantını döndürür. Sonuç ``-pi/2`` ile " "``pi/2`` arasındadır." -#: library/math.rst:479 +#: library/math.rst:482 msgid "" "Return ``atan(y / x)``, in radians. The result is between ``-pi`` and " "``pi``. The vector in the plane from the origin to point ``(x, y)`` makes " @@ -783,11 +781,11 @@ msgstr "" "hesaplayabilir. Örneğin, ``atan(1)`` ve ``atan2(1, 1)`` her ikisi de " "``pi/4`` 'tür, ancak ``atan2(-1, -1)`` ise ``-3*pi/4`` 'tür." -#: library/math.rst:489 +#: library/math.rst:492 msgid "Return the cosine of *x* radians." msgstr "*x* radyanın kosinüsünü döndürür." -#: library/math.rst:494 +#: library/math.rst:497 msgid "" "Return the Euclidean distance between two points *p* and *q*, each given as " "a sequence (or iterable) of coordinates. The two points must have the same " @@ -797,11 +795,11 @@ msgstr "" "*q* noktası arasındaki Öklid mesafesini döndürür. İki nokta aynı boyuta " "sahip olmalıdır." -#: library/math.rst:500 +#: library/math.rst:503 msgid "sqrt(sum((px - qx) ** 2.0 for px, qx in zip(p, q)))" msgstr "" -#: library/math.rst:507 +#: library/math.rst:510 msgid "" "Return the Euclidean norm, ``sqrt(sum(x**2 for x in coordinates))``. This is " "the length of the vector from the origin to the point given by the " @@ -810,7 +808,7 @@ msgstr "" "Öklid normunu döndürür, ``sqrt(sum(x**2 for x in coordinates))``. Bu, " "vektörün orijinden koordinatlar tarafından verilen noktaya olan uzunluğudur." -#: library/math.rst:511 +#: library/math.rst:514 msgid "" "For a two dimensional point ``(x, y)``, this is equivalent to computing the " "hypotenuse of a right triangle using the Pythagorean theorem, ``sqrt(x*x + " @@ -819,7 +817,7 @@ msgstr "" "İki boyutlu bir ``(x, y)`` noktası için bu, Pisagor teoremi ``sqrt(x*x + " "y*y)`` kullanılarak bir dik üçgenin hipotenüsünün hesaplanmasına eşdeğerdir." -#: library/math.rst:515 +#: library/math.rst:518 msgid "" "Added support for n-dimensional points. Formerly, only the two dimensional " "case was supported." @@ -827,7 +825,7 @@ msgstr "" "n boyutlu noktalar için destek eklendi. Önceden sadece iki boyutlu durum " "destekleniyordu." -#: library/math.rst:519 +#: library/math.rst:522 msgid "" "Improved the algorithm's accuracy so that the maximum error is under 1 ulp " "(unit in the last place). More typically, the result is almost always " @@ -837,31 +835,31 @@ msgstr "" "olacak şekilde geliştirildi. Daha tipik olarak, sonuç neredeyse her zaman " "1/2 ulp içinde doğru şekilde yuvarlanır." -#: library/math.rst:527 +#: library/math.rst:530 msgid "Return the sine of *x* radians." msgstr "*x* radyanın sinüsünü döndürür." -#: library/math.rst:532 +#: library/math.rst:535 msgid "Return the tangent of *x* radians." msgstr "*x* radyanın tanjantını döndürür." -#: library/math.rst:536 +#: library/math.rst:539 msgid "Angular conversion" msgstr "Açısal dönüşüm" -#: library/math.rst:540 +#: library/math.rst:543 msgid "Convert angle *x* from radians to degrees." msgstr "Açıyı *x* radyandan dereceye dönüştürür." -#: library/math.rst:545 +#: library/math.rst:548 msgid "Convert angle *x* from degrees to radians." msgstr "Açıyı *x* dereceden radyana dönüştürür." -#: library/math.rst:549 +#: library/math.rst:552 msgid "Hyperbolic functions" msgstr "Hiberbolik fonksiyonlar" -#: library/math.rst:551 +#: library/math.rst:554 #, fuzzy msgid "" "`Hyperbolic functions `_ " @@ -872,35 +870,35 @@ msgstr "" "Hyperbolic_function>`_ trigonometrik fonksiyonların çemberler yerine " "hiperbollere dayanan analoglarıdır." -#: library/math.rst:557 +#: library/math.rst:560 msgid "Return the inverse hyperbolic cosine of *x*." msgstr "*x*'in ters hiperbolik kosinüsünü döndürür." -#: library/math.rst:562 +#: library/math.rst:565 msgid "Return the inverse hyperbolic sine of *x*." msgstr "*x*'in ters hiperbolik sinüsünü döndürür." -#: library/math.rst:567 +#: library/math.rst:570 msgid "Return the inverse hyperbolic tangent of *x*." msgstr "*x*'in ters hiperbolik tanjantını döndürür." -#: library/math.rst:572 +#: library/math.rst:575 msgid "Return the hyperbolic cosine of *x*." msgstr "*x*'in hiperbolik kosinüsünü döndürür." -#: library/math.rst:577 +#: library/math.rst:580 msgid "Return the hyperbolic sine of *x*." msgstr "*x*'in hiperbolik sinüsünü döndürür." -#: library/math.rst:582 +#: library/math.rst:585 msgid "Return the hyperbolic tangent of *x*." msgstr "*x*'in hiperbolik tanjantını döndürür." -#: library/math.rst:586 +#: library/math.rst:589 msgid "Special functions" msgstr "Özel fonksiyonlar" -#: library/math.rst:590 +#: library/math.rst:593 msgid "" "Return the `error function `_ " "at *x*." @@ -908,7 +906,7 @@ msgstr "" "*x* adresindeki `hata fonksiyonunu `_ döndürür." -#: library/math.rst:593 +#: library/math.rst:596 #, fuzzy msgid "" "The :func:`erf` function can be used to compute traditional statistical " @@ -919,14 +917,14 @@ msgstr "" "wikipedia.org/wiki/Normal_distribution#Cumulative_distribution_functions>`_: " "gibi geleneksel istatistiksel fonksiyonları hesaplamak için kullanılabilir:" -#: library/math.rst:597 +#: library/math.rst:600 msgid "" "def phi(x):\n" " 'Cumulative distribution function for the standard normal distribution'\n" " return (1.0 + erf(x / sqrt(2.0))) / 2.0" msgstr "" -#: library/math.rst:606 +#: library/math.rst:609 msgid "" "Return the complementary error function at *x*. The `complementary error " "function `_ is defined as " @@ -940,7 +938,7 @@ msgstr "" "wikipedia.org/wiki/Loss_of_significance>`_ neden olacağı büyük *x* değerleri " "için kullanılır.\\" -#: library/math.rst:617 +#: library/math.rst:620 msgid "" "Return the `Gamma function `_ " "at *x*." @@ -948,26 +946,26 @@ msgstr "" "*x* adresindeki `Gamma fonksiyonunu `_ döndürür." -#: library/math.rst:625 +#: library/math.rst:628 msgid "" "Return the natural logarithm of the absolute value of the Gamma function at " "*x*." msgstr "" "Gama fonksiyonunun *x*'deki mutlak değerinin doğal logaritmasını döndürür." -#: library/math.rst:632 +#: library/math.rst:635 msgid "Constants" msgstr "Sabitler" -#: library/math.rst:636 +#: library/math.rst:639 msgid "The mathematical constant *π* = 3.141592..., to available precision." msgstr "Matematiksel sabit *π* = 3.141592..., mevcut hassasiyete göre." -#: library/math.rst:641 +#: library/math.rst:644 msgid "The mathematical constant *e* = 2.718281..., to available precision." msgstr "Matematiksel sabit *e* = 2,718281..., mevcut hassasiyete göre." -#: library/math.rst:646 +#: library/math.rst:649 msgid "" "The mathematical constant *τ* = 6.283185..., to available precision. Tau is " "a circle constant equal to 2\\ *π*, the ratio of a circle's circumference to " @@ -982,7 +980,7 @@ msgstr "" "`Tau gününü `_ iki kat daha fazla turta yiyerek " "kutlamaya başlayın!" -#: library/math.rst:657 +#: library/math.rst:660 msgid "" "A floating-point positive infinity. (For negative infinity, use ``-math." "inf``.) Equivalent to the output of ``float('inf')``." @@ -990,7 +988,7 @@ msgstr "" "Bir kayan noktalı pozitif sonsuzluk. (Negatif sonsuzluk için ``-math.inf`` " "kullanın.) ``float('inf')`` çıktısına eşdeğerdir." -#: library/math.rst:665 +#: library/math.rst:668 #, fuzzy msgid "" "A floating-point \"not a number\" (NaN) value. Equivalent to the output of " @@ -1008,11 +1006,11 @@ msgstr "" "``==`` yerine NaN'leri test etmek için :func:`isnan` fonksiyonunu kullanın. " "Örnek::" -#: library/math.rst:685 +#: library/math.rst:688 msgid "It is now always available." msgstr "Artık her zaman kullanılabilir." -#: library/math.rst:691 +#: library/math.rst:694 msgid "" "The :mod:`math` module consists mostly of thin wrappers around the platform " "C math library functions. Behavior in exceptional cases follows Annex F of " @@ -1038,7 +1036,7 @@ msgstr "" "bu kuralın bazı istisnaları vardır, örneğin ``pow(float('nan'), 0.0)`` veya " "``hypot(float('nan'), float('inf'))``." -#: library/math.rst:703 +#: library/math.rst:706 msgid "" "Note that Python makes no effort to distinguish signaling NaNs from quiet " "NaNs, and behavior for signaling NaNs remains unspecified. Typical behavior " @@ -1048,10 +1046,24 @@ msgstr "" "çaba göstermediğini ve sinyal veren NaN'lar için davranışın belirtilmediğini " "unutmayın. Tipik davranış, tüm NaN'lara sessizmiş gibi davranmaktır." -#: library/math.rst:710 +#: library/math.rst:713 msgid "Module :mod:`cmath`" msgstr "Modül :mod:`cmath`" -#: library/math.rst:711 +#: library/math.rst:714 msgid "Complex number versions of many of these functions." msgstr "Bu fonksiyonların çoğunun karmaşık sayı versiyonları." + +#~ msgid "" +#~ "*abs_tol* is the minimum absolute tolerance -- useful for comparisons " +#~ "near zero. *abs_tol* must be at least zero." +#~ msgstr "" +#~ "*abs_tol* minimum mutlak toleranstır -- sıfıra yakın karşılaştırmalar " +#~ "için kullanışlıdır. *abs_tol* en az sıfır olmalıdır." + +#~ msgid "" +#~ "If no errors occur, the result will be: ``abs(a-b) <= max(rel_tol * " +#~ "max(abs(a), abs(b)), abs_tol)``." +#~ msgstr "" +#~ "Herhangi bir hata oluşmazsa, sonuç şöyle olacaktır: ``abs(a-b) <= " +#~ "max(rel_tol * max(abs(a), abs(b)), abs_tol)``." diff --git a/library/multiprocessing.po b/library/multiprocessing.po index f8e0da255..6d1e45005 100644 --- a/library/multiprocessing.po +++ b/library/multiprocessing.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -412,7 +412,7 @@ msgstr "" #: library/multiprocessing.rst:285 msgid "" -"The :meth:`~Connection.send` method serializes the the object and :meth:" +"The :meth:`~Connection.send` method serializes the object and :meth:" "`~Connection.recv` re-creates the object." msgstr "" @@ -1147,9 +1147,9 @@ msgstr "" #: library/multiprocessing.rst:822 msgid "" -"The :meth:`~multiprocessing.Connection.send` method serializes the the " -"object using :mod:`pickle` and the :meth:`~multiprocessing.Connection.recv` " -"re-creates the object." +"The :meth:`~multiprocessing.Connection.send` method serializes the object " +"using :mod:`pickle` and the :meth:`~multiprocessing.Connection.recv` re-" +"creates the object." msgstr "" #: library/multiprocessing.rst:827 diff --git a/library/numbers.po b/library/numbers.po index e531cc38f..18301e318 100644 --- a/library/numbers.po +++ b/library/numbers.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -59,50 +59,50 @@ msgstr "" msgid "Abstract. Retrieves the imaginary component of this number." msgstr "" -#: library/numbers.rst:43 +#: library/numbers.rst:44 msgid "" "Abstract. Returns the complex conjugate. For example, ``(1+3j).conjugate() " "== (1-3j)``." msgstr "" -#: library/numbers.rst:48 +#: library/numbers.rst:49 msgid "" "To :class:`Complex`, :class:`!Real` adds the operations that work on real " "numbers." msgstr "" -#: library/numbers.rst:51 +#: library/numbers.rst:52 msgid "" "In short, those are: a conversion to :class:`float`, :func:`math.trunc`, :" "func:`round`, :func:`math.floor`, :func:`math.ceil`, :func:`divmod`, ``//``, " "``%``, ``<``, ``<=``, ``>``, and ``>=``." msgstr "" -#: library/numbers.rst:55 +#: library/numbers.rst:56 msgid "" "Real also provides defaults for :func:`complex`, :attr:`~Complex.real`, :" "attr:`~Complex.imag`, and :meth:`~Complex.conjugate`." msgstr "" -#: library/numbers.rst:61 +#: library/numbers.rst:62 msgid "" "Subtypes :class:`Real` and adds :attr:`~Rational.numerator` and :attr:" "`~Rational.denominator` properties. It also provides a default for :func:" "`float`." msgstr "" -#: library/numbers.rst:65 +#: library/numbers.rst:66 msgid "" "The :attr:`~Rational.numerator` and :attr:`~Rational.denominator` values " "should be instances of :class:`Integral` and should be in lowest terms with :" "attr:`~Rational.denominator` positive." msgstr "" -#: library/numbers.rst:75 +#: library/numbers.rst:76 msgid "Abstract." msgstr "" -#: library/numbers.rst:80 +#: library/numbers.rst:81 msgid "" "Subtypes :class:`Rational` and adds a conversion to :class:`int`. Provides " "defaults for :func:`float`, :attr:`~Rational.numerator`, and :attr:" @@ -110,11 +110,11 @@ msgid "" "and bit-string operations: ``<<``, ``>>``, ``&``, ``^``, ``|``, ``~``." msgstr "" -#: library/numbers.rst:88 +#: library/numbers.rst:89 msgid "Notes for type implementers" msgstr "" -#: library/numbers.rst:90 +#: library/numbers.rst:91 msgid "" "Implementers should be careful to make equal numbers equal and hash them to " "the same values. This may be subtle if there are two different extensions of " @@ -122,7 +122,7 @@ msgid "" "`hash` as follows::" msgstr "" -#: library/numbers.rst:95 +#: library/numbers.rst:96 msgid "" "def __hash__(self):\n" " if self.denominator == 1:\n" @@ -137,28 +137,28 @@ msgid "" " return hash((self.numerator, self.denominator))" msgstr "" -#: library/numbers.rst:109 +#: library/numbers.rst:110 msgid "Adding More Numeric ABCs" msgstr "" -#: library/numbers.rst:111 +#: library/numbers.rst:112 msgid "" "There are, of course, more possible ABCs for numbers, and this would be a " "poor hierarchy if it precluded the possibility of adding those. You can add " "``MyFoo`` between :class:`Complex` and :class:`Real` with::" msgstr "" -#: library/numbers.rst:116 +#: library/numbers.rst:117 msgid "" "class MyFoo(Complex): ...\n" "MyFoo.register(Real)" msgstr "" -#: library/numbers.rst:123 +#: library/numbers.rst:124 msgid "Implementing the arithmetic operations" msgstr "" -#: library/numbers.rst:125 +#: library/numbers.rst:126 msgid "" "We want to implement the arithmetic operations so that mixed-mode operations " "either call an implementation whose author knew about the types of both " @@ -167,7 +167,7 @@ msgid "" "__add__` and :meth:`~object.__radd__` should be defined as::" msgstr "" -#: library/numbers.rst:132 +#: library/numbers.rst:133 msgid "" "class MyIntegral(Integral):\n" "\n" @@ -194,7 +194,7 @@ msgid "" " return NotImplemented" msgstr "" -#: library/numbers.rst:157 +#: library/numbers.rst:158 msgid "" "There are 5 different cases for a mixed-type operation on subclasses of :" "class:`Complex`. I'll refer to all of the above code that doesn't refer to " @@ -203,12 +203,12 @@ msgid "" "Complex``), and ``b : B <: Complex``. I'll consider ``a + b``:" msgstr "" -#: library/numbers.rst:164 +#: library/numbers.rst:165 msgid "" "If ``A`` defines an :meth:`~object.__add__` which accepts ``b``, all is well." msgstr "" -#: library/numbers.rst:166 +#: library/numbers.rst:167 msgid "" "If ``A`` falls back to the boilerplate code, and it were to return a value " "from :meth:`~object.__add__`, we'd miss the possibility that ``B`` defines a " @@ -217,26 +217,26 @@ msgid "" "meth:`!__add__` at all.)" msgstr "" -#: library/numbers.rst:172 +#: library/numbers.rst:173 msgid "" "Then ``B``'s :meth:`~object.__radd__` gets a chance. If it accepts ``a``, " "all is well." msgstr "" -#: library/numbers.rst:174 +#: library/numbers.rst:175 msgid "" "If it falls back to the boilerplate, there are no more possible methods to " "try, so this is where the default implementation should live." msgstr "" -#: library/numbers.rst:177 +#: library/numbers.rst:178 msgid "" "If ``B <: A``, Python tries ``B.__radd__`` before ``A.__add__``. This is ok, " "because it was implemented with knowledge of ``A``, so it can handle those " "instances before delegating to :class:`Complex`." msgstr "" -#: library/numbers.rst:182 +#: library/numbers.rst:183 msgid "" "If ``A <: Complex`` and ``B <: Real`` without sharing any other knowledge, " "then the appropriate shared operation is the one involving the built in :" @@ -244,7 +244,7 @@ msgid "" "b+a``." msgstr "" -#: library/numbers.rst:187 +#: library/numbers.rst:188 msgid "" "Because most of the operations on any given type will be very similar, it " "can be useful to define a helper function which generates the forward and " @@ -252,7 +252,7 @@ msgid "" "Fraction` uses::" msgstr "" -#: library/numbers.rst:192 +#: library/numbers.rst:193 msgid "" "def _operator_fallbacks(monomorphic_operator, fallback_operator):\n" " def forward(a, b):\n" diff --git a/library/os.po b/library/os.po index 1772ec1da..490f65741 100644 --- a/library/os.po +++ b/library/os.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -282,34 +282,34 @@ msgid "" "Return the filename corresponding to the controlling terminal of the process." msgstr "" -#: library/os.rst:322 library/os.rst:358 library/os.rst:376 library/os.rst:398 -#: library/os.rst:434 library/os.rst:462 library/os.rst:491 library/os.rst:512 -#: library/os.rst:533 library/os.rst:579 library/os.rst:593 library/os.rst:639 -#: library/os.rst:661 library/os.rst:687 library/os.rst:703 library/os.rst:719 -#: library/os.rst:735 library/os.rst:826 library/os.rst:974 library/os.rst:1004 -#: library/os.rst:1030 library/os.rst:1074 library/os.rst:1097 -#: library/os.rst:1138 library/os.rst:1161 library/os.rst:1345 -#: library/os.rst:1371 library/os.rst:1396 library/os.rst:1424 -#: library/os.rst:1467 library/os.rst:1493 library/os.rst:1532 -#: library/os.rst:1556 library/os.rst:1628 library/os.rst:1649 -#: library/os.rst:1708 library/os.rst:1726 library/os.rst:1770 -#: library/os.rst:1849 library/os.rst:2021 library/os.rst:2110 -#: library/os.rst:2150 library/os.rst:2181 library/os.rst:2260 -#: library/os.rst:2304 library/os.rst:2462 library/os.rst:2518 -#: library/os.rst:3248 library/os.rst:3405 library/os.rst:3639 -#: library/os.rst:3689 library/os.rst:3752 library/os.rst:3769 -#: library/os.rst:3787 library/os.rst:4001 library/os.rst:4044 -#: library/os.rst:4058 library/os.rst:4072 library/os.rst:4086 -#: library/os.rst:4102 library/os.rst:4116 library/os.rst:4133 -#: library/os.rst:4148 library/os.rst:4204 library/os.rst:4255 +#: library/os.rst:323 library/os.rst:359 library/os.rst:377 library/os.rst:399 +#: library/os.rst:435 library/os.rst:463 library/os.rst:492 library/os.rst:513 +#: library/os.rst:534 library/os.rst:580 library/os.rst:594 library/os.rst:640 +#: library/os.rst:662 library/os.rst:688 library/os.rst:704 library/os.rst:720 +#: library/os.rst:736 library/os.rst:827 library/os.rst:975 library/os.rst:1005 +#: library/os.rst:1031 library/os.rst:1075 library/os.rst:1098 +#: library/os.rst:1139 library/os.rst:1162 library/os.rst:1346 +#: library/os.rst:1372 library/os.rst:1397 library/os.rst:1425 +#: library/os.rst:1468 library/os.rst:1494 library/os.rst:1533 +#: library/os.rst:1557 library/os.rst:1629 library/os.rst:1650 +#: library/os.rst:1709 library/os.rst:1727 library/os.rst:1771 +#: library/os.rst:1850 library/os.rst:2022 library/os.rst:2111 +#: library/os.rst:2151 library/os.rst:2182 library/os.rst:2261 +#: library/os.rst:2305 library/os.rst:2463 library/os.rst:2519 +#: library/os.rst:3249 library/os.rst:3406 library/os.rst:3640 +#: library/os.rst:3690 library/os.rst:3753 library/os.rst:3770 +#: library/os.rst:3788 library/os.rst:4002 library/os.rst:4045 +#: library/os.rst:4059 library/os.rst:4073 library/os.rst:4087 +#: library/os.rst:4103 library/os.rst:4117 library/os.rst:4134 +#: library/os.rst:4149 library/os.rst:4205 library/os.rst:4255 #: library/os.rst:4278 library/os.rst:4299 library/os.rst:4340 #: library/os.rst:4451 library/os.rst:4553 library/os.rst:4583 #: library/os.rst:4640 library/os.rst:4700 library/os.rst:4755 #: library/os.rst:4816 library/os.rst:4847 library/os.rst:4873 #: library/os.rst:4898 library/os.rst:4917 library/os.rst:4965 #: library/os.rst:4992 library/os.rst:5011 library/os.rst:5029 -#: library/os.rst:5047 library/os.rst:5204 library/os.rst:5235 -#: library/os.rst:5367 +#: library/os.rst:5047 library/os.rst:5206 library/os.rst:5237 +#: library/os.rst:5369 msgid "Availability" msgstr "" @@ -438,17 +438,17 @@ msgid "" "e.g. :class:`pathlib.PurePath`." msgstr "" -#: library/os.rst:304 +#: library/os.rst:305 msgid "Return the file system path representation of the object." msgstr "" -#: library/os.rst:306 +#: library/os.rst:307 msgid "" "The method should only return a :class:`str` or :class:`bytes` object, with " "the preference being for :class:`str`." msgstr "" -#: library/os.rst:312 +#: library/os.rst:313 msgid "" "Return the value of the environment variable *key* as a string if it exists, " "or *default* if it doesn't. *key* is a string. Note that since :func:" @@ -457,14 +457,14 @@ msgid "" "changes." msgstr "" -#: library/os.rst:318 +#: library/os.rst:319 msgid "" "On Unix, keys and values are decoded with :func:`sys.getfilesystemencoding` " "and ``'surrogateescape'`` error handler. Use :func:`os.getenvb` if you would " "like to use a different encoding." msgstr "" -#: library/os.rst:327 +#: library/os.rst:328 msgid "" "Return the value of the environment variable *key* as bytes if it exists, or " "*default* if it doesn't. *key* must be bytes. Note that since :func:" @@ -473,13 +473,13 @@ msgid "" "environment changes." msgstr "" -#: library/os.rst:334 +#: library/os.rst:335 msgid "" ":func:`getenvb` is only available if :const:`supports_bytes_environ` is " "``True``." msgstr "" -#: library/os.rst:344 +#: library/os.rst:345 msgid "" "Returns the list of directories that will be searched for a named " "executable, similar to a shell, when launching a process. *env*, when " @@ -487,27 +487,27 @@ msgid "" "in. By default, when *env* is ``None``, :data:`environ` is used." msgstr "" -#: library/os.rst:355 +#: library/os.rst:356 msgid "" "Return the effective group id of the current process. This corresponds to " "the \"set id\" bit on the file being executed in the current process." msgstr "" -#: library/os.rst:365 +#: library/os.rst:366 msgid "Return the current process's effective user id." msgstr "" -#: library/os.rst:374 +#: library/os.rst:375 msgid "Return the real group id of the current process." msgstr "" -#: library/os.rst:451 library/os.rst:758 +#: library/os.rst:452 library/os.rst:759 msgid "" "The function is a stub on Emscripten and WASI, see :ref:`wasm-availability` " "for more information." msgstr "" -#: library/os.rst:384 +#: library/os.rst:385 msgid "" "Return list of group ids that *user* belongs to. If *group* is not in the " "list, it is included; typically, *group* is specified as the group ID field " @@ -515,12 +515,12 @@ msgid "" "potentially omitted." msgstr "" -#: library/os.rst:396 +#: library/os.rst:397 msgid "" "Return list of supplemental group ids associated with the current process." msgstr "" -#: library/os.rst:402 +#: library/os.rst:403 msgid "" "On macOS, :func:`getgroups` behavior differs somewhat from other Unix " "platforms. If the Python interpreter was built with a deployment target of " @@ -537,7 +537,7 @@ msgid "" "get_config_var`." msgstr "" -#: library/os.rst:419 +#: library/os.rst:420 msgid "" "Return the name of the user logged in on the controlling terminal of the " "process. For most purposes, it is more useful to use :func:`getpass." @@ -546,32 +546,32 @@ msgid "" "getpwuid(os.getuid())[0]`` to get the login name of the current real user id." msgstr "" -#: library/os.rst:431 +#: library/os.rst:432 msgid "" "Return the process group id of the process with process id *pid*. If *pid* " "is 0, the process group id of the current process is returned." msgstr "" -#: library/os.rst:440 +#: library/os.rst:441 msgid "Return the id of the current process group." msgstr "" -#: library/os.rst:449 +#: library/os.rst:450 msgid "Return the current process id." msgstr "" -#: library/os.rst:458 +#: library/os.rst:459 msgid "" "Return the parent's process id. When the parent process has exited, on Unix " "the id returned is the one of the init process (1), on Windows it is still " "the same id, which may be already reused by another process." msgstr "" -#: library/os.rst:464 +#: library/os.rst:465 msgid "Added support for Windows." msgstr "" -#: library/os.rst:472 +#: library/os.rst:473 msgid "" "Get program scheduling priority. The value *which* is one of :const:" "`PRIO_PROCESS`, :const:`PRIO_PGRP`, or :const:`PRIO_USER`, and *who* is " @@ -582,42 +582,42 @@ msgid "" "user ID of the calling process." msgstr "" -#: library/os.rst:501 +#: library/os.rst:502 msgid "" "Parameters for the :func:`getpriority` and :func:`setpriority` functions." msgstr "" -#: library/os.rst:509 +#: library/os.rst:510 msgid "" "Return a tuple (ruid, euid, suid) denoting the current process's real, " "effective, and saved user ids." msgstr "" -#: library/os.rst:519 +#: library/os.rst:520 msgid "" "Return a tuple (rgid, egid, sgid) denoting the current process's real, " "effective, and saved group ids." msgstr "" -#: library/os.rst:531 +#: library/os.rst:532 msgid "Return the current process's real user id." msgstr "" -#: library/os.rst:541 +#: library/os.rst:542 msgid "" "Call the system initgroups() to initialize the group access list with all of " "the groups of which the specified username is a member, plus the specified " "group id." msgstr "" -#: library/os.rst:554 +#: library/os.rst:555 msgid "" "Set the environment variable named *key* to the string *value*. Such " "changes to the environment affect subprocesses started with :func:`os." "system`, :func:`popen` or :func:`fork` and :func:`execv`." msgstr "" -#: library/os.rst:558 +#: library/os.rst:559 msgid "" "Assignments to items in :data:`os.environ` are automatically translated into " "corresponding calls to :func:`putenv`; however, calls to :func:`putenv` " @@ -627,35 +627,35 @@ msgid "" "in their implementations." msgstr "" -#: library/os.rst:566 +#: library/os.rst:567 msgid "" "On some platforms, including FreeBSD and macOS, setting ``environ`` may " "cause memory leaks. Refer to the system documentation for :c:func:`!putenv`." msgstr "" -#: library/os.rst:569 +#: library/os.rst:570 msgid "" "Raises an :ref:`auditing event ` ``os.putenv`` with arguments " "``key``, ``value``." msgstr "" -#: library/os.rst:571 +#: library/os.rst:572 msgid "The function is now always available." msgstr "" -#: library/os.rst:577 +#: library/os.rst:578 msgid "Set the current process's effective group id." msgstr "" -#: library/os.rst:584 +#: library/os.rst:585 msgid "Set the current process's effective user id." msgstr "" -#: library/os.rst:591 +#: library/os.rst:592 msgid "Set the current process' group id." msgstr "" -#: library/os.rst:598 +#: library/os.rst:599 msgid "" "Set the list of supplemental group ids associated with the current process " "to *groups*. *groups* must be a sequence, and each element must be an " @@ -663,7 +663,7 @@ msgid "" "the superuser." msgstr "" -#: library/os.rst:604 +#: library/os.rst:605 msgid "" "On macOS, the length of *groups* may not exceed the system-defined maximum " "number of effective group ids, typically 16. See the documentation for :func:" @@ -671,13 +671,13 @@ msgid "" "calling setgroups()." msgstr "" -#: library/os.rst:611 +#: library/os.rst:612 msgid "" "Reassociate the current thread with a Linux namespace. See the :manpage:" "`setns(2)` and :manpage:`namespaces(7)` man pages for more details." msgstr "" -#: library/os.rst:615 +#: library/os.rst:616 msgid "" "If *fd* refers to a :file:`/proc/{pid}/ns/` link, ``setns()`` reassociates " "the calling thread with the namespace associated with that link, and " @@ -686,7 +686,7 @@ msgid "" "constraints)." msgstr "" -#: library/os.rst:622 +#: library/os.rst:623 msgid "" "Since Linux 5.8, *fd* may refer to a PID file descriptor obtained from :func:" "`~os.pidfd_open`. In this case, ``setns()`` reassociates the calling thread " @@ -697,44 +697,44 @@ msgid "" "memberships in unspecified namespaces are left unchanged." msgstr "" -#: library/os.rst:631 +#: library/os.rst:632 msgid "" "*fd* can be any object with a :meth:`~io.IOBase.fileno` method, or a raw " "file descriptor." msgstr "" -#: library/os.rst:633 +#: library/os.rst:634 msgid "" "This example reassociates the thread with the ``init`` process's network " "namespace::" msgstr "" -#: library/os.rst:635 +#: library/os.rst:636 msgid "" "fd = os.open(\"/proc/1/ns/net\", os.O_RDONLY)\n" "os.setns(fd, os.CLONE_NEWNET)\n" "os.close(fd)" msgstr "" -#: library/os.rst:645 +#: library/os.rst:646 msgid "The :func:`~os.unshare` function." msgstr "" -#: library/os.rst:649 +#: library/os.rst:650 msgid "" "Call the system call :c:func:`!setpgrp` or ``setpgrp(0, 0)`` depending on " "which version is implemented (if any). See the Unix manual for the " "semantics." msgstr "" -#: library/os.rst:657 +#: library/os.rst:658 msgid "" "Call the system call :c:func:`!setpgid` to set the process group id of the " "process with id *pid* to the process group with id *pgrp*. See the Unix " "manual for the semantics." msgstr "" -#: library/os.rst:668 +#: library/os.rst:669 msgid "" "Set program scheduling priority. The value *which* is one of :const:" "`PRIO_PROCESS`, :const:`PRIO_PGRP`, or :const:`PRIO_USER`, and *who* is " @@ -747,89 +747,89 @@ msgid "" "scheduling." msgstr "" -#: library/os.rst:685 +#: library/os.rst:686 msgid "Set the current process's real and effective group ids." msgstr "" -#: library/os.rst:692 +#: library/os.rst:693 msgid "Set the current process's real, effective, and saved group ids." msgstr "" -#: library/os.rst:701 +#: library/os.rst:702 msgid "Set the current process's real, effective, and saved user ids." msgstr "" -#: library/os.rst:710 +#: library/os.rst:711 msgid "Set the current process's real and effective user ids." msgstr "" -#: library/os.rst:717 +#: library/os.rst:718 msgid "" "Call the system call :c:func:`!getsid`. See the Unix manual for the " "semantics." msgstr "" -#: library/os.rst:724 +#: library/os.rst:725 msgid "" "Call the system call :c:func:`!setsid`. See the Unix manual for the " "semantics." msgstr "" -#: library/os.rst:733 +#: library/os.rst:734 msgid "Set the current process's user id." msgstr "" -#: library/os.rst:741 +#: library/os.rst:742 msgid "" "Return the error message corresponding to the error code in *code*. On " "platforms where :c:func:`!strerror` returns ``NULL`` when given an unknown " "error number, :exc:`ValueError` is raised." msgstr "" -#: library/os.rst:748 +#: library/os.rst:749 msgid "" "``True`` if the native OS type of the environment is bytes (eg. ``False`` on " "Windows)." msgstr "" -#: library/os.rst:756 +#: library/os.rst:757 msgid "Set the current numeric umask and return the previous umask." msgstr "" -#: library/os.rst:768 +#: library/os.rst:769 msgid "" "Returns information identifying the current operating system. The return " "value is an object with five attributes:" msgstr "" -#: library/os.rst:771 +#: library/os.rst:772 msgid ":attr:`sysname` - operating system name" msgstr "" -#: library/os.rst:772 +#: library/os.rst:773 msgid ":attr:`nodename` - name of machine on network (implementation-defined)" msgstr "" -#: library/os.rst:773 +#: library/os.rst:774 msgid ":attr:`release` - operating system release" msgstr "" -#: library/os.rst:774 +#: library/os.rst:775 msgid ":attr:`version` - operating system version" msgstr "" -#: library/os.rst:775 +#: library/os.rst:776 msgid ":attr:`machine` - hardware identifier" msgstr "" -#: library/os.rst:777 +#: library/os.rst:778 msgid "" "For backwards compatibility, this object is also iterable, behaving like a " "five-tuple containing :attr:`sysname`, :attr:`nodename`, :attr:`release`, :" "attr:`version`, and :attr:`machine` in that order." msgstr "" -#: library/os.rst:782 +#: library/os.rst:783 msgid "" "Some systems truncate :attr:`nodename` to 8 characters or to the leading " "component; a better way to get the hostname is :func:`socket.gethostname` " @@ -842,14 +842,14 @@ msgid "" "attributes." msgstr "" -#: library/os.rst:798 +#: library/os.rst:799 msgid "" "Unset (delete) the environment variable named *key*. Such changes to the " "environment affect subprocesses started with :func:`os.system`, :func:" "`popen` or :func:`fork` and :func:`execv`." msgstr "" -#: library/os.rst:802 +#: library/os.rst:803 msgid "" "Deletion of items in :data:`os.environ` is automatically translated into a " "corresponding call to :func:`unsetenv`; however, calls to :func:`unsetenv` " @@ -857,17 +857,17 @@ msgid "" "items of :data:`os.environ`." msgstr "" -#: library/os.rst:807 +#: library/os.rst:808 msgid "" "Raises an :ref:`auditing event ` ``os.unsetenv`` with argument " "``key``." msgstr "" -#: library/os.rst:809 +#: library/os.rst:810 msgid "The function is now always available and is also available on Windows." msgstr "" -#: library/os.rst:815 +#: library/os.rst:816 msgid "" "Disassociate parts of the process execution context, and move them into a " "newly created namespace. See the :manpage:`unshare(2)` man page for more " @@ -878,28 +878,28 @@ msgid "" "are made to the calling process's execution context." msgstr "" -#: library/os.rst:832 +#: library/os.rst:833 msgid "The :func:`~os.setns` function." msgstr "" -#: library/os.rst:836 +#: library/os.rst:837 msgid "" "Flags to the :func:`unshare` function, if the implementation supports them. " "See :manpage:`unshare(2)` in the Linux manual for their exact effect and " "availability." msgstr "" -#: library/os.rst:859 +#: library/os.rst:860 msgid "File Object Creation" msgstr "" -#: library/os.rst:861 +#: library/os.rst:862 msgid "" "These functions create new :term:`file objects `. (See also :" "func:`~os.open` for opening file descriptors.)" msgstr "" -#: library/os.rst:867 +#: library/os.rst:868 msgid "" "Return an open file object connected to the file descriptor *fd*. This is " "an alias of the :func:`open` built-in function and accepts the same " @@ -907,16 +907,16 @@ msgid "" "must always be an integer." msgstr "" -#: library/os.rst:876 +#: library/os.rst:877 msgid "File Descriptor Operations" msgstr "" -#: library/os.rst:878 +#: library/os.rst:879 msgid "" "These functions operate on I/O streams referenced using file descriptors." msgstr "" -#: library/os.rst:880 +#: library/os.rst:881 msgid "" "File descriptors are small integers corresponding to a file that has been " "opened by the current process. For example, standard input is usually file " @@ -926,7 +926,7 @@ msgid "" "pipes are also referenced by file descriptors." msgstr "" -#: library/os.rst:887 +#: library/os.rst:888 msgid "" "The :meth:`~io.IOBase.fileno` method can be used to obtain the file " "descriptor associated with a :term:`file object` when required. Note that " @@ -934,11 +934,11 @@ msgid "" "ignoring aspects such as internal buffering of data." msgstr "" -#: library/os.rst:895 +#: library/os.rst:896 msgid "Close file descriptor *fd*." msgstr "" -#: library/os.rst:899 +#: library/os.rst:900 msgid "" "This function is intended for low-level I/O and must be applied to a file " "descriptor as returned by :func:`os.open` or :func:`pipe`. To close a " @@ -946,13 +946,13 @@ msgid "" "`popen` or :func:`fdopen`, use its :meth:`~io.IOBase.close` method." msgstr "" -#: library/os.rst:907 +#: library/os.rst:908 msgid "" "Close all file descriptors from *fd_low* (inclusive) to *fd_high* " "(exclusive), ignoring errors. Equivalent to (but much faster than)::" msgstr "" -#: library/os.rst:910 +#: library/os.rst:911 msgid "" "for fd in range(fd_low, fd_high):\n" " try:\n" @@ -961,7 +961,7 @@ msgid "" " pass" msgstr "" -#: library/os.rst:919 +#: library/os.rst:920 msgid "" "Copy *count* bytes from file descriptor *src*, starting from offset " "*offset_src*, to file descriptor *dst*, starting from offset *offset_dst*. " @@ -969,14 +969,14 @@ msgid "" "respectively for *offset_dst*." msgstr "" -#: library/os.rst:924 +#: library/os.rst:925 msgid "" "In Linux kernel older than 5.3, the files pointed to by *src* and *dst* must " "reside in the same filesystem, otherwise an :exc:`OSError` is raised with :" "attr:`~OSError.errno` set to :const:`errno.EXDEV`." msgstr "" -#: library/os.rst:928 +#: library/os.rst:929 msgid "" "This copy is done without the additional cost of transferring data from the " "kernel to user space and then back into the kernel. Additionally, some " @@ -986,19 +986,19 @@ msgid "" "(in the case of NFS)." msgstr "" -#: library/os.rst:935 +#: library/os.rst:936 msgid "" "The function copies bytes between two file descriptors. Text options, like " "the encoding and the line ending, are ignored." msgstr "" -#: library/os.rst:938 +#: library/os.rst:939 msgid "" "The return value is the amount of bytes copied. This could be less than the " "amount requested." msgstr "" -#: library/os.rst:943 +#: library/os.rst:944 msgid "" "On Linux, :func:`os.copy_file_range` should not be used for copying a range " "of a pseudo file from a special filesystem like procfs and sysfs. It will " @@ -1006,39 +1006,39 @@ msgid "" "known Linux kernel issue." msgstr "" -#: library/os.rst:955 +#: library/os.rst:956 msgid "" "Return a string describing the encoding of the device associated with *fd* " "if it is connected to a terminal; else return :const:`None`." msgstr "" -#: library/os.rst:958 +#: library/os.rst:959 msgid "" "On Unix, if the :ref:`Python UTF-8 Mode ` is enabled, return " "``'UTF-8'`` rather than the device encoding." msgstr "" -#: library/os.rst:961 +#: library/os.rst:962 msgid "On Unix, the function now implements the Python UTF-8 Mode." msgstr "" -#: library/os.rst:967 +#: library/os.rst:968 msgid "" "Return a duplicate of file descriptor *fd*. The new file descriptor is :ref:" "`non-inheritable `." msgstr "" -#: library/os.rst:970 +#: library/os.rst:971 msgid "" "On Windows, when duplicating a standard stream (0: stdin, 1: stdout, 2: " "stderr), the new file descriptor is :ref:`inheritable `." msgstr "" -#: library/os.rst:1244 +#: library/os.rst:1245 msgid "The new file descriptor is now non-inheritable." msgstr "" -#: library/os.rst:982 +#: library/os.rst:983 msgid "" "Duplicate file descriptor *fd* to *fd2*, closing the latter first if " "necessary. Return *fd2*. The new file descriptor is :ref:`inheritable " @@ -1046,58 +1046,58 @@ msgid "" "``False``." msgstr "" -#: library/os.rst:989 +#: library/os.rst:990 msgid "Add the optional *inheritable* parameter." msgstr "" -#: library/os.rst:992 +#: library/os.rst:993 msgid "Return *fd2* on success. Previously, ``None`` was always returned." msgstr "" -#: library/os.rst:998 +#: library/os.rst:999 msgid "" "Change the mode of the file given by *fd* to the numeric *mode*. See the " "docs for :func:`chmod` for possible values of *mode*. As of Python 3.3, " "this is equivalent to ``os.chmod(fd, mode)``." msgstr "" -#: library/os.rst:2069 library/os.rst:2166 +#: library/os.rst:2070 library/os.rst:2167 msgid "" "Raises an :ref:`auditing event ` ``os.chmod`` with arguments " "``path``, ``mode``, ``dir_fd``." msgstr "" -#: library/os.rst:1021 library/os.rst:1651 library/os.rst:2095 -#: library/os.rst:3384 +#: library/os.rst:1022 library/os.rst:1652 library/os.rst:2096 +#: library/os.rst:3385 msgid "" "The function is limited on Emscripten and WASI, see :ref:`wasm-availability` " "for more information." msgstr "" -#: library/os.rst:1012 +#: library/os.rst:1013 msgid "" "Change the owner and group id of the file given by *fd* to the numeric *uid* " "and *gid*. To leave one of the ids unchanged, set it to -1. See :func:" "`chown`. As of Python 3.3, this is equivalent to ``os.chown(fd, uid, gid)``." msgstr "" -#: library/os.rst:2091 library/os.rst:2179 +#: library/os.rst:2092 library/os.rst:2180 msgid "" "Raises an :ref:`auditing event ` ``os.chown`` with arguments " "``path``, ``uid``, ``gid``, ``dir_fd``." msgstr "" -#: library/os.rst:1027 +#: library/os.rst:1028 msgid "" "Force write of file with filedescriptor *fd* to disk. Does not force update " "of metadata." msgstr "" -#: library/os.rst:1033 +#: library/os.rst:1034 msgid "This function is not available on MacOS." msgstr "" -#: library/os.rst:1038 +#: library/os.rst:1039 msgid "" "Return system configuration information relevant to an open file. *name* " "specifies the configuration value to retrieve; it may be a string which is " @@ -1108,7 +1108,7 @@ msgid "" "included in that mapping, passing an integer for *name* is also accepted." msgstr "" -#: library/os.rst:2498 +#: library/os.rst:2499 msgid "" "If *name* is a string and is not known, :exc:`ValueError` is raised. If a " "specific value for *name* is not supported by the host system, even if it is " @@ -1116,87 +1116,87 @@ msgid "" "`errno.EINVAL` for the error number." msgstr "" -#: library/os.rst:1051 +#: library/os.rst:1052 msgid "As of Python 3.3, this is equivalent to ``os.pathconf(fd, name)``." msgstr "" -#: library/os.rst:1058 +#: library/os.rst:1059 msgid "" "Get the status of the file descriptor *fd*. Return a :class:`stat_result` " "object." msgstr "" -#: library/os.rst:1061 +#: library/os.rst:1062 msgid "As of Python 3.3, this is equivalent to ``os.stat(fd)``." msgstr "" -#: library/os.rst:2326 +#: library/os.rst:2327 msgid "The :func:`.stat` function." msgstr "" -#: library/os.rst:1070 +#: library/os.rst:1071 msgid "" "Return information about the filesystem containing the file associated with " "file descriptor *fd*, like :func:`statvfs`. As of Python 3.3, this is " "equivalent to ``os.statvfs(fd)``." msgstr "" -#: library/os.rst:1079 +#: library/os.rst:1080 msgid "" "Force write of file with filedescriptor *fd* to disk. On Unix, this calls " "the native :c:func:`!fsync` function; on Windows, the MS :c:func:`!_commit` " "function." msgstr "" -#: library/os.rst:1082 +#: library/os.rst:1083 msgid "" "If you're starting with a buffered Python :term:`file object` *f*, first do " "``f.flush()``, and then do ``os.fsync(f.fileno())``, to ensure that all " "internal buffers associated with *f* are written to disk." msgstr "" -#: library/os.rst:1091 +#: library/os.rst:1092 msgid "" "Truncate the file corresponding to file descriptor *fd*, so that it is at " "most *length* bytes in size. As of Python 3.3, this is equivalent to ``os." "truncate(fd, length)``." msgstr "" -#: library/os.rst:1095 +#: library/os.rst:1096 msgid "" "Raises an :ref:`auditing event ` ``os.truncate`` with arguments " "``fd``, ``length``." msgstr "" -#: library/os.rst:3423 +#: library/os.rst:3424 msgid "Added support for Windows" msgstr "" -#: library/os.rst:1105 +#: library/os.rst:1106 msgid "" "Get the blocking mode of the file descriptor: ``False`` if the :data:" "`O_NONBLOCK` flag is set, ``True`` if the flag is cleared." msgstr "" -#: library/os.rst:1108 +#: library/os.rst:1109 msgid "See also :func:`set_blocking` and :meth:`socket.socket.setblocking`." msgstr "" -#: library/os.rst:1654 +#: library/os.rst:1655 msgid "On Windows, this function is limited to pipes." msgstr "" -#: library/os.rst:1658 +#: library/os.rst:1659 msgid "Added support for pipes on Windows." msgstr "" -#: library/os.rst:1124 +#: library/os.rst:1125 msgid "" "Return ``True`` if the file descriptor *fd* is open and connected to a tty(-" "like) device, else ``False``." msgstr "" -#: library/os.rst:1130 +#: library/os.rst:1131 msgid "" "Apply, test or remove a POSIX lock on an open file descriptor. *fd* is an " "open file descriptor. *cmd* specifies the command to use - one of :data:" @@ -1204,125 +1204,125 @@ msgid "" "specifies the section of the file to lock." msgstr "" -#: library/os.rst:1136 +#: library/os.rst:1137 msgid "" "Raises an :ref:`auditing event ` ``os.lockf`` with arguments " "``fd``, ``cmd``, ``len``." msgstr "" -#: library/os.rst:1148 +#: library/os.rst:1149 msgid "Flags that specify what action :func:`lockf` will take." msgstr "" -#: library/os.rst:1157 +#: library/os.rst:1158 msgid "" "Prepare the tty of which fd is a file descriptor for a new login session. " "Make the calling process a session leader; make the tty the controlling tty, " "the stdin, the stdout, and the stderr of the calling process; close fd." msgstr "" -#: library/os.rst:1168 +#: library/os.rst:1169 msgid "" "Set the current position of file descriptor *fd* to position *pos*, modified " "by *whence*, and return the new position in bytes relative to the start of " "the file. Valid values for *whence* are:" msgstr "" -#: library/os.rst:1173 +#: library/os.rst:1174 msgid "" ":const:`SEEK_SET` or ``0`` -- set *pos* relative to the beginning of the file" msgstr "" -#: library/os.rst:1174 +#: library/os.rst:1175 msgid "" ":const:`SEEK_CUR` or ``1`` -- set *pos* relative to the current file position" msgstr "" -#: library/os.rst:1175 +#: library/os.rst:1176 msgid ":const:`SEEK_END` or ``2`` -- set *pos* relative to the end of the file" msgstr "" -#: library/os.rst:1176 +#: library/os.rst:1177 msgid "" ":const:`SEEK_HOLE` -- set *pos* to the next data location, relative to *pos*" msgstr "" -#: library/os.rst:1177 +#: library/os.rst:1178 msgid "" ":const:`SEEK_DATA` -- set *pos* to the next data hole, relative to *pos*" msgstr "" -#: library/os.rst:1181 +#: library/os.rst:1182 msgid "Add support for :const:`!SEEK_HOLE` and :const:`!SEEK_DATA`." msgstr "" -#: library/os.rst:1188 +#: library/os.rst:1189 msgid "" "Parameters to the :func:`lseek` function and the :meth:`~io.IOBase.seek` " "method on :term:`file-like objects `, for whence to adjust the " "file position indicator." msgstr "" -#: library/os.rst:1192 +#: library/os.rst:1193 msgid ":const:`SEEK_SET`" msgstr "" -#: library/os.rst:1193 +#: library/os.rst:1194 msgid "Adjust the file position relative to the beginning of the file." msgstr "" -#: library/os.rst:1194 +#: library/os.rst:1195 msgid ":const:`SEEK_CUR`" msgstr "" -#: library/os.rst:1195 +#: library/os.rst:1196 msgid "Adjust the file position relative to the current file position." msgstr "" -#: library/os.rst:1196 +#: library/os.rst:1197 msgid ":const:`SEEK_END`" msgstr "" -#: library/os.rst:1197 +#: library/os.rst:1198 msgid "Adjust the file position relative to the end of the file." msgstr "" -#: library/os.rst:1199 +#: library/os.rst:1200 msgid "Their values are 0, 1, and 2, respectively." msgstr "" -#: library/os.rst:1205 +#: library/os.rst:1206 msgid "" "Parameters to the :func:`lseek` function and the :meth:`~io.IOBase.seek` " "method on :term:`file-like objects `, for seeking file data and " "holes on sparsely allocated files." msgstr "" -#: library/os.rst:1209 +#: library/os.rst:1210 msgid ":data:`!SEEK_DATA`" msgstr "" -#: library/os.rst:1210 +#: library/os.rst:1211 msgid "" "Adjust the file offset to the next location containing data, relative to the " "seek position." msgstr "" -#: library/os.rst:1213 +#: library/os.rst:1214 msgid ":data:`!SEEK_HOLE`" msgstr "" -#: library/os.rst:1214 +#: library/os.rst:1215 msgid "" "Adjust the file offset to the next location containing a hole, relative to " "the seek position. A hole is defined as a sequence of zeros." msgstr "" -#: library/os.rst:1220 +#: library/os.rst:1221 msgid "These operations only make sense for filesystems that support them." msgstr "" -#: library/os.rst:1229 +#: library/os.rst:1230 msgid "" "Open the file *path* and set various flags according to *flags* and possibly " "its mode according to *mode*. When computing *mode*, the current umask " @@ -1330,7 +1330,7 @@ msgid "" "file. The new file descriptor is :ref:`non-inheritable `." msgstr "" -#: library/os.rst:1234 +#: library/os.rst:1235 msgid "" "For a description of the flag and mode values, see the C run-time " "documentation; flag constants (like :const:`O_RDONLY` and :const:`O_WRONLY`) " @@ -1338,19 +1338,19 @@ msgid "" "const:`O_BINARY` is needed to open files in binary mode." msgstr "" -#: library/os.rst:1239 +#: library/os.rst:1240 msgid "" "This function can support :ref:`paths relative to directory descriptors " "` with the *dir_fd* parameter." msgstr "" -#: library/os.rst:1242 +#: library/os.rst:1243 msgid "" "Raises an :ref:`auditing event ` ``open`` with arguments ``path``, " "``mode``, ``flags``." msgstr "" -#: library/os.rst:1249 +#: library/os.rst:1250 msgid "" "This function is intended for low-level I/O. For normal usage, use the " "built-in function :func:`open`, which returns a :term:`file object` with :" @@ -1358,27 +1358,27 @@ msgid "" "a file descriptor in a file object, use :func:`fdopen`." msgstr "" -#: library/os.rst:2331 library/os.rst:2442 library/os.rst:2545 -#: library/os.rst:2682 library/os.rst:3439 +#: library/os.rst:2332 library/os.rst:2443 library/os.rst:2546 +#: library/os.rst:2683 library/os.rst:3440 msgid "Added the *dir_fd* parameter." msgstr "" -#: library/os.rst:1576 library/os.rst:4798 +#: library/os.rst:1577 library/os.rst:4798 msgid "" "If the system call is interrupted and the signal handler does not raise an " "exception, the function now retries the system call instead of raising an :" "exc:`InterruptedError` exception (see :pep:`475` for the rationale)." msgstr "" -#: library/os.rst:1963 library/os.rst:2026 library/os.rst:2112 -#: library/os.rst:2170 library/os.rst:2242 library/os.rst:2374 -#: library/os.rst:2445 library/os.rst:2508 library/os.rst:2597 -#: library/os.rst:2975 library/os.rst:3426 library/os.rst:3482 -#: library/os.rst:3643 library/os.rst:4007 library/os.rst:4560 +#: library/os.rst:1964 library/os.rst:2027 library/os.rst:2113 +#: library/os.rst:2171 library/os.rst:2243 library/os.rst:2375 +#: library/os.rst:2446 library/os.rst:2509 library/os.rst:2598 +#: library/os.rst:2976 library/os.rst:3427 library/os.rst:3483 +#: library/os.rst:3644 library/os.rst:4008 library/os.rst:4560 msgid "Accepts a :term:`path-like object`." msgstr "" -#: library/os.rst:1265 +#: library/os.rst:1266 msgid "" "The following constants are options for the *flags* parameter to the :func:" "`~os.open` function. They can be combined using the bitwise OR operator ``|" @@ -1388,45 +1388,45 @@ msgid "" "on Windows." msgstr "" -#: library/os.rst:1280 +#: library/os.rst:1281 msgid "The above constants are available on Unix and Windows." msgstr "" -#: library/os.rst:1291 +#: library/os.rst:1292 msgid "The above constants are only available on Unix." msgstr "" -#: library/os.rst:1293 +#: library/os.rst:1294 msgid "Add :data:`O_CLOEXEC` constant." msgstr "" -#: library/os.rst:1304 +#: library/os.rst:1305 msgid "The above constants are only available on Windows." msgstr "" -#: library/os.rst:1311 +#: library/os.rst:1312 msgid "The above constants are only available on macOS." msgstr "" -#: library/os.rst:1313 +#: library/os.rst:1314 msgid "" "Add :data:`O_EVTONLY`, :data:`O_FSYNC`, :data:`O_SYMLINK` and :data:" "`O_NOFOLLOW_ANY` constants." msgstr "" -#: library/os.rst:1327 +#: library/os.rst:1328 msgid "" "The above constants are extensions and not present if they are not defined " "by the C library." msgstr "" -#: library/os.rst:1330 +#: library/os.rst:1331 msgid "" "Add :data:`O_PATH` on systems that support it. Add :data:`O_TMPFILE`, only " "available on Linux Kernel 3.11 or newer." msgstr "" -#: library/os.rst:1340 +#: library/os.rst:1341 msgid "" "Open a new pseudo-terminal pair. Return a pair of file descriptors " "``(master, slave)`` for the pty and the tty, respectively. The new file " @@ -1434,18 +1434,18 @@ msgid "" "more portable approach, use the :mod:`pty` module." msgstr "" -#: library/os.rst:1359 +#: library/os.rst:1360 msgid "The new file descriptors are now non-inheritable." msgstr "" -#: library/os.rst:1353 +#: library/os.rst:1354 msgid "" "Create a pipe. Return a pair of file descriptors ``(r, w)`` usable for " "reading and writing, respectively. The new file descriptor is :ref:`non-" "inheritable `." msgstr "" -#: library/os.rst:1365 +#: library/os.rst:1366 msgid "" "Create a pipe with *flags* set atomically. *flags* can be constructed by " "ORing together one or more of these values: :data:`O_NONBLOCK`, :data:" @@ -1453,13 +1453,13 @@ msgid "" "and writing, respectively." msgstr "" -#: library/os.rst:1378 +#: library/os.rst:1379 msgid "" "Ensures that enough disk space is allocated for the file specified by *fd* " "starting from *offset* and continuing for *len* bytes." msgstr "" -#: library/os.rst:1388 +#: library/os.rst:1389 msgid "" "Announces an intention to access data in a specific pattern thus allowing " "the kernel to make optimizations. The advice applies to the region of the " @@ -1470,25 +1470,25 @@ msgid "" "`POSIX_FADV_DONTNEED`." msgstr "" -#: library/os.rst:1408 +#: library/os.rst:1409 msgid "" "Flags that can be used in *advice* in :func:`posix_fadvise` that specify the " "access pattern that is likely to be used." msgstr "" -#: library/os.rst:1418 +#: library/os.rst:1419 msgid "" "Read at most *n* bytes from file descriptor *fd* at a position of *offset*, " "leaving the file offset unchanged." msgstr "" -#: library/os.rst:1565 +#: library/os.rst:1566 msgid "" "Return a bytestring containing the bytes read. If the end of the file " "referred to by *fd* has been reached, an empty bytes object is returned." msgstr "" -#: library/os.rst:1431 +#: library/os.rst:1432 msgid "" "Read from a file descriptor *fd* at a position of *offset* into mutable :" "term:`bytes-like objects ` *buffers*, leaving the file " @@ -1496,77 +1496,77 @@ msgid "" "move on to the next buffer in the sequence to hold the rest of the data." msgstr "" -#: library/os.rst:1506 +#: library/os.rst:1507 msgid "" "The flags argument contains a bitwise OR of zero or more of the following " "flags:" msgstr "" -#: library/os.rst:1439 +#: library/os.rst:1440 msgid ":data:`RWF_HIPRI`" msgstr "" -#: library/os.rst:1440 +#: library/os.rst:1441 msgid ":data:`RWF_NOWAIT`" msgstr "" -#: library/os.rst:1702 +#: library/os.rst:1703 msgid "" "Return the total number of bytes actually read which can be less than the " "total capacity of all the objects." msgstr "" -#: library/os.rst:1515 library/os.rst:1767 +#: library/os.rst:1516 library/os.rst:1768 msgid "" "The operating system may set a limit (:func:`sysconf` value " "``'SC_IOV_MAX'``) on the number of buffers that can be used." msgstr "" -#: library/os.rst:1448 +#: library/os.rst:1449 msgid "Combine the functionality of :func:`os.readv` and :func:`os.pread`." msgstr "" -#: library/os.rst:1522 +#: library/os.rst:1523 msgid "Using flags requires Linux >= 4.6." msgstr "" -#: library/os.rst:1459 +#: library/os.rst:1460 msgid "" "Do not wait for data which is not immediately available. If this flag is " "specified, the system call will return instantly if it would have to read " "data from the backing storage or wait for a lock." msgstr "" -#: library/os.rst:1463 +#: library/os.rst:1464 msgid "" "If some data was successfully read, it will return the number of bytes read. " "If no bytes were read, it will return ``-1`` and set errno to :const:`errno." "EAGAIN`." msgstr "" -#: library/os.rst:1474 +#: library/os.rst:1475 msgid "" "High priority read/write. Allows block-based filesystems to use polling of " "the device, which provides lower latency, but may use additional resources." msgstr "" -#: library/os.rst:1478 +#: library/os.rst:1479 msgid "" "Currently, on Linux, this feature is usable only on a file descriptor opened " "using the :data:`O_DIRECT` flag." msgstr "" -#: library/os.rst:1488 +#: library/os.rst:1489 msgid "" "Write the bytestring in *str* to file descriptor *fd* at position of " "*offset*, leaving the file offset unchanged." msgstr "" -#: library/os.rst:1742 +#: library/os.rst:1743 msgid "Return the number of bytes actually written." msgstr "" -#: library/os.rst:1500 +#: library/os.rst:1501 msgid "" "Write the *buffers* contents to file descriptor *fd* at an offset *offset*, " "leaving the file offset unchanged. *buffers* must be a sequence of :term:" @@ -1575,39 +1575,39 @@ msgid "" "the second, and so on." msgstr "" -#: library/os.rst:1509 +#: library/os.rst:1510 msgid ":data:`RWF_DSYNC`" msgstr "" -#: library/os.rst:1510 +#: library/os.rst:1511 msgid ":data:`RWF_SYNC`" msgstr "" -#: library/os.rst:1511 +#: library/os.rst:1512 msgid ":data:`RWF_APPEND`" msgstr "" -#: library/os.rst:1513 +#: library/os.rst:1514 msgid "Return the total number of bytes actually written." msgstr "" -#: library/os.rst:1518 +#: library/os.rst:1519 msgid "Combine the functionality of :func:`os.writev` and :func:`os.pwrite`." msgstr "" -#: library/os.rst:1529 +#: library/os.rst:1530 msgid "" "Provide a per-write equivalent of the :data:`O_DSYNC` :func:`os.open` flag. " "This flag effect applies only to the data range written by the system call." msgstr "" -#: library/os.rst:1539 +#: library/os.rst:1540 msgid "" "Provide a per-write equivalent of the :data:`O_SYNC` :func:`os.open` flag. " "This flag effect applies only to the data range written by the system call." msgstr "" -#: library/os.rst:1549 +#: library/os.rst:1550 msgid "" "Provide a per-write equivalent of the :data:`O_APPEND` :func:`os.open` flag. " "This flag is meaningful only for :func:`os.pwritev`, and its effect applies " @@ -1617,11 +1617,11 @@ msgid "" "*offset* is updated." msgstr "" -#: library/os.rst:1563 +#: library/os.rst:1564 msgid "Read at most *n* bytes from file descriptor *fd*." msgstr "" -#: library/os.rst:1570 +#: library/os.rst:1571 msgid "" "This function is intended for low-level I/O and must be applied to a file " "descriptor as returned by :func:`os.open` or :func:`pipe`. To read a \"file " @@ -1630,26 +1630,26 @@ msgid "" "`~file.readline` methods." msgstr "" -#: library/os.rst:1585 +#: library/os.rst:1586 msgid "" "Copy *count* bytes from file descriptor *in_fd* to file descriptor *out_fd* " "starting at *offset*. Return the number of bytes sent. When EOF is reached " "return ``0``." msgstr "" -#: library/os.rst:1589 +#: library/os.rst:1590 msgid "" "The first function notation is supported by all platforms that define :func:" "`sendfile`." msgstr "" -#: library/os.rst:1592 +#: library/os.rst:1593 msgid "" "On Linux, if *offset* is given as ``None``, the bytes are read from the " "current position of *in_fd* and the position of *in_fd* is updated." msgstr "" -#: library/os.rst:1595 +#: library/os.rst:1596 msgid "" "The second case may be used on macOS and FreeBSD where *headers* and " "*trailers* are arbitrary sequences of buffers that are written before and " @@ -1657,58 +1657,58 @@ msgid "" "case." msgstr "" -#: library/os.rst:1599 +#: library/os.rst:1600 msgid "" "On macOS and FreeBSD, a value of ``0`` for *count* specifies to send until " "the end of *in_fd* is reached." msgstr "" -#: library/os.rst:1602 +#: library/os.rst:1603 msgid "" "All platforms support sockets as *out_fd* file descriptor, and some " "platforms allow other types (e.g. regular file, pipe) as well." msgstr "" -#: library/os.rst:1605 +#: library/os.rst:1606 msgid "" "Cross-platform applications should not use *headers*, *trailers* and *flags* " "arguments." msgstr "" -#: library/os.rst:1612 +#: library/os.rst:1613 msgid "" "For a higher-level wrapper of :func:`sendfile`, see :meth:`socket.socket." "sendfile`." msgstr "" -#: library/os.rst:1617 +#: library/os.rst:1618 msgid "Parameters *out* and *in* was renamed to *out_fd* and *in_fd*." msgstr "" -#: library/os.rst:1625 +#: library/os.rst:1626 msgid "" "Parameters to the :func:`sendfile` function, if the implementation supports " "them." msgstr "" -#: library/os.rst:1634 +#: library/os.rst:1635 msgid "" "Parameter to the :func:`sendfile` function, if the implementation supports " "it. The data won't be cached in the virtual memory and will be freed " "afterwards." msgstr "" -#: library/os.rst:1644 +#: library/os.rst:1645 msgid "" "Set the blocking mode of the specified file descriptor. Set the :data:" "`O_NONBLOCK` flag if blocking is ``False``, clear the flag otherwise." msgstr "" -#: library/os.rst:1647 +#: library/os.rst:1648 msgid "See also :func:`get_blocking` and :meth:`socket.socket.setblocking`." msgstr "" -#: library/os.rst:1664 +#: library/os.rst:1665 msgid "" "Transfer *count* bytes from file descriptor *src*, starting from offset " "*offset_src*, to file descriptor *dst*, starting from offset *offset_dst*. " @@ -1720,7 +1720,7 @@ msgid "" "`~OSError.errno` set to :const:`errno.EXDEV`." msgstr "" -#: library/os.rst:1673 +#: library/os.rst:1674 msgid "" "This copy is done without the additional cost of transferring data from the " "kernel to user space and then back into the kernel. Additionally, some " @@ -1728,7 +1728,7 @@ msgid "" "files are opened as binary." msgstr "" -#: library/os.rst:1678 +#: library/os.rst:1679 msgid "" "Upon successful completion, returns the number of bytes spliced to or from " "the pipe. A return value of 0 means end of input. If *src* refers to a pipe, " @@ -1737,7 +1737,7 @@ msgid "" "the pipe." msgstr "" -#: library/os.rst:1697 +#: library/os.rst:1698 msgid "" "Read from a file descriptor *fd* into a number of mutable :term:`bytes-like " "objects ` *buffers*. Transfer data into each buffer until " @@ -1745,30 +1745,30 @@ msgid "" "rest of the data." msgstr "" -#: library/os.rst:1715 +#: library/os.rst:1716 msgid "" "Return the process group associated with the terminal given by *fd* (an open " "file descriptor as returned by :func:`os.open`)." msgstr "" -#: library/os.rst:1723 +#: library/os.rst:1724 msgid "" "Set the process group associated with the terminal given by *fd* (an open " "file descriptor as returned by :func:`os.open`) to *pg*." msgstr "" -#: library/os.rst:1731 +#: library/os.rst:1732 msgid "" "Return a string which specifies the terminal device associated with file " "descriptor *fd*. If *fd* is not associated with a terminal device, an " "exception is raised." msgstr "" -#: library/os.rst:1740 +#: library/os.rst:1741 msgid "Write the bytestring in *str* to file descriptor *fd*." msgstr "" -#: library/os.rst:1746 +#: library/os.rst:1747 msgid "" "This function is intended for low-level I/O and must be applied to a file " "descriptor as returned by :func:`os.open` or :func:`pipe`. To write a " @@ -1777,7 +1777,7 @@ msgid "" "its :meth:`~file.write` method." msgstr "" -#: library/os.rst:1760 +#: library/os.rst:1761 msgid "" "Write the contents of *buffers* to file descriptor *fd*. *buffers* must be a " "sequence of :term:`bytes-like objects `. Buffers are " @@ -1785,70 +1785,70 @@ msgid "" "before proceeding to the second, and so on." msgstr "" -#: library/os.rst:1765 +#: library/os.rst:1766 msgid "Returns the total number of bytes actually written." msgstr "" -#: library/os.rst:1778 +#: library/os.rst:1779 msgid "Querying the size of a terminal" msgstr "" -#: library/os.rst:1784 +#: library/os.rst:1785 msgid "" "Return the size of the terminal window as ``(columns, lines)``, tuple of " "type :class:`terminal_size`." msgstr "" -#: library/os.rst:1787 +#: library/os.rst:1788 msgid "" "The optional argument ``fd`` (default ``STDOUT_FILENO``, or standard output) " "specifies which file descriptor should be queried." msgstr "" -#: library/os.rst:1790 +#: library/os.rst:1791 msgid "" "If the file descriptor is not connected to a terminal, an :exc:`OSError` is " "raised." msgstr "" -#: library/os.rst:1793 +#: library/os.rst:1794 msgid "" ":func:`shutil.get_terminal_size` is the high-level function which should " "normally be used, ``os.get_terminal_size`` is the low-level implementation." msgstr "" -#: library/os.rst:1801 +#: library/os.rst:1802 msgid "" "A subclass of tuple, holding ``(columns, lines)`` of the terminal window " "size." msgstr "" -#: library/os.rst:1805 +#: library/os.rst:1806 msgid "Width of the terminal window in characters." msgstr "" -#: library/os.rst:1809 +#: library/os.rst:1810 msgid "Height of the terminal window in characters." msgstr "" -#: library/os.rst:1815 +#: library/os.rst:1816 msgid "Inheritance of File Descriptors" msgstr "" -#: library/os.rst:1819 +#: library/os.rst:1820 msgid "" "A file descriptor has an \"inheritable\" flag which indicates if the file " "descriptor can be inherited by child processes. Since Python 3.4, file " "descriptors created by Python are non-inheritable by default." msgstr "" -#: library/os.rst:1823 +#: library/os.rst:1824 msgid "" "On UNIX, non-inheritable file descriptors are closed in child processes at " "the execution of a new program, other file descriptors are inherited." msgstr "" -#: library/os.rst:1826 +#: library/os.rst:1827 msgid "" "On Windows, non-inheritable handles and file descriptors are closed in child " "processes, except for standard streams (file descriptors 0, 1 and 2: stdin, " @@ -1859,40 +1859,40 @@ msgid "" "only inherited if the *close_fds* parameter is ``False``." msgstr "" -#: library/os.rst:1834 +#: library/os.rst:1835 msgid "" "On WebAssembly platforms ``wasm32-emscripten`` and ``wasm32-wasi``, the file " "descriptor cannot be modified." msgstr "" -#: library/os.rst:1839 +#: library/os.rst:1840 msgid "" "Get the \"inheritable\" flag of the specified file descriptor (a boolean)." msgstr "" -#: library/os.rst:1843 +#: library/os.rst:1844 msgid "Set the \"inheritable\" flag of the specified file descriptor." msgstr "" -#: library/os.rst:1847 +#: library/os.rst:1848 msgid "Get the \"inheritable\" flag of the specified handle (a boolean)." msgstr "" -#: library/os.rst:1853 +#: library/os.rst:1854 msgid "Set the \"inheritable\" flag of the specified handle." msgstr "" -#: library/os.rst:1861 +#: library/os.rst:1862 msgid "Files and Directories" msgstr "" -#: library/os.rst:1863 +#: library/os.rst:1864 msgid "" "On some Unix platforms, many of these functions support one or more of these " "features:" msgstr "" -#: library/os.rst:1868 +#: library/os.rst:1869 msgid "" "**specifying a file descriptor:** Normally the *path* argument provided to " "functions in the :mod:`os` module must be a string specifying a file path. " @@ -1903,7 +1903,7 @@ msgid "" "``chdir``).)" msgstr "" -#: library/os.rst:1876 +#: library/os.rst:1877 msgid "" "You can check whether or not *path* can be specified as a file descriptor " "for a particular function on your platform using :data:`os.supports_fd`. If " @@ -1911,13 +1911,13 @@ msgid "" "`NotImplementedError`." msgstr "" -#: library/os.rst:1881 +#: library/os.rst:1882 msgid "" "If the function also supports *dir_fd* or *follow_symlinks* arguments, it's " "an error to specify one of those when supplying *path* as a file descriptor." msgstr "" -#: library/os.rst:1886 +#: library/os.rst:1887 msgid "" "**paths relative to directory descriptors:** If *dir_fd* is not ``None``, it " "should be a file descriptor referring to a directory, and the path to " @@ -1928,14 +1928,14 @@ msgid "" "``access``)." msgstr "" -#: library/os.rst:1893 +#: library/os.rst:1894 msgid "" "You can check whether or not *dir_fd* is supported for a particular function " "on your platform using :data:`os.supports_dir_fd`. If it's unavailable, " "using it will raise a :exc:`NotImplementedError`." msgstr "" -#: library/os.rst:1899 +#: library/os.rst:1900 msgid "" "**not following symlinks:** If *follow_symlinks* is ``False``, and the last " "element of the path to operate on is a symbolic link, the function will " @@ -1944,14 +1944,14 @@ msgid "" "function.)" msgstr "" -#: library/os.rst:1905 +#: library/os.rst:1906 msgid "" "You can check whether or not *follow_symlinks* is supported for a particular " "function on your platform using :data:`os.supports_follow_symlinks`. If it's " "unavailable, using it will raise a :exc:`NotImplementedError`." msgstr "" -#: library/os.rst:1913 +#: library/os.rst:1914 msgid "" "Use the real uid/gid to test for access to *path*. Note that most " "operations will use the effective uid/gid, therefore this routine can be " @@ -1963,13 +1963,13 @@ msgid "" "manpage:`access(2)` for more information." msgstr "" -#: library/os.rst:1922 +#: library/os.rst:1923 msgid "" "This function can support specifying :ref:`paths relative to directory " "descriptors ` and :ref:`not following symlinks `." msgstr "" -#: library/os.rst:1925 +#: library/os.rst:1926 msgid "" "If *effective_ids* is ``True``, :func:`access` will perform its access " "checks using the effective uid/gid instead of the real uid/gid. " @@ -1978,7 +1978,7 @@ msgid "" "unavailable, using it will raise a :exc:`NotImplementedError`." msgstr "" -#: library/os.rst:1933 +#: library/os.rst:1934 msgid "" "Using :func:`access` to check if a user is authorized to e.g. open a file " "before actually doing so using :func:`open` creates a security hole, because " @@ -1987,7 +1987,7 @@ msgid "" "For example::" msgstr "" -#: library/os.rst:1939 +#: library/os.rst:1940 msgid "" "if os.access(\"myfile\", os.R_OK):\n" " with open(\"myfile\") as fp:\n" @@ -1995,11 +1995,11 @@ msgid "" "return \"some default data\"" msgstr "" -#: library/os.rst:1944 +#: library/os.rst:1945 msgid "is better written as::" msgstr "" -#: library/os.rst:1946 +#: library/os.rst:1947 msgid "" "try:\n" " fp = open(\"myfile\")\n" @@ -2010,274 +2010,274 @@ msgid "" " return fp.read()" msgstr "" -#: library/os.rst:1956 +#: library/os.rst:1957 msgid "" "I/O operations may fail even when :func:`access` indicates that they would " "succeed, particularly for operations on network filesystems which may have " "permissions semantics beyond the usual POSIX permission-bit model." msgstr "" -#: library/os.rst:1960 +#: library/os.rst:1961 msgid "Added the *dir_fd*, *effective_ids*, and *follow_symlinks* parameters." msgstr "" -#: library/os.rst:1972 +#: library/os.rst:1973 msgid "" "Values to pass as the *mode* parameter of :func:`access` to test the " "existence, readability, writability and executability of *path*, " "respectively." msgstr "" -#: library/os.rst:1981 +#: library/os.rst:1982 msgid "Change the current working directory to *path*." msgstr "" -#: library/os.rst:1983 +#: library/os.rst:1984 msgid "" "This function can support :ref:`specifying a file descriptor `. " "The descriptor must refer to an opened directory, not an open file." msgstr "" -#: library/os.rst:1986 +#: library/os.rst:1987 msgid "" "This function can raise :exc:`OSError` and subclasses such as :exc:" "`FileNotFoundError`, :exc:`PermissionError`, and :exc:`NotADirectoryError`." msgstr "" -#: library/os.rst:2122 +#: library/os.rst:2123 msgid "" "Raises an :ref:`auditing event ` ``os.chdir`` with argument " "``path``." msgstr "" -#: library/os.rst:1991 +#: library/os.rst:1992 msgid "" "Added support for specifying *path* as a file descriptor on some platforms." msgstr "" -#: library/os.rst:2001 +#: library/os.rst:2002 msgid "" "Set the flags of *path* to the numeric *flags*. *flags* may take a " "combination (bitwise OR) of the following values (as defined in the :mod:" "`stat` module):" msgstr "" -#: library/os.rst:2004 +#: library/os.rst:2005 msgid ":const:`stat.UF_NODUMP`" msgstr "" -#: library/os.rst:2005 +#: library/os.rst:2006 msgid ":const:`stat.UF_IMMUTABLE`" msgstr "" -#: library/os.rst:2006 +#: library/os.rst:2007 msgid ":const:`stat.UF_APPEND`" msgstr "" -#: library/os.rst:2007 +#: library/os.rst:2008 msgid ":const:`stat.UF_OPAQUE`" msgstr "" -#: library/os.rst:2008 +#: library/os.rst:2009 msgid ":const:`stat.UF_NOUNLINK`" msgstr "" -#: library/os.rst:2009 +#: library/os.rst:2010 msgid ":const:`stat.UF_COMPRESSED`" msgstr "" -#: library/os.rst:2010 +#: library/os.rst:2011 msgid ":const:`stat.UF_HIDDEN`" msgstr "" -#: library/os.rst:2011 +#: library/os.rst:2012 msgid ":const:`stat.SF_ARCHIVED`" msgstr "" -#: library/os.rst:2012 +#: library/os.rst:2013 msgid ":const:`stat.SF_IMMUTABLE`" msgstr "" -#: library/os.rst:2013 +#: library/os.rst:2014 msgid ":const:`stat.SF_APPEND`" msgstr "" -#: library/os.rst:2014 +#: library/os.rst:2015 msgid ":const:`stat.SF_NOUNLINK`" msgstr "" -#: library/os.rst:2015 +#: library/os.rst:2016 msgid ":const:`stat.SF_SNAPSHOT`" msgstr "" -#: library/os.rst:2017 +#: library/os.rst:2018 msgid "" "This function can support :ref:`not following symlinks `." msgstr "" -#: library/os.rst:2148 +#: library/os.rst:2149 msgid "" "Raises an :ref:`auditing event ` ``os.chflags`` with arguments " "``path``, ``flags``." msgstr "" -#: library/os.rst:2023 +#: library/os.rst:2024 msgid "Added the *follow_symlinks* parameter." msgstr "" -#: library/os.rst:2032 +#: library/os.rst:2033 msgid "" "Change the mode of *path* to the numeric *mode*. *mode* may take one of the " "following values (as defined in the :mod:`stat` module) or bitwise ORed " "combinations of them:" msgstr "" -#: library/os.rst:2036 +#: library/os.rst:2037 msgid ":const:`stat.S_ISUID`" msgstr "" -#: library/os.rst:2037 +#: library/os.rst:2038 msgid ":const:`stat.S_ISGID`" msgstr "" -#: library/os.rst:2038 +#: library/os.rst:2039 msgid ":const:`stat.S_ENFMT`" msgstr "" -#: library/os.rst:2039 +#: library/os.rst:2040 msgid ":const:`stat.S_ISVTX`" msgstr "" -#: library/os.rst:2040 +#: library/os.rst:2041 msgid ":const:`stat.S_IREAD`" msgstr "" -#: library/os.rst:2041 +#: library/os.rst:2042 msgid ":const:`stat.S_IWRITE`" msgstr "" -#: library/os.rst:2042 +#: library/os.rst:2043 msgid ":const:`stat.S_IEXEC`" msgstr "" -#: library/os.rst:2043 +#: library/os.rst:2044 msgid ":const:`stat.S_IRWXU`" msgstr "" -#: library/os.rst:2044 +#: library/os.rst:2045 msgid ":const:`stat.S_IRUSR`" msgstr "" -#: library/os.rst:2045 +#: library/os.rst:2046 msgid ":const:`stat.S_IWUSR`" msgstr "" -#: library/os.rst:2046 +#: library/os.rst:2047 msgid ":const:`stat.S_IXUSR`" msgstr "" -#: library/os.rst:2047 +#: library/os.rst:2048 msgid ":const:`stat.S_IRWXG`" msgstr "" -#: library/os.rst:2048 +#: library/os.rst:2049 msgid ":const:`stat.S_IRGRP`" msgstr "" -#: library/os.rst:2049 +#: library/os.rst:2050 msgid ":const:`stat.S_IWGRP`" msgstr "" -#: library/os.rst:2050 +#: library/os.rst:2051 msgid ":const:`stat.S_IXGRP`" msgstr "" -#: library/os.rst:2051 +#: library/os.rst:2052 msgid ":const:`stat.S_IRWXO`" msgstr "" -#: library/os.rst:2052 +#: library/os.rst:2053 msgid ":const:`stat.S_IROTH`" msgstr "" -#: library/os.rst:2053 +#: library/os.rst:2054 msgid ":const:`stat.S_IWOTH`" msgstr "" -#: library/os.rst:2054 +#: library/os.rst:2055 msgid ":const:`stat.S_IXOTH`" msgstr "" -#: library/os.rst:2084 library/os.rst:3472 +#: library/os.rst:2085 library/os.rst:3473 msgid "" "This function can support :ref:`specifying a file descriptor `, :" "ref:`paths relative to directory descriptors ` and :ref:`not " "following symlinks `." msgstr "" -#: library/os.rst:2062 +#: library/os.rst:2063 msgid "" "Although Windows supports :func:`chmod`, you can only set the file's read-" "only flag with it (via the ``stat.S_IWRITE`` and ``stat.S_IREAD`` constants " "or a corresponding integer value). All other bits are ignored." msgstr "" -#: library/os.rst:2098 +#: library/os.rst:2099 msgid "" "Added support for specifying *path* as an open file descriptor, and the " "*dir_fd* and *follow_symlinks* arguments." msgstr "" -#: library/os.rst:2081 +#: library/os.rst:2082 msgid "" "Change the owner and group id of *path* to the numeric *uid* and *gid*. To " "leave one of the ids unchanged, set it to -1." msgstr "" -#: library/os.rst:2088 +#: library/os.rst:2089 msgid "" "See :func:`shutil.chown` for a higher-level function that accepts names in " "addition to numeric ids." msgstr "" -#: library/os.rst:2102 +#: library/os.rst:2103 msgid "Supports a :term:`path-like object`." msgstr "" -#: library/os.rst:2108 +#: library/os.rst:2109 msgid "Change the root directory of the current process to *path*." msgstr "" -#: library/os.rst:2118 +#: library/os.rst:2119 msgid "" "Change the current working directory to the directory represented by the " "file descriptor *fd*. The descriptor must refer to an opened directory, not " "an open file. As of Python 3.3, this is equivalent to ``os.chdir(fd)``." msgstr "" -#: library/os.rst:2129 +#: library/os.rst:2130 msgid "Return a string representing the current working directory." msgstr "" -#: library/os.rst:2134 +#: library/os.rst:2135 msgid "Return a bytestring representing the current working directory." msgstr "" -#: library/os.rst:2136 +#: library/os.rst:2137 msgid "" "The function now uses the UTF-8 encoding on Windows, rather than the ANSI " "code page: see :pep:`529` for the rationale. The function is no longer " "deprecated on Windows." msgstr "" -#: library/os.rst:2144 +#: library/os.rst:2145 msgid "" "Set the flags of *path* to the numeric *flags*, like :func:`chflags`, but do " "not follow symbolic links. As of Python 3.3, this is equivalent to ``os." "chflags(path, flags, follow_symlinks=False)``." msgstr "" -#: library/os.rst:2158 +#: library/os.rst:2159 msgid "" "Change the mode of *path* to the numeric *mode*. If path is a symlink, this " "affects the symlink rather than the target. See the docs for :func:`chmod` " @@ -2285,31 +2285,31 @@ msgid "" "chmod(path, mode, follow_symlinks=False)``." msgstr "" -#: library/os.rst:2163 +#: library/os.rst:2164 msgid "" "``lchmod()`` is not part of POSIX, but Unix implementations may have it if " "changing the mode of symbolic links is supported." msgstr "" -#: library/os.rst:2175 +#: library/os.rst:2176 msgid "" "Change the owner and group id of *path* to the numeric *uid* and *gid*. " "This function will not follow symbolic links. As of Python 3.3, this is " "equivalent to ``os.chown(path, uid, gid, follow_symlinks=False)``." msgstr "" -#: library/os.rst:2189 +#: library/os.rst:2190 msgid "Create a hard link pointing to *src* named *dst*." msgstr "" -#: library/os.rst:2191 +#: library/os.rst:2192 msgid "" "This function can support specifying *src_dir_fd* and/or *dst_dir_fd* to " "supply :ref:`paths relative to directory descriptors `, and :ref:" "`not following symlinks `." msgstr "" -#: library/os.rst:2195 +#: library/os.rst:2196 msgid "" "Raises an :ref:`auditing event ` ``os.link`` with arguments " "``src``, ``dst``, ``src_dir_fd``, ``dst_dir_fd``." @@ -2319,15 +2319,15 @@ msgstr "" msgid "Added Windows support." msgstr "" -#: library/os.rst:2202 +#: library/os.rst:2203 msgid "Added the *src_dir_fd*, *dst_dir_fd*, and *follow_symlinks* parameters." msgstr "" -#: library/os.rst:2629 library/os.rst:3394 +#: library/os.rst:2630 library/os.rst:3395 msgid "Accepts a :term:`path-like object` for *src* and *dst*." msgstr "" -#: library/os.rst:2211 +#: library/os.rst:2212 msgid "" "Return a list containing the names of the entries in the directory given by " "*path*. The list is in arbitrary order, and does not include the special " @@ -2336,7 +2336,7 @@ msgid "" "function, whether a name for that file be included is unspecified." msgstr "" -#: library/os.rst:2217 +#: library/os.rst:2218 msgid "" "*path* may be a :term:`path-like object`. If *path* is of type ``bytes`` " "(directly or indirectly through the :class:`PathLike` interface), the " @@ -2344,41 +2344,41 @@ msgid "" "circumstances, they will be of type ``str``." msgstr "" -#: library/os.rst:2714 +#: library/os.rst:2715 msgid "" "This function can also support :ref:`specifying a file descriptor " "`; the file descriptor must refer to a directory." msgstr "" -#: library/os.rst:2225 +#: library/os.rst:2226 msgid "" "Raises an :ref:`auditing event ` ``os.listdir`` with argument " "``path``." msgstr "" -#: library/os.rst:2228 +#: library/os.rst:2229 msgid "To encode ``str`` filenames to ``bytes``, use :func:`~os.fsencode`." msgstr "" -#: library/os.rst:2232 +#: library/os.rst:2233 msgid "" "The :func:`scandir` function returns directory entries along with file " "attribute information, giving better performance for many common use cases." msgstr "" -#: library/os.rst:2236 +#: library/os.rst:2237 msgid "The *path* parameter became optional." msgstr "" -#: library/os.rst:3253 +#: library/os.rst:3254 msgid "Added support for specifying *path* as an open file descriptor." msgstr "" -#: library/os.rst:2248 +#: library/os.rst:2249 msgid "Return a list containing the names of drives on a Windows system." msgstr "" -#: library/os.rst:2250 +#: library/os.rst:2251 msgid "" "A drive name typically looks like ``'C:\\\\'``. Not every drive name will be " "associated with a volume, and some may be inaccessible for a variety of " @@ -2386,22 +2386,22 @@ msgid "" "function does not test for access." msgstr "" -#: library/os.rst:2255 +#: library/os.rst:2256 msgid "May raise :exc:`OSError` if an error occurs collecting the drive names." msgstr "" -#: library/os.rst:2258 +#: library/os.rst:2259 msgid "" "Raises an :ref:`auditing event ` ``os.listdrives`` with no " "arguments." msgstr "" -#: library/os.rst:2267 +#: library/os.rst:2268 msgid "" "Return a list containing the mount points for a volume on a Windows system." msgstr "" -#: library/os.rst:2270 +#: library/os.rst:2271 msgid "" "*volume* must be represented as a GUID path, like those returned by :func:" "`os.listvolumes`. Volumes may be mounted in multiple locations or not at " @@ -2409,29 +2409,29 @@ msgid "" "associated with a volume will not be returned by this function." msgstr "" -#: library/os.rst:2276 +#: library/os.rst:2277 msgid "" "The mount points return by this function will be absolute paths, and may be " "longer than the drive name." msgstr "" -#: library/os.rst:2279 +#: library/os.rst:2280 msgid "" "Raises :exc:`OSError` if the volume is not recognized or if an error occurs " "collecting the paths." msgstr "" -#: library/os.rst:2282 +#: library/os.rst:2283 msgid "" "Raises an :ref:`auditing event ` ``os.listmounts`` with argument " "``volume``." msgstr "" -#: library/os.rst:2291 +#: library/os.rst:2292 msgid "Return a list containing the volumes in the system." msgstr "" -#: library/os.rst:2293 +#: library/os.rst:2294 msgid "" "Volumes are typically represented as a GUID path that looks like ``\\\\?" "\\Volume{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}\\``. Files can usually be " @@ -2440,46 +2440,46 @@ msgid "" "function is to retrieve mount points using :func:`os.listmounts`." msgstr "" -#: library/os.rst:2300 +#: library/os.rst:2301 msgid "May raise :exc:`OSError` if an error occurs collecting the volumes." msgstr "" -#: library/os.rst:2302 +#: library/os.rst:2303 msgid "" "Raises an :ref:`auditing event ` ``os.listvolumes`` with no " "arguments." msgstr "" -#: library/os.rst:2311 +#: library/os.rst:2312 msgid "" "Perform the equivalent of an :c:func:`!lstat` system call on the given path. " "Similar to :func:`~os.stat`, but does not follow symbolic links. Return a :" "class:`stat_result` object." msgstr "" -#: library/os.rst:2315 +#: library/os.rst:2316 msgid "" "On platforms that do not support symbolic links, this is an alias for :func:" "`~os.stat`." msgstr "" -#: library/os.rst:2318 +#: library/os.rst:2319 msgid "" "As of Python 3.3, this is equivalent to ``os.stat(path, dir_fd=dir_fd, " "follow_symlinks=False)``." msgstr "" -#: library/os.rst:2363 library/os.rst:2459 library/os.rst:2533 +#: library/os.rst:2364 library/os.rst:2460 library/os.rst:2534 msgid "" "This function can also support :ref:`paths relative to directory descriptors " "`." msgstr "" -#: library/os.rst:2542 library/os.rst:3387 +#: library/os.rst:2543 library/os.rst:3388 msgid "Added support for Windows 6.0 (Vista) symbolic links." msgstr "" -#: library/os.rst:2337 +#: library/os.rst:2338 msgid "" "On Windows, now opens reparse points that represent another path (name " "surrogates), including symbolic links and directory junctions. Other kinds " @@ -2487,18 +2487,18 @@ msgid "" "stat`." msgstr "" -#: library/os.rst:2346 +#: library/os.rst:2347 msgid "Create a directory named *path* with numeric mode *mode*." msgstr "" -#: library/os.rst:2348 +#: library/os.rst:2349 msgid "" "If the directory already exists, :exc:`FileExistsError` is raised. If a " "parent directory in the path does not exist, :exc:`FileNotFoundError` is " "raised." msgstr "" -#: library/os.rst:2353 +#: library/os.rst:2354 msgid "" "On some systems, *mode* is ignored. Where it is used, the current umask " "value is first masked out. If bits other than the last 9 (i.e. the last 3 " @@ -2507,36 +2507,36 @@ msgid "" "call :func:`chmod` explicitly to set them." msgstr "" -#: library/os.rst:2359 +#: library/os.rst:2360 msgid "" "On Windows, a *mode* of ``0o700`` is specifically handled to apply access " "control to the new directory such that only the current user and " "administrators have access. Other values of *mode* are ignored." msgstr "" -#: library/os.rst:2366 +#: library/os.rst:2367 msgid "" "It is also possible to create temporary directories; see the :mod:`tempfile` " "module's :func:`tempfile.mkdtemp` function." msgstr "" -#: library/os.rst:2406 +#: library/os.rst:2407 msgid "" "Raises an :ref:`auditing event ` ``os.mkdir`` with arguments " "``path``, ``mode``, ``dir_fd``." msgstr "" -#: library/os.rst:2377 +#: library/os.rst:2378 msgid "Windows now handles a *mode* of ``0o700``." msgstr "" -#: library/os.rst:2387 +#: library/os.rst:2388 msgid "" "Recursive directory creation function. Like :func:`mkdir`, but makes all " "intermediate-level directories needed to contain the leaf directory." msgstr "" -#: library/os.rst:2390 +#: library/os.rst:2391 msgid "" "The *mode* parameter is passed to :func:`mkdir` for creating the leaf " "directory; see :ref:`the mkdir() description ` for how it is " @@ -2545,27 +2545,27 @@ msgid "" "file permission bits of existing parent directories are not changed." msgstr "" -#: library/os.rst:2396 +#: library/os.rst:2397 msgid "" "If *exist_ok* is ``False`` (the default), a :exc:`FileExistsError` is raised " "if the target directory already exists." msgstr "" -#: library/os.rst:2401 +#: library/os.rst:2402 msgid "" ":func:`makedirs` will become confused if the path elements to create " "include :data:`pardir` (eg. \"..\" on UNIX systems)." msgstr "" -#: library/os.rst:2404 +#: library/os.rst:2405 msgid "This function handles UNC paths correctly." msgstr "" -#: library/os.rst:2408 +#: library/os.rst:2409 msgid "Added the *exist_ok* parameter." msgstr "" -#: library/os.rst:2413 +#: library/os.rst:2414 msgid "" "Before Python 3.4.1, if *exist_ok* was ``True`` and the directory existed, :" "func:`makedirs` would still raise an error if *mode* did not match the mode " @@ -2573,19 +2573,19 @@ msgid "" "safely, it was removed in Python 3.4.1. See :issue:`21082`." msgstr "" -#: library/os.rst:2421 +#: library/os.rst:2422 msgid "" "The *mode* argument no longer affects the file permission bits of newly " "created intermediate-level directories." msgstr "" -#: library/os.rst:2428 +#: library/os.rst:2429 msgid "" "Create a FIFO (a named pipe) named *path* with numeric mode *mode*. The " "current umask value is first masked out from the mode." msgstr "" -#: library/os.rst:2434 +#: library/os.rst:2435 msgid "" "FIFOs are pipes that can be accessed like regular files. FIFOs exist until " "they are deleted (for example with :func:`os.unlink`). Generally, FIFOs are " @@ -2595,7 +2595,7 @@ msgid "" "rendezvous point." msgstr "" -#: library/os.rst:2451 +#: library/os.rst:2452 msgid "" "Create a filesystem node (file, device special file or named pipe) named " "*path*. *mode* specifies both the permissions to use and the type of node to " @@ -2606,23 +2606,23 @@ msgid "" "`os.makedev`), otherwise it is ignored." msgstr "" -#: library/os.rst:2473 +#: library/os.rst:2474 msgid "" "Extract the device major number from a raw device number (usually the :attr:" "`st_dev` or :attr:`st_rdev` field from :c:struct:`stat`)." msgstr "" -#: library/os.rst:2479 +#: library/os.rst:2480 msgid "" "Extract the device minor number from a raw device number (usually the :attr:" "`st_dev` or :attr:`st_rdev` field from :c:struct:`stat`)." msgstr "" -#: library/os.rst:2485 +#: library/os.rst:2486 msgid "Compose a raw device number from the major and minor device numbers." msgstr "" -#: library/os.rst:2490 +#: library/os.rst:2491 msgid "" "Return system configuration information relevant to a named file. *name* " "specifies the configuration value to retrieve; it may be a string which is " @@ -2633,19 +2633,19 @@ msgid "" "included in that mapping, passing an integer for *name* is also accepted." msgstr "" -#: library/os.rst:3246 library/os.rst:3415 +#: library/os.rst:3247 library/os.rst:3416 msgid "" "This function can support :ref:`specifying a file descriptor `." msgstr "" -#: library/os.rst:2514 +#: library/os.rst:2515 msgid "" "Dictionary mapping names accepted by :func:`pathconf` and :func:`fpathconf` " "to the integer values defined for those names by the host operating system. " "This can be used to determine the set of names known to the system." msgstr "" -#: library/os.rst:2523 +#: library/os.rst:2524 msgid "" "Return a string representing the path to which the symbolic link points. " "The result may be either an absolute or relative pathname; if it is " @@ -2653,7 +2653,7 @@ msgid "" "join(os.path.dirname(path), result)``." msgstr "" -#: library/os.rst:2528 +#: library/os.rst:2529 msgid "" "If the *path* is a string object (directly or indirectly through a :class:" "`PathLike` interface), the result will also be a string object, and the call " @@ -2661,41 +2661,41 @@ msgid "" "indirectly), the result will be a bytes object." msgstr "" -#: library/os.rst:2536 +#: library/os.rst:2537 msgid "" "When trying to resolve a path that may contain links, use :func:`~os.path." "realpath` to properly handle recursion and platform differences." msgstr "" -#: library/os.rst:2548 +#: library/os.rst:2549 msgid "Accepts a :term:`path-like object` on Unix." msgstr "" -#: library/os.rst:2551 +#: library/os.rst:2552 msgid "Accepts a :term:`path-like object` and a bytes object on Windows." msgstr "" -#: library/os.rst:2554 +#: library/os.rst:2555 msgid "" "Added support for directory junctions, and changed to return the " "substitution path (which typically includes ``\\\\?\\`` prefix) rather than " "the optional \"print name\" field that was previously returned." msgstr "" -#: library/os.rst:2560 +#: library/os.rst:2561 msgid "" "Remove (delete) the file *path*. If *path* is a directory, an :exc:" "`OSError` is raised. Use :func:`rmdir` to remove directories. If the file " "does not exist, a :exc:`FileNotFoundError` is raised." msgstr "" -#: library/os.rst:2677 library/os.rst:3366 +#: library/os.rst:2678 library/os.rst:3367 msgid "" "This function can support :ref:`paths relative to directory descriptors " "`." msgstr "" -#: library/os.rst:2567 +#: library/os.rst:2568 msgid "" "On Windows, attempting to remove a file that is in use causes an exception " "to be raised; on Unix, the directory entry is removed but the storage " @@ -2703,17 +2703,17 @@ msgid "" "longer in use." msgstr "" -#: library/os.rst:2571 +#: library/os.rst:2572 msgid "This function is semantically identical to :func:`unlink`." msgstr "" -#: library/os.rst:2595 library/os.rst:3437 +#: library/os.rst:2596 library/os.rst:3438 msgid "" "Raises an :ref:`auditing event ` ``os.remove`` with arguments " "``path``, ``dir_fd``." msgstr "" -#: library/os.rst:2586 +#: library/os.rst:2587 msgid "" "Remove directories recursively. Works like :func:`rmdir` except that, if " "the leaf directory is successfully removed, :func:`removedirs` tries to " @@ -2725,20 +2725,20 @@ msgid "" "could not be successfully removed." msgstr "" -#: library/os.rst:2603 +#: library/os.rst:2604 msgid "" "Rename the file or directory *src* to *dst*. If *dst* exists, the operation " "will fail with an :exc:`OSError` subclass in a number of cases:" msgstr "" -#: library/os.rst:2606 +#: library/os.rst:2607 msgid "" "On Windows, if *dst* exists a :exc:`FileExistsError` is always raised. The " "operation may fail if *src* and *dst* are on different filesystems. Use :" "func:`shutil.move` to support moves to a different filesystem." msgstr "" -#: library/os.rst:2610 +#: library/os.rst:2611 msgid "" "On Unix, if *src* is a file and *dst* is a directory or vice-versa, an :exc:" "`IsADirectoryError` or a :exc:`NotADirectoryError` will be raised " @@ -2750,29 +2750,29 @@ msgid "" "operation (this is a POSIX requirement)." msgstr "" -#: library/os.rst:2659 +#: library/os.rst:2660 msgid "" "This function can support specifying *src_dir_fd* and/or *dst_dir_fd* to " "supply :ref:`paths relative to directory descriptors `." msgstr "" -#: library/os.rst:2622 +#: library/os.rst:2623 msgid "" "If you want cross-platform overwriting of the destination, use :func:" "`replace`." msgstr "" -#: library/os.rst:2645 library/os.rst:2662 +#: library/os.rst:2646 library/os.rst:2663 msgid "" "Raises an :ref:`auditing event ` ``os.rename`` with arguments " "``src``, ``dst``, ``src_dir_fd``, ``dst_dir_fd``." msgstr "" -#: library/os.rst:2626 +#: library/os.rst:2627 msgid "Added the *src_dir_fd* and *dst_dir_fd* parameters." msgstr "" -#: library/os.rst:2635 +#: library/os.rst:2636 msgid "" "Recursive directory or file renaming function. Works like :func:`rename`, " "except creation of any intermediate directories needed to make the new " @@ -2781,17 +2781,17 @@ msgid "" "using :func:`removedirs`." msgstr "" -#: library/os.rst:2642 +#: library/os.rst:2643 msgid "" "This function can fail with the new directory structure made if you lack " "permissions needed to remove the leaf directory or file." msgstr "" -#: library/os.rst:2647 +#: library/os.rst:2648 msgid "Accepts a :term:`path-like object` for *old* and *new*." msgstr "" -#: library/os.rst:2653 +#: library/os.rst:2654 msgid "" "Rename the file or directory *src* to *dst*. If *dst* is a non-empty " "directory, :exc:`OSError` will be raised. If *dst* exists and is a file, it " @@ -2800,7 +2800,7 @@ msgid "" "renaming will be an atomic operation (this is a POSIX requirement)." msgstr "" -#: library/os.rst:2672 +#: library/os.rst:2673 msgid "" "Remove (delete) the directory *path*. If the directory does not exist or is " "not empty, a :exc:`FileNotFoundError` or an :exc:`OSError` is raised " @@ -2808,13 +2808,13 @@ msgid "" "rmtree` can be used." msgstr "" -#: library/os.rst:2680 +#: library/os.rst:2681 msgid "" "Raises an :ref:`auditing event ` ``os.rmdir`` with arguments " "``path``, ``dir_fd``." msgstr "" -#: library/os.rst:2691 +#: library/os.rst:2692 msgid "" "Return an iterator of :class:`os.DirEntry` objects corresponding to the " "entries in the directory given by *path*. The entries are yielded in " @@ -2824,7 +2824,7 @@ msgid "" "unspecified." msgstr "" -#: library/os.rst:2698 +#: library/os.rst:2699 msgid "" "Using :func:`scandir` instead of :func:`listdir` can significantly increase " "the performance of code that also needs file type or file attribute " @@ -2836,7 +2836,7 @@ msgid "" "Unix but only requires one for symbolic links on Windows." msgstr "" -#: library/os.rst:2708 +#: library/os.rst:2709 msgid "" "*path* may be a :term:`path-like object`. If *path* is of type ``bytes`` " "(directly or indirectly through the :class:`PathLike` interface), the type " @@ -2845,30 +2845,30 @@ msgid "" "they will be of type ``str``." msgstr "" -#: library/os.rst:2717 +#: library/os.rst:2718 msgid "" "Raises an :ref:`auditing event ` ``os.scandir`` with argument " "``path``." msgstr "" -#: library/os.rst:2719 +#: library/os.rst:2720 msgid "" "The :func:`scandir` iterator supports the :term:`context manager` protocol " "and has the following method:" msgstr "" -#: library/os.rst:2724 +#: library/os.rst:2725 msgid "Close the iterator and free acquired resources." msgstr "" -#: library/os.rst:2726 +#: library/os.rst:2727 msgid "" "This is called automatically when the iterator is exhausted or garbage " "collected, or when an error happens during iterating. However it is " "advisable to call it explicitly or use the :keyword:`with` statement." msgstr "" -#: library/os.rst:2733 +#: library/os.rst:2734 msgid "" "The following example shows a simple use of :func:`scandir` to display all " "the files (excluding directories) in the given *path* that don't start with " @@ -2876,7 +2876,7 @@ msgid "" "system call::" msgstr "" -#: library/os.rst:2738 +#: library/os.rst:2739 msgid "" "with os.scandir(path) as it:\n" " for entry in it:\n" @@ -2884,7 +2884,7 @@ msgid "" " print(entry.name)" msgstr "" -#: library/os.rst:2745 +#: library/os.rst:2746 msgid "" "On Unix-based systems, :func:`scandir` uses the system's `opendir() `_ and " @@ -2895,7 +2895,7 @@ msgid "" "desktop/aa364428(v=vs.85).aspx>`_ functions." msgstr "" -#: library/os.rst:2757 +#: library/os.rst:2758 msgid "" "Added support for the :term:`context manager` protocol and the :func:" "`~scandir.close` method. If a :func:`scandir` iterator is neither exhausted " @@ -2903,28 +2903,28 @@ msgid "" "destructor." msgstr "" -#: library/os.rst:2763 +#: library/os.rst:2764 msgid "The function accepts a :term:`path-like object`." msgstr "" -#: library/os.rst:2765 +#: library/os.rst:2766 msgid "Added support for :ref:`file descriptors ` on Unix." msgstr "" -#: library/os.rst:2771 +#: library/os.rst:2772 msgid "" "Object yielded by :func:`scandir` to expose the file path and other file " "attributes of a directory entry." msgstr "" -#: library/os.rst:2774 +#: library/os.rst:2775 msgid "" ":func:`scandir` will provide as much of this information as possible without " "making additional system calls. When a ``stat()`` or ``lstat()`` system call " "is made, the ``os.DirEntry`` object will cache the result." msgstr "" -#: library/os.rst:2778 +#: library/os.rst:2779 msgid "" "``os.DirEntry`` instances are not intended to be stored in long-lived data " "structures; if you know the file metadata has changed or if a long time has " @@ -2932,7 +2932,7 @@ msgid "" "up-to-date information." msgstr "" -#: library/os.rst:2783 +#: library/os.rst:2784 msgid "" "Because the ``os.DirEntry`` methods can make operating system calls, they " "may also raise :exc:`OSError`. If you need very fine-grained control over " @@ -2940,29 +2940,29 @@ msgid "" "methods and handle as appropriate." msgstr "" -#: library/os.rst:2788 +#: library/os.rst:2789 msgid "" "To be directly usable as a :term:`path-like object`, ``os.DirEntry`` " "implements the :class:`PathLike` interface." msgstr "" -#: library/os.rst:2791 +#: library/os.rst:2792 msgid "Attributes and methods on a ``os.DirEntry`` instance are as follows:" msgstr "" -#: library/os.rst:2795 +#: library/os.rst:2796 msgid "" "The entry's base filename, relative to the :func:`scandir` *path* argument." msgstr "" -#: library/os.rst:2798 +#: library/os.rst:2799 msgid "" "The :attr:`name` attribute will be ``bytes`` if the :func:`scandir` *path* " "argument is of type ``bytes`` and ``str`` otherwise. Use :func:`~os." "fsdecode` to decode byte filenames." msgstr "" -#: library/os.rst:2804 +#: library/os.rst:2805 msgid "" "The entry's full path name: equivalent to ``os.path.join(scandir_path, entry." "name)`` where *scandir_path* is the :func:`scandir` *path* argument. The " @@ -2972,51 +2972,51 @@ msgid "" "attribute." msgstr "" -#: library/os.rst:2811 +#: library/os.rst:2812 msgid "" "The :attr:`path` attribute will be ``bytes`` if the :func:`scandir` *path* " "argument is of type ``bytes`` and ``str`` otherwise. Use :func:`~os." "fsdecode` to decode byte filenames." msgstr "" -#: library/os.rst:2817 +#: library/os.rst:2818 msgid "Return the inode number of the entry." msgstr "" -#: library/os.rst:2819 +#: library/os.rst:2820 msgid "" "The result is cached on the ``os.DirEntry`` object. Use ``os.stat(entry." "path, follow_symlinks=False).st_ino`` to fetch up-to-date information." msgstr "" -#: library/os.rst:2823 +#: library/os.rst:2824 msgid "" "On the first, uncached call, a system call is required on Windows but not on " "Unix." msgstr "" -#: library/os.rst:2828 +#: library/os.rst:2829 msgid "" "Return ``True`` if this entry is a directory or a symbolic link pointing to " "a directory; return ``False`` if the entry is or points to any other kind of " "file, or if it doesn't exist anymore." msgstr "" -#: library/os.rst:2832 +#: library/os.rst:2833 msgid "" "If *follow_symlinks* is ``False``, return ``True`` only if this entry is a " "directory (without following symlinks); return ``False`` if the entry is any " "other kind of file or if it doesn't exist anymore." msgstr "" -#: library/os.rst:2836 +#: library/os.rst:2837 msgid "" "The result is cached on the ``os.DirEntry`` object, with a separate cache " "for *follow_symlinks* ``True`` and ``False``. Call :func:`os.stat` along " "with :func:`stat.S_ISDIR` to fetch up-to-date information." msgstr "" -#: library/os.rst:2840 +#: library/os.rst:2841 msgid "" "On the first, uncached call, no system call is required in most cases. " "Specifically, for non-symlinks, neither Windows or Unix require a system " @@ -3026,46 +3026,46 @@ msgid "" "is ``False``." msgstr "" -#: library/os.rst:2877 +#: library/os.rst:2878 msgid "" "This method can raise :exc:`OSError`, such as :exc:`PermissionError`, but :" "exc:`FileNotFoundError` is caught and not raised." msgstr "" -#: library/os.rst:2852 +#: library/os.rst:2853 msgid "" "Return ``True`` if this entry is a file or a symbolic link pointing to a " "file; return ``False`` if the entry is or points to a directory or other non-" "file entry, or if it doesn't exist anymore." msgstr "" -#: library/os.rst:2856 +#: library/os.rst:2857 msgid "" "If *follow_symlinks* is ``False``, return ``True`` only if this entry is a " "file (without following symlinks); return ``False`` if the entry is a " "directory or other non-file entry, or if it doesn't exist anymore." msgstr "" -#: library/os.rst:2860 +#: library/os.rst:2861 msgid "" "The result is cached on the ``os.DirEntry`` object. Caching, system calls " "made, and exceptions raised are as per :func:`~os.DirEntry.is_dir`." msgstr "" -#: library/os.rst:2865 +#: library/os.rst:2866 msgid "" "Return ``True`` if this entry is a symbolic link (even if broken); return " "``False`` if the entry points to a directory or any kind of file, or if it " "doesn't exist anymore." msgstr "" -#: library/os.rst:2869 +#: library/os.rst:2870 msgid "" "The result is cached on the ``os.DirEntry`` object. Call :func:`os.path." "islink` to fetch up-to-date information." msgstr "" -#: library/os.rst:2872 +#: library/os.rst:2873 msgid "" "On the first, uncached call, no system call is required in most cases. " "Specifically, neither Windows or Unix require a system call, except on " @@ -3073,48 +3073,48 @@ msgid "" "``dirent.d_type == DT_UNKNOWN``." msgstr "" -#: library/os.rst:2882 +#: library/os.rst:2883 msgid "" "Return ``True`` if this entry is a junction (even if broken); return " "``False`` if the entry points to a regular directory, any kind of file, a " "symlink, or if it doesn't exist anymore." msgstr "" -#: library/os.rst:2886 +#: library/os.rst:2887 msgid "" "The result is cached on the ``os.DirEntry`` object. Call :func:`os.path." "isjunction` to fetch up-to-date information." msgstr "" -#: library/os.rst:2893 +#: library/os.rst:2894 msgid "" "Return a :class:`stat_result` object for this entry. This method follows " "symbolic links by default; to stat a symbolic link add the " "``follow_symlinks=False`` argument." msgstr "" -#: library/os.rst:2897 +#: library/os.rst:2898 msgid "" "On Unix, this method always requires a system call. On Windows, it only " "requires a system call if *follow_symlinks* is ``True`` and the entry is a " "reparse point (for example, a symbolic link or directory junction)." msgstr "" -#: library/os.rst:2902 +#: library/os.rst:2903 msgid "" "On Windows, the ``st_ino``, ``st_dev`` and ``st_nlink`` attributes of the :" "class:`stat_result` are always set to zero. Call :func:`os.stat` to get " "these attributes." msgstr "" -#: library/os.rst:2906 +#: library/os.rst:2907 msgid "" "The result is cached on the ``os.DirEntry`` object, with a separate cache " "for *follow_symlinks* ``True`` and ``False``. Call :func:`os.stat` to fetch " "up-to-date information." msgstr "" -#: library/os.rst:2910 +#: library/os.rst:2911 msgid "" "Note that there is a nice correspondence between several attributes and " "methods of ``os.DirEntry`` and of :class:`pathlib.Path`. In particular, the " @@ -3122,13 +3122,13 @@ msgid "" "``is_file()``, ``is_symlink()``, ``is_junction()``, and ``stat()`` methods." msgstr "" -#: library/os.rst:2918 +#: library/os.rst:2919 msgid "" "Added support for the :class:`~os.PathLike` interface. Added support for :" "class:`bytes` paths on Windows." msgstr "" -#: library/os.rst:2922 +#: library/os.rst:2923 msgid "" "The ``st_ctime`` attribute of a stat result is deprecated on Windows. The " "file creation time is properly available as ``st_birthtime``, and in the " @@ -3136,7 +3136,7 @@ msgid "" "time, if available." msgstr "" -#: library/os.rst:2931 +#: library/os.rst:2932 msgid "" "Get the status of a file or a file descriptor. Perform the equivalent of a :" "c:func:`stat` system call on the given path. *path* may be specified as " @@ -3145,19 +3145,19 @@ msgid "" "`stat_result` object." msgstr "" -#: library/os.rst:2937 +#: library/os.rst:2938 msgid "" "This function normally follows symlinks; to stat a symlink add the argument " "``follow_symlinks=False``, or use :func:`lstat`." msgstr "" -#: library/os.rst:3806 library/os.rst:3838 library/os.rst:3858 +#: library/os.rst:3807 library/os.rst:3839 library/os.rst:3859 msgid "" "This function can support :ref:`specifying a file descriptor ` and :" "ref:`not following symlinks `." msgstr "" -#: library/os.rst:2943 +#: library/os.rst:2944 msgid "" "On Windows, passing ``follow_symlinks=False`` will disable following all " "name-surrogate reparse points, which includes symlinks and directory " @@ -3171,11 +3171,11 @@ msgid "" "junction points, which will raise the usual exceptions." msgstr "" -#: library/os.rst:3726 +#: library/os.rst:3727 msgid "Example::" msgstr "" -#: library/os.rst:2958 +#: library/os.rst:2959 msgid "" ">>> import os\n" ">>> statinfo = os.stat('somefile.txt')\n" @@ -3187,17 +3187,17 @@ msgid "" "264" msgstr "" -#: library/os.rst:2969 +#: library/os.rst:2970 msgid ":func:`fstat` and :func:`lstat` functions." msgstr "" -#: library/os.rst:2971 +#: library/os.rst:2972 msgid "" "Added the *dir_fd* and *follow_symlinks* parameters, specifying a file " "descriptor instead of a path." msgstr "" -#: library/os.rst:2978 +#: library/os.rst:2979 msgid "" "On Windows, all reparse points that can be resolved by the operating system " "are now followed, and passing ``follow_symlinks=False`` disables following " @@ -3207,122 +3207,122 @@ msgid "" "of raising an error." msgstr "" -#: library/os.rst:2989 +#: library/os.rst:2990 msgid "" "Object whose attributes correspond roughly to the members of the :c:struct:" "`stat` structure. It is used for the result of :func:`os.stat`, :func:`os." "fstat` and :func:`os.lstat`." msgstr "" -#: library/os.rst:2993 +#: library/os.rst:2994 msgid "Attributes:" msgstr "" -#: library/os.rst:2997 +#: library/os.rst:2998 msgid "File mode: file type and file mode bits (permissions)." msgstr "" -#: library/os.rst:3001 +#: library/os.rst:3002 msgid "" "Platform dependent, but if non-zero, uniquely identifies the file for a " "given value of ``st_dev``. Typically:" msgstr "" -#: library/os.rst:3004 +#: library/os.rst:3005 msgid "the inode number on Unix," msgstr "" -#: library/os.rst:3005 +#: library/os.rst:3006 msgid "" "the `file index `_ on " "Windows" msgstr "" -#: library/os.rst:3011 +#: library/os.rst:3012 msgid "Identifier of the device on which this file resides." msgstr "" -#: library/os.rst:3015 +#: library/os.rst:3016 msgid "Number of hard links." msgstr "" -#: library/os.rst:3019 +#: library/os.rst:3020 msgid "User identifier of the file owner." msgstr "" -#: library/os.rst:3023 +#: library/os.rst:3024 msgid "Group identifier of the file owner." msgstr "" -#: library/os.rst:3027 +#: library/os.rst:3028 msgid "" "Size of the file in bytes, if it is a regular file or a symbolic link. The " "size of a symbolic link is the length of the pathname it contains, without a " "terminating null byte." msgstr "" -#: library/os.rst:3031 +#: library/os.rst:3032 msgid "Timestamps:" msgstr "" -#: library/os.rst:3035 +#: library/os.rst:3036 msgid "Time of most recent access expressed in seconds." msgstr "" -#: library/os.rst:3039 +#: library/os.rst:3040 msgid "Time of most recent content modification expressed in seconds." msgstr "" -#: library/os.rst:3043 +#: library/os.rst:3044 msgid "Time of most recent metadata change expressed in seconds." msgstr "" -#: library/os.rst:3045 +#: library/os.rst:3046 msgid "" "``st_ctime`` is deprecated on Windows. Use ``st_birthtime`` for the file " "creation time. In the future, ``st_ctime`` will contain the time of the most " "recent metadata change, as for other platforms." msgstr "" -#: library/os.rst:3052 +#: library/os.rst:3053 msgid "Time of most recent access expressed in nanoseconds as an integer." msgstr "" -#: library/os.rst:3058 +#: library/os.rst:3059 msgid "" "Time of most recent content modification expressed in nanoseconds as an " "integer." msgstr "" -#: library/os.rst:3065 +#: library/os.rst:3066 msgid "" "Time of most recent metadata change expressed in nanoseconds as an integer." msgstr "" -#: library/os.rst:3070 +#: library/os.rst:3071 msgid "" "``st_ctime_ns`` is deprecated on Windows. Use ``st_birthtime_ns`` for the " "file creation time. In the future, ``st_ctime`` will contain the time of the " "most recent metadata change, as for other platforms." msgstr "" -#: library/os.rst:3077 +#: library/os.rst:3078 msgid "" "Time of file creation expressed in seconds. This attribute is not always " "available, and may raise :exc:`AttributeError`." msgstr "" -#: library/os.rst:3080 +#: library/os.rst:3081 msgid "``st_birthtime`` is now available on Windows." msgstr "" -#: library/os.rst:3085 +#: library/os.rst:3086 msgid "" "Time of file creation expressed in nanoseconds as an integer. This attribute " "is not always available, and may raise :exc:`AttributeError`." msgstr "" -#: library/os.rst:3093 +#: library/os.rst:3094 msgid "" "The exact meaning and resolution of the :attr:`st_atime`, :attr:`st_mtime`, :" "attr:`st_ctime` and :attr:`st_birthtime` attributes depend on the operating " @@ -3332,7 +3332,7 @@ msgid "" "details." msgstr "" -#: library/os.rst:3100 +#: library/os.rst:3101 msgid "" "Similarly, although :attr:`st_atime_ns`, :attr:`st_mtime_ns`, :attr:" "`st_ctime_ns` and :attr:`st_birthtime_ns` are always expressed in " @@ -3345,74 +3345,74 @@ msgid "" "`st_birthtime_ns`." msgstr "" -#: library/os.rst:3110 +#: library/os.rst:3111 msgid "" "On some Unix systems (such as Linux), the following attributes may also be " "available:" msgstr "" -#: library/os.rst:3115 +#: library/os.rst:3116 msgid "" "Number of 512-byte blocks allocated for file. This may be smaller than :attr:" "`st_size`/512 when the file has holes." msgstr "" -#: library/os.rst:3120 +#: library/os.rst:3121 msgid "" "\"Preferred\" blocksize for efficient file system I/O. Writing to a file in " "smaller chunks may cause an inefficient read-modify-rewrite." msgstr "" -#: library/os.rst:3125 +#: library/os.rst:3126 msgid "Type of device if an inode device." msgstr "" -#: library/os.rst:3129 +#: library/os.rst:3130 msgid "User defined flags for file." msgstr "" -#: library/os.rst:3131 +#: library/os.rst:3132 msgid "" "On other Unix systems (such as FreeBSD), the following attributes may be " "available (but may be only filled out if root tries to use them):" msgstr "" -#: library/os.rst:3136 +#: library/os.rst:3137 msgid "File generation number." msgstr "" -#: library/os.rst:3138 +#: library/os.rst:3139 msgid "" "On Solaris and derivatives, the following attributes may also be available:" msgstr "" -#: library/os.rst:3143 +#: library/os.rst:3144 msgid "" "String that uniquely identifies the type of the filesystem that contains the " "file." msgstr "" -#: library/os.rst:3146 +#: library/os.rst:3147 msgid "On macOS systems, the following attributes may also be available:" msgstr "" -#: library/os.rst:3150 +#: library/os.rst:3151 msgid "Real size of the file." msgstr "" -#: library/os.rst:3154 +#: library/os.rst:3155 msgid "Creator of the file." msgstr "" -#: library/os.rst:3158 +#: library/os.rst:3159 msgid "File type." msgstr "" -#: library/os.rst:3160 +#: library/os.rst:3161 msgid "On Windows systems, the following attributes are also available:" msgstr "" -#: library/os.rst:3164 +#: library/os.rst:3165 msgid "" "Windows file attributes: ``dwFileAttributes`` member of the " "``BY_HANDLE_FILE_INFORMATION`` structure returned by :c:func:`!" @@ -3420,7 +3420,7 @@ msgid "" "FILE_ATTRIBUTE_ARCHIVE>` constants in the :mod:`stat` module." msgstr "" -#: library/os.rst:3174 +#: library/os.rst:3175 msgid "" "When :attr:`st_file_attributes` has the :const:`~stat." "FILE_ATTRIBUTE_REPARSE_POINT` set, this field contains the tag identifying " @@ -3428,14 +3428,14 @@ msgid "" "IO_REPARSE_TAG_SYMLINK>` constants in the :mod:`stat` module." msgstr "" -#: library/os.rst:3179 +#: library/os.rst:3180 msgid "" "The standard module :mod:`stat` defines functions and constants that are " "useful for extracting information from a :c:struct:`stat` structure. (On " "Windows, some items are filled with dummy values.)" msgstr "" -#: library/os.rst:3183 +#: library/os.rst:3184 msgid "" "For backward compatibility, a :class:`stat_result` instance is also " "accessible as a tuple of at least 10 integers giving the most important (and " @@ -3447,49 +3447,49 @@ msgid "" "class:`stat_result` as a tuple always returns integers." msgstr "" -#: library/os.rst:3192 +#: library/os.rst:3193 msgid "Windows now returns the file index as :attr:`st_ino` when available." msgstr "" -#: library/os.rst:3196 +#: library/os.rst:3197 msgid "Added the :attr:`st_fstype` member to Solaris/derivatives." msgstr "" -#: library/os.rst:3199 +#: library/os.rst:3200 msgid "Added the :attr:`st_reparse_tag` member on Windows." msgstr "" -#: library/os.rst:3202 +#: library/os.rst:3203 msgid "" "On Windows, the :attr:`st_mode` member now identifies special files as :" "const:`S_IFCHR`, :const:`S_IFIFO` or :const:`S_IFBLK` as appropriate." msgstr "" -#: library/os.rst:3207 +#: library/os.rst:3208 msgid "" "On Windows, :attr:`st_ctime` is deprecated. Eventually, it will contain the " "last metadata change time, for consistency with other platforms, but for now " "still contains creation time. Use :attr:`st_birthtime` for the creation time." msgstr "" -#: library/os.rst:3213 +#: library/os.rst:3214 msgid "" "On Windows, :attr:`st_ino` may now be up to 128 bits, depending on the file " "system. Previously it would not be above 64 bits, and larger file " "identifiers would be arbitrarily packed." msgstr "" -#: library/os.rst:3217 +#: library/os.rst:3218 msgid "" "On Windows, :attr:`st_rdev` no longer returns a value. Previously it would " "contain the same as :attr:`st_dev`, which was incorrect." msgstr "" -#: library/os.rst:3220 +#: library/os.rst:3221 msgid "Added the :attr:`st_birthtime` member on Windows." msgstr "" -#: library/os.rst:3225 +#: library/os.rst:3226 msgid "" "Perform a :c:func:`!statvfs` system call on the given path. The return " "value is an object whose attributes describe the filesystem on the given " @@ -3499,7 +3499,7 @@ msgid "" "`f_favail`, :attr:`f_flag`, :attr:`f_namemax`, :attr:`f_fsid`." msgstr "" -#: library/os.rst:3232 +#: library/os.rst:3233 msgid "" "Two module-level constants are defined for the :attr:`f_flag` attribute's " "bit-flags: if :const:`ST_RDONLY` is set, the filesystem is mounted read-" @@ -3507,7 +3507,7 @@ msgid "" "are disabled or not supported." msgstr "" -#: library/os.rst:3237 +#: library/os.rst:3238 msgid "" "Additional module-level constants are defined for GNU/glibc based systems. " "These are :const:`ST_NODEV` (disallow access to device special files), :" @@ -3520,11 +3520,11 @@ msgid "" "relative to mtime/ctime)." msgstr "" -#: library/os.rst:3250 +#: library/os.rst:3251 msgid "The :const:`ST_RDONLY` and :const:`ST_NOSUID` constants were added." msgstr "" -#: library/os.rst:3256 +#: library/os.rst:3257 msgid "" "The :const:`ST_NODEV`, :const:`ST_NOEXEC`, :const:`ST_SYNCHRONOUS`, :const:" "`ST_MANDLOCK`, :const:`ST_WRITE`, :const:`ST_APPEND`, :const:" @@ -3532,11 +3532,11 @@ msgid "" "`ST_RELATIME` constants were added." msgstr "" -#: library/os.rst:3265 +#: library/os.rst:3266 msgid "Added the :attr:`f_fsid` attribute." msgstr "" -#: library/os.rst:3271 +#: library/os.rst:3272 msgid "" "A :class:`set` object indicating which functions in the :mod:`os` module " "accept an open file descriptor for their *dir_fd* parameter. Different " @@ -3548,7 +3548,7 @@ msgid "" "(Specifying ``None`` for *dir_fd* is always supported on all platforms.)" msgstr "" -#: library/os.rst:3281 +#: library/os.rst:3282 msgid "" "To check whether a particular function accepts an open file descriptor for " "its *dir_fd* parameter, use the ``in`` operator on ``supports_dir_fd``. As " @@ -3556,17 +3556,17 @@ msgid "" "open file descriptors for *dir_fd* on the local platform::" msgstr "" -#: library/os.rst:3286 +#: library/os.rst:3287 msgid "os.stat in os.supports_dir_fd" msgstr "" -#: library/os.rst:3288 +#: library/os.rst:3289 msgid "" "Currently *dir_fd* parameters only work on Unix platforms; none of them work " "on Windows." msgstr "" -#: library/os.rst:3296 +#: library/os.rst:3297 msgid "" "A :class:`set` object indicating whether :func:`os.access` permits " "specifying ``True`` for its *effective_ids* parameter on the local platform. " @@ -3575,23 +3575,23 @@ msgid "" "func:`os.access`; otherwise it will be empty." msgstr "" -#: library/os.rst:3302 +#: library/os.rst:3303 msgid "" "This expression evaluates to ``True`` if :func:`os.access` supports " "``effective_ids=True`` on the local platform::" msgstr "" -#: library/os.rst:3305 +#: library/os.rst:3306 msgid "os.access in os.supports_effective_ids" msgstr "" -#: library/os.rst:3307 +#: library/os.rst:3308 msgid "" "Currently *effective_ids* is only supported on Unix platforms; it does not " "work on Windows." msgstr "" -#: library/os.rst:3315 +#: library/os.rst:3316 msgid "" "A :class:`set` object indicating which functions in the :mod:`os` module " "permit specifying their *path* parameter as an open file descriptor on the " @@ -3600,7 +3600,7 @@ msgid "" "*path* arguments is not available on all platforms Python supports." msgstr "" -#: library/os.rst:3322 +#: library/os.rst:3323 msgid "" "To determine whether a particular function permits specifying an open file " "descriptor for its *path* parameter, use the ``in`` operator on " @@ -3609,11 +3609,11 @@ msgid "" "platform::" msgstr "" -#: library/os.rst:3328 +#: library/os.rst:3329 msgid "os.chdir in os.supports_fd" msgstr "" -#: library/os.rst:3335 +#: library/os.rst:3336 msgid "" "A :class:`set` object indicating which functions in the :mod:`os` module " "accept ``False`` for their *follow_symlinks* parameter on the local " @@ -3626,7 +3626,7 @@ msgid "" "on all platforms.)" msgstr "" -#: library/os.rst:3345 +#: library/os.rst:3346 msgid "" "To check whether a particular function accepts ``False`` for its " "*follow_symlinks* parameter, use the ``in`` operator on " @@ -3635,15 +3635,15 @@ msgid "" "stat` on the local platform::" msgstr "" -#: library/os.rst:3351 +#: library/os.rst:3352 msgid "os.stat in os.supports_follow_symlinks" msgstr "" -#: library/os.rst:3358 +#: library/os.rst:3359 msgid "Create a symbolic link pointing to *src* named *dst*." msgstr "" -#: library/os.rst:3360 +#: library/os.rst:3361 msgid "" "On Windows, a symlink represents either a file or a directory, and does not " "morph to the target dynamically. If the target is present, the type of the " @@ -3653,7 +3653,7 @@ msgid "" "ignored." msgstr "" -#: library/os.rst:3371 +#: library/os.rst:3372 msgid "" "On newer versions of Windows 10, unprivileged accounts can create symlinks " "if Developer Mode is enabled. When Developer Mode is not available/enabled, " @@ -3661,83 +3661,83 @@ msgid "" "must be run as an administrator." msgstr "" -#: library/os.rst:3377 +#: library/os.rst:3378 msgid "" ":exc:`OSError` is raised when the function is called by an unprivileged user." msgstr "" -#: library/os.rst:3380 +#: library/os.rst:3381 msgid "" "Raises an :ref:`auditing event ` ``os.symlink`` with arguments " "``src``, ``dst``, ``dir_fd``." msgstr "" -#: library/os.rst:3390 +#: library/os.rst:3391 msgid "" "Added the *dir_fd* parameter, and now allow *target_is_directory* on non-" "Windows platforms." msgstr "" -#: library/os.rst:3397 +#: library/os.rst:3398 msgid "Added support for unelevated symlinks on Windows with Developer Mode." msgstr "" -#: library/os.rst:3403 +#: library/os.rst:3404 msgid "Force write of everything to disk." msgstr "" -#: library/os.rst:3412 +#: library/os.rst:3413 msgid "" "Truncate the file corresponding to *path*, so that it is at most *length* " "bytes in size." msgstr "" -#: library/os.rst:3417 +#: library/os.rst:3418 msgid "" "Raises an :ref:`auditing event ` ``os.truncate`` with arguments " "``path``, ``length``." msgstr "" -#: library/os.rst:3432 +#: library/os.rst:3433 msgid "" "Remove (delete) the file *path*. This function is semantically identical " "to :func:`remove`; the ``unlink`` name is its traditional Unix name. Please " "see the documentation for :func:`remove` for further information." msgstr "" -#: library/os.rst:3448 +#: library/os.rst:3449 msgid "Set the access and modified times of the file specified by *path*." msgstr "" -#: library/os.rst:3450 +#: library/os.rst:3451 msgid "" ":func:`utime` takes two optional parameters, *times* and *ns*. These specify " "the times set on *path* and are used as follows:" msgstr "" -#: library/os.rst:3453 +#: library/os.rst:3454 msgid "" "If *ns* is specified, it must be a 2-tuple of the form ``(atime_ns, " "mtime_ns)`` where each member is an int expressing nanoseconds." msgstr "" -#: library/os.rst:3456 +#: library/os.rst:3457 msgid "" "If *times* is not ``None``, it must be a 2-tuple of the form ``(atime, " "mtime)`` where each member is an int or float expressing seconds." msgstr "" -#: library/os.rst:3459 +#: library/os.rst:3460 msgid "" "If *times* is ``None`` and *ns* is unspecified, this is equivalent to " "specifying ``ns=(atime_ns, mtime_ns)`` where both times are the current time." msgstr "" -#: library/os.rst:3463 +#: library/os.rst:3464 msgid "It is an error to specify tuples for both *times* and *ns*." msgstr "" -#: library/os.rst:3465 +#: library/os.rst:3466 msgid "" "Note that the exact times you set here may not be returned by a subsequent :" "func:`~os.stat` call, depending on the resolution with which your operating " @@ -3747,19 +3747,19 @@ msgid "" "func:`utime`." msgstr "" -#: library/os.rst:3476 +#: library/os.rst:3477 msgid "" "Raises an :ref:`auditing event ` ``os.utime`` with arguments " "``path``, ``times``, ``ns``, ``dir_fd``." msgstr "" -#: library/os.rst:3478 +#: library/os.rst:3479 msgid "" "Added support for specifying *path* as an open file descriptor, and the " "*dir_fd*, *follow_symlinks*, and *ns* parameters." msgstr "" -#: library/os.rst:3492 +#: library/os.rst:3493 msgid "" "Generate the file names in a directory tree by walking the tree either top-" "down or bottom-up. For each directory in the tree rooted at directory *top* " @@ -3767,7 +3767,7 @@ msgid "" "filenames)``." msgstr "" -#: library/os.rst:3497 +#: library/os.rst:3498 msgid "" "*dirpath* is a string, the path to the directory. *dirnames* is a list of " "the names of the subdirectories in *dirpath* (including symlinks to " @@ -3781,7 +3781,7 @@ msgid "" "unspecified." msgstr "" -#: library/os.rst:3508 +#: library/os.rst:3509 msgid "" "If optional argument *topdown* is ``True`` or not specified, the triple for " "a directory is generated before the triples for any of its subdirectories " @@ -3792,7 +3792,7 @@ msgid "" "its subdirectories are generated." msgstr "" -#: library/os.rst:3516 +#: library/os.rst:3517 msgid "" "When *topdown* is ``True``, the caller can modify the *dirnames* list in-" "place (perhaps using :keyword:`del` or slice assignment), and :func:`walk` " @@ -3805,7 +3805,7 @@ msgid "" "itself is generated." msgstr "" -#: library/os.rst:3525 +#: library/os.rst:3526 msgid "" "By default, errors from the :func:`scandir` call are ignored. If optional " "argument *onerror* is specified, it should be a function; it will be called " @@ -3815,54 +3815,54 @@ msgid "" "object." msgstr "" -#: library/os.rst:3531 +#: library/os.rst:3532 msgid "" "By default, :func:`walk` will not walk down into symbolic links that resolve " "to directories. Set *followlinks* to ``True`` to visit directories pointed " "to by symlinks, on systems that support them." msgstr "" -#: library/os.rst:3537 +#: library/os.rst:3538 msgid "" "Be aware that setting *followlinks* to ``True`` can lead to infinite " "recursion if a link points to a parent directory of itself. :func:`walk` " "does not keep track of the directories it visited already." msgstr "" -#: library/os.rst:3543 +#: library/os.rst:3544 msgid "" "If you pass a relative pathname, don't change the current working directory " "between resumptions of :func:`walk`. :func:`walk` never changes the current " "directory, and assumes that its caller doesn't either." msgstr "" -#: library/os.rst:3609 +#: library/os.rst:3610 msgid "" "This example displays the number of bytes taken by non-directory files in " "each directory under the starting directory, except that it doesn't look " -"under any CVS subdirectory::" +"under any ``__pycache__`` subdirectory::" msgstr "" -#: library/os.rst:3551 +#: library/os.rst:3552 msgid "" "import os\n" "from os.path import join, getsize\n" -"for root, dirs, files in os.walk('python/Lib/email'):\n" +"for root, dirs, files in os.walk('python/Lib/xml'):\n" " print(root, \"consumes\", end=\" \")\n" " print(sum(getsize(join(root, name)) for name in files), end=\" \")\n" " print(\"bytes in\", len(files), \"non-directory files\")\n" -" if 'CVS' in dirs:\n" -" dirs.remove('CVS') # don't visit CVS directories" +" if '__pycache__' in dirs:\n" +" dirs.remove('__pycache__') # don't visit __pycache__ directories" msgstr "" -#: library/os.rst:3560 +#: library/os.rst:3561 msgid "" "In the next example (simple implementation of :func:`shutil.rmtree`), " "walking the tree bottom-up is essential, :func:`rmdir` doesn't allow " "deleting a directory before the directory is empty::" msgstr "" -#: library/os.rst:3564 +#: library/os.rst:3565 msgid "" "# Delete everything reachable from the directory named in \"top\",\n" "# assuming there are no symbolic links.\n" @@ -3877,31 +3877,31 @@ msgid "" "os.rmdir(top)" msgstr "" -#: library/os.rst:3576 +#: library/os.rst:3577 msgid "" "Raises an :ref:`auditing event ` ``os.walk`` with arguments " "``top``, ``topdown``, ``onerror``, ``followlinks``." msgstr "" -#: library/os.rst:3578 +#: library/os.rst:3579 msgid "" "This function now calls :func:`os.scandir` instead of :func:`os.listdir`, " "making it faster by reducing the number of calls to :func:`os.stat`." msgstr "" -#: library/os.rst:3592 +#: library/os.rst:3593 msgid "" "This behaves exactly like :func:`walk`, except that it yields a 4-tuple " "``(dirpath, dirnames, filenames, dirfd)``, and it supports ``dir_fd``." msgstr "" -#: library/os.rst:3595 +#: library/os.rst:3596 msgid "" "*dirpath*, *dirnames* and *filenames* are identical to :func:`walk` output, " "and *dirfd* is a file descriptor referring to the directory *dirpath*." msgstr "" -#: library/os.rst:3598 +#: library/os.rst:3599 msgid "" "This function always supports :ref:`paths relative to directory descriptors " "` and :ref:`not following symlinks `. Note however " @@ -3909,32 +3909,32 @@ msgid "" "*follow_symlinks* is ``False``." msgstr "" -#: library/os.rst:3605 +#: library/os.rst:3606 msgid "" "Since :func:`fwalk` yields file descriptors, those are only valid until the " "next iteration step, so you should duplicate them (e.g. with :func:`dup`) if " "you want to keep them longer." msgstr "" -#: library/os.rst:3613 +#: library/os.rst:3614 msgid "" "import os\n" -"for root, dirs, files, rootfd in os.fwalk('python/Lib/email'):\n" +"for root, dirs, files, rootfd in os.fwalk('python/Lib/xml'):\n" " print(root, \"consumes\", end=\"\")\n" " print(sum([os.stat(name, dir_fd=rootfd).st_size for name in files]),\n" " end=\"\")\n" " print(\"bytes in\", len(files), \"non-directory files\")\n" -" if 'CVS' in dirs:\n" -" dirs.remove('CVS') # don't visit CVS directories" +" if '__pycache__' in dirs:\n" +" dirs.remove('__pycache__') # don't visit __pycache__ directories" msgstr "" -#: library/os.rst:3622 +#: library/os.rst:3623 msgid "" "In the next example, walking the tree bottom-up is essential: :func:`rmdir` " "doesn't allow deleting a directory before the directory is empty::" msgstr "" -#: library/os.rst:3626 +#: library/os.rst:3627 msgid "" "# Delete everything reachable from the directory named in \"top\",\n" "# assuming there are no symbolic links.\n" @@ -3948,17 +3948,17 @@ msgid "" " os.rmdir(name, dir_fd=rootfd)" msgstr "" -#: library/os.rst:3637 +#: library/os.rst:3638 msgid "" "Raises an :ref:`auditing event ` ``os.fwalk`` with arguments " "``top``, ``topdown``, ``onerror``, ``follow_symlinks``, ``dir_fd``." msgstr "" -#: library/os.rst:3646 +#: library/os.rst:3647 msgid "Added support for :class:`bytes` paths." msgstr "" -#: library/os.rst:3652 +#: library/os.rst:3653 msgid "" "Create an anonymous file and return a file descriptor that refers to it. " "*flags* must be one of the ``os.MFD_*`` constants available on the system " @@ -3966,7 +3966,7 @@ msgid "" "descriptor is :ref:`non-inheritable `." msgstr "" -#: library/os.rst:3657 +#: library/os.rst:3658 msgid "" "The name supplied in *name* is used as a filename and will be displayed as " "the target of the corresponding symbolic link in the directory ``/proc/self/" @@ -3976,15 +3976,15 @@ msgid "" "side effects." msgstr "" -#: library/os.rst:3687 +#: library/os.rst:3688 msgid "These flags can be passed to :func:`memfd_create`." msgstr "" -#: library/os.rst:3691 +#: library/os.rst:3692 msgid "The ``MFD_HUGE*`` flags are only available since Linux 4.14." msgstr "" -#: library/os.rst:3698 +#: library/os.rst:3699 msgid "" "Create and return an event file descriptor. The file descriptors supports " "raw :func:`read` and :func:`write` with a buffer size of 8, :func:`~select." @@ -3993,7 +3993,7 @@ msgid "" "ref:`non-inheritable `." msgstr "" -#: library/os.rst:3704 +#: library/os.rst:3705 msgid "" "*initval* is the initial value of the event counter. The initial value must " "be a 32 bit unsigned integer. Please note that the initial value is limited " @@ -4001,39 +4001,39 @@ msgid "" "integer with a maximum value of 2\\ :sup:`64`\\ -\\ 2." msgstr "" -#: library/os.rst:3709 +#: library/os.rst:3710 msgid "" "*flags* can be constructed from :const:`EFD_CLOEXEC`, :const:`EFD_NONBLOCK`, " "and :const:`EFD_SEMAPHORE`." msgstr "" -#: library/os.rst:3712 +#: library/os.rst:3713 msgid "" "If :const:`EFD_SEMAPHORE` is specified and the event counter is non-zero, :" "func:`eventfd_read` returns 1 and decrements the counter by one." msgstr "" -#: library/os.rst:3715 +#: library/os.rst:3716 msgid "" "If :const:`EFD_SEMAPHORE` is not specified and the event counter is non-" "zero, :func:`eventfd_read` returns the current event counter value and " "resets the counter to zero." msgstr "" -#: library/os.rst:3719 +#: library/os.rst:3720 msgid "" "If the event counter is zero and :const:`EFD_NONBLOCK` is not specified, :" "func:`eventfd_read` blocks." msgstr "" -#: library/os.rst:3722 +#: library/os.rst:3723 msgid "" ":func:`eventfd_write` increments the event counter. Write blocks if the " "write operation would increment the counter to a value larger than 2\\ :sup:" "`64`\\ -\\ 2." msgstr "" -#: library/os.rst:3728 +#: library/os.rst:3729 msgid "" "import os\n" "\n" @@ -4051,42 +4051,42 @@ msgid "" " os.close(fd)" msgstr "" -#: library/os.rst:3749 +#: library/os.rst:3750 msgid "" "Read value from an :func:`eventfd` file descriptor and return a 64 bit " "unsigned int. The function does not verify that *fd* is an :func:`eventfd`." msgstr "" -#: library/os.rst:3758 +#: library/os.rst:3759 msgid "" "Add value to an :func:`eventfd` file descriptor. *value* must be a 64 bit " "unsigned int. The function does not verify that *fd* is an :func:`eventfd`." msgstr "" -#: library/os.rst:3767 +#: library/os.rst:3768 msgid "Set close-on-exec flag for new :func:`eventfd` file descriptor." msgstr "" -#: library/os.rst:3775 +#: library/os.rst:3776 msgid "" "Set :const:`O_NONBLOCK` status flag for new :func:`eventfd` file descriptor." msgstr "" -#: library/os.rst:3784 +#: library/os.rst:3785 msgid "" "Provide semaphore-like semantics for reads from an :func:`eventfd` file " "descriptor. On read the internal counter is decremented by one." msgstr "" -#: library/os.rst:3793 +#: library/os.rst:3794 msgid "Linux extended attributes" msgstr "" -#: library/os.rst:3797 +#: library/os.rst:3798 msgid "These functions are all available on Linux only." msgstr "" -#: library/os.rst:3801 +#: library/os.rst:3802 msgid "" "Return the value of the extended filesystem attribute *attribute* for " "*path*. *attribute* can be bytes or str (directly or indirectly through the :" @@ -4094,17 +4094,17 @@ msgid "" "encoding." msgstr "" -#: library/os.rst:3809 +#: library/os.rst:3810 msgid "" "Raises an :ref:`auditing event ` ``os.getxattr`` with arguments " "``path``, ``attribute``." msgstr "" -#: library/os.rst:3843 library/os.rst:3868 +#: library/os.rst:3844 library/os.rst:3869 msgid "Accepts a :term:`path-like object` for *path* and *attribute*." msgstr "" -#: library/os.rst:3817 +#: library/os.rst:3818 msgid "" "Return a list of the extended filesystem attributes on *path*. The " "attributes in the list are represented as strings decoded with the " @@ -4112,13 +4112,13 @@ msgid "" "the current directory." msgstr "" -#: library/os.rst:3825 +#: library/os.rst:3826 msgid "" "Raises an :ref:`auditing event ` ``os.listxattr`` with argument " "``path``." msgstr "" -#: library/os.rst:3833 +#: library/os.rst:3834 msgid "" "Removes the extended filesystem attribute *attribute* from *path*. " "*attribute* should be bytes or str (directly or indirectly through the :" @@ -4126,13 +4126,13 @@ msgid "" "`filesystem encoding and error handler`." msgstr "" -#: library/os.rst:3841 +#: library/os.rst:3842 msgid "" "Raises an :ref:`auditing event ` ``os.removexattr`` with arguments " "``path``, ``attribute``." msgstr "" -#: library/os.rst:3849 +#: library/os.rst:3850 msgid "" "Set the extended filesystem attribute *attribute* on *path* to *value*. " "*attribute* must be a bytes or str with no embedded NULs (directly or " @@ -4144,45 +4144,45 @@ msgid "" "will not be created and ``EEXISTS`` will be raised." msgstr "" -#: library/os.rst:3863 +#: library/os.rst:3864 msgid "" "A bug in Linux kernel versions less than 2.6.39 caused the flags argument to " "be ignored on some filesystems." msgstr "" -#: library/os.rst:3866 +#: library/os.rst:3867 msgid "" "Raises an :ref:`auditing event ` ``os.setxattr`` with arguments " "``path``, ``attribute``, ``value``, ``flags``." msgstr "" -#: library/os.rst:3874 +#: library/os.rst:3875 msgid "" "The maximum size the value of an extended attribute can be. Currently, this " "is 64 KiB on Linux." msgstr "" -#: library/os.rst:3880 +#: library/os.rst:3881 msgid "" "This is a possible value for the flags argument in :func:`setxattr`. It " "indicates the operation must create an attribute." msgstr "" -#: library/os.rst:3886 +#: library/os.rst:3887 msgid "" "This is a possible value for the flags argument in :func:`setxattr`. It " "indicates the operation must replace an existing attribute." msgstr "" -#: library/os.rst:3893 +#: library/os.rst:3894 msgid "Process Management" msgstr "" -#: library/os.rst:3895 +#: library/os.rst:3896 msgid "These functions may be used to create and manage processes." msgstr "" -#: library/os.rst:3897 +#: library/os.rst:3898 msgid "" "The various :func:`exec\\* ` functions take a list of arguments for " "the new program loaded into the process. In each case, the first of these " @@ -4193,7 +4193,7 @@ msgid "" "standard output; ``foo`` will seem to be ignored." msgstr "" -#: library/os.rst:3908 +#: library/os.rst:3909 msgid "" "Generate a :const:`SIGABRT` signal to the current process. On Unix, the " "default behavior is to produce a core dump; on Windows, the process " @@ -4202,37 +4202,37 @@ msgid "" "`SIGABRT` with :func:`signal.signal`." msgstr "" -#: library/os.rst:3917 +#: library/os.rst:3918 msgid "Add a path to the DLL search path." msgstr "" -#: library/os.rst:3919 +#: library/os.rst:3920 msgid "" "This search path is used when resolving dependencies for imported extension " "modules (the module itself is resolved through :data:`sys.path`), and also " "by :mod:`ctypes`." msgstr "" -#: library/os.rst:3923 +#: library/os.rst:3924 msgid "" "Remove the directory by calling **close()** on the returned object or using " "it in a :keyword:`with` statement." msgstr "" -#: library/os.rst:3926 +#: library/os.rst:3927 msgid "" "See the `Microsoft documentation `_ for more information about how " "DLLs are loaded." msgstr "" -#: library/os.rst:3930 +#: library/os.rst:3931 msgid "" "Raises an :ref:`auditing event ` ``os.add_dll_directory`` with " "argument ``path``." msgstr "" -#: library/os.rst:3934 +#: library/os.rst:3935 msgid "" "Previous versions of CPython would resolve DLLs using the default behavior " "for the current process. This led to inconsistencies, such as only sometimes " @@ -4240,14 +4240,14 @@ msgid "" "such as ``AddDllDirectory`` having no effect." msgstr "" -#: library/os.rst:3941 +#: library/os.rst:3942 msgid "" "In 3.8, the two primary ways DLLs are loaded now explicitly override the " "process-wide behavior to ensure consistency. See the :ref:`porting notes " "` for information on updating libraries." msgstr "" -#: library/os.rst:3956 +#: library/os.rst:3957 msgid "" "These functions all execute a new program, replacing the current process; " "they do not return. On Unix, the new executable is loaded into the current " @@ -4255,7 +4255,7 @@ msgid "" "reported as :exc:`OSError` exceptions." msgstr "" -#: library/os.rst:3961 +#: library/os.rst:3962 msgid "" "The current process is replaced immediately. Open file objects and " "descriptors are not flushed, so if there may be data buffered on these open " @@ -4263,7 +4263,7 @@ msgid "" "fsync` before calling an :func:`exec\\* ` function." msgstr "" -#: library/os.rst:3967 +#: library/os.rst:3968 msgid "" "The \"l\" and \"v\" variants of the :func:`exec\\* ` functions differ " "in how command-line arguments are passed. The \"l\" variants are perhaps " @@ -4276,7 +4276,7 @@ msgid "" "is not enforced." msgstr "" -#: library/os.rst:3976 +#: library/os.rst:3977 msgid "" "The variants which include a \"p\" near the end (:func:`execlp`, :func:" "`execlpe`, :func:`execvp`, and :func:`execvpe`) will use the :envvar:`PATH` " @@ -4290,7 +4290,7 @@ msgid "" "even on Windows, as plain names will not be resolved." msgstr "" -#: library/os.rst:3987 +#: library/os.rst:3988 msgid "" "For :func:`execle`, :func:`execlpe`, :func:`execve`, and :func:`execvpe` " "(note that these all end in \"e\"), the *env* parameter must be a mapping " @@ -4300,7 +4300,7 @@ msgid "" "process to inherit the environment of the current process." msgstr "" -#: library/os.rst:3994 +#: library/os.rst:3995 msgid "" "For :func:`execve` on some platforms, *path* may also be specified as an " "open file descriptor. This functionality may not be supported on your " @@ -4309,31 +4309,31 @@ msgid "" "`NotImplementedError`." msgstr "" -#: library/os.rst:3999 +#: library/os.rst:4000 msgid "" "Raises an :ref:`auditing event ` ``os.exec`` with arguments " "``path``, ``args``, ``env``." msgstr "" -#: library/os.rst:4003 +#: library/os.rst:4004 msgid "" "Added support for specifying *path* as an open file descriptor for :func:" "`execve`." msgstr "" -#: library/os.rst:4012 +#: library/os.rst:4013 msgid "" "Exit the process with status *n*, without calling cleanup handlers, flushing " "stdio buffers, etc." msgstr "" -#: library/os.rst:4017 +#: library/os.rst:4018 msgid "" "The standard way to exit is :func:`sys.exit(n) `. :func:`!_exit` " "should normally only be used in the child process after a :func:`fork`." msgstr "" -#: library/os.rst:4020 +#: library/os.rst:4021 msgid "" "The following exit codes are defined and can be used with :func:`_exit`, " "although they are not required. These are typically used for system " @@ -4341,139 +4341,139 @@ msgid "" "delivery program." msgstr "" -#: library/os.rst:4026 +#: library/os.rst:4027 msgid "" "Some of these may not be available on all Unix platforms, since there is " "some variation. These constants are defined where they are defined by the " "underlying platform." msgstr "" -#: library/os.rst:4033 +#: library/os.rst:4034 msgid "" "Exit code that means no error occurred. May be taken from the defined value " "of ``EXIT_SUCCESS`` on some platforms. Generally has a value of zero." msgstr "" -#: library/os.rst:4041 +#: library/os.rst:4042 msgid "" "Exit code that means the command was used incorrectly, such as when the " "wrong number of arguments are given." msgstr "" -#: library/os.rst:4049 +#: library/os.rst:4050 msgid "Exit code that means the input data was incorrect." msgstr "" -#: library/os.rst:4056 +#: library/os.rst:4057 msgid "Exit code that means an input file did not exist or was not readable." msgstr "" -#: library/os.rst:4063 +#: library/os.rst:4064 msgid "Exit code that means a specified user did not exist." msgstr "" -#: library/os.rst:4070 +#: library/os.rst:4071 msgid "Exit code that means a specified host did not exist." msgstr "" -#: library/os.rst:4077 +#: library/os.rst:4078 msgid "Exit code that means that a required service is unavailable." msgstr "" -#: library/os.rst:4084 +#: library/os.rst:4085 msgid "Exit code that means an internal software error was detected." msgstr "" -#: library/os.rst:4091 +#: library/os.rst:4092 msgid "" "Exit code that means an operating system error was detected, such as the " "inability to fork or create a pipe." msgstr "" -#: library/os.rst:4099 +#: library/os.rst:4100 msgid "" "Exit code that means some system file did not exist, could not be opened, or " "had some other kind of error." msgstr "" -#: library/os.rst:4107 +#: library/os.rst:4108 msgid "Exit code that means a user specified output file could not be created." msgstr "" -#: library/os.rst:4114 +#: library/os.rst:4115 msgid "" "Exit code that means that an error occurred while doing I/O on some file." msgstr "" -#: library/os.rst:4121 +#: library/os.rst:4122 msgid "" "Exit code that means a temporary failure occurred. This indicates something " "that may not really be an error, such as a network connection that couldn't " "be made during a retryable operation." msgstr "" -#: library/os.rst:4130 +#: library/os.rst:4131 msgid "" "Exit code that means that a protocol exchange was illegal, invalid, or not " "understood." msgstr "" -#: library/os.rst:4138 +#: library/os.rst:4139 msgid "" "Exit code that means that there were insufficient permissions to perform the " "operation (but not intended for file system problems)." msgstr "" -#: library/os.rst:4146 +#: library/os.rst:4147 msgid "Exit code that means that some kind of configuration error occurred." msgstr "" -#: library/os.rst:4153 +#: library/os.rst:4154 msgid "Exit code that means something like \"an entry was not found\"." msgstr "" -#: library/os.rst:4160 +#: library/os.rst:4161 msgid "" "Fork a child process. Return ``0`` in the child and the child's process id " "in the parent. If an error occurs :exc:`OSError` is raised." msgstr "" -#: library/os.rst:4163 +#: library/os.rst:4164 msgid "" "Note that some platforms including FreeBSD <= 6.3 and Cygwin have known " "issues when using ``fork()`` from a thread." msgstr "" -#: library/os.rst:4166 +#: library/os.rst:4167 msgid "" "Raises an :ref:`auditing event ` ``os.fork`` with no arguments." msgstr "" -#: library/os.rst:4170 +#: library/os.rst:4171 msgid "" "If you use TLS sockets in an application calling ``fork()``, see the warning " "in the :mod:`ssl` documentation." msgstr "" -#: library/os.rst:4219 +#: library/os.rst:4220 msgid "" "On macOS the use of this function is unsafe when mixed with using higher-" "level system APIs, and that includes using :mod:`urllib.request`." msgstr "" -#: library/os.rst:4178 +#: library/os.rst:4179 msgid "" "Calling ``fork()`` in a subinterpreter is no longer supported (:exc:" "`RuntimeError` is raised)." msgstr "" -#: library/os.rst:4182 +#: library/os.rst:4183 msgid "" "If Python is able to detect that your process has multiple threads, :func:" "`os.fork` now raises a :exc:`DeprecationWarning`." msgstr "" -#: library/os.rst:4186 +#: library/os.rst:4187 msgid "" "We chose to surface this as a warning, when detectable, to better inform " "developers of a design problem that the POSIX platform specifically notes as " @@ -4484,21 +4484,21 @@ msgid "" "``free``)." msgstr "" -#: library/os.rst:4195 +#: library/os.rst:4196 msgid "" "Users of macOS or users of libc or malloc implementations other than those " "typically found in glibc to date are among those already more likely to " "experience deadlocks running such code." msgstr "" -#: library/os.rst:4199 +#: library/os.rst:4200 msgid "" "See `this discussion on fork being incompatible with threads `_ for technical details of why we're surfacing " "this longstanding platform compatibility problem to developers." msgstr "" -#: library/os.rst:4209 +#: library/os.rst:4210 msgid "" "Fork a child process, using a new pseudo-terminal as the child's controlling " "terminal. Return a pair of ``(pid, fd)``, where *pid* is ``0`` in the child, " @@ -4507,39 +4507,38 @@ msgid "" "the :mod:`pty` module. If an error occurs :exc:`OSError` is raised." msgstr "" -#: library/os.rst:4215 +#: library/os.rst:4216 msgid "" "Raises an :ref:`auditing event ` ``os.forkpty`` with no arguments." msgstr "" -#: library/os.rst:4222 +#: library/os.rst:4223 msgid "" "Calling ``forkpty()`` in a subinterpreter is no longer supported (:exc:" "`RuntimeError` is raised)." msgstr "" -#: library/os.rst:4226 +#: library/os.rst:4227 msgid "" "If Python is able to detect that your process has multiple threads, this now " "raises a :exc:`DeprecationWarning`. See the longer explanation on :func:`os." "fork`." msgstr "" -#: library/os.rst:4240 +#: library/os.rst:4241 msgid "" "Send signal *sig* to the process *pid*. Constants for the specific signals " "available on the host platform are defined in the :mod:`signal` module." msgstr "" -#: library/os.rst:4243 +#: library/os.rst:4244 msgid "" "Windows: The :const:`signal.CTRL_C_EVENT` and :const:`signal." "CTRL_BREAK_EVENT` signals are special signals which can only be sent to " "console processes which share a common console window, e.g., some " "subprocesses. Any other value for *sig* will cause the process to be " "unconditionally killed by the TerminateProcess API, and the exit code will " -"be set to *sig*. The Windows version of :func:`kill` additionally takes " -"process handles to be killed." +"be set to *sig*." msgstr "" #: library/os.rst:4251 @@ -5497,124 +5496,125 @@ msgid "" "operating system." msgstr "" -#: library/os.rst:5064 +#: library/os.rst:5066 msgid "The default scheduling policy." msgstr "" -#: library/os.rst:5068 +#: library/os.rst:5070 msgid "" "Scheduling policy for CPU-intensive processes that tries to preserve " "interactivity on the rest of the computer." msgstr "" -#: library/os.rst:5073 +#: library/os.rst:5075 msgid "Scheduling policy for extremely low priority background tasks." msgstr "" -#: library/os.rst:5077 +#: library/os.rst:5079 msgid "Scheduling policy for sporadic server programs." msgstr "" -#: library/os.rst:5081 +#: library/os.rst:5083 msgid "A First In First Out scheduling policy." msgstr "" -#: library/os.rst:5085 +#: library/os.rst:5087 msgid "A round-robin scheduling policy." msgstr "" -#: library/os.rst:5089 +#: library/os.rst:5091 msgid "" "This flag can be OR'ed with any other scheduling policy. When a process with " "this flag set forks, its child's scheduling policy and priority are reset to " "the default." msgstr "" -#: library/os.rst:5096 +#: library/os.rst:5098 msgid "" "This class represents tunable scheduling parameters used in :func:" "`sched_setparam`, :func:`sched_setscheduler`, and :func:`sched_getparam`. It " "is immutable." msgstr "" -#: library/os.rst:5100 +#: library/os.rst:5102 msgid "At the moment, there is only one possible parameter:" msgstr "" -#: library/os.rst:5104 +#: library/os.rst:5106 msgid "The scheduling priority for a scheduling policy." msgstr "" -#: library/os.rst:5109 +#: library/os.rst:5111 msgid "" "Get the minimum priority value for *policy*. *policy* is one of the " "scheduling policy constants above." msgstr "" -#: library/os.rst:5115 +#: library/os.rst:5117 msgid "" "Get the maximum priority value for *policy*. *policy* is one of the " "scheduling policy constants above." msgstr "" -#: library/os.rst:5121 +#: library/os.rst:5123 msgid "" "Set the scheduling policy for the process with PID *pid*. A *pid* of 0 means " "the calling process. *policy* is one of the scheduling policy constants " "above. *param* is a :class:`sched_param` instance." msgstr "" -#: library/os.rst:5128 +#: library/os.rst:5130 msgid "" "Return the scheduling policy for the process with PID *pid*. A *pid* of 0 " "means the calling process. The result is one of the scheduling policy " "constants above." msgstr "" -#: library/os.rst:5135 +#: library/os.rst:5137 msgid "" "Set the scheduling parameters for the process with PID *pid*. A *pid* of 0 " "means the calling process. *param* is a :class:`sched_param` instance." msgstr "" -#: library/os.rst:5141 +#: library/os.rst:5143 msgid "" "Return the scheduling parameters as a :class:`sched_param` instance for the " "process with PID *pid*. A *pid* of 0 means the calling process." msgstr "" -#: library/os.rst:5147 +#: library/os.rst:5149 msgid "" "Return the round-robin quantum in seconds for the process with PID *pid*. A " "*pid* of 0 means the calling process." msgstr "" -#: library/os.rst:5153 -msgid "Voluntarily relinquish the CPU." +#: library/os.rst:5155 +msgid "" +"Voluntarily relinquish the CPU. See :manpage:`sched_yield(2)` for details." msgstr "" -#: library/os.rst:5158 +#: library/os.rst:5160 msgid "" "Restrict the process with PID *pid* (or the current process if zero) to a " "set of CPUs. *mask* is an iterable of integers representing the set of CPUs " "to which the process should be restricted." msgstr "" -#: library/os.rst:5165 +#: library/os.rst:5167 msgid "Return the set of CPUs the process with PID *pid* is restricted to." msgstr "" -#: library/os.rst:5167 +#: library/os.rst:5169 msgid "" "If *pid* is zero, return the set of CPUs the calling thread of the current " "process is restricted to." msgstr "" -#: library/os.rst:5174 +#: library/os.rst:5176 msgid "Miscellaneous System Information" msgstr "" -#: library/os.rst:5179 +#: library/os.rst:5181 msgid "" "Return string-valued system configuration values. *name* specifies the " "configuration value to retrieve; it may be a string which is the name of a " @@ -5625,13 +5625,13 @@ msgid "" "included in that mapping, passing an integer for *name* is also accepted." msgstr "" -#: library/os.rst:5187 +#: library/os.rst:5189 msgid "" "If the configuration value specified by *name* isn't defined, ``None`` is " "returned." msgstr "" -#: library/os.rst:5190 +#: library/os.rst:5192 msgid "" "If *name* is a string and is not known, :exc:`ValueError` is raised. If a " "specific value for *name* is not supported by the host system, even if it is " @@ -5639,34 +5639,34 @@ msgid "" "`errno.EINVAL` for the error number." msgstr "" -#: library/os.rst:5200 +#: library/os.rst:5202 msgid "" "Dictionary mapping names accepted by :func:`confstr` to the integer values " "defined for those names by the host operating system. This can be used to " "determine the set of names known to the system." msgstr "" -#: library/os.rst:5209 +#: library/os.rst:5211 msgid "" "Return the number of logical CPUs in the system. Returns ``None`` if " "undetermined." msgstr "" -#: library/os.rst:5212 +#: library/os.rst:5214 msgid "" "This number is not equivalent to the number of logical CPUs the current " "process can use. ``len(os.sched_getaffinity(0))`` gets the number of logical " "CPUs the calling thread of the current process is restricted to" msgstr "" -#: library/os.rst:5221 +#: library/os.rst:5223 msgid "" "Return the number of processes in the system run queue averaged over the " "last 1, 5, and 15 minutes or raises :exc:`OSError` if the load average was " "unobtainable." msgstr "" -#: library/os.rst:5230 +#: library/os.rst:5232 msgid "" "Return integer-valued system configuration values. If the configuration " "value specified by *name* isn't defined, ``-1`` is returned. The comments " @@ -5675,44 +5675,44 @@ msgid "" "``sysconf_names``." msgstr "" -#: library/os.rst:5240 +#: library/os.rst:5242 msgid "" "Dictionary mapping names accepted by :func:`sysconf` to the integer values " "defined for those names by the host operating system. This can be used to " "determine the set of names known to the system." msgstr "" -#: library/os.rst:5246 +#: library/os.rst:5248 msgid "Add ``'SC_MINSIGSTKSZ'`` name." msgstr "" -#: library/os.rst:5249 +#: library/os.rst:5251 msgid "" "The following data values are used to support path manipulation operations. " "These are defined for all platforms." msgstr "" -#: library/os.rst:5252 +#: library/os.rst:5254 msgid "" "Higher-level operations on pathnames are defined in the :mod:`os.path` " "module." msgstr "" -#: library/os.rst:5258 +#: library/os.rst:5260 msgid "" "The constant string used by the operating system to refer to the current " "directory. This is ``'.'`` for Windows and POSIX. Also available via :mod:" "`os.path`." msgstr "" -#: library/os.rst:5266 +#: library/os.rst:5268 msgid "" "The constant string used by the operating system to refer to the parent " "directory. This is ``'..'`` for Windows and POSIX. Also available via :mod:" "`os.path`." msgstr "" -#: library/os.rst:5275 +#: library/os.rst:5277 msgid "" "The character used by the operating system to separate pathname components. " "This is ``'/'`` for POSIX and ``'\\\\'`` for Windows. Note that knowing " @@ -5721,7 +5721,7 @@ msgid "" "useful. Also available via :mod:`os.path`." msgstr "" -#: library/os.rst:5285 +#: library/os.rst:5287 msgid "" "An alternative character used by the operating system to separate pathname " "components, or ``None`` if only one separator character exists. This is set " @@ -5729,27 +5729,27 @@ msgid "" "via :mod:`os.path`." msgstr "" -#: library/os.rst:5294 +#: library/os.rst:5296 msgid "" "The character which separates the base filename from the extension; for " "example, the ``'.'`` in :file:`os.py`. Also available via :mod:`os.path`." msgstr "" -#: library/os.rst:5302 +#: library/os.rst:5304 msgid "" "The character conventionally used by the operating system to separate search " "path components (as in :envvar:`PATH`), such as ``':'`` for POSIX or ``';'`` " "for Windows. Also available via :mod:`os.path`." msgstr "" -#: library/os.rst:5309 +#: library/os.rst:5311 msgid "" "The default search path used by :func:`exec\\*p\\* ` and :func:" "`spawn\\*p\\* ` if the environment doesn't have a ``'PATH'`` key. " "Also available via :mod:`os.path`." msgstr "" -#: library/os.rst:5316 +#: library/os.rst:5318 msgid "" "The string used to separate (or, rather, terminate) lines on the current " "platform. This may be a single character, such as ``'\\n'`` for POSIX, or " @@ -5758,36 +5758,36 @@ msgid "" "default); use a single ``'\\n'`` instead, on all platforms." msgstr "" -#: library/os.rst:5325 +#: library/os.rst:5327 msgid "" "The file path of the null device. For example: ``'/dev/null'`` for POSIX, " "``'nul'`` for Windows. Also available via :mod:`os.path`." msgstr "" -#: library/os.rst:5336 +#: library/os.rst:5338 msgid "" "Flags for use with the :func:`~sys.setdlopenflags` and :func:`~sys." "getdlopenflags` functions. See the Unix manual page :manpage:`dlopen(3)` " "for what the different flags mean." msgstr "" -#: library/os.rst:5344 +#: library/os.rst:5346 msgid "Random numbers" msgstr "" -#: library/os.rst:5349 +#: library/os.rst:5351 msgid "" "Get up to *size* random bytes. The function can return less bytes than " "requested." msgstr "" -#: library/os.rst:5352 +#: library/os.rst:5354 msgid "" "These bytes can be used to seed user-space random number generators or for " "cryptographic purposes." msgstr "" -#: library/os.rst:5355 +#: library/os.rst:5357 msgid "" "``getrandom()`` relies on entropy gathered from device drivers and other " "sources of environmental noise. Unnecessarily reading large quantities of " @@ -5795,32 +5795,32 @@ msgid "" "``/dev/urandom`` devices." msgstr "" -#: library/os.rst:5360 +#: library/os.rst:5362 msgid "" "The flags argument is a bit mask that can contain zero or more of the " "following values ORed together: :py:const:`os.GRND_RANDOM` and :py:data:" "`GRND_NONBLOCK`." msgstr "" -#: library/os.rst:5364 +#: library/os.rst:5366 msgid "" "See also the `Linux getrandom() manual page `_." msgstr "" -#: library/os.rst:5373 +#: library/os.rst:5375 msgid "" "Return a bytestring of *size* random bytes suitable for cryptographic use." msgstr "" -#: library/os.rst:5375 +#: library/os.rst:5377 msgid "" "This function returns random bytes from an OS-specific randomness source. " "The returned data should be unpredictable enough for cryptographic " "applications, though its exact quality depends on the OS implementation." msgstr "" -#: library/os.rst:5379 +#: library/os.rst:5381 msgid "" "On Linux, if the ``getrandom()`` syscall is available, it is used in " "blocking mode: block until the system urandom entropy pool is initialized " @@ -5830,157 +5830,157 @@ msgid "" "to poll until the system urandom entropy pool is initialized." msgstr "" -#: library/os.rst:5386 +#: library/os.rst:5388 msgid "" "On a Unix-like system, random bytes are read from the ``/dev/urandom`` " "device. If the ``/dev/urandom`` device is not available or not readable, " "the :exc:`NotImplementedError` exception is raised." msgstr "" -#: library/os.rst:5390 +#: library/os.rst:5392 msgid "On Windows, it will use ``BCryptGenRandom()``." msgstr "" -#: library/os.rst:5393 +#: library/os.rst:5395 msgid "" "The :mod:`secrets` module provides higher level functions. For an easy-to-" "use interface to the random number generator provided by your platform, " "please see :class:`random.SystemRandom`." msgstr "" -#: library/os.rst:5397 +#: library/os.rst:5399 msgid "" "On Linux 3.17 and newer, the ``getrandom()`` syscall is now used when " "available. On OpenBSD 5.6 and newer, the C ``getentropy()`` function is now " "used. These functions avoid the usage of an internal file descriptor." msgstr "" -#: library/os.rst:5403 +#: library/os.rst:5405 msgid "" "On Linux, if the ``getrandom()`` syscall blocks (the urandom entropy pool is " "not initialized yet), fall back on reading ``/dev/urandom``." msgstr "" -#: library/os.rst:5407 +#: library/os.rst:5409 msgid "" "On Linux, ``getrandom()`` is now used in blocking mode to increase the " "security." msgstr "" -#: library/os.rst:5411 +#: library/os.rst:5413 msgid "" "On Windows, ``BCryptGenRandom()`` is used instead of ``CryptGenRandom()`` " "which is deprecated." msgstr "" -#: library/os.rst:5417 +#: library/os.rst:5419 msgid "" "By default, when reading from ``/dev/random``, :func:`getrandom` blocks if " "no random bytes are available, and when reading from ``/dev/urandom``, it " "blocks if the entropy pool has not yet been initialized." msgstr "" -#: library/os.rst:5421 +#: library/os.rst:5423 msgid "" "If the :py:data:`GRND_NONBLOCK` flag is set, then :func:`getrandom` does not " "block in these cases, but instead immediately raises :exc:`BlockingIOError`." msgstr "" -#: library/os.rst:5428 +#: library/os.rst:5430 msgid "" "If this bit is set, then random bytes are drawn from the ``/dev/" "random`` pool instead of the ``/dev/urandom`` pool." msgstr "" -#: library/os.rst:529 library/os.rst:731 +#: library/os.rst:530 library/os.rst:732 msgid "user" msgstr "" -#: library/os.rst:363 +#: library/os.rst:364 msgid "effective id" msgstr "" -#: library/os.rst:438 library/os.rst:456 library/os.rst:666 library/os.rst:4263 +#: library/os.rst:439 library/os.rst:457 library/os.rst:667 library/os.rst:4263 msgid "process" msgstr "" -#: library/os.rst:438 +#: library/os.rst:439 msgid "group" msgstr "" -#: library/os.rst:529 +#: library/os.rst:530 msgid "id" msgstr "" -#: library/os.rst:456 +#: library/os.rst:457 msgid "id of parent" msgstr "" -#: library/os.rst:666 +#: library/os.rst:667 msgid "scheduling priority" msgstr "" -#: library/os.rst:796 +#: library/os.rst:797 msgid "environment variables" msgstr "" -#: library/os.rst:552 +#: library/os.rst:553 msgid "setting" msgstr "" -#: library/os.rst:731 +#: library/os.rst:732 msgid "id, setting" msgstr "" -#: library/os.rst:764 +#: library/os.rst:765 msgid "gethostname() (in module socket)" msgstr "" -#: library/os.rst:764 +#: library/os.rst:765 msgid "gethostbyaddr() (in module socket)" msgstr "" -#: library/os.rst:2584 +#: library/os.rst:2585 msgid "deleting" msgstr "" -#: library/os.rst:2954 +#: library/os.rst:2955 msgid "module" msgstr "" -#: library/os.rst:1338 +#: library/os.rst:1339 msgid "pty" msgstr "" -#: library/os.rst:2383 library/os.rst:3488 library/os.rst:3588 +#: library/os.rst:2384 library/os.rst:3489 library/os.rst:3589 msgid "directory" msgstr "" -#: library/os.rst:1979 +#: library/os.rst:1980 msgid "changing" msgstr "" -#: library/os.rst:2383 +#: library/os.rst:2384 msgid "creating" msgstr "" -#: library/os.rst:2383 +#: library/os.rst:2384 msgid "UNC paths" msgstr "" -#: library/os.rst:2383 +#: library/os.rst:2384 msgid "and os.makedirs()" msgstr "" -#: library/os.rst:2954 +#: library/os.rst:2955 msgid "stat" msgstr "" -#: library/os.rst:3588 +#: library/os.rst:3589 msgid "walking" msgstr "" -#: library/os.rst:3588 +#: library/os.rst:3589 msgid "traversal" msgstr "" @@ -5992,38 +5992,38 @@ msgstr "" msgid "signalling" msgstr "" -#: library/os.rst:5291 +#: library/os.rst:5293 msgid ". (dot)" msgstr "" -#: library/os.rst:5263 library/os.rst:5282 library/os.rst:5291 +#: library/os.rst:5265 library/os.rst:5284 library/os.rst:5293 msgid "in pathnames" msgstr "" -#: library/os.rst:5263 +#: library/os.rst:5265 msgid ".." msgstr "" -#: library/os.rst:5282 +#: library/os.rst:5284 msgid "/ (slash)" msgstr "" -#: library/os.rst:5272 +#: library/os.rst:5274 msgid "\\ (backslash)" msgstr "" -#: library/os.rst:5272 +#: library/os.rst:5274 msgid "in pathnames (Windows)" msgstr "" -#: library/os.rst:5298 +#: library/os.rst:5300 msgid ": (colon)" msgstr "" -#: library/os.rst:5298 +#: library/os.rst:5300 msgid "path separator (POSIX)" msgstr "" -#: library/os.rst:5298 +#: library/os.rst:5300 msgid "; (semicolon)" msgstr "" diff --git a/library/pdb.po b/library/pdb.po index bcf2a2714..7cfe1641d 100644 --- a/library/pdb.po +++ b/library/pdb.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -122,17 +122,17 @@ msgid "" "arguments of the ``p`` command." msgstr "" -#: library/pdb.rst:78 +#: library/pdb.rst:80 msgid "" "You can also invoke :mod:`pdb` from the command line to debug other " "scripts. For example::" msgstr "" -#: library/pdb.rst:81 -msgid "python -m pdb myscript.py" +#: library/pdb.rst:83 +msgid "python -m pdb [-c command] (-m module | pyfile) [args ...]" msgstr "" -#: library/pdb.rst:83 +#: library/pdb.rst:85 msgid "" "When invoked as a module, pdb will automatically enter post-mortem debugging " "if the program being debugged exits abnormally. After post-mortem debugging " @@ -141,24 +141,31 @@ msgid "" "cases is more useful than quitting the debugger upon program's exit." msgstr "" -#: library/pdb.rst:89 +#: library/pdb.rst:93 msgid "" -"Added the ``-c`` option to execute commands as if given in a :file:`.pdbrc` " -"file; see :ref:`debugger-commands`." +"To execute commands as if given in a :file:`.pdbrc` file; see :ref:`debugger-" +"commands`." msgstr "" -#: library/pdb.rst:93 +#: library/pdb.rst:96 +msgid "Added the ``-c`` option." +msgstr "" + +#: library/pdb.rst:101 msgid "" -"Added the ``-m`` option to execute modules similar to the way ``python -m`` " -"does. As with a script, the debugger will pause execution just before the " -"first line of the module." +"To execute modules similar to the way ``python -m`` does. As with a script, " +"the debugger will pause execution just before the first line of the module." msgstr "" -#: library/pdb.rst:98 +#: library/pdb.rst:104 +msgid "Added the ``-m`` option." +msgstr "" + +#: library/pdb.rst:107 msgid "Typical usage to execute a statement under control of the debugger is::" msgstr "" -#: library/pdb.rst:100 +#: library/pdb.rst:109 msgid "" ">>> import pdb\n" ">>> def f(x):\n" @@ -170,11 +177,11 @@ msgid "" ">>>" msgstr "" -#: library/pdb.rst:109 +#: library/pdb.rst:118 msgid "The typical usage to inspect a crashed program is::" msgstr "" -#: library/pdb.rst:111 +#: library/pdb.rst:120 msgid "" ">>> import pdb\n" ">>> def f(x):\n" @@ -192,13 +199,13 @@ msgid "" "(Pdb)" msgstr "" -#: library/pdb.rst:127 +#: library/pdb.rst:136 msgid "" "The module defines the following functions; each enters the debugger in a " "slightly different way:" msgstr "" -#: library/pdb.rst:132 +#: library/pdb.rst:141 msgid "" "Execute the *statement* (given as a string or a code object) under debugger " "control. The debugger prompt appears before any code is executed; you can " @@ -210,14 +217,14 @@ msgid "" "`exec` or :func:`eval` functions.)" msgstr "" -#: library/pdb.rst:144 +#: library/pdb.rst:153 msgid "" "Evaluate the *expression* (given as a string or a code object) under " "debugger control. When :func:`runeval` returns, it returns the value of the " "*expression*. Otherwise this function is similar to :func:`run`." msgstr "" -#: library/pdb.rst:151 +#: library/pdb.rst:160 msgid "" "Call the *function* (a function or method object, not a string) with the " "given arguments. When :func:`runcall` returns, it returns whatever the " @@ -225,7 +232,7 @@ msgid "" "is entered." msgstr "" -#: library/pdb.rst:159 +#: library/pdb.rst:168 msgid "" "Enter the debugger at the calling stack frame. This is useful to hard-code " "a breakpoint at a given point in a program, even if the code is not " @@ -233,11 +240,11 @@ msgid "" "is printed to the console just before debugging begins." msgstr "" -#: library/pdb.rst:164 +#: library/pdb.rst:173 msgid "The keyword-only argument *header*." msgstr "" -#: library/pdb.rst:170 +#: library/pdb.rst:179 msgid "" "Enter post-mortem debugging of the given *traceback* object. If no " "*traceback* is given, it uses the one of the exception that is currently " @@ -245,37 +252,37 @@ msgid "" "used)." msgstr "" -#: library/pdb.rst:178 +#: library/pdb.rst:187 msgid "" "Enter post-mortem debugging of the traceback found in :data:`sys." "last_traceback`." msgstr "" -#: library/pdb.rst:182 +#: library/pdb.rst:191 msgid "" "The ``run*`` functions and :func:`set_trace` are aliases for instantiating " "the :class:`Pdb` class and calling the method of the same name. If you want " "to access further features, you have to do this yourself:" msgstr "" -#: library/pdb.rst:189 +#: library/pdb.rst:198 msgid ":class:`Pdb` is the debugger class." msgstr "" -#: library/pdb.rst:191 +#: library/pdb.rst:200 msgid "" "The *completekey*, *stdin* and *stdout* arguments are passed to the " "underlying :class:`cmd.Cmd` class; see the description there." msgstr "" -#: library/pdb.rst:194 +#: library/pdb.rst:203 msgid "" "The *skip* argument, if given, must be an iterable of glob-style module name " "patterns. The debugger will not step into frames that originate in a module " "that matches one of these patterns. [1]_" msgstr "" -#: library/pdb.rst:198 +#: library/pdb.rst:207 msgid "" "By default, Pdb sets a handler for the SIGINT signal (which is sent when the " "user presses :kbd:`Ctrl-C` on the console) when you give a :pdbcmd:" @@ -284,48 +291,48 @@ msgid "" "set *nosigint* to true." msgstr "" -#: library/pdb.rst:203 +#: library/pdb.rst:212 msgid "" "The *readrc* argument defaults to true and controls whether Pdb will load ." "pdbrc files from the filesystem." msgstr "" -#: library/pdb.rst:206 +#: library/pdb.rst:215 msgid "Example call to enable tracing with *skip*::" msgstr "" -#: library/pdb.rst:208 +#: library/pdb.rst:217 msgid "import pdb; pdb.Pdb(skip=['django.*']).set_trace()" msgstr "" -#: library/pdb.rst:210 +#: library/pdb.rst:219 msgid "" "Raises an :ref:`auditing event ` ``pdb.Pdb`` with no arguments." msgstr "" -#: library/pdb.rst:212 +#: library/pdb.rst:221 msgid "Added the *skip* parameter." msgstr "" -#: library/pdb.rst:215 +#: library/pdb.rst:224 msgid "" "Added the *nosigint* parameter. Previously, a SIGINT handler was never set " "by Pdb." msgstr "" -#: library/pdb.rst:219 +#: library/pdb.rst:228 msgid "The *readrc* argument." msgstr "" -#: library/pdb.rst:227 +#: library/pdb.rst:236 msgid "See the documentation for the functions explained above." msgstr "" -#: library/pdb.rst:233 +#: library/pdb.rst:242 msgid "Debugger Commands" msgstr "" -#: library/pdb.rst:235 +#: library/pdb.rst:244 msgid "" "The commands recognized by the debugger are listed below. Most commands can " "be abbreviated to one or two letters as indicated; e.g. ``h(elp)`` means " @@ -337,13 +344,13 @@ msgid "" "are separated by a vertical bar (``|``)." msgstr "" -#: library/pdb.rst:244 +#: library/pdb.rst:253 msgid "" "Entering a blank line repeats the last command entered. Exception: if the " "last command was a :pdbcmd:`list` command, the next 11 lines are listed." msgstr "" -#: library/pdb.rst:247 +#: library/pdb.rst:256 msgid "" "Commands that the debugger doesn't recognize are assumed to be Python " "statements and are executed in the context of the program being debugged. " @@ -354,14 +361,14 @@ msgid "" "is not changed." msgstr "" -#: library/pdb.rst:255 +#: library/pdb.rst:264 msgid "" "The debugger supports :ref:`aliases `. Aliases can have " "parameters which allows one a certain level of adaptability to the context " "under examination." msgstr "" -#: library/pdb.rst:259 +#: library/pdb.rst:268 msgid "" "Multiple commands may be entered on a single line, separated by ``;;``. (A " "single ``;`` is not used as it is the separator for multiple commands in a " @@ -372,7 +379,7 @@ msgid "" "\"\";\"``." msgstr "" -#: library/pdb.rst:266 +#: library/pdb.rst:275 msgid "" "To set a temporary global variable, use a *convenience variable*. A " "*convenience variable* is a variable whose name starts with ``$``. For " @@ -382,27 +389,27 @@ msgid "" "compared to using normal variables like ``foo = 1``." msgstr "" -#: library/pdb.rst:273 +#: library/pdb.rst:282 msgid "There are three preset *convenience variables*:" msgstr "" -#: library/pdb.rst:275 +#: library/pdb.rst:284 msgid "``$_frame``: the current frame you are debugging" msgstr "" -#: library/pdb.rst:276 +#: library/pdb.rst:285 msgid "``$_retval``: the return value if the frame is returning" msgstr "" -#: library/pdb.rst:277 +#: library/pdb.rst:286 msgid "``$_exception``: the exception if the frame is raising an exception" msgstr "" -#: library/pdb.rst:281 +#: library/pdb.rst:290 msgid "Added the *convenience variable* feature." msgstr "" -#: library/pdb.rst:287 +#: library/pdb.rst:296 msgid "" "If a file :file:`.pdbrc` exists in the user's home directory or in the " "current directory, it is read with ``'utf-8'`` encoding and executed as if " @@ -412,20 +419,20 @@ msgid "" "read first and aliases defined there can be overridden by the local file." msgstr "" -#: library/pdb.rst:294 +#: library/pdb.rst:303 msgid "" ":file:`.pdbrc` can now contain commands that continue debugging, such as :" "pdbcmd:`continue` or :pdbcmd:`next`. Previously, these commands had no " "effect." msgstr "" -#: library/pdb.rst:299 +#: library/pdb.rst:308 msgid "" ":file:`.pdbrc` is now read with ``'utf-8'`` encoding. Previously, it was " "read with the system locale encoding." msgstr "" -#: library/pdb.rst:306 +#: library/pdb.rst:315 msgid "" "Without argument, print the list of available commands. With a *command* as " "argument, print help about that command. ``help pdb`` displays the full " @@ -434,26 +441,26 @@ msgid "" "the ``!`` command." msgstr "" -#: library/pdb.rst:314 +#: library/pdb.rst:323 msgid "" "Print a stack trace, with the most recent frame at the bottom. An arrow " "(``>``) indicates the current frame, which determines the context of most " "commands." msgstr "" -#: library/pdb.rst:319 +#: library/pdb.rst:328 msgid "" "Move the current frame *count* (default one) levels down in the stack trace " "(to a newer frame)." msgstr "" -#: library/pdb.rst:324 +#: library/pdb.rst:333 msgid "" "Move the current frame *count* (default one) levels up in the stack trace " "(to an older frame)." msgstr "" -#: library/pdb.rst:329 +#: library/pdb.rst:338 msgid "" "With a *lineno* argument, set a break there in the current file. With a " "*function* argument, set a break at the first executable statement within " @@ -464,33 +471,33 @@ msgid "" "refer." msgstr "" -#: library/pdb.rst:336 +#: library/pdb.rst:345 msgid "" "If a second argument is present, it is an expression which must evaluate to " "true before the breakpoint is honored." msgstr "" -#: library/pdb.rst:339 +#: library/pdb.rst:348 msgid "" "Without argument, list all breaks, including for each breakpoint, the number " "of times that breakpoint has been hit, the current ignore count, and the " "associated condition if any." msgstr "" -#: library/pdb.rst:345 +#: library/pdb.rst:354 msgid "" "Temporary breakpoint, which is removed automatically when it is first hit. " "The arguments are the same as for :pdbcmd:`break`." msgstr "" -#: library/pdb.rst:350 +#: library/pdb.rst:359 msgid "" "With a *filename:lineno* argument, clear all the breakpoints at this line. " "With a space separated list of breakpoint numbers, clear those breakpoints. " "Without argument, clear all breaks (but first ask confirmation)." msgstr "" -#: library/pdb.rst:356 +#: library/pdb.rst:365 msgid "" "Disable the breakpoints given as a space separated list of breakpoint " "numbers. Disabling a breakpoint means it cannot cause the program to stop " @@ -498,11 +505,11 @@ msgid "" "breakpoints and can be (re-)enabled." msgstr "" -#: library/pdb.rst:363 +#: library/pdb.rst:372 msgid "Enable the breakpoints specified." msgstr "" -#: library/pdb.rst:367 +#: library/pdb.rst:376 msgid "" "Set the ignore count for the given breakpoint number. If *count* is " "omitted, the ignore count is set to 0. A breakpoint becomes active when the " @@ -511,21 +518,21 @@ msgid "" "associated condition evaluates to true." msgstr "" -#: library/pdb.rst:375 +#: library/pdb.rst:384 msgid "" "Set a new *condition* for the breakpoint, an expression which must evaluate " "to true before the breakpoint is honored. If *condition* is absent, any " "existing condition is removed; i.e., the breakpoint is made unconditional." msgstr "" -#: library/pdb.rst:381 +#: library/pdb.rst:390 msgid "" "Specify a list of commands for breakpoint number *bpnumber*. The commands " "themselves appear on the following lines. Type a line containing just " "``end`` to terminate the commands. An example::" msgstr "" -#: library/pdb.rst:385 +#: library/pdb.rst:394 msgid "" "(Pdb) commands 1\n" "(com) p some_variable\n" @@ -533,25 +540,25 @@ msgid "" "(Pdb)" msgstr "" -#: library/pdb.rst:390 +#: library/pdb.rst:399 msgid "" "To remove all commands from a breakpoint, type ``commands`` and follow it " "immediately with ``end``; that is, give no commands." msgstr "" -#: library/pdb.rst:393 +#: library/pdb.rst:402 msgid "" "With no *bpnumber* argument, ``commands`` refers to the last breakpoint set." msgstr "" -#: library/pdb.rst:395 +#: library/pdb.rst:404 msgid "" "You can use breakpoint commands to start your program up again. Simply use " "the :pdbcmd:`continue` command, or :pdbcmd:`step`, or any other command that " "resumes execution." msgstr "" -#: library/pdb.rst:399 +#: library/pdb.rst:408 msgid "" "Specifying any command resuming execution (currently :pdbcmd:`continue`, :" "pdbcmd:`step`, :pdbcmd:`next`, :pdbcmd:`return`, :pdbcmd:`jump`, :pdbcmd:" @@ -562,7 +569,7 @@ msgid "" "ambiguities about which list to execute." msgstr "" -#: library/pdb.rst:408 +#: library/pdb.rst:417 msgid "" "If you use the ``silent`` command in the command list, the usual message " "about stopping at a breakpoint is not printed. This may be desirable for " @@ -571,13 +578,13 @@ msgid "" "was reached." msgstr "" -#: library/pdb.rst:415 +#: library/pdb.rst:424 msgid "" "Execute the current line, stop at the first possible occasion (either in a " "function that is called or on the next line in the current function)." msgstr "" -#: library/pdb.rst:420 +#: library/pdb.rst:429 msgid "" "Continue execution until the next line in the current function is reached or " "it returns. (The difference between :pdbcmd:`next` and :pdbcmd:`step` is " @@ -586,46 +593,46 @@ msgid "" "line in the current function.)" msgstr "" -#: library/pdb.rst:428 +#: library/pdb.rst:437 msgid "" "Without argument, continue execution until the line with a number greater " "than the current one is reached." msgstr "" -#: library/pdb.rst:431 +#: library/pdb.rst:440 msgid "" "With *lineno*, continue execution until a line with a number greater or " "equal to *lineno* is reached. In both cases, also stop when the current " "frame returns." msgstr "" -#: library/pdb.rst:435 +#: library/pdb.rst:444 msgid "Allow giving an explicit line number." msgstr "" -#: library/pdb.rst:440 +#: library/pdb.rst:449 msgid "Continue execution until the current function returns." msgstr "" -#: library/pdb.rst:444 +#: library/pdb.rst:453 msgid "Continue execution, only stop when a breakpoint is encountered." msgstr "" -#: library/pdb.rst:448 +#: library/pdb.rst:457 msgid "" "Set the next line that will be executed. Only available in the bottom-most " "frame. This lets you jump back and execute code again, or jump forward to " "skip code that you don't want to run." msgstr "" -#: library/pdb.rst:452 +#: library/pdb.rst:461 msgid "" "It should be noted that not all jumps are allowed -- for instance it is not " "possible to jump into the middle of a :keyword:`for` loop or out of a :" "keyword:`finally` clause." msgstr "" -#: library/pdb.rst:458 +#: library/pdb.rst:467 msgid "" "List source code for the current file. Without arguments, list 11 lines " "around the current line or continue the previous listing. With ``.`` as " @@ -634,7 +641,7 @@ msgid "" "second argument is less than the first, it is interpreted as a count." msgstr "" -#: library/pdb.rst:464 +#: library/pdb.rst:473 msgid "" "The current line in the current frame is indicated by ``->``. If an " "exception is being debugged, the line where the exception was originally " @@ -642,67 +649,67 @@ msgid "" "line." msgstr "" -#: library/pdb.rst:469 +#: library/pdb.rst:478 msgid "Added the ``>>`` marker." msgstr "" -#: library/pdb.rst:474 +#: library/pdb.rst:483 msgid "" "List all source code for the current function or frame. Interesting lines " "are marked as for :pdbcmd:`list`." msgstr "" -#: library/pdb.rst:481 +#: library/pdb.rst:490 msgid "Print the arguments of the current function and their current values." msgstr "" -#: library/pdb.rst:485 +#: library/pdb.rst:494 msgid "Evaluate *expression* in the current context and print its value." msgstr "" -#: library/pdb.rst:489 +#: library/pdb.rst:498 msgid "" "``print()`` can also be used, but is not a debugger command --- this " "executes the Python :func:`print` function." msgstr "" -#: library/pdb.rst:495 +#: library/pdb.rst:504 msgid "" "Like the :pdbcmd:`p` command, except the value of *expression* is pretty-" "printed using the :mod:`pprint` module." msgstr "" -#: library/pdb.rst:500 +#: library/pdb.rst:509 msgid "Print the type of *expression*." msgstr "" -#: library/pdb.rst:504 +#: library/pdb.rst:513 msgid "Try to get source code of *expression* and display it." msgstr "" -#: library/pdb.rst:510 +#: library/pdb.rst:519 msgid "" "Display the value of *expression* if it changed, each time execution stops " "in the current frame." msgstr "" -#: library/pdb.rst:513 +#: library/pdb.rst:522 msgid "" "Without *expression*, list all display expressions for the current frame." msgstr "" -#: library/pdb.rst:517 +#: library/pdb.rst:526 msgid "" "Display evaluates *expression* and compares to the result of the previous " "evaluation of *expression*, so when the result is mutable, display may not " "be able to pick up the changes." msgstr "" -#: library/pdb.rst:521 +#: library/pdb.rst:530 msgid "Example::" msgstr "" -#: library/pdb.rst:523 +#: library/pdb.rst:532 msgid "" "lst = []\n" "breakpoint()\n" @@ -711,13 +718,13 @@ msgid "" "print(lst)" msgstr "" -#: library/pdb.rst:529 +#: library/pdb.rst:538 msgid "" "Display won't realize ``lst`` has been changed because the result of " "evaluation is modified in place by ``lst.append(1)`` before being compared::" msgstr "" -#: library/pdb.rst:532 +#: library/pdb.rst:541 msgid "" "> example.py(3)()\n" "-> pass\n" @@ -732,11 +739,11 @@ msgid "" "(Pdb)" msgstr "" -#: library/pdb.rst:544 +#: library/pdb.rst:553 msgid "You can do some tricks with copy mechanism to make it work::" msgstr "" -#: library/pdb.rst:546 +#: library/pdb.rst:555 msgid "" "> example.py(3)()\n" "-> pass\n" @@ -752,20 +759,20 @@ msgid "" "(Pdb)" msgstr "" -#: library/pdb.rst:563 +#: library/pdb.rst:572 msgid "" "Do not display *expression* anymore in the current frame. Without " "*expression*, clear all display expressions for the current frame." msgstr "" -#: library/pdb.rst:570 +#: library/pdb.rst:579 msgid "" "Start an interactive interpreter (using the :mod:`code` module) whose global " "namespace contains all the (global and local) names found in the current " "scope." msgstr "" -#: library/pdb.rst:580 +#: library/pdb.rst:589 msgid "" "Create an alias called *name* that executes *command*. The *command* must " "*not* be enclosed in quotes. Replaceable parameters can be indicated by " @@ -774,7 +781,7 @@ msgid "" "arguments are given, all aliases are listed." msgstr "" -#: library/pdb.rst:586 +#: library/pdb.rst:595 msgid "" "Aliases may be nested and can contain anything that can be legally typed at " "the pdb prompt. Note that internal pdb commands *can* be overridden by " @@ -783,13 +790,13 @@ msgid "" "other words in the line are left alone." msgstr "" -#: library/pdb.rst:592 +#: library/pdb.rst:601 msgid "" "As an example, here are two useful aliases (especially when placed in the :" "file:`.pdbrc` file)::" msgstr "" -#: library/pdb.rst:595 +#: library/pdb.rst:604 msgid "" "# Print instance variables (usage \"pi classInst\")\n" "alias pi for k in %1.__dict__.keys(): print(f\"%1.{k} = {%1.__dict__[k]}\")\n" @@ -797,36 +804,36 @@ msgid "" "alias ps pi self" msgstr "" -#: library/pdb.rst:602 +#: library/pdb.rst:611 msgid "Delete the specified alias *name*." msgstr "" -#: library/pdb.rst:606 +#: library/pdb.rst:615 msgid "" "Execute the (one-line) *statement* in the context of the current stack " "frame. The exclamation point can be omitted unless the first word of the " "statement resembles a debugger command, e.g.:" msgstr "" -#: library/pdb.rst:610 +#: library/pdb.rst:619 msgid "" "(Pdb) ! n=42\n" "(Pdb)" msgstr "" -#: library/pdb.rst:615 +#: library/pdb.rst:624 msgid "" "To set a global variable, you can prefix the assignment command with a :" "keyword:`global` statement on the same line, e.g.:" msgstr "" -#: library/pdb.rst:618 +#: library/pdb.rst:627 msgid "" "(Pdb) global list_options; list_options = ['-l']\n" "(Pdb)" msgstr "" -#: library/pdb.rst:626 +#: library/pdb.rst:635 msgid "" "Restart the debugged Python program. If *args* is supplied, it is split " "with :mod:`shlex` and the result is used as the new :data:`sys.argv`. " @@ -834,25 +841,25 @@ msgid "" "`restart` is an alias for :pdbcmd:`run`." msgstr "" -#: library/pdb.rst:633 +#: library/pdb.rst:642 msgid "Quit from the debugger. The program being executed is aborted." msgstr "" -#: library/pdb.rst:637 +#: library/pdb.rst:646 msgid "" "Enter a recursive debugger that steps through *code* (which is an arbitrary " "expression or statement to be executed in the current environment)." msgstr "" -#: library/pdb.rst:643 +#: library/pdb.rst:652 msgid "Print the return value for the last return of the current function." msgstr "" -#: library/pdb.rst:646 +#: library/pdb.rst:655 msgid "Footnotes" msgstr "" -#: library/pdb.rst:647 +#: library/pdb.rst:656 msgid "" "Whether a frame is considered to originate in a certain module is determined " "by the ``__name__`` in the frame globals." @@ -878,18 +885,18 @@ msgstr "" msgid "cmd" msgstr "" -#: library/pdb.rst:283 +#: library/pdb.rst:292 msgid ".pdbrc" msgstr "" -#: library/pdb.rst:283 +#: library/pdb.rst:292 msgid "file" msgstr "" -#: library/pdb.rst:283 +#: library/pdb.rst:292 msgid "debugger" msgstr "" -#: library/pdb.rst:283 +#: library/pdb.rst:292 msgid "configuration" msgstr "" diff --git a/library/plistlib.po b/library/plistlib.po index 9bdf94b26..e5b6560cb 100644 --- a/library/plistlib.po +++ b/library/plistlib.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -135,7 +135,7 @@ msgstr "" #: library/plistlib.rst:93 msgid "" -"Write *value* to a plist file. *Fp* should be a writable, binary file object." +"Write *value* to a plist file. *fp* should be a writable, binary file object." msgstr "" #: library/plistlib.rst:96 diff --git a/library/pprint.po b/library/pprint.po index 89d580bb5..d6f6825fb 100644 --- a/library/pprint.po +++ b/library/pprint.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -265,7 +265,7 @@ msgid "" ">>> import json\n" ">>> import pprint\n" ">>> from urllib.request import urlopen\n" -">>> with urlopen('https://pypi.org/pypi/sampleproject/json') as resp:\n" +">>> with urlopen('https://pypi.org/pypi/sampleproject/1.2.0/json') as resp:\n" "... project_info = json.load(resp)['info']" msgstr "" diff --git a/library/profile.po b/library/profile.po index 892c42224..04c235199 100644 --- a/library/profile.po +++ b/library/profile.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -203,47 +203,48 @@ msgid "" "formats them in various ways." msgstr "" -#: library/profile.rst:126 +#: library/profile.rst:128 msgid "" "The files :mod:`cProfile` and :mod:`profile` can also be invoked as a script " "to profile another script. For example::" msgstr "" -#: library/profile.rst:129 +#: library/profile.rst:131 msgid "" "python -m cProfile [-o output_file] [-s sort_order] (-m module | myscript.py)" msgstr "" -#: library/profile.rst:131 -msgid "``-o`` writes the profile results to a file instead of to stdout" +#: library/profile.rst:135 +msgid "Writes the profile results to a file instead of to stdout." msgstr "" -#: library/profile.rst:133 +#: library/profile.rst:139 msgid "" -"``-s`` specifies one of the :func:`~pstats.Stats.sort_stats` sort values to " -"sort the output by. This only applies when ``-o`` is not supplied." +"Specifies one of the :func:`~pstats.Stats.sort_stats` sort values to sort " +"the output by. This only applies when :option:`-o ` is not " +"supplied." msgstr "" -#: library/profile.rst:136 -msgid "``-m`` specifies that a module is being profiled instead of a script." +#: library/profile.rst:145 +msgid "Specifies that a module is being profiled instead of a script." msgstr "" -#: library/profile.rst:138 +#: library/profile.rst:147 msgid "Added the ``-m`` option to :mod:`cProfile`." msgstr "" -#: library/profile.rst:141 +#: library/profile.rst:150 msgid "Added the ``-m`` option to :mod:`profile`." msgstr "" -#: library/profile.rst:144 +#: library/profile.rst:153 msgid "" "The :mod:`pstats` module's :class:`~pstats.Stats` class has a variety of " "methods for manipulating and printing the data saved into a profile results " "file::" msgstr "" -#: library/profile.rst:147 +#: library/profile.rst:156 msgid "" "import pstats\n" "from pstats import SortKey\n" @@ -251,7 +252,7 @@ msgid "" "p.strip_dirs().sort_stats(-1).print_stats()" msgstr "" -#: library/profile.rst:152 +#: library/profile.rst:161 msgid "" "The :meth:`~pstats.Stats.strip_dirs` method removed the extraneous path from " "all the module names. The :meth:`~pstats.Stats.sort_stats` method sorted all " @@ -260,66 +261,66 @@ msgid "" "statistics. You might try the following sort calls::" msgstr "" -#: library/profile.rst:158 +#: library/profile.rst:167 msgid "" "p.sort_stats(SortKey.NAME)\n" "p.print_stats()" msgstr "" -#: library/profile.rst:161 +#: library/profile.rst:170 msgid "" "The first call will actually sort the list by function name, and the second " "call will print out the statistics. The following are some interesting " "calls to experiment with::" msgstr "" -#: library/profile.rst:165 +#: library/profile.rst:174 msgid "p.sort_stats(SortKey.CUMULATIVE).print_stats(10)" msgstr "" -#: library/profile.rst:167 +#: library/profile.rst:176 msgid "" "This sorts the profile by cumulative time in a function, and then only " "prints the ten most significant lines. If you want to understand what " "algorithms are taking time, the above line is what you would use." msgstr "" -#: library/profile.rst:171 +#: library/profile.rst:180 msgid "" "If you were looking to see what functions were looping a lot, and taking a " "lot of time, you would do::" msgstr "" -#: library/profile.rst:174 +#: library/profile.rst:183 msgid "p.sort_stats(SortKey.TIME).print_stats(10)" msgstr "" -#: library/profile.rst:176 +#: library/profile.rst:185 msgid "" "to sort according to time spent within each function, and then print the " "statistics for the top ten functions." msgstr "" -#: library/profile.rst:179 +#: library/profile.rst:188 msgid "You might also try::" msgstr "" -#: library/profile.rst:181 +#: library/profile.rst:190 msgid "p.sort_stats(SortKey.FILENAME).print_stats('__init__')" msgstr "" -#: library/profile.rst:183 +#: library/profile.rst:192 msgid "" "This will sort all the statistics by file name, and then print out " "statistics for only the class init methods (since they are spelled with " "``__init__`` in them). As one final example, you could try::" msgstr "" -#: library/profile.rst:187 +#: library/profile.rst:196 msgid "p.sort_stats(SortKey.TIME, SortKey.CUMULATIVE).print_stats(.5, 'init')" msgstr "" -#: library/profile.rst:189 +#: library/profile.rst:198 msgid "" "This line sorts statistics with a primary key of time, and a secondary key " "of cumulative time, and then prints out some of the statistics. To be " @@ -328,60 +329,60 @@ msgid "" "list is printed." msgstr "" -#: library/profile.rst:194 +#: library/profile.rst:203 msgid "" "If you wondered what functions called the above functions, you could now " "(``p`` is still sorted according to the last criteria) do::" msgstr "" -#: library/profile.rst:197 +#: library/profile.rst:206 msgid "p.print_callers(.5, 'init')" msgstr "" -#: library/profile.rst:199 +#: library/profile.rst:208 msgid "and you would get a list of callers for each of the listed functions." msgstr "" -#: library/profile.rst:201 +#: library/profile.rst:210 msgid "" "If you want more functionality, you're going to have to read the manual, or " "guess what the following functions do::" msgstr "" -#: library/profile.rst:204 +#: library/profile.rst:213 msgid "" "p.print_callees()\n" "p.add('restats')" msgstr "" -#: library/profile.rst:207 +#: library/profile.rst:216 msgid "" "Invoked as a script, the :mod:`pstats` module is a statistics browser for " "reading and examining profile dumps. It has a simple line-oriented " "interface (implemented using :mod:`cmd`) and interactive help." msgstr "" -#: library/profile.rst:212 +#: library/profile.rst:221 msgid ":mod:`profile` and :mod:`cProfile` Module Reference" msgstr "" -#: library/profile.rst:218 +#: library/profile.rst:227 msgid "" "Both the :mod:`profile` and :mod:`cProfile` modules provide the following " "functions:" msgstr "" -#: library/profile.rst:223 +#: library/profile.rst:232 msgid "" "This function takes a single argument that can be passed to the :func:`exec` " "function, and an optional file name. In all cases this routine executes::" msgstr "" -#: library/profile.rst:226 +#: library/profile.rst:235 msgid "exec(command, __main__.__dict__, __main__.__dict__)" msgstr "" -#: library/profile.rst:228 +#: library/profile.rst:237 msgid "" "and gathers profiling statistics from the execution. If no file name is " "present, then this function automatically creates a :class:`~pstats.Stats` " @@ -390,28 +391,28 @@ msgid "" "how the results are sorted." msgstr "" -#: library/profile.rst:236 +#: library/profile.rst:245 msgid "" "This function is similar to :func:`run`, with added arguments to supply the " "globals and locals dictionaries for the *command* string. This routine " "executes::" msgstr "" -#: library/profile.rst:240 +#: library/profile.rst:249 msgid "exec(command, globals, locals)" msgstr "" -#: library/profile.rst:242 +#: library/profile.rst:251 msgid "and gathers profiling statistics as in the :func:`run` function above." msgstr "" -#: library/profile.rst:246 +#: library/profile.rst:255 msgid "" "This class is normally only used if more precise control over profiling is " "needed than what the :func:`cProfile.run` function provides." msgstr "" -#: library/profile.rst:249 +#: library/profile.rst:258 msgid "" "A custom timer can be supplied for measuring how long code takes to run via " "the *timer* argument. This must be a function that returns a single number " @@ -421,13 +422,13 @@ msgid "" "time unit would be ``.001``." msgstr "" -#: library/profile.rst:256 +#: library/profile.rst:265 msgid "" "Directly using the :class:`Profile` class allows formatting profile results " "without writing the profile data to a file::" msgstr "" -#: library/profile.rst:259 +#: library/profile.rst:268 msgid "" "import cProfile, pstats, io\n" "from pstats import SortKey\n" @@ -442,13 +443,13 @@ msgid "" "print(s.getvalue())" msgstr "" -#: library/profile.rst:271 +#: library/profile.rst:280 msgid "" "The :class:`Profile` class can also be used as a context manager (supported " "only in :mod:`cProfile` module. see :ref:`typecontextmanager`)::" msgstr "" -#: library/profile.rst:274 +#: library/profile.rst:283 msgid "" "import cProfile\n" "\n" @@ -458,49 +459,49 @@ msgid "" " pr.print_stats()" msgstr "" -#: library/profile.rst:281 +#: library/profile.rst:290 msgid "Added context manager support." msgstr "" -#: library/profile.rst:286 +#: library/profile.rst:295 msgid "Start collecting profiling data. Only in :mod:`cProfile`." msgstr "" -#: library/profile.rst:290 +#: library/profile.rst:299 msgid "Stop collecting profiling data. Only in :mod:`cProfile`." msgstr "" -#: library/profile.rst:294 +#: library/profile.rst:303 msgid "" "Stop collecting profiling data and record the results internally as the " "current profile." msgstr "" -#: library/profile.rst:299 +#: library/profile.rst:308 msgid "" "Create a :class:`~pstats.Stats` object based on the current profile and " "print the results to stdout." msgstr "" -#: library/profile.rst:304 +#: library/profile.rst:313 msgid "Write the results of the current profile to *filename*." msgstr "" -#: library/profile.rst:308 +#: library/profile.rst:317 msgid "Profile the cmd via :func:`exec`." msgstr "" -#: library/profile.rst:312 +#: library/profile.rst:321 msgid "" "Profile the cmd via :func:`exec` with the specified global and local " "environment." msgstr "" -#: library/profile.rst:317 +#: library/profile.rst:326 msgid "Profile ``func(*args, **kwargs)``" msgstr "" -#: library/profile.rst:319 +#: library/profile.rst:328 msgid "" "Note that profiling will only work if the called command/function actually " "returns. If the interpreter is terminated (e.g. via a :func:`sys.exit` call " @@ -508,23 +509,23 @@ msgid "" "printed." msgstr "" -#: library/profile.rst:327 +#: library/profile.rst:336 msgid "The :class:`Stats` Class" msgstr "" -#: library/profile.rst:329 +#: library/profile.rst:338 msgid "" "Analysis of the profiler data is done using the :class:`~pstats.Stats` class." msgstr "" -#: library/profile.rst:336 +#: library/profile.rst:345 msgid "" "This class constructor creates an instance of a \"statistics object\" from a " "*filename* (or list of filenames) or from a :class:`Profile` instance. " "Output will be printed to the stream specified by *stream*." msgstr "" -#: library/profile.rst:340 +#: library/profile.rst:349 msgid "" "The file selected by the above constructor must have been created by the " "corresponding version of :mod:`profile` or :mod:`cProfile`. To be specific, " @@ -538,17 +539,17 @@ msgid "" "can be used." msgstr "" -#: library/profile.rst:351 +#: library/profile.rst:360 msgid "" "Instead of reading the profile data from a file, a :class:`cProfile.Profile` " "or :class:`profile.Profile` object can be used as the profile data source." msgstr "" -#: library/profile.rst:354 +#: library/profile.rst:363 msgid ":class:`Stats` objects have the following methods:" msgstr "" -#: library/profile.rst:358 +#: library/profile.rst:367 msgid "" "This method for the :class:`Stats` class removes all leading path " "information from file names. It is very useful in reducing the size of the " @@ -562,7 +563,7 @@ msgid "" "single entry." msgstr "" -#: library/profile.rst:372 +#: library/profile.rst:381 msgid "" "This method of the :class:`Stats` class accumulates additional profiling " "information into the current profiling object. Its arguments should refer " @@ -571,7 +572,7 @@ msgid "" "functions are automatically accumulated into single function statistics." msgstr "" -#: library/profile.rst:382 +#: library/profile.rst:391 msgid "" "Save the data loaded into the :class:`Stats` object to a file named " "*filename*. The file is created if it does not exist, and is overwritten if " @@ -579,7 +580,7 @@ msgid "" "the :class:`profile.Profile` and :class:`cProfile.Profile` classes." msgstr "" -#: library/profile.rst:390 +#: library/profile.rst:399 msgid "" "This method modifies the :class:`Stats` object by sorting it according to " "the supplied criteria. The argument can be either a string or a SortKey " @@ -589,7 +590,7 @@ msgid "" "prone." msgstr "" -#: library/profile.rst:397 +#: library/profile.rst:406 msgid "" "When more than one key is provided, then additional keys are used as " "secondary criteria when there is equality in all keys selected before them. " @@ -598,161 +599,161 @@ msgid "" "function names) by sorting by file name." msgstr "" -#: library/profile.rst:403 +#: library/profile.rst:412 msgid "" "For the string argument, abbreviations can be used for any key names, as " "long as the abbreviation is unambiguous." msgstr "" -#: library/profile.rst:406 +#: library/profile.rst:415 msgid "The following are the valid string and SortKey:" msgstr "" -#: library/profile.rst:409 +#: library/profile.rst:418 msgid "Valid String Arg" msgstr "" -#: library/profile.rst:409 +#: library/profile.rst:418 msgid "Valid enum Arg" msgstr "" -#: library/profile.rst:409 +#: library/profile.rst:418 msgid "Meaning" msgstr "" -#: library/profile.rst:411 +#: library/profile.rst:420 msgid "``'calls'``" msgstr "" -#: library/profile.rst:411 +#: library/profile.rst:420 msgid "SortKey.CALLS" msgstr "" -#: library/profile.rst:423 +#: library/profile.rst:432 msgid "call count" msgstr "" -#: library/profile.rst:413 +#: library/profile.rst:422 msgid "``'cumulative'``" msgstr "" -#: library/profile.rst:413 +#: library/profile.rst:422 msgid "SortKey.CUMULATIVE" msgstr "" -#: library/profile.rst:415 +#: library/profile.rst:424 msgid "cumulative time" msgstr "" -#: library/profile.rst:415 +#: library/profile.rst:424 msgid "``'cumtime'``" msgstr "" -#: library/profile.rst:417 library/profile.rst:423 library/profile.rst:437 +#: library/profile.rst:426 library/profile.rst:432 library/profile.rst:446 msgid "N/A" msgstr "" -#: library/profile.rst:417 +#: library/profile.rst:426 msgid "``'file'``" msgstr "" -#: library/profile.rst:419 library/profile.rst:421 +#: library/profile.rst:428 library/profile.rst:430 msgid "file name" msgstr "" -#: library/profile.rst:419 +#: library/profile.rst:428 msgid "``'filename'``" msgstr "" -#: library/profile.rst:419 +#: library/profile.rst:428 msgid "SortKey.FILENAME" msgstr "" -#: library/profile.rst:421 +#: library/profile.rst:430 msgid "``'module'``" msgstr "" -#: library/profile.rst:423 +#: library/profile.rst:432 msgid "``'ncalls'``" msgstr "" -#: library/profile.rst:425 +#: library/profile.rst:434 msgid "``'pcalls'``" msgstr "" -#: library/profile.rst:425 +#: library/profile.rst:434 msgid "SortKey.PCALLS" msgstr "" -#: library/profile.rst:425 +#: library/profile.rst:434 msgid "primitive call count" msgstr "" -#: library/profile.rst:427 +#: library/profile.rst:436 msgid "``'line'``" msgstr "" -#: library/profile.rst:427 +#: library/profile.rst:436 msgid "SortKey.LINE" msgstr "" -#: library/profile.rst:427 +#: library/profile.rst:436 msgid "line number" msgstr "" -#: library/profile.rst:429 +#: library/profile.rst:438 msgid "``'name'``" msgstr "" -#: library/profile.rst:429 +#: library/profile.rst:438 msgid "SortKey.NAME" msgstr "" -#: library/profile.rst:429 +#: library/profile.rst:438 msgid "function name" msgstr "" -#: library/profile.rst:431 +#: library/profile.rst:440 msgid "``'nfl'``" msgstr "" -#: library/profile.rst:431 +#: library/profile.rst:440 msgid "SortKey.NFL" msgstr "" -#: library/profile.rst:431 +#: library/profile.rst:440 msgid "name/file/line" msgstr "" -#: library/profile.rst:433 +#: library/profile.rst:442 msgid "``'stdname'``" msgstr "" -#: library/profile.rst:433 +#: library/profile.rst:442 msgid "SortKey.STDNAME" msgstr "" -#: library/profile.rst:433 +#: library/profile.rst:442 msgid "standard name" msgstr "" -#: library/profile.rst:435 +#: library/profile.rst:444 msgid "``'time'``" msgstr "" -#: library/profile.rst:435 +#: library/profile.rst:444 msgid "SortKey.TIME" msgstr "" -#: library/profile.rst:437 +#: library/profile.rst:446 msgid "internal time" msgstr "" -#: library/profile.rst:437 +#: library/profile.rst:446 msgid "``'tottime'``" msgstr "" -#: library/profile.rst:440 +#: library/profile.rst:449 msgid "" "Note that all sorts on statistics are in descending order (placing most time " "consuming items first), where as name, file, and line number searches are in " @@ -766,7 +767,7 @@ msgid "" "SortKey.FILENAME, SortKey.LINE)``." msgstr "" -#: library/profile.rst:451 +#: library/profile.rst:460 msgid "" "For backward-compatibility reasons, the numeric arguments ``-1``, ``0``, " "``1``, and ``2`` are permitted. They are interpreted as ``'stdname'``, " @@ -775,31 +776,31 @@ msgid "" "used, and additional arguments will be silently ignored." msgstr "" -#: library/profile.rst:459 +#: library/profile.rst:468 msgid "Added the SortKey enum." msgstr "" -#: library/profile.rst:464 +#: library/profile.rst:473 msgid "" "This method for the :class:`Stats` class reverses the ordering of the basic " "list within the object. Note that by default ascending vs descending order " "is properly selected based on the sort key of choice." msgstr "" -#: library/profile.rst:474 +#: library/profile.rst:483 msgid "" "This method for the :class:`Stats` class prints out a report as described in " "the :func:`profile.run` definition." msgstr "" -#: library/profile.rst:477 +#: library/profile.rst:486 msgid "" "The order of the printing is based on the last :meth:`~pstats.Stats." "sort_stats` operation done on the object (subject to caveats in :meth:" "`~pstats.Stats.add` and :meth:`~pstats.Stats.strip_dirs`)." msgstr "" -#: library/profile.rst:482 +#: library/profile.rst:491 msgid "" "The arguments provided (if any) can be used to limit the list down to the " "significant entries. Initially, the list is taken to be the complete set of " @@ -811,28 +812,28 @@ msgid "" "example::" msgstr "" -#: library/profile.rst:491 +#: library/profile.rst:500 msgid "print_stats(.1, 'foo:')" msgstr "" -#: library/profile.rst:493 +#: library/profile.rst:502 msgid "" "would first limit the printing to first 10% of list, and then only print " "functions that were part of filename :file:`.\\*foo:`. In contrast, the " "command::" msgstr "" -#: library/profile.rst:497 +#: library/profile.rst:506 msgid "print_stats('foo:', .1)" msgstr "" -#: library/profile.rst:499 +#: library/profile.rst:508 msgid "" "would limit the list to all functions having file names :file:`.\\*foo:`, " "and then proceed to only print the first 10% of them." msgstr "" -#: library/profile.rst:505 +#: library/profile.rst:514 msgid "" "This method for the :class:`Stats` class prints a list of all functions that " "called each function in the profiled database. The ordering is identical to " @@ -842,7 +843,7 @@ msgid "" "produced the stats:" msgstr "" -#: library/profile.rst:512 +#: library/profile.rst:521 msgid "" "With :mod:`profile`, a number is shown in parentheses after each caller to " "show how many times this specific call was made. For convenience, a second " @@ -850,14 +851,14 @@ msgid "" "at the right." msgstr "" -#: library/profile.rst:517 +#: library/profile.rst:526 msgid "" "With :mod:`cProfile`, each caller is preceded by three numbers: the number " "of times this specific call was made, and the total and cumulative times " "spent in the current function while it was invoked by this specific caller." msgstr "" -#: library/profile.rst:525 +#: library/profile.rst:534 msgid "" "This method for the :class:`Stats` class prints a list of all function that " "were called by the indicated function. Aside from this reversal of " @@ -865,7 +866,7 @@ msgid "" "are identical to the :meth:`~pstats.Stats.print_callers` method." msgstr "" -#: library/profile.rst:533 +#: library/profile.rst:542 msgid "" "This method returns an instance of StatsProfile, which contains a mapping of " "function names to instances of FunctionProfile. Each FunctionProfile " @@ -873,17 +874,17 @@ msgid "" "long the function took to run, how many times it was called, etc..." msgstr "" -#: library/profile.rst:538 +#: library/profile.rst:547 msgid "" "Added the following dataclasses: StatsProfile, FunctionProfile. Added the " "following function: get_stats_profile." msgstr "" -#: library/profile.rst:545 +#: library/profile.rst:554 msgid "What Is Deterministic Profiling?" msgstr "" -#: library/profile.rst:547 +#: library/profile.rst:556 msgid "" ":dfn:`Deterministic profiling` is meant to reflect the fact that all " "*function call*, *function return*, and *exception* events are monitored, " @@ -896,7 +897,7 @@ msgid "" "being spent." msgstr "" -#: library/profile.rst:556 +#: library/profile.rst:565 msgid "" "In Python, since there is an interpreter active during execution, the " "presence of instrumented code is not required in order to do deterministic " @@ -908,7 +909,7 @@ msgid "" "time statistics about the execution of a Python program." msgstr "" -#: library/profile.rst:565 +#: library/profile.rst:574 msgid "" "Call count statistics can be used to identify bugs in code (surprising " "counts), and to identify possible inline-expansion points (high call " @@ -920,11 +921,11 @@ msgid "" "compared to iterative implementations." msgstr "" -#: library/profile.rst:578 +#: library/profile.rst:587 msgid "Limitations" msgstr "" -#: library/profile.rst:580 +#: library/profile.rst:589 msgid "" "One limitation has to do with accuracy of timing information. There is a " "fundamental problem with deterministic profilers involving accuracy. The " @@ -935,7 +936,7 @@ msgid "" "first error induces a second source of error." msgstr "" -#: library/profile.rst:588 +#: library/profile.rst:597 msgid "" "The second problem is that it \"takes a while\" from when an event is " "dispatched until the profiler's call to get the time actually *gets* the " @@ -948,7 +949,7 @@ msgid "" "clock tick), but it *can* accumulate and become very significant." msgstr "" -#: library/profile.rst:598 +#: library/profile.rst:607 msgid "" "The problem is more important with :mod:`profile` than with the lower-" "overhead :mod:`cProfile`. For this reason, :mod:`profile` provides a means " @@ -962,11 +963,11 @@ msgid "" "calibration." msgstr "" -#: library/profile.rst:612 +#: library/profile.rst:621 msgid "Calibration" msgstr "" -#: library/profile.rst:614 +#: library/profile.rst:623 msgid "" "The profiler of the :mod:`profile` module subtracts a constant from each " "event handling time to compensate for the overhead of calling the time " @@ -975,7 +976,7 @@ msgid "" "platform (see :ref:`profile-limitations`). ::" msgstr "" -#: library/profile.rst:620 +#: library/profile.rst:629 msgid "" "import profile\n" "pr = profile.Profile()\n" @@ -983,7 +984,7 @@ msgid "" " print(pr.calibrate(10000))" msgstr "" -#: library/profile.rst:625 +#: library/profile.rst:634 msgid "" "The method executes the number of Python calls given by the argument, " "directly and again under the profiler, measuring the time for both. It then " @@ -993,19 +994,19 @@ msgid "" "4.04e-6." msgstr "" -#: library/profile.rst:631 +#: library/profile.rst:640 msgid "" "The object of this exercise is to get a fairly consistent result. If your " "computer is *very* fast, or your timer function has poor resolution, you " "might have to pass 100000, or even 1000000, to get consistent results." msgstr "" -#: library/profile.rst:635 +#: library/profile.rst:644 msgid "" "When you have a consistent answer, there are three ways you can use it::" msgstr "" -#: library/profile.rst:637 +#: library/profile.rst:646 msgid "" "import profile\n" "\n" @@ -1020,40 +1021,40 @@ msgid "" "pr = profile.Profile(bias=your_computed_bias)" msgstr "" -#: library/profile.rst:649 +#: library/profile.rst:658 msgid "" "If you have a choice, you are better off choosing a smaller constant, and " "then your results will \"less often\" show up as negative in profile " "statistics." msgstr "" -#: library/profile.rst:655 +#: library/profile.rst:664 msgid "Using a custom timer" msgstr "" -#: library/profile.rst:657 +#: library/profile.rst:666 msgid "" "If you want to change how current time is determined (for example, to force " "use of wall-clock time or elapsed process time), pass the timing function " "you want to the :class:`Profile` class constructor::" msgstr "" -#: library/profile.rst:661 +#: library/profile.rst:670 msgid "pr = profile.Profile(your_time_func)" msgstr "" -#: library/profile.rst:663 +#: library/profile.rst:672 msgid "" "The resulting profiler will then call ``your_time_func``. Depending on " "whether you are using :class:`profile.Profile` or :class:`cProfile.Profile`, " "``your_time_func``'s return value will be interpreted differently:" msgstr "" -#: library/profile.rst:667 +#: library/profile.rst:676 msgid ":class:`profile.Profile`" msgstr "" -#: library/profile.rst:668 +#: library/profile.rst:677 msgid "" "``your_time_func`` should return a single number, or a list of numbers whose " "sum is the current time (like what :func:`os.times` returns). If the " @@ -1062,7 +1063,7 @@ msgid "" "routine." msgstr "" -#: library/profile.rst:674 +#: library/profile.rst:683 msgid "" "Be warned that you should calibrate the profiler class for the timer " "function that you choose (see :ref:`profile-calibration`). For most " @@ -1074,11 +1075,11 @@ msgid "" "along with the appropriate calibration constant." msgstr "" -#: library/profile.rst:683 +#: library/profile.rst:692 msgid ":class:`cProfile.Profile`" msgstr "" -#: library/profile.rst:684 +#: library/profile.rst:693 msgid "" "``your_time_func`` should return a single number. If it returns integers, " "you can also invoke the class constructor with a second argument specifying " @@ -1087,11 +1088,11 @@ msgid "" "you would construct the :class:`Profile` instance as follows::" msgstr "" -#: library/profile.rst:690 +#: library/profile.rst:699 msgid "pr = cProfile.Profile(your_integer_time_func, 0.001)" msgstr "" -#: library/profile.rst:692 +#: library/profile.rst:701 msgid "" "As the :class:`cProfile.Profile` class cannot be calibrated, custom timer " "functions should be used with care and should be as fast as possible. For " @@ -1099,7 +1100,7 @@ msgid "" "in the C source of the internal :mod:`!_lsprof` module." msgstr "" -#: library/profile.rst:697 +#: library/profile.rst:706 msgid "" "Python 3.3 adds several new functions in :mod:`time` that can be used to " "make precise measurements of process or wall-clock time. For example, see :" diff --git a/library/readline.po b/library/readline.po index c3964398b..c1f631543 100644 --- a/library/readline.po +++ b/library/readline.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -88,13 +88,13 @@ msgstr "" #: library/readline.rst:60 msgid "" "Execute the init line provided in the *string* argument. This calls :c:func:" -"`rl_parse_and_bind` in the underlying library." +"`!rl_parse_and_bind` in the underlying library." msgstr "" #: library/readline.rst:66 msgid "" "Execute a readline initialization file. The default filename is the last " -"filename used. This calls :c:func:`rl_read_init_file` in the underlying " +"filename used. This calls :c:func:`!rl_read_init_file` in the underlying " "library." msgstr "" @@ -108,20 +108,20 @@ msgstr "" #: library/readline.rst:78 msgid "" -"Return the current contents of the line buffer (:c:data:`rl_line_buffer` in " +"Return the current contents of the line buffer (:c:data:`!rl_line_buffer` in " "the underlying library)." msgstr "" #: library/readline.rst:84 msgid "" "Insert text into the line buffer at the cursor position. This calls :c:func:" -"`rl_insert_text` in the underlying library, but ignores the return value." +"`!rl_insert_text` in the underlying library, but ignores the return value." msgstr "" #: library/readline.rst:91 msgid "" "Change what's displayed on the screen to reflect the current contents of the " -"line buffer. This calls :c:func:`rl_redisplay` in the underlying library." +"line buffer. This calls :c:func:`!rl_redisplay` in the underlying library." msgstr "" #: library/readline.rst:96 @@ -135,22 +135,22 @@ msgstr "" #: library/readline.rst:103 msgid "" "Load a readline history file, and append it to the history list. The default " -"filename is :file:`~/.history`. This calls :c:func:`read_history` in the " +"filename is :file:`~/.history`. This calls :c:func:`!read_history` in the " "underlying library." msgstr "" #: library/readline.rst:110 msgid "" "Save the history list to a readline history file, overwriting any existing " -"file. The default filename is :file:`~/.history`. This calls :c:func:" -"`write_history` in the underlying library." +"file. The default filename is :file:`~/.history`. This calls :c:func:`!" +"write_history` in the underlying library." msgstr "" #: library/readline.rst:117 msgid "" "Append the last *nelements* items of history to a file. The default " "filename is :file:`~/.history`. The file must already exist. This calls :c:" -"func:`append_history` in the underlying library. This function only exists " +"func:`!append_history` in the underlying library. This function only exists " "if Python was compiled for a version of the library that supports it." msgstr "" @@ -158,8 +158,8 @@ msgstr "" msgid "" "Set or return the desired number of lines to save in the history file. The :" "func:`write_history_file` function uses this value to truncate the history " -"file, by calling :c:func:`history_truncate_file` in the underlying library. " -"Negative values imply unlimited history file size." +"file, by calling :c:func:`!history_truncate_file` in the underlying " +"library. Negative values imply unlimited history file size." msgstr "" #: library/readline.rst:137 @@ -172,7 +172,7 @@ msgstr "" #: library/readline.rst:144 msgid "" -"Clear the current history. This calls :c:func:`clear_history` in the " +"Clear the current history. This calls :c:func:`!clear_history` in the " "underlying library. The Python function only exists if Python was compiled " "for a version of the library that supports it." msgstr "" @@ -187,32 +187,32 @@ msgstr "" #: library/readline.rst:158 msgid "" "Return the current contents of history item at *index*. The item index is " -"one-based. This calls :c:func:`history_get` in the underlying library." +"one-based. This calls :c:func:`!history_get` in the underlying library." msgstr "" #: library/readline.rst:164 msgid "" "Remove history item specified by its position from the history. The position " -"is zero-based. This calls :c:func:`remove_history` in the underlying " +"is zero-based. This calls :c:func:`!remove_history` in the underlying " "library." msgstr "" #: library/readline.rst:171 msgid "" "Replace history item specified by its position with *line*. The position is " -"zero-based. This calls :c:func:`replace_history_entry` in the underlying " +"zero-based. This calls :c:func:`!replace_history_entry` in the underlying " "library." msgstr "" #: library/readline.rst:178 msgid "" "Append *line* to the history buffer, as if it was the last line typed. This " -"calls :c:func:`add_history` in the underlying library." +"calls :c:func:`!add_history` in the underlying library." msgstr "" #: library/readline.rst:184 msgid "" -"Enable or disable automatic calls to :c:func:`add_history` when reading " +"Enable or disable automatic calls to :c:func:`!add_history` when reading " "input via readline. The *enabled* argument should be a Boolean value that " "when true, enables auto history, and that when false, disables auto history." msgstr "" @@ -229,16 +229,16 @@ msgstr "" #: library/readline.rst:202 msgid "" -"Set or remove the function invoked by the :c:data:`rl_startup_hook` callback " -"of the underlying library. If *function* is specified, it will be used as " -"the new hook function; if omitted or ``None``, any function already " +"Set or remove the function invoked by the :c:data:`!rl_startup_hook` " +"callback of the underlying library. If *function* is specified, it will be " +"used as the new hook function; if omitted or ``None``, any function already " "installed is removed. The hook is called with no arguments just before " "readline prints the first prompt." msgstr "" #: library/readline.rst:211 msgid "" -"Set or remove the function invoked by the :c:data:`rl_pre_input_hook` " +"Set or remove the function invoked by the :c:data:`!rl_pre_input_hook` " "callback of the underlying library. If *function* is specified, it will be " "used as the new hook function; if omitted or ``None``, any function already " "installed is removed. The hook is called with no arguments after the first " @@ -274,9 +274,9 @@ msgstr "" #: library/readline.rst:242 msgid "" "The installed completer function is invoked by the *entry_func* callback " -"passed to :c:func:`rl_completion_matches` in the underlying library. The " -"*text* string comes from the first parameter to the :c:data:" -"`rl_attempted_completion_function` callback of the underlying library." +"passed to :c:func:`!rl_completion_matches` in the underlying library. The " +"*text* string comes from the first parameter to the :c:data:`!" +"rl_attempted_completion_function` callback of the underlying library." msgstr "" #: library/readline.rst:251 @@ -287,15 +287,15 @@ msgstr "" #: library/readline.rst:256 msgid "" -"Get the type of completion being attempted. This returns the :c:data:" -"`rl_completion_type` variable in the underlying library as an integer." +"Get the type of completion being attempted. This returns the :c:data:`!" +"rl_completion_type` variable in the underlying library as an integer." msgstr "" #: library/readline.rst:264 msgid "" "Get the beginning or ending index of the completion scope. These indexes are " -"the *start* and *end* arguments passed to the :c:data:" -"`rl_attempted_completion_function` callback of the underlying library. The " +"the *start* and *end* arguments passed to the :c:data:`!" +"rl_attempted_completion_function` callback of the underlying library. The " "values may be different in the same input editing scenario based on the " "underlying C readline implementation. Ex: libedit is known to behave " "differently than libreadline." @@ -305,7 +305,7 @@ msgstr "" msgid "" "Set or get the word delimiters for completion. These determine the start of " "the word to be considered for completion (the completion scope). These " -"functions access the :c:data:`rl_completer_word_break_characters` variable " +"functions access the :c:data:`!rl_completer_word_break_characters` variable " "in the underlying library." msgstr "" @@ -314,7 +314,7 @@ msgid "" "Set or remove the completion display function. If *function* is specified, " "it will be used as the new completion display function; if omitted or " "``None``, any completion display function already installed is removed. " -"This sets or clears the :c:data:`rl_completion_display_matches_hook` " +"This sets or clears the :c:data:`!rl_completion_display_matches_hook` " "callback in the underlying library. The completion display function is " "called as ``function(substitution, [matches], longest_match_length)`` once " "each time matches need to be displayed." diff --git a/library/removed.po b/library/removed.po new file mode 100644 index 000000000..a0af11424 --- /dev/null +++ b/library/removed.po @@ -0,0 +1,27 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2001-2025, Python Software Foundation +# This file is distributed under the same license as the Python package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Python 3.12\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: library/removed.rst:7 +msgid "Removed Modules" +msgstr "" + +#: library/removed.rst:9 +msgid "" +"The modules described in this chapter have been removed from the Python " +"standard library. They are documented here to help people find replacements." +msgstr "" diff --git a/library/secrets.po b/library/secrets.po index 80be91314..6be7f0e11 100644 --- a/library/secrets.po +++ b/library/secrets.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -90,7 +90,7 @@ msgstr "" #: library/secrets.rst:71 msgid "" -">>> token_bytes(16) \n" +">>> token_bytes(16)\n" "b'\\xebr\\x17D*t\\xae\\xd4\\xe3S\\xb6\\xe2\\xebP1\\x8b'" msgstr "" @@ -103,7 +103,7 @@ msgstr "" #: library/secrets.rst:83 msgid "" -">>> token_hex(16) \n" +">>> token_hex(16)\n" "'f9bf78b9a18ce6d46a0cd2b0b86df9da'" msgstr "" @@ -117,7 +117,7 @@ msgstr "" #: library/secrets.rst:95 msgid "" -">>> token_urlsafe(16) \n" +">>> token_urlsafe(16)\n" "'Drmhze6EPcv0fN_81Bj-nA'" msgstr "" diff --git a/library/selectors.po b/library/selectors.po index bdf27bfe8..735ae8b0a 100644 --- a/library/selectors.po +++ b/library/selectors.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -158,35 +158,35 @@ msgid "" "implementations support the :term:`context manager` protocol." msgstr "" -#: library/selectors.rst:108 +#: library/selectors.rst:109 msgid "Register a file object for selection, monitoring it for I/O events." msgstr "" -#: library/selectors.rst:110 +#: library/selectors.rst:111 msgid "" "*fileobj* is the file object to monitor. It may either be an integer file " "descriptor or an object with a ``fileno()`` method. *events* is a bitwise " "mask of events to monitor. *data* is an opaque object." msgstr "" -#: library/selectors.rst:115 +#: library/selectors.rst:116 msgid "" "This returns a new :class:`SelectorKey` instance, or raises a :exc:" "`ValueError` in case of invalid event mask or file descriptor, or :exc:" "`KeyError` if the file object is already registered." msgstr "" -#: library/selectors.rst:121 +#: library/selectors.rst:123 msgid "" "Unregister a file object from selection, removing it from monitoring. A file " "object shall be unregistered prior to being closed." msgstr "" -#: library/selectors.rst:124 +#: library/selectors.rst:126 msgid "*fileobj* must be a file object previously registered." msgstr "" -#: library/selectors.rst:126 +#: library/selectors.rst:128 msgid "" "This returns the associated :class:`SelectorKey` instance, or raises a :exc:" "`KeyError` if *fileobj* is not registered. It will raise :exc:`ValueError` " @@ -194,30 +194,30 @@ msgid "" "``fileno()`` method has an invalid return value)." msgstr "" -#: library/selectors.rst:133 +#: library/selectors.rst:135 msgid "Change a registered file object's monitored events or attached data." msgstr "" -#: library/selectors.rst:135 +#: library/selectors.rst:137 msgid "" "This is equivalent to ``BaseSelector.unregister(fileobj)`` followed by " "``BaseSelector.register(fileobj, events, data)``, except that it can be " "implemented more efficiently." msgstr "" -#: library/selectors.rst:139 +#: library/selectors.rst:141 msgid "" "This returns a new :class:`SelectorKey` instance, or raises a :exc:" "`ValueError` in case of invalid event mask or file descriptor, or :exc:" "`KeyError` if the file object is not registered." msgstr "" -#: library/selectors.rst:145 +#: library/selectors.rst:148 msgid "" "Wait until some registered file objects become ready, or the timeout expires." msgstr "" -#: library/selectors.rst:148 +#: library/selectors.rst:151 msgid "" "If ``timeout > 0``, this specifies the maximum wait time, in seconds. If " "``timeout <= 0``, the call won't block, and will report the currently ready " @@ -225,26 +225,26 @@ msgid "" "monitored file object becomes ready." msgstr "" -#: library/selectors.rst:154 +#: library/selectors.rst:157 msgid "" "This returns a list of ``(key, events)`` tuples, one for each ready file " "object." msgstr "" -#: library/selectors.rst:157 +#: library/selectors.rst:160 msgid "" "*key* is the :class:`SelectorKey` instance corresponding to a ready file " "object. *events* is a bitmask of events ready on this file object." msgstr "" -#: library/selectors.rst:162 +#: library/selectors.rst:165 msgid "" "This method can return before any file object becomes ready or the timeout " "has elapsed if the current process receives a signal: in this case, an empty " "list will be returned." msgstr "" -#: library/selectors.rst:166 +#: library/selectors.rst:169 msgid "" "The selector is now retried with a recomputed timeout when interrupted by a " "signal if the signal handler did not raise an exception (see :pep:`475` for " @@ -252,90 +252,90 @@ msgid "" "timeout." msgstr "" -#: library/selectors.rst:174 +#: library/selectors.rst:177 msgid "Close the selector." msgstr "" -#: library/selectors.rst:176 +#: library/selectors.rst:179 msgid "" "This must be called to make sure that any underlying resource is freed. The " "selector shall not be used once it has been closed." msgstr "" -#: library/selectors.rst:181 +#: library/selectors.rst:184 msgid "Return the key associated with a registered file object." msgstr "" -#: library/selectors.rst:183 +#: library/selectors.rst:186 msgid "" "This returns the :class:`SelectorKey` instance associated to this file " "object, or raises :exc:`KeyError` if the file object is not registered." msgstr "" -#: library/selectors.rst:188 +#: library/selectors.rst:192 msgid "Return a mapping of file objects to selector keys." msgstr "" -#: library/selectors.rst:190 +#: library/selectors.rst:194 msgid "" "This returns a :class:`~collections.abc.Mapping` instance mapping registered " "file objects to their associated :class:`SelectorKey` instance." msgstr "" -#: library/selectors.rst:197 +#: library/selectors.rst:201 msgid "" "The default selector class, using the most efficient implementation " "available on the current platform. This should be the default choice for " "most users." msgstr "" -#: library/selectors.rst:204 +#: library/selectors.rst:208 msgid ":func:`select.select`-based selector." msgstr "" -#: library/selectors.rst:209 +#: library/selectors.rst:213 msgid ":func:`select.poll`-based selector." msgstr "" -#: library/selectors.rst:214 +#: library/selectors.rst:218 msgid ":func:`select.epoll`-based selector." msgstr "" -#: library/selectors.rst:218 +#: library/selectors.rst:222 msgid "" "This returns the file descriptor used by the underlying :func:`select.epoll` " "object." msgstr "" -#: library/selectors.rst:223 +#: library/selectors.rst:227 msgid ":func:`select.devpoll`-based selector." msgstr "" -#: library/selectors.rst:227 +#: library/selectors.rst:231 msgid "" "This returns the file descriptor used by the underlying :func:`select." "devpoll` object." msgstr "" -#: library/selectors.rst:234 +#: library/selectors.rst:238 msgid ":func:`select.kqueue`-based selector." msgstr "" -#: library/selectors.rst:238 +#: library/selectors.rst:242 msgid "" "This returns the file descriptor used by the underlying :func:`select." "kqueue` object." msgstr "" -#: library/selectors.rst:243 +#: library/selectors.rst:247 msgid "Examples" msgstr "" -#: library/selectors.rst:245 +#: library/selectors.rst:249 msgid "Here is a simple echo server implementation::" msgstr "" -#: library/selectors.rst:247 +#: library/selectors.rst:251 msgid "" "import selectors\n" "import socket\n" diff --git a/library/shutil.po b/library/shutil.po index e6dfca1f2..dfdb5c772 100644 --- a/library/shutil.po +++ b/library/shutil.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -616,25 +616,18 @@ msgid "" "now be found." msgstr "" -#: library/shutil.rst:484 -msgid "" -"On Windows, if *mode* includes ``os.X_OK``, executables with an extension in " -"``PATHEXT`` will be preferred over executables without a matching extension. " -"This brings behavior closer to that of Python 3.11." -msgstr "" - -#: library/shutil.rst:492 +#: library/shutil.rst:486 msgid "" "This exception collects exceptions that are raised during a multi-file " "operation. For :func:`copytree`, the exception argument is a list of 3-" "tuples (*srcname*, *dstname*, *exception*)." msgstr "" -#: library/shutil.rst:499 +#: library/shutil.rst:493 msgid "Platform-dependent efficient copy operations" msgstr "" -#: library/shutil.rst:501 +#: library/shutil.rst:495 msgid "" "Starting from Python 3.8, all functions involving a file copy (:func:" "`copyfile`, :func:`~shutil.copy`, :func:`copy2`, :func:`copytree`, and :func:" @@ -644,54 +637,54 @@ msgid "" "buffers in Python as in \"``outfd.write(infd.read())``\"." msgstr "" -#: library/shutil.rst:509 +#: library/shutil.rst:503 msgid "On macOS `fcopyfile`_ is used to copy the file content (not metadata)." msgstr "" -#: library/shutil.rst:511 +#: library/shutil.rst:505 msgid "On Linux :func:`os.sendfile` is used." msgstr "" -#: library/shutil.rst:513 +#: library/shutil.rst:507 msgid "" "On Windows :func:`shutil.copyfile` uses a bigger default buffer size (1 MiB " "instead of 64 KiB) and a :func:`memoryview`-based variant of :func:`shutil." "copyfileobj` is used." msgstr "" -#: library/shutil.rst:517 +#: library/shutil.rst:511 msgid "" "If the fast-copy operation fails and no data was written in the destination " "file then shutil will silently fallback on using less efficient :func:" "`copyfileobj` function internally." msgstr "" -#: library/shutil.rst:526 +#: library/shutil.rst:520 msgid "copytree example" msgstr "" -#: library/shutil.rst:528 +#: library/shutil.rst:522 msgid "An example that uses the :func:`ignore_patterns` helper::" msgstr "" -#: library/shutil.rst:530 +#: library/shutil.rst:524 msgid "" "from shutil import copytree, ignore_patterns\n" "\n" "copytree(source, destination, ignore=ignore_patterns('*.pyc', 'tmp*'))" msgstr "" -#: library/shutil.rst:534 +#: library/shutil.rst:528 msgid "" "This will copy everything except ``.pyc`` files and files or directories " "whose name starts with ``tmp``." msgstr "" -#: library/shutil.rst:537 +#: library/shutil.rst:531 msgid "Another example that uses the *ignore* argument to add a logging call::" msgstr "" -#: library/shutil.rst:539 +#: library/shutil.rst:533 msgid "" "from shutil import copytree\n" "import logging\n" @@ -703,11 +696,11 @@ msgid "" "copytree(source, destination, ignore=_logpath)" msgstr "" -#: library/shutil.rst:552 +#: library/shutil.rst:546 msgid "rmtree example" msgstr "" -#: library/shutil.rst:554 +#: library/shutil.rst:548 msgid "" "This example shows how to remove a directory tree on Windows where some of " "the files have their read-only bit set. It uses the onexc callback to clear " @@ -715,7 +708,7 @@ msgid "" "propagate. ::" msgstr "" -#: library/shutil.rst:559 +#: library/shutil.rst:553 msgid "" "import os, stat\n" "import shutil\n" @@ -728,31 +721,31 @@ msgid "" "shutil.rmtree(directory, onexc=remove_readonly)" msgstr "" -#: library/shutil.rst:572 +#: library/shutil.rst:566 msgid "Archiving operations" msgstr "" -#: library/shutil.rst:576 +#: library/shutil.rst:570 msgid "Added support for the *xztar* format." msgstr "" -#: library/shutil.rst:580 +#: library/shutil.rst:574 msgid "" "High-level utilities to create and read compressed and archived files are " "also provided. They rely on the :mod:`zipfile` and :mod:`tarfile` modules." msgstr "" -#: library/shutil.rst:585 +#: library/shutil.rst:579 msgid "Create an archive file (such as zip or tar) and return its name." msgstr "" -#: library/shutil.rst:587 +#: library/shutil.rst:581 msgid "" "*base_name* is the name of the file to create, including the path, minus any " "format-specific extension." msgstr "" -#: library/shutil.rst:590 +#: library/shutil.rst:584 msgid "" "*format* is the archive format: one of \"zip\" (if the :mod:`zlib` module is " "available), \"tar\", \"gztar\" (if the :mod:`zlib` module is available), " @@ -760,14 +753,14 @@ msgid "" "`lzma` module is available)." msgstr "" -#: library/shutil.rst:595 +#: library/shutil.rst:589 msgid "" "*root_dir* is a directory that will be the root directory of the archive, " "all paths in the archive will be relative to it; for example, we typically " "chdir into *root_dir* before creating the archive." msgstr "" -#: library/shutil.rst:599 +#: library/shutil.rst:593 msgid "" "*base_dir* is the directory where we start archiving from; i.e. *base_dir* " "will be the common prefix of all files and directories in the archive. " @@ -775,39 +768,39 @@ msgid "" "example-with-basedir` for how to use *base_dir* and *root_dir* together." msgstr "" -#: library/shutil.rst:605 +#: library/shutil.rst:599 msgid "*root_dir* and *base_dir* both default to the current directory." msgstr "" -#: library/shutil.rst:607 +#: library/shutil.rst:601 msgid "" "If *dry_run* is true, no archive is created, but the operations that would " "be executed are logged to *logger*." msgstr "" -#: library/shutil.rst:610 +#: library/shutil.rst:604 msgid "" "*owner* and *group* are used when creating a tar archive. By default, uses " "the current owner and group." msgstr "" -#: library/shutil.rst:613 +#: library/shutil.rst:607 msgid "" "*logger* must be an object compatible with :pep:`282`, usually an instance " "of :class:`logging.Logger`." msgstr "" -#: library/shutil.rst:616 +#: library/shutil.rst:610 msgid "The *verbose* argument is unused and deprecated." msgstr "" -#: library/shutil.rst:618 +#: library/shutil.rst:612 msgid "" "Raises an :ref:`auditing event ` ``shutil.make_archive`` with " "arguments ``base_name``, ``format``, ``root_dir``, ``base_dir``." msgstr "" -#: library/shutil.rst:622 +#: library/shutil.rst:616 msgid "" "This function is not thread-safe when custom archivers registered with :func:" "`register_archive_format` do not support the *root_dir* argument. In this " @@ -815,60 +808,60 @@ msgid "" "*root_dir* to perform archiving." msgstr "" -#: library/shutil.rst:628 +#: library/shutil.rst:622 msgid "" "The modern pax (POSIX.1-2001) format is now used instead of the legacy GNU " "format for archives created with ``format=\"tar\"``." msgstr "" -#: library/shutil.rst:632 +#: library/shutil.rst:626 msgid "" "This function is now made thread-safe during creation of standard ``.zip`` " "and tar archives." msgstr "" -#: library/shutil.rst:638 +#: library/shutil.rst:632 msgid "" "Return a list of supported formats for archiving. Each element of the " "returned sequence is a tuple ``(name, description)``." msgstr "" -#: library/shutil.rst:752 +#: library/shutil.rst:746 msgid "By default :mod:`shutil` provides these formats:" msgstr "" -#: library/shutil.rst:643 +#: library/shutil.rst:637 msgid "*zip*: ZIP file (if the :mod:`zlib` module is available)." msgstr "" -#: library/shutil.rst:644 +#: library/shutil.rst:638 msgid "" "*tar*: Uncompressed tar file. Uses POSIX.1-2001 pax format for new archives." msgstr "" -#: library/shutil.rst:757 +#: library/shutil.rst:751 msgid "*gztar*: gzip'ed tar-file (if the :mod:`zlib` module is available)." msgstr "" -#: library/shutil.rst:758 +#: library/shutil.rst:752 msgid "*bztar*: bzip2'ed tar-file (if the :mod:`bz2` module is available)." msgstr "" -#: library/shutil.rst:759 +#: library/shutil.rst:753 msgid "*xztar*: xz'ed tar-file (if the :mod:`lzma` module is available)." msgstr "" -#: library/shutil.rst:649 +#: library/shutil.rst:643 msgid "" "You can register new formats or provide your own archiver for any existing " "formats, by using :func:`register_archive_format`." msgstr "" -#: library/shutil.rst:655 +#: library/shutil.rst:649 msgid "Register an archiver for the format *name*." msgstr "" -#: library/shutil.rst:657 +#: library/shutil.rst:651 msgid "" "*function* is the callable that will be used to unpack archives. The " "callable will receive the *base_name* of the file to create, followed by the " @@ -877,7 +870,7 @@ msgid "" "*dry_run* and *logger* (as passed in :func:`make_archive`)." msgstr "" -#: library/shutil.rst:663 +#: library/shutil.rst:657 msgid "" "If *function* has the custom attribute ``function.supports_root_dir`` set to " "``True``, the *root_dir* argument is passed as a keyword argument. Otherwise " @@ -886,37 +879,37 @@ msgid "" "not thread-safe." msgstr "" -#: library/shutil.rst:669 +#: library/shutil.rst:663 msgid "" "If given, *extra_args* is a sequence of ``(name, value)`` pairs that will be " "used as extra keywords arguments when the archiver callable is used." msgstr "" -#: library/shutil.rst:672 +#: library/shutil.rst:666 msgid "" "*description* is used by :func:`get_archive_formats` which returns the list " "of archivers. Defaults to an empty string." msgstr "" -#: library/shutil.rst:675 +#: library/shutil.rst:669 msgid "Added support for functions supporting the *root_dir* argument." msgstr "" -#: library/shutil.rst:681 +#: library/shutil.rst:675 msgid "Remove the archive format *name* from the list of supported formats." msgstr "" -#: library/shutil.rst:686 +#: library/shutil.rst:680 msgid "Unpack an archive. *filename* is the full path of the archive." msgstr "" -#: library/shutil.rst:688 +#: library/shutil.rst:682 msgid "" "*extract_dir* is the name of the target directory where the archive is " "unpacked. If not provided, the current working directory is used." msgstr "" -#: library/shutil.rst:691 +#: library/shutil.rst:685 msgid "" "*format* is the archive format: one of \"zip\", \"tar\", \"gztar\", " "\"bztar\", or \"xztar\". Or any other format registered with :func:" @@ -925,7 +918,7 @@ msgid "" "that extension. In case none is found, a :exc:`ValueError` is raised." msgstr "" -#: library/shutil.rst:698 +#: library/shutil.rst:692 msgid "" "The keyword-only *filter* argument is passed to the underlying unpacking " "function. For zip files, *filter* is not accepted. For tar files, it is " @@ -935,13 +928,13 @@ msgid "" "Python 3.14." msgstr "" -#: library/shutil.rst:706 +#: library/shutil.rst:700 msgid "" "Raises an :ref:`auditing event ` ``shutil.unpack_archive`` with " "arguments ``filename``, ``extract_dir``, ``format``." msgstr "" -#: library/shutil.rst:710 +#: library/shutil.rst:704 msgid "" "Never extract archives from untrusted sources without prior inspection. It " "is possible that files are created outside of the path specified in the " @@ -949,91 +942,91 @@ msgid "" "with \"/\" or filenames with two dots \"..\"." msgstr "" -#: library/shutil.rst:715 +#: library/shutil.rst:709 msgid "Accepts a :term:`path-like object` for *filename* and *extract_dir*." msgstr "" -#: library/shutil.rst:718 +#: library/shutil.rst:712 msgid "Added the *filter* argument." msgstr "" -#: library/shutil.rst:723 +#: library/shutil.rst:717 msgid "" "Registers an unpack format. *name* is the name of the format and " "*extensions* is a list of extensions corresponding to the format, like ``." "zip`` for Zip files." msgstr "" -#: library/shutil.rst:727 +#: library/shutil.rst:721 msgid "" "*function* is the callable that will be used to unpack archives. The " "callable will receive:" msgstr "" -#: library/shutil.rst:730 +#: library/shutil.rst:724 msgid "the path of the archive, as a positional argument;" msgstr "" -#: library/shutil.rst:731 +#: library/shutil.rst:725 msgid "" "the directory the archive must be extracted to, as a positional argument;" msgstr "" -#: library/shutil.rst:732 +#: library/shutil.rst:726 msgid "" "possibly a *filter* keyword argument, if it was given to :func:" "`unpack_archive`;" msgstr "" -#: library/shutil.rst:734 +#: library/shutil.rst:728 msgid "" "additional keyword arguments, specified by *extra_args* as a sequence of " "``(name, value)`` tuples." msgstr "" -#: library/shutil.rst:737 +#: library/shutil.rst:731 msgid "" "*description* can be provided to describe the format, and will be returned " "by the :func:`get_unpack_formats` function." msgstr "" -#: library/shutil.rst:743 +#: library/shutil.rst:737 msgid "Unregister an unpack format. *name* is the name of the format." msgstr "" -#: library/shutil.rst:748 +#: library/shutil.rst:742 msgid "" "Return a list of all registered formats for unpacking. Each element of the " "returned sequence is a tuple ``(name, extensions, description)``." msgstr "" -#: library/shutil.rst:754 +#: library/shutil.rst:748 msgid "" "*zip*: ZIP file (unpacking compressed files works only if the corresponding " "module is available)." msgstr "" -#: library/shutil.rst:756 +#: library/shutil.rst:750 msgid "*tar*: uncompressed tar file." msgstr "" -#: library/shutil.rst:761 +#: library/shutil.rst:755 msgid "" "You can register new formats or provide your own unpacker for any existing " "formats, by using :func:`register_unpack_format`." msgstr "" -#: library/shutil.rst:768 +#: library/shutil.rst:762 msgid "Archiving example" msgstr "" -#: library/shutil.rst:770 +#: library/shutil.rst:764 msgid "" "In this example, we create a gzip'ed tar-file archive containing all files " "found in the :file:`.ssh` directory of the user::" msgstr "" -#: library/shutil.rst:773 +#: library/shutil.rst:767 msgid "" ">>> from shutil import make_archive\n" ">>> import os\n" @@ -1043,11 +1036,11 @@ msgid "" "'/Users/tarek/myarchive.tar.gz'" msgstr "" -#: library/shutil.rst:780 +#: library/shutil.rst:774 msgid "The resulting archive contains:" msgstr "" -#: library/shutil.rst:782 +#: library/shutil.rst:776 msgid "" "$ tar -tzvf /Users/tarek/myarchive.tar.gz\n" "drwx------ tarek/staff 0 2010-02-01 16:23:40 ./\n" @@ -1060,18 +1053,18 @@ msgid "" "-rw-r--r-- tarek/staff 37192 2010-02-06 18:23:10 ./known_hosts" msgstr "" -#: library/shutil.rst:798 +#: library/shutil.rst:792 msgid "Archiving example with *base_dir*" msgstr "" -#: library/shutil.rst:800 +#: library/shutil.rst:794 msgid "" "In this example, similar to the `one above `_, we " "show how to use :func:`make_archive`, but this time with the usage of " "*base_dir*. We now have the following directory structure:" msgstr "" -#: library/shutil.rst:804 +#: library/shutil.rst:798 msgid "" "$ tree tmp\n" "tmp\n" @@ -1082,13 +1075,13 @@ msgid "" " └── do_not_add.txt" msgstr "" -#: library/shutil.rst:814 +#: library/shutil.rst:808 msgid "" "In the final archive, :file:`please_add.txt` should be included, but :file:" "`do_not_add.txt` should not. Therefore we use the following::" msgstr "" -#: library/shutil.rst:817 +#: library/shutil.rst:811 msgid "" ">>> from shutil import make_archive\n" ">>> import os\n" @@ -1102,40 +1095,40 @@ msgid "" "'/Users/tarek/my_archive.tar'" msgstr "" -#: library/shutil.rst:828 +#: library/shutil.rst:822 msgid "Listing the files in the resulting archive gives us:" msgstr "" -#: library/shutil.rst:830 +#: library/shutil.rst:824 msgid "" "$ python -m tarfile -l /Users/tarek/myarchive.tar\n" "structure/content/\n" "structure/content/please_add.txt" msgstr "" -#: library/shutil.rst:838 +#: library/shutil.rst:832 msgid "Querying the size of the output terminal" msgstr "" -#: library/shutil.rst:842 +#: library/shutil.rst:836 msgid "Get the size of the terminal window." msgstr "" -#: library/shutil.rst:844 +#: library/shutil.rst:838 msgid "" "For each of the two dimensions, the environment variable, ``COLUMNS`` and " "``LINES`` respectively, is checked. If the variable is defined and the value " "is a positive integer, it is used." msgstr "" -#: library/shutil.rst:848 +#: library/shutil.rst:842 msgid "" "When ``COLUMNS`` or ``LINES`` is not defined, which is the common case, the " "terminal connected to :data:`sys.__stdout__` is queried by invoking :func:" "`os.get_terminal_size`." msgstr "" -#: library/shutil.rst:852 +#: library/shutil.rst:846 msgid "" "If the terminal size cannot be successfully queried, either because the " "system doesn't support querying, or because we are not connected to a " @@ -1144,17 +1137,17 @@ msgid "" "emulators." msgstr "" -#: library/shutil.rst:858 +#: library/shutil.rst:852 msgid "The value returned is a named tuple of type :class:`os.terminal_size`." msgstr "" -#: library/shutil.rst:860 +#: library/shutil.rst:854 msgid "" "See also: The Single UNIX Specification, Version 2, `Other Environment " "Variables`_." msgstr "" -#: library/shutil.rst:865 +#: library/shutil.rst:859 msgid "" "The ``fallback`` values are also used if :func:`os.get_terminal_size` " "returns zeroes." diff --git a/library/smtpd.po b/library/smtpd.po new file mode 100644 index 000000000..d25fac109 --- /dev/null +++ b/library/smtpd.po @@ -0,0 +1,40 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2001-2025, Python Software Foundation +# This file is distributed under the same license as the Python package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Python 3.12\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: library/smtpd.rst:2 +msgid ":mod:`!smtpd` --- SMTP Server" +msgstr "" + +#: library/smtpd.rst:10 +msgid "" +"This module is no longer part of the Python standard library. It was :ref:" +"`removed in Python 3.12 ` after being deprecated in " +"Python 3.6. The removal was decided in :pep:`594`." +msgstr "" + +#: library/smtpd.rst:14 +msgid "" +"A possible replacement is the third-party :pypi:`aiosmtpd` library. This " +"library is not maintained or supported by the Python core team." +msgstr "" + +#: library/smtpd.rst:17 +msgid "" +"The last version of Python that provided the :mod:`!smtpd` module was " +"`Python 3.11 `_." +msgstr "" diff --git a/library/smtplib.po b/library/smtplib.po index 3b65ae630..ae1d62352 100644 --- a/library/smtplib.po +++ b/library/smtplib.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -690,11 +690,11 @@ msgid "" "and *to_addrs*, ``send_message`` does not transmit any :mailheader:`Bcc` or :" "mailheader:`Resent-Bcc` headers that may appear in *msg*. If any of the " "addresses in *from_addr* and *to_addrs* contain non-ASCII characters and the " -"server does not advertise ``SMTPUTF8`` support, an :exc:`SMTPNotSupported` " -"error is raised. Otherwise the ``Message`` is serialized with a clone of " -"its :mod:`~email.policy` with the :attr:`~email.policy.EmailPolicy.utf8` " -"attribute set to ``True``, and ``SMTPUTF8`` and ``BODY=8BITMIME`` are added " -"to *mail_options*." +"server does not advertise ``SMTPUTF8`` support, an :exc:" +"`SMTPNotSupportedError` is raised. Otherwise the ``Message`` is serialized " +"with a clone of its :mod:`~email.policy` with the :attr:`~email.policy." +"EmailPolicy.utf8` attribute set to ``True``, and ``SMTPUTF8`` and " +"``BODY=8BITMIME`` are added to *mail_options*." msgstr "" #: library/smtplib.rst:534 diff --git a/library/socket.po b/library/socket.po index b2165d771..2a80571af 100644 --- a/library/socket.po +++ b/library/socket.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -41,12 +41,12 @@ msgstr "" #: library/socket.rst:470 library/socket.rst:496 library/socket.rst:514 #: library/socket.rst:537 library/socket.rst:561 library/socket.rst:601 #: library/socket.rst:638 library/socket.rst:662 library/socket.rst:694 -#: library/socket.rst:893 library/socket.rst:1005 library/socket.rst:1033 -#: library/socket.rst:1061 library/socket.rst:1083 library/socket.rst:1192 -#: library/socket.rst:1241 library/socket.rst:1281 library/socket.rst:1325 -#: library/socket.rst:1356 library/socket.rst:1454 library/socket.rst:1488 -#: library/socket.rst:1580 library/socket.rst:1754 library/socket.rst:1880 -#: library/socket.rst:1974 includes/wasm-notavail.rst:3 +#: library/socket.rst:893 library/socket.rst:1034 library/socket.rst:1062 +#: library/socket.rst:1090 library/socket.rst:1112 library/socket.rst:1221 +#: library/socket.rst:1270 library/socket.rst:1310 library/socket.rst:1354 +#: library/socket.rst:1385 library/socket.rst:1483 library/socket.rst:1517 +#: library/socket.rst:1609 library/socket.rst:1778 library/socket.rst:1904 +#: library/socket.rst:1998 includes/wasm-notavail.rst:3 msgid "Availability" msgstr "" @@ -118,7 +118,7 @@ msgid "" "Previously, :const:`AF_UNIX` socket paths were assumed to use UTF-8 encoding." msgstr "" -#: library/socket.rst:1155 library/socket.rst:1958 +#: library/socket.rst:1184 library/socket.rst:1982 msgid "Writable :term:`bytes-like object` is now accepted." msgstr "" @@ -705,7 +705,7 @@ msgid "" "the :meth:`~socket.socket.ioctl` method of socket objects." msgstr "" -#: library/socket.rst:1570 +#: library/socket.rst:1599 msgid "``SIO_LOOPBACK_FAST_PATH`` was added." msgstr "" @@ -817,7 +817,7 @@ msgid "" "This may help close a detached socket using :meth:`socket.close`." msgstr "" -#: library/socket.rst:882 library/socket.rst:1483 +#: library/socket.rst:882 library/socket.rst:1512 msgid "The newly created socket is :ref:`non-inheritable `." msgstr "" @@ -955,15 +955,15 @@ msgstr "" #: library/socket.rst:836 msgid "" -"If *dualstack_ipv6* is true and the platform supports it the socket will be " -"able to accept both IPv4 and IPv6 connections, else it will raise :exc:" -"`ValueError`. Most POSIX platforms and Windows are supposed to support this " -"functionality. When this functionality is enabled the address returned by :" -"meth:`socket.getpeername` when an IPv4 connection occurs will be an IPv6 " -"address represented as an IPv4-mapped IPv6 address. If *dualstack_ipv6* is " -"false it will explicitly disable this functionality on platforms that enable " -"it by default (e.g. Linux). This parameter can be used in conjunction with :" -"func:`has_dualstack_ipv6`:" +"If *dualstack_ipv6* is true, *family* is :data:`AF_INET6` and the platform " +"supports it the socket will be able to accept both IPv4 and IPv6 " +"connections, else it will raise :exc:`ValueError`. Most POSIX platforms and " +"Windows are supposed to support this functionality. When this functionality " +"is enabled the address returned by :meth:`socket.getpeername` when an IPv4 " +"connection occurs will be an IPv6 address represented as an IPv4-mapped IPv6 " +"address. If *dualstack_ipv6* is false it will explicitly disable this " +"functionality on platforms that enable it by default (e.g. Linux). This " +"parameter can be used in conjunction with :func:`has_dualstack_ipv6`:" msgstr "" #: library/socket.rst:849 @@ -1033,6 +1033,11 @@ msgstr "" #: library/socket.rst:920 msgid "" +"This function wraps the C function ``getaddrinfo`` of the underlying system." +msgstr "" + +#: library/socket.rst:922 +msgid "" "Translate the *host*/*port* argument into a sequence of 5-tuples that " "contain all the necessary arguments for creating a socket connected to that " "service. *host* is a domain name, a string representation of an IPv4/v6 " @@ -1041,26 +1046,31 @@ msgid "" "and *port*, you can pass ``NULL`` to the underlying C API." msgstr "" -#: library/socket.rst:927 +#: library/socket.rst:929 msgid "" "The *family*, *type* and *proto* arguments can be optionally specified in " -"order to narrow the list of addresses returned. Passing zero as a value for " -"each of these arguments selects the full range of results. The *flags* " -"argument can be one or several of the ``AI_*`` constants, and will influence " -"how results are computed and returned. For example, :const:`AI_NUMERICHOST` " -"will disable domain name resolution and will raise an error if *host* is a " -"domain name." +"order to provide options and limit the list of addresses returned. Pass " +"their default values (:data:`AF_UNSPEC`, 0, and 0, respectively) to not " +"limit the results. See the note below for details." +msgstr "" + +#: library/socket.rst:934 +msgid "" +"The *flags* argument can be one or several of the ``AI_*`` constants, and " +"will influence how results are computed and returned. For example, :const:" +"`AI_NUMERICHOST` will disable domain name resolution and will raise an error " +"if *host* is a domain name." msgstr "" -#: library/socket.rst:935 +#: library/socket.rst:939 msgid "The function returns a list of 5-tuples with the following structure:" msgstr "" -#: library/socket.rst:937 +#: library/socket.rst:941 msgid "``(family, type, proto, canonname, sockaddr)``" msgstr "" -#: library/socket.rst:939 +#: library/socket.rst:943 msgid "" "In these tuples, *family*, *type*, *proto* are all integers and are meant to " "be passed to the :func:`~socket.socket` function. *canonname* will be a " @@ -1072,20 +1082,52 @@ msgid "" "`AF_INET6`), and is meant to be passed to the :meth:`socket.connect` method." msgstr "" -#: library/socket.rst:949 +#: library/socket.rst:955 +msgid "" +"If you intend to use results from :func:`!getaddrinfo` to create a socket " +"(rather than, for example, retrieve *canonname*), consider limiting the " +"results by *type* (e.g. :data:`SOCK_STREAM` or :data:`SOCK_DGRAM`) and/or " +"*proto* (e.g. :data:`IPPROTO_TCP` or :data:`IPPROTO_UDP`) that your " +"application can handle." +msgstr "" + +#: library/socket.rst:961 +msgid "" +"The behavior with default values of *family*, *type*, *proto* and *flags* is " +"system-specific." +msgstr "" + +#: library/socket.rst:964 +msgid "" +"Many systems (for example, most Linux configurations) will return a sorted " +"list of all matching addresses. These addresses should generally be tried in " +"order until a connection succeeds (possibly tried in parallel, for example, " +"using a `Happy Eyeballs`_ algorithm). In these cases, limiting the *type* " +"and/or *proto* can help eliminate unsuccessful or unusable connection " +"attempts." +msgstr "" + +#: library/socket.rst:971 +msgid "" +"Some systems will, however, only return a single address. (For example, this " +"was reported on Solaris and AIX configurations.) On these systems, limiting " +"the *type* and/or *proto* helps ensure that this address is usable." +msgstr "" + +#: library/socket.rst:976 msgid "" "Raises an :ref:`auditing event ` ``socket.getaddrinfo`` with " "arguments ``host``, ``port``, ``family``, ``type``, ``protocol``." msgstr "" -#: library/socket.rst:951 +#: library/socket.rst:978 msgid "" "The following example fetches address information for a hypothetical TCP " "connection to ``example.org`` on port 80 (results may differ on your system " "if IPv6 isn't enabled)::" msgstr "" -#: library/socket.rst:955 +#: library/socket.rst:982 msgid "" ">>> socket.getaddrinfo(\"example.org\", 80, proto=socket.IPPROTO_TCP)\n" "[(socket.AF_INET6, socket.SOCK_STREAM,\n" @@ -1094,17 +1136,17 @@ msgid "" " 6, '', ('93.184.216.34', 80))]" msgstr "" -#: library/socket.rst:961 +#: library/socket.rst:988 msgid "parameters can now be passed using keyword arguments." msgstr "" -#: library/socket.rst:964 +#: library/socket.rst:991 msgid "" "for IPv6 multicast addresses, string representing an address will not " "contain ``%scope_id`` part." msgstr "" -#: library/socket.rst:970 +#: library/socket.rst:999 msgid "" "Return a fully qualified domain name for *name*. If *name* is omitted or " "empty, it is interpreted as the local host. To find the fully qualified " @@ -1115,7 +1157,7 @@ msgid "" "``'0.0.0.0'``, the hostname from :func:`gethostname` is returned." msgstr "" -#: library/socket.rst:981 +#: library/socket.rst:1010 msgid "" "Translate a host name to IPv4 address format. The IPv4 address is returned " "as a string, such as ``'100.50.200.5'``. If the host name is an IPv4 " @@ -1125,13 +1167,13 @@ msgid "" "stack support." msgstr "" -#: library/socket.rst:1003 +#: library/socket.rst:1032 msgid "" "Raises an :ref:`auditing event ` ``socket.gethostbyname`` with " "argument ``hostname``." msgstr "" -#: library/socket.rst:994 +#: library/socket.rst:1023 msgid "" "Translate a host name to IPv4 address format, extended interface. Return a 3-" "tuple ``(hostname, aliaslist, ipaddrlist)`` where *hostname* is the host's " @@ -1143,25 +1185,25 @@ msgid "" "stack support." msgstr "" -#: library/socket.rst:1010 +#: library/socket.rst:1039 msgid "" "Return a string containing the hostname of the machine where the Python " "interpreter is currently executing." msgstr "" -#: library/socket.rst:1013 +#: library/socket.rst:1042 msgid "" "Raises an :ref:`auditing event ` ``socket.gethostname`` with no " "arguments." msgstr "" -#: library/socket.rst:1015 +#: library/socket.rst:1044 msgid "" "Note: :func:`gethostname` doesn't always return the fully qualified domain " "name; use :func:`getfqdn` for that." msgstr "" -#: library/socket.rst:1023 +#: library/socket.rst:1052 msgid "" "Return a 3-tuple ``(hostname, aliaslist, ipaddrlist)`` where *hostname* is " "the primary host name responding to the given *ip_address*, *aliaslist* is a " @@ -1172,13 +1214,13 @@ msgid "" "`gethostbyaddr` supports both IPv4 and IPv6." msgstr "" -#: library/socket.rst:1031 +#: library/socket.rst:1060 msgid "" "Raises an :ref:`auditing event ` ``socket.gethostbyaddr`` with " "argument ``ip_address``." msgstr "" -#: library/socket.rst:1038 +#: library/socket.rst:1067 msgid "" "Translate a socket address *sockaddr* into a 2-tuple ``(host, port)``. " "Depending on the settings of *flags*, the result can contain a fully " @@ -1186,24 +1228,24 @@ msgid "" "Similarly, *port* can contain a string port name or a numeric port number." msgstr "" -#: library/socket.rst:1043 +#: library/socket.rst:1072 msgid "" "For IPv6 addresses, ``%scope_id`` is appended to the host part if *sockaddr* " "contains meaningful *scope_id*. Usually this happens for multicast addresses." msgstr "" -#: library/socket.rst:1046 +#: library/socket.rst:1075 msgid "" "For more information about *flags* you can consult :manpage:`getnameinfo(3)`." msgstr "" -#: library/socket.rst:1048 +#: library/socket.rst:1077 msgid "" "Raises an :ref:`auditing event ` ``socket.getnameinfo`` with " "argument ``sockaddr``." msgstr "" -#: library/socket.rst:1055 +#: library/socket.rst:1084 msgid "" "Translate an internet protocol name (for example, ``'icmp'``) to a constant " "suitable for passing as the (optional) third argument to the :func:`~socket." @@ -1212,66 +1254,66 @@ msgid "" "is chosen automatically if the protocol is omitted or zero." msgstr "" -#: library/socket.rst:1066 +#: library/socket.rst:1095 msgid "" "Translate an internet service name and protocol name to a port number for " "that service. The optional protocol name, if given, should be ``'tcp'`` or " "``'udp'``, otherwise any protocol will match." msgstr "" -#: library/socket.rst:1070 +#: library/socket.rst:1099 msgid "" "Raises an :ref:`auditing event ` ``socket.getservbyname`` with " "arguments ``servicename``, ``protocolname``." msgstr "" -#: library/socket.rst:1077 +#: library/socket.rst:1106 msgid "" "Translate an internet port number and protocol name to a service name for " "that service. The optional protocol name, if given, should be ``'tcp'`` or " "``'udp'``, otherwise any protocol will match." msgstr "" -#: library/socket.rst:1081 +#: library/socket.rst:1110 msgid "" "Raises an :ref:`auditing event ` ``socket.getservbyport`` with " "arguments ``port``, ``protocolname``." msgstr "" -#: library/socket.rst:1088 +#: library/socket.rst:1117 msgid "" "Convert 32-bit positive integers from network to host byte order. On " "machines where the host byte order is the same as network byte order, this " "is a no-op; otherwise, it performs a 4-byte swap operation." msgstr "" -#: library/socket.rst:1095 +#: library/socket.rst:1124 msgid "" "Convert 16-bit positive integers from network to host byte order. On " "machines where the host byte order is the same as network byte order, this " "is a no-op; otherwise, it performs a 2-byte swap operation." msgstr "" -#: library/socket.rst:1117 +#: library/socket.rst:1146 msgid "" "Raises :exc:`OverflowError` if *x* does not fit in a 16-bit unsigned integer." msgstr "" -#: library/socket.rst:1106 +#: library/socket.rst:1135 msgid "" "Convert 32-bit positive integers from host to network byte order. On " "machines where the host byte order is the same as network byte order, this " "is a no-op; otherwise, it performs a 4-byte swap operation." msgstr "" -#: library/socket.rst:1113 +#: library/socket.rst:1142 msgid "" "Convert 16-bit positive integers from host to network byte order. On " "machines where the host byte order is the same as network byte order, this " "is a no-op; otherwise, it performs a 2-byte swap operation." msgstr "" -#: library/socket.rst:1124 +#: library/socket.rst:1153 msgid "" "Convert an IPv4 address from dotted-quad string format (for example, " "'123.45.67.89') to 32-bit packed binary format, as a bytes object four " @@ -1280,26 +1322,26 @@ msgid "" "which is the C type for the 32-bit packed binary this function returns." msgstr "" -#: library/socket.rst:1130 +#: library/socket.rst:1159 msgid "" ":func:`inet_aton` also accepts strings with less than three dots; see the " "Unix manual page :manpage:`inet(3)` for details." msgstr "" -#: library/socket.rst:1133 +#: library/socket.rst:1162 msgid "" "If the IPv4 address string passed to this function is invalid, :exc:" "`OSError` will be raised. Note that exactly what is valid depends on the " "underlying C implementation of :c:func:`inet_aton`." msgstr "" -#: library/socket.rst:1137 +#: library/socket.rst:1166 msgid "" ":func:`inet_aton` does not support IPv6, and :func:`inet_pton` should be " "used instead for IPv4/v6 dual stack support." msgstr "" -#: library/socket.rst:1143 +#: library/socket.rst:1172 msgid "" "Convert a 32-bit packed IPv4 address (a :term:`bytes-like object` four bytes " "in length) to its standard dotted-quad string representation (for example, " @@ -1309,7 +1351,7 @@ msgid "" "argument." msgstr "" -#: library/socket.rst:1150 +#: library/socket.rst:1179 msgid "" "If the byte sequence passed to this function is not exactly 4 bytes in " "length, :exc:`OSError` will be raised. :func:`inet_ntoa` does not support " @@ -1317,7 +1359,7 @@ msgid "" "support." msgstr "" -#: library/socket.rst:1161 +#: library/socket.rst:1190 msgid "" "Convert an IP address from its family-specific string format to a packed, " "binary format. :func:`inet_pton` is useful when a library or network " @@ -1325,7 +1367,7 @@ msgid "" "`inet_aton`) or :c:struct:`in6_addr`." msgstr "" -#: library/socket.rst:1166 +#: library/socket.rst:1195 msgid "" "Supported values for *address_family* are currently :const:`AF_INET` and :" "const:`AF_INET6`. If the IP address string *ip_string* is invalid, :exc:" @@ -1334,11 +1376,11 @@ msgid "" "`inet_pton`." msgstr "" -#: library/socket.rst:1194 +#: library/socket.rst:1223 msgid "Windows support added" msgstr "" -#: library/socket.rst:1180 +#: library/socket.rst:1209 msgid "" "Convert a packed IP address (a :term:`bytes-like object` of some number of " "bytes) to its standard, family-specific string representation (for example, " @@ -1347,7 +1389,7 @@ msgid "" "(similar to :func:`inet_ntoa`) or :c:struct:`in6_addr`." msgstr "" -#: library/socket.rst:1187 +#: library/socket.rst:1216 msgid "" "Supported values for *address_family* are currently :const:`AF_INET` and :" "const:`AF_INET6`. If the bytes object *packed_ip* is not the correct length " @@ -1355,7 +1397,7 @@ msgid "" "`OSError` is raised for errors from the call to :func:`inet_ntop`." msgstr "" -#: library/socket.rst:1209 +#: library/socket.rst:1238 msgid "" "Return the total length, without trailing padding, of an ancillary data item " "with associated data of the given *length*. This value can often be used as " @@ -1366,11 +1408,11 @@ msgid "" "the permissible range of values." msgstr "" -#: library/socket.rst:1712 library/socket.rst:1864 +#: library/socket.rst:1736 library/socket.rst:1888 msgid "Most Unix platforms." msgstr "" -#: library/socket.rst:1227 +#: library/socket.rst:1256 msgid "" "Return the buffer size needed for :meth:`~socket.recvmsg` to receive an " "ancillary data item with associated data of the given *length*, along with " @@ -1380,7 +1422,7 @@ msgid "" "values." msgstr "" -#: library/socket.rst:1235 +#: library/socket.rst:1264 msgid "" "Note that some systems might support ancillary data without providing this " "function. Also note that setting the buffer size using the results of this " @@ -1388,131 +1430,131 @@ msgid "" "received, since additional data may be able to fit into the padding area." msgstr "" -#: library/socket.rst:1243 +#: library/socket.rst:1272 msgid "most Unix platforms." msgstr "" -#: library/socket.rst:1250 +#: library/socket.rst:1279 msgid "" "Return the default timeout in seconds (float) for new socket objects. A " "value of ``None`` indicates that new socket objects have no timeout. When " "the socket module is first imported, the default is ``None``." msgstr "" -#: library/socket.rst:1257 +#: library/socket.rst:1286 msgid "" "Set the default timeout in seconds (float) for new socket objects. When the " "socket module is first imported, the default is ``None``. See :meth:" "`~socket.settimeout` for possible values and their respective meanings." msgstr "" -#: library/socket.rst:1265 +#: library/socket.rst:1294 msgid "" "Set the machine's hostname to *name*. This will raise an :exc:`OSError` if " "you don't have enough rights." msgstr "" -#: library/socket.rst:1268 +#: library/socket.rst:1297 msgid "" "Raises an :ref:`auditing event ` ``socket.sethostname`` with " "argument ``name``." msgstr "" -#: library/socket.rst:1277 +#: library/socket.rst:1306 msgid "" "Return a list of network interface information (index int, name string) " "tuples. :exc:`OSError` if the system call fails." msgstr "" -#: library/socket.rst:1312 library/socket.rst:1329 +#: library/socket.rst:1341 library/socket.rst:1358 msgid "Windows support was added." msgstr "" -#: library/socket.rst:1290 +#: library/socket.rst:1319 msgid "" "On Windows network interfaces have different names in different contexts " "(all names are examples):" msgstr "" -#: library/socket.rst:1293 +#: library/socket.rst:1322 msgid "UUID: ``{FB605B73-AAC2-49A6-9A2F-25416AEA0573}``" msgstr "" -#: library/socket.rst:1294 +#: library/socket.rst:1323 msgid "name: ``ethernet_32770``" msgstr "" -#: library/socket.rst:1295 +#: library/socket.rst:1324 msgid "friendly name: ``vEthernet (nat)``" msgstr "" -#: library/socket.rst:1296 +#: library/socket.rst:1325 msgid "description: ``Hyper-V Virtual Ethernet Adapter``" msgstr "" -#: library/socket.rst:1298 +#: library/socket.rst:1327 msgid "" "This function returns names of the second form from the list, " "``ethernet_32770`` in this example case." msgstr "" -#: library/socket.rst:1304 +#: library/socket.rst:1333 msgid "" "Return a network interface index number corresponding to an interface name. :" "exc:`OSError` if no interface with the given name exists." msgstr "" -#: library/socket.rst:1333 +#: library/socket.rst:1362 msgid "\"Interface name\" is a name as documented in :func:`if_nameindex`." msgstr "" -#: library/socket.rst:1321 +#: library/socket.rst:1350 msgid "" "Return a network interface name corresponding to an interface index number. :" "exc:`OSError` if no interface with the given index exists." msgstr "" -#: library/socket.rst:1338 +#: library/socket.rst:1367 msgid "" "Send the list of file descriptors *fds* over an :const:`AF_UNIX` socket " "*sock*. The *fds* parameter is a sequence of file descriptors. Consult :meth:" "`~socket.sendmsg` for the documentation of these parameters." msgstr "" -#: library/socket.rst:1358 +#: library/socket.rst:1387 msgid "" "Unix platforms supporting :meth:`~socket.sendmsg` and :const:`SCM_RIGHTS` " "mechanism." msgstr "" -#: library/socket.rst:1352 +#: library/socket.rst:1381 msgid "" "Receive up to *maxfds* file descriptors from an :const:`AF_UNIX` socket " "*sock*. Return ``(msg, list(fds), flags, addr)``. Consult :meth:`~socket." "recvmsg` for the documentation of these parameters." msgstr "" -#: library/socket.rst:1365 +#: library/socket.rst:1394 msgid "Any truncated integers at the end of the list of file descriptors." msgstr "" -#: library/socket.rst:1371 +#: library/socket.rst:1400 msgid "Socket Objects" msgstr "" -#: library/socket.rst:1373 +#: library/socket.rst:1402 msgid "" "Socket objects have the following methods. Except for :meth:`~socket." "makefile`, these correspond to Unix system calls applicable to sockets." msgstr "" -#: library/socket.rst:1377 +#: library/socket.rst:1406 msgid "" "Support for the :term:`context manager` protocol was added. Exiting the " "context manager is equivalent to calling :meth:`~socket.close`." msgstr "" -#: library/socket.rst:1384 +#: library/socket.rst:1413 msgid "" "Accept a connection. The socket must be bound to an address and listening " "for connections. The return value is a pair ``(conn, address)`` where *conn* " @@ -1521,31 +1563,31 @@ msgid "" "connection." msgstr "" -#: library/socket.rst:1485 +#: library/socket.rst:1514 msgid "The socket is now non-inheritable." msgstr "" -#: library/socket.rst:1625 library/socket.rst:1716 library/socket.rst:1808 -#: library/socket.rst:1870 +#: library/socket.rst:1649 library/socket.rst:1740 library/socket.rst:1832 +#: library/socket.rst:1894 msgid "" "If the system call is interrupted and the signal handler does not raise an " "exception, the method now retries the system call instead of raising an :exc:" "`InterruptedError` exception (see :pep:`475` for the rationale)." msgstr "" -#: library/socket.rst:1402 +#: library/socket.rst:1431 msgid "" "Bind the socket to *address*. The socket must not already be bound. (The " "format of *address* depends on the address family --- see above.)" msgstr "" -#: library/socket.rst:1405 +#: library/socket.rst:1434 msgid "" "Raises an :ref:`auditing event ` ``socket.bind`` with arguments " "``self``, ``address``." msgstr "" -#: library/socket.rst:1412 +#: library/socket.rst:1441 msgid "" "Mark the socket closed. The underlying system resource (e.g. a file " "descriptor) is also closed when all file objects from :meth:`makefile` are " @@ -1554,33 +1596,33 @@ msgid "" "flushed)." msgstr "" -#: library/socket.rst:1418 +#: library/socket.rst:1447 msgid "" "Sockets are automatically closed when they are garbage-collected, but it is " "recommended to :meth:`close` them explicitly, or to use a :keyword:`with` " "statement around them." msgstr "" -#: library/socket.rst:1422 +#: library/socket.rst:1451 msgid "" ":exc:`OSError` is now raised if an error occurs when the underlying :c:func:" "`close` call is made." msgstr "" -#: library/socket.rst:1428 +#: library/socket.rst:1457 msgid "" ":meth:`close` releases the resource associated with a connection but does " "not necessarily close the connection immediately. If you want to close the " "connection in a timely fashion, call :meth:`shutdown` before :meth:`close`." msgstr "" -#: library/socket.rst:1436 +#: library/socket.rst:1465 msgid "" "Connect to a remote socket at *address*. (The format of *address* depends on " "the address family --- see above.)" msgstr "" -#: library/socket.rst:1439 +#: library/socket.rst:1468 msgid "" "If the connection is interrupted by a signal, the method waits until the " "connection completes, or raise a :exc:`TimeoutError` on timeout, if the " @@ -1590,13 +1632,13 @@ msgid "" "(or the exception raised by the signal handler)." msgstr "" -#: library/socket.rst:1466 +#: library/socket.rst:1495 msgid "" "Raises an :ref:`auditing event ` ``socket.connect`` with arguments " "``self``, ``address``." msgstr "" -#: library/socket.rst:1448 +#: library/socket.rst:1477 msgid "" "The method now waits until the connection completes instead of raising an :" "exc:`InterruptedError` exception if the connection is interrupted by a " @@ -1604,7 +1646,7 @@ msgid "" "blocking or has a timeout (see the :pep:`475` for the rationale)." msgstr "" -#: library/socket.rst:1459 +#: library/socket.rst:1488 msgid "" "Like ``connect(address)``, but return an error indicator instead of raising " "an exception for errors returned by the C-level :c:func:`connect` call " @@ -1614,38 +1656,38 @@ msgid "" "asynchronous connects." msgstr "" -#: library/socket.rst:1472 +#: library/socket.rst:1501 msgid "" "Put the socket object into closed state without actually closing the " "underlying file descriptor. The file descriptor is returned, and can be " "reused for other purposes." msgstr "" -#: library/socket.rst:1481 +#: library/socket.rst:1510 msgid "Duplicate the socket." msgstr "" -#: library/socket.rst:1493 +#: library/socket.rst:1522 msgid "" "Return the socket's file descriptor (a small integer), or -1 on failure. " "This is useful with :func:`select.select`." msgstr "" -#: library/socket.rst:1496 +#: library/socket.rst:1525 msgid "" "Under Windows the small integer returned by this method cannot be used where " "a file descriptor can be used (such as :func:`os.fdopen`). Unix does not " "have this limitation." msgstr "" -#: library/socket.rst:1502 +#: library/socket.rst:1531 msgid "" "Get the :ref:`inheritable flag ` of the socket's file " "descriptor or socket's handle: ``True`` if the socket can be inherited in " "child processes, ``False`` if it cannot." msgstr "" -#: library/socket.rst:1511 +#: library/socket.rst:1540 msgid "" "Return the remote address to which the socket is connected. This is useful " "to find out the port number of a remote IPv4/v6 socket, for instance. (The " @@ -1653,14 +1695,14 @@ msgid "" "above.) On some systems this function is not supported." msgstr "" -#: library/socket.rst:1519 +#: library/socket.rst:1548 msgid "" "Return the socket's own address. This is useful to find out the port number " "of an IPv4/v6 socket, for instance. (The format of the address returned " "depends on the address family --- see above.)" msgstr "" -#: library/socket.rst:1526 +#: library/socket.rst:1555 msgid "" "Return the value of the given socket option (see the Unix man page :manpage:" "`getsockopt(2)`). The needed symbolic constants (:ref:`SO_\\* etc. `_ for more information." msgstr "" -#: library/socket.rst:1564 +#: library/socket.rst:1593 msgid "" "On other platforms, the generic :func:`fcntl.fcntl` and :func:`fcntl.ioctl` " "functions may be used; they accept a socket object as their first argument." msgstr "" -#: library/socket.rst:1567 +#: library/socket.rst:1596 msgid "" "Currently only the following control codes are supported: ``SIO_RCVALL``, " "``SIO_KEEPALIVE_VALS``, and ``SIO_LOOPBACK_FAST_PATH``." msgstr "" -#: library/socket.rst:1575 +#: library/socket.rst:1604 msgid "" "Enable a server to accept connections. If *backlog* is specified, it must " "be at least 0 (if it is lower, it is set to 0); it specifies the number of " @@ -1724,11 +1766,11 @@ msgid "" "connections. If not specified, a default reasonable value is chosen." msgstr "" -#: library/socket.rst:1582 +#: library/socket.rst:1611 msgid "The *backlog* parameter is now optional." msgstr "" -#: library/socket.rst:1591 +#: library/socket.rst:1620 msgid "" "Return a :term:`file object` associated with the socket. The exact returned " "type depends on the arguments given to :meth:`makefile`. These arguments " @@ -1737,28 +1779,28 @@ msgid "" "``'b'``, or a combination of those." msgstr "" -#: library/socket.rst:1597 +#: library/socket.rst:1626 msgid "" "The socket must be in blocking mode; it can have a timeout, but the file " "object's internal buffer may end up in an inconsistent state if a timeout " "occurs." msgstr "" -#: library/socket.rst:1601 +#: library/socket.rst:1630 msgid "" "Closing the file object returned by :meth:`makefile` won't close the " "original socket unless all other file objects have been closed and :meth:" "`socket.close` has been called on the socket object." msgstr "" -#: library/socket.rst:1607 +#: library/socket.rst:1636 msgid "" "On Windows, the file-like object created by :meth:`makefile` cannot be used " "where a file object with a file descriptor is expected, such as the stream " "arguments of :meth:`subprocess.Popen`." msgstr "" -#: library/socket.rst:1614 +#: library/socket.rst:1643 msgid "" "Receive data from the socket. The return value is a bytes object " "representing the data received. The maximum amount of data to be received " @@ -1768,13 +1810,7 @@ msgid "" "zero." msgstr "" -#: library/socket.rst:1622 -msgid "" -"For best match with hardware and network realities, the value of *bufsize* " -"should be a relatively small power of 2, for example, 4096." -msgstr "" - -#: library/socket.rst:1633 +#: library/socket.rst:1657 msgid "" "Receive data from the socket. The return value is a pair ``(bytes, " "address)`` where *bytes* is a bytes object representing the data received " @@ -1784,14 +1820,14 @@ msgid "" "address family --- see above.)" msgstr "" -#: library/socket.rst:1644 +#: library/socket.rst:1668 msgid "" "For multicast IPv6 address, first item of *address* does not contain " "``%scope_id`` part anymore. In order to get full IPv6 address use :func:" "`getnameinfo`." msgstr "" -#: library/socket.rst:1651 +#: library/socket.rst:1675 msgid "" "Receive normal data (up to *bufsize* bytes) and ancillary data from the " "socket. The *ancbufsize* argument sets the size in bytes of the internal " @@ -1802,7 +1838,7 @@ msgid "" "*flags* argument defaults to 0 and has the same meaning as for :meth:`recv`." msgstr "" -#: library/socket.rst:1661 +#: library/socket.rst:1685 msgid "" "The return value is a 4-tuple: ``(data, ancdata, msg_flags, address)``. The " "*data* item is a :class:`bytes` object holding the non-ancillary data " @@ -1817,7 +1853,7 @@ msgid "" "socket, if available; otherwise, its value is unspecified." msgstr "" -#: library/socket.rst:1675 +#: library/socket.rst:1699 msgid "" "On some systems, :meth:`sendmsg` and :meth:`recvmsg` can be used to pass " "file descriptors between processes over an :const:`AF_UNIX` socket. When " @@ -1830,7 +1866,7 @@ msgid "" "descriptors received via this mechanism." msgstr "" -#: library/socket.rst:1686 +#: library/socket.rst:1710 msgid "" "Some systems do not indicate the truncated length of ancillary data items " "which have been only partially received. If an item appears to extend " @@ -1839,7 +1875,7 @@ msgid "" "provided it has not been truncated before the start of its associated data." msgstr "" -#: library/socket.rst:1693 +#: library/socket.rst:1717 msgid "" "On systems which support the :const:`SCM_RIGHTS` mechanism, the following " "function will receive up to *maxfds* file descriptors, returning the message " @@ -1848,7 +1884,7 @@ msgid "" "meth:`sendmsg`. ::" msgstr "" -#: library/socket.rst:1699 +#: library/socket.rst:1723 msgid "" "import socket, array\n" "\n" @@ -1865,7 +1901,7 @@ msgid "" " return msg, list(fds)" msgstr "" -#: library/socket.rst:1724 +#: library/socket.rst:1748 msgid "" "Receive normal data and ancillary data from the socket, behaving as :meth:" "`recvmsg` would, but scatter the non-ancillary data into a series of buffers " @@ -1878,7 +1914,7 @@ msgid "" "arguments have the same meaning as for :meth:`recvmsg`." msgstr "" -#: library/socket.rst:1735 +#: library/socket.rst:1759 msgid "" "The return value is a 4-tuple: ``(nbytes, ancdata, msg_flags, address)``, " "where *nbytes* is the total number of bytes of non-ancillary data written " @@ -1886,11 +1922,11 @@ msgid "" "for :meth:`recvmsg`." msgstr "" -#: library/socket.rst:1740 +#: library/socket.rst:1764 msgid "Example::" msgstr "" -#: library/socket.rst:1742 +#: library/socket.rst:1766 msgid "" ">>> import socket\n" ">>> s1, s2 = socket.socketpair()\n" @@ -1905,7 +1941,7 @@ msgid "" "[bytearray(b'Mary'), bytearray(b'01 had a 9'), bytearray(b'little lamb---')]" msgstr "" -#: library/socket.rst:1763 +#: library/socket.rst:1787 msgid "" "Receive data from the socket, writing it into *buffer* instead of creating a " "new bytestring. The return value is a pair ``(nbytes, address)`` where " @@ -1915,7 +1951,7 @@ msgid "" "format of *address* depends on the address family --- see above.)" msgstr "" -#: library/socket.rst:1773 +#: library/socket.rst:1797 msgid "" "Receive up to *nbytes* bytes from the socket, storing the data into a buffer " "rather than creating a new bytestring. If *nbytes* is not specified (or 0), " @@ -1924,7 +1960,7 @@ msgid "" "of the optional argument *flags*; it defaults to zero." msgstr "" -#: library/socket.rst:1782 +#: library/socket.rst:1806 msgid "" "Send data to the socket. The socket must be connected to a remote socket. " "The optional *flags* argument has the same meaning as for :meth:`recv` " @@ -1934,7 +1970,7 @@ msgid "" "data. For further information on this topic, consult the :ref:`socket-howto`." msgstr "" -#: library/socket.rst:1797 +#: library/socket.rst:1821 msgid "" "Send data to the socket. The socket must be connected to a remote socket. " "The optional *flags* argument has the same meaning as for :meth:`recv` " @@ -1944,13 +1980,13 @@ msgid "" "to determine how much data, if any, was successfully sent." msgstr "" -#: library/socket.rst:1804 +#: library/socket.rst:1828 msgid "" "The socket timeout is no longer reset each time data is sent successfully. " "The socket timeout is now the maximum total duration to send all data." msgstr "" -#: library/socket.rst:1817 +#: library/socket.rst:1841 msgid "" "Send data to the socket. The socket should not be connected to a remote " "socket, since the destination socket is specified by *address*. The " @@ -1959,13 +1995,13 @@ msgid "" "address family --- see above.)" msgstr "" -#: library/socket.rst:1823 +#: library/socket.rst:1847 msgid "" "Raises an :ref:`auditing event ` ``socket.sendto`` with arguments " "``self``, ``address``." msgstr "" -#: library/socket.rst:1833 +#: library/socket.rst:1857 msgid "" "Send normal and ancillary data to the socket, gathering the non-ancillary " "data from a series of buffers and concatenating it into a single message. " @@ -1985,14 +2021,14 @@ msgid "" "bytes of non-ancillary data sent." msgstr "" -#: library/socket.rst:1853 +#: library/socket.rst:1877 msgid "" "The following function sends the list of file descriptors *fds* over an :" "const:`AF_UNIX` socket, on systems which support the :const:`SCM_RIGHTS` " "mechanism. See also :meth:`recvmsg`. ::" msgstr "" -#: library/socket.rst:1857 +#: library/socket.rst:1881 msgid "" "import socket, array\n" "\n" @@ -2001,20 +2037,20 @@ msgid "" "array(\"i\", fds))])" msgstr "" -#: library/socket.rst:1866 +#: library/socket.rst:1890 msgid "" "Raises an :ref:`auditing event ` ``socket.sendmsg`` with arguments " "``self``, ``address``." msgstr "" -#: library/socket.rst:1877 +#: library/socket.rst:1901 msgid "" "Specialized version of :meth:`~socket.sendmsg` for :const:`AF_ALG` socket. " "Set mode, IV, AEAD associated data length and flags for :const:`AF_ALG` " "socket." msgstr "" -#: library/socket.rst:1886 +#: library/socket.rst:1910 msgid "" "Send a file until EOF is reached by using high-performance :mod:`os." "sendfile` and return the total number of bytes which were sent. *file* must " @@ -2028,38 +2064,38 @@ msgid "" "be of :const:`SOCK_STREAM` type. Non-blocking sockets are not supported." msgstr "" -#: library/socket.rst:1902 +#: library/socket.rst:1926 msgid "" "Set the :ref:`inheritable flag ` of the socket's file " "descriptor or socket's handle." msgstr "" -#: library/socket.rst:1910 +#: library/socket.rst:1934 msgid "" "Set blocking or non-blocking mode of the socket: if *flag* is false, the " "socket is set to non-blocking, else to blocking mode." msgstr "" -#: library/socket.rst:1913 +#: library/socket.rst:1937 msgid "" "This method is a shorthand for certain :meth:`~socket.settimeout` calls:" msgstr "" -#: library/socket.rst:1915 +#: library/socket.rst:1939 msgid "``sock.setblocking(True)`` is equivalent to ``sock.settimeout(None)``" msgstr "" -#: library/socket.rst:1917 +#: library/socket.rst:1941 msgid "``sock.setblocking(False)`` is equivalent to ``sock.settimeout(0.0)``" msgstr "" -#: library/socket.rst:1919 +#: library/socket.rst:1943 msgid "" "The method no longer applies :const:`SOCK_NONBLOCK` flag on :attr:`socket." "type`." msgstr "" -#: library/socket.rst:1926 +#: library/socket.rst:1950 msgid "" "Set a timeout on blocking socket operations. The *value* argument can be a " "nonnegative floating-point number expressing seconds, or ``None``. If a non-" @@ -2069,19 +2105,19 @@ msgid "" "blocking mode. If ``None`` is given, the socket is put in blocking mode." msgstr "" -#: library/socket.rst:1933 +#: library/socket.rst:1957 msgid "" "For further information, please consult the :ref:`notes on socket timeouts " "`." msgstr "" -#: library/socket.rst:1935 +#: library/socket.rst:1959 msgid "" "The method no longer toggles :const:`SOCK_NONBLOCK` flag on :attr:`socket." "type`." msgstr "" -#: library/socket.rst:1948 +#: library/socket.rst:1972 msgid "" "Set the value of the given socket option (see the Unix manual page :manpage:" "`setsockopt(2)`). The needed symbolic constants are defined in this module " @@ -2094,11 +2130,11 @@ msgid "" "C function with ``optval=NULL`` and ``optlen=optlen``." msgstr "" -#: library/socket.rst:1961 +#: library/socket.rst:1985 msgid "setsockopt(level, optname, None, optlen: int) form added." msgstr "" -#: library/socket.rst:1969 +#: library/socket.rst:1993 msgid "" "Shut down one or both halves of the connection. If *how* is :const:" "`SHUT_RD`, further receives are disallowed. If *how* is :const:`SHUT_WR`, " @@ -2106,7 +2142,7 @@ msgid "" "and receives are disallowed." msgstr "" -#: library/socket.rst:1979 +#: library/socket.rst:2003 msgid "" "Duplicate a socket and prepare it for sharing with a target process. The " "target process must be provided with *process_id*. The resulting bytes " @@ -2117,48 +2153,48 @@ msgid "" "process." msgstr "" -#: library/socket.rst:1991 +#: library/socket.rst:2015 msgid "" "Note that there are no methods :meth:`read` or :meth:`write`; use :meth:" "`~socket.recv` and :meth:`~socket.send` without *flags* argument instead." msgstr "" -#: library/socket.rst:1994 +#: library/socket.rst:2018 msgid "" "Socket objects also have these (read-only) attributes that correspond to the " "values given to the :class:`~socket.socket` constructor." msgstr "" -#: library/socket.rst:2000 +#: library/socket.rst:2024 msgid "The socket family." msgstr "" -#: library/socket.rst:2005 +#: library/socket.rst:2029 msgid "The socket type." msgstr "" -#: library/socket.rst:2010 +#: library/socket.rst:2034 msgid "The socket protocol." msgstr "" -#: library/socket.rst:2017 +#: library/socket.rst:2041 msgid "Notes on socket timeouts" msgstr "" -#: library/socket.rst:2019 +#: library/socket.rst:2043 msgid "" "A socket object can be in one of three modes: blocking, non-blocking, or " "timeout. Sockets are by default always created in blocking mode, but this " "can be changed by calling :func:`setdefaulttimeout`." msgstr "" -#: library/socket.rst:2023 +#: library/socket.rst:2047 msgid "" "In *blocking mode*, operations block until complete or the system returns an " "error (such as connection timed out)." msgstr "" -#: library/socket.rst:2026 +#: library/socket.rst:2050 msgid "" "In *non-blocking mode*, operations fail (with an error that is unfortunately " "system-dependent) if they cannot be completed immediately: functions from " @@ -2166,14 +2202,14 @@ msgid "" "available for reading or writing." msgstr "" -#: library/socket.rst:2031 +#: library/socket.rst:2055 msgid "" "In *timeout mode*, operations fail if they cannot be completed within the " "timeout specified for the socket (they raise a :exc:`timeout` exception) or " "if the system returns an error." msgstr "" -#: library/socket.rst:2036 +#: library/socket.rst:2060 msgid "" "At the operating system level, sockets in *timeout mode* are internally set " "in non-blocking mode. Also, the blocking and timeout modes are shared " @@ -2182,11 +2218,11 @@ msgid "" "you decide to use the :meth:`~socket.fileno` of a socket." msgstr "" -#: library/socket.rst:2043 +#: library/socket.rst:2067 msgid "Timeouts and the ``connect`` method" msgstr "" -#: library/socket.rst:2045 +#: library/socket.rst:2069 msgid "" "The :meth:`~socket.connect` operation is also subject to the timeout " "setting, and in general it is recommended to call :meth:`~socket.settimeout` " @@ -2196,24 +2232,24 @@ msgid "" "setting." msgstr "" -#: library/socket.rst:2053 +#: library/socket.rst:2077 msgid "Timeouts and the ``accept`` method" msgstr "" -#: library/socket.rst:2055 +#: library/socket.rst:2079 msgid "" "If :func:`getdefaulttimeout` is not :const:`None`, sockets returned by the :" "meth:`~socket.accept` method inherit that timeout. Otherwise, the behaviour " "depends on settings of the listening socket:" msgstr "" -#: library/socket.rst:2059 +#: library/socket.rst:2083 msgid "" "if the listening socket is in *blocking mode* or in *timeout mode*, the " "socket returned by :meth:`~socket.accept` is in *blocking mode*;" msgstr "" -#: library/socket.rst:2062 +#: library/socket.rst:2086 msgid "" "if the listening socket is in *non-blocking mode*, whether the socket " "returned by :meth:`~socket.accept` is in blocking or non-blocking mode is " @@ -2221,11 +2257,11 @@ msgid "" "it is recommended you manually override this setting." msgstr "" -#: library/socket.rst:2071 +#: library/socket.rst:2095 msgid "Example" msgstr "" -#: library/socket.rst:2073 +#: library/socket.rst:2097 msgid "" "Here are four minimal example programs using the TCP/IP protocol: a server " "that echoes all data that it receives back (servicing only one client), and " @@ -2238,11 +2274,11 @@ msgid "" "on the new socket returned by :meth:`~socket.accept`." msgstr "" -#: library/socket.rst:2083 +#: library/socket.rst:2107 msgid "The first two examples support IPv4 only. ::" msgstr "" -#: library/socket.rst:2085 +#: library/socket.rst:2109 msgid "" "# Echo server program\n" "import socket\n" @@ -2261,7 +2297,7 @@ msgid "" " conn.sendall(data)" msgstr "" -#: library/socket.rst:2103 +#: library/socket.rst:2127 msgid "" "# Echo client program\n" "import socket\n" @@ -2275,7 +2311,7 @@ msgid "" "print('Received', repr(data))" msgstr "" -#: library/socket.rst:2114 +#: library/socket.rst:2138 msgid "" "The next two examples are identical to the above two, but support both IPv4 " "and IPv6. The server side will listen to the first address family available " @@ -2285,7 +2321,7 @@ msgid "" "resolution, and sends traffic to the first one connected successfully. ::" msgstr "" -#: library/socket.rst:2121 +#: library/socket.rst:2145 msgid "" "# Echo server program\n" "import socket\n" @@ -2322,7 +2358,7 @@ msgid "" " conn.send(data)" msgstr "" -#: library/socket.rst:2157 +#: library/socket.rst:2181 msgid "" "# Echo client program\n" "import socket\n" @@ -2355,14 +2391,14 @@ msgid "" "print('Received', repr(data))" msgstr "" -#: library/socket.rst:2186 +#: library/socket.rst:2210 msgid "" "The next example shows how to write a very simple network sniffer with raw " "sockets on Windows. The example requires administrator privileges to modify " "the interface::" msgstr "" -#: library/socket.rst:2190 +#: library/socket.rst:2214 msgid "" "import socket\n" "\n" @@ -2386,29 +2422,29 @@ msgid "" "s.ioctl(socket.SIO_RCVALL, socket.RCVALL_OFF)" msgstr "" -#: library/socket.rst:2211 +#: library/socket.rst:2235 msgid "" "The next example shows how to use the socket interface to communicate to a " "CAN network using the raw socket protocol. To use CAN with the broadcast " "manager protocol instead, open a socket with::" msgstr "" -#: library/socket.rst:2215 +#: library/socket.rst:2239 msgid "socket.socket(socket.AF_CAN, socket.SOCK_DGRAM, socket.CAN_BCM)" msgstr "" -#: library/socket.rst:2217 +#: library/socket.rst:2241 msgid "" "After binding (:const:`CAN_RAW`) or connecting (:const:`CAN_BCM`) the " "socket, you can use the :meth:`socket.send` and :meth:`socket.recv` " "operations (and their counterparts) on the socket object as usual." msgstr "" -#: library/socket.rst:2221 +#: library/socket.rst:2245 msgid "This last example might require special privileges::" msgstr "" -#: library/socket.rst:2223 +#: library/socket.rst:2247 msgid "" "import socket\n" "import struct\n" @@ -2450,59 +2486,59 @@ msgid "" " print('Error sending CAN frame')" msgstr "" -#: library/socket.rst:2261 +#: library/socket.rst:2285 msgid "" "Running an example several times with too small delay between executions, " "could lead to this error::" msgstr "" -#: library/socket.rst:2264 +#: library/socket.rst:2288 msgid "OSError: [Errno 98] Address already in use" msgstr "" -#: library/socket.rst:2266 +#: library/socket.rst:2290 msgid "" "This is because the previous execution has left the socket in a " "``TIME_WAIT`` state, and can't be immediately reused." msgstr "" -#: library/socket.rst:2269 +#: library/socket.rst:2293 msgid "" "There is a :mod:`socket` flag to set, in order to prevent this, :const:" "`socket.SO_REUSEADDR`::" msgstr "" -#: library/socket.rst:2272 +#: library/socket.rst:2296 msgid "" "s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)\n" "s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)\n" "s.bind((HOST, PORT))" msgstr "" -#: library/socket.rst:2276 +#: library/socket.rst:2300 msgid "" "the :data:`SO_REUSEADDR` flag tells the kernel to reuse a local socket in " "``TIME_WAIT`` state, without waiting for its natural timeout to expire." msgstr "" -#: library/socket.rst:2282 +#: library/socket.rst:2306 msgid "" "For an introduction to socket programming (in C), see the following papers:" msgstr "" -#: library/socket.rst:2284 +#: library/socket.rst:2308 msgid "" "*An Introductory 4.3BSD Interprocess Communication Tutorial*, by Stuart " "Sechrest" msgstr "" -#: library/socket.rst:2286 +#: library/socket.rst:2310 msgid "" "*An Advanced 4.3BSD Interprocess Communication Tutorial*, by Samuel J. " "Leffler et al," msgstr "" -#: library/socket.rst:2289 +#: library/socket.rst:2313 msgid "" "both in the UNIX Programmer's Manual, Supplementary Documents 1 (sections " "PS1:7 and PS1:8). The platform-specific reference material for the various " @@ -2521,18 +2557,18 @@ msgstr "" msgid "socket" msgstr "" -#: library/socket.rst:1589 +#: library/socket.rst:1618 msgid "I/O control" msgstr "" -#: library/socket.rst:1589 +#: library/socket.rst:1618 msgid "buffering" msgstr "" -#: library/socket.rst:1946 +#: library/socket.rst:1970 msgid "module" msgstr "" -#: library/socket.rst:1946 +#: library/socket.rst:1970 msgid "struct" msgstr "" diff --git a/library/socketserver.po b/library/socketserver.po index 3e43e15d3..a7d2a6566 100644 --- a/library/socketserver.po +++ b/library/socketserver.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -327,17 +327,20 @@ msgstr "" #: library/socketserver.rst:263 msgid "" -"The family of protocols to which the server's socket belongs. Common " -"examples are :const:`socket.AF_INET` and :const:`socket.AF_UNIX`." +"The family of protocols to which the server's socket belongs. Common " +"examples are :const:`socket.AF_INET`, :const:`socket.AF_INET6`, and :const:" +"`socket.AF_UNIX`. Subclass the TCP or UDP server classes in this module " +"with class attribute ``address_family = AF_INET6`` set if you want IPv6 " +"server classes." msgstr "" -#: library/socketserver.rst:269 +#: library/socketserver.rst:272 msgid "" "The user-provided request handler class; an instance of this class is " "created for each request." msgstr "" -#: library/socketserver.rst:275 +#: library/socketserver.rst:278 msgid "" "The address on which the server is listening. The format of addresses " "varies depending on the protocol family; see the documentation for the :mod:" @@ -346,22 +349,22 @@ msgid "" "``('127.0.0.1', 80)``, for example." msgstr "" -#: library/socketserver.rst:284 +#: library/socketserver.rst:287 msgid "" "The socket object on which the server will listen for incoming requests." msgstr "" -#: library/socketserver.rst:287 +#: library/socketserver.rst:290 msgid "The server classes support the following class variables:" msgstr "" -#: library/socketserver.rst:293 +#: library/socketserver.rst:296 msgid "" "Whether the server will allow the reuse of an address. This defaults to :" "const:`False`, and can be set in subclasses to change the policy." msgstr "" -#: library/socketserver.rst:299 +#: library/socketserver.rst:302 msgid "" "The size of the request queue. If it takes a long time to process a single " "request, any requests that arrive while the server is busy are placed into a " @@ -370,40 +373,40 @@ msgid "" "default value is usually 5, but this can be overridden by subclasses." msgstr "" -#: library/socketserver.rst:308 +#: library/socketserver.rst:311 msgid "" "The type of socket used by the server; :const:`socket.SOCK_STREAM` and :" "const:`socket.SOCK_DGRAM` are two common values." msgstr "" -#: library/socketserver.rst:314 +#: library/socketserver.rst:317 msgid "" "Timeout duration, measured in seconds, or :const:`None` if no timeout is " "desired. If :meth:`handle_request` receives no incoming requests within the " "timeout period, the :meth:`handle_timeout` method is called." msgstr "" -#: library/socketserver.rst:319 +#: library/socketserver.rst:322 msgid "" "There are various server methods that can be overridden by subclasses of " "base server classes like :class:`TCPServer`; these methods aren't useful to " "external users of the server object." msgstr "" -#: library/socketserver.rst:328 +#: library/socketserver.rst:331 msgid "" "Actually processes the request by instantiating :attr:`RequestHandlerClass` " "and calling its :meth:`~BaseRequestHandler.handle` method." msgstr "" -#: library/socketserver.rst:334 +#: library/socketserver.rst:337 msgid "" "Must accept a request from the socket, and return a 2-tuple containing the " "*new* socket object to be used to communicate with the client, and the " "client's address." msgstr "" -#: library/socketserver.rst:341 +#: library/socketserver.rst:344 msgid "" "This function is called if the :meth:`~BaseRequestHandler.handle` method of " "a :attr:`RequestHandlerClass` instance raises an exception. The default " @@ -411,11 +414,11 @@ msgid "" "further requests." msgstr "" -#: library/socketserver.rst:346 +#: library/socketserver.rst:349 msgid "Now only called for exceptions derived from the :exc:`Exception` class." msgstr "" -#: library/socketserver.rst:353 +#: library/socketserver.rst:356 msgid "" "This function is called when the :attr:`timeout` attribute has been set to a " "value other than :const:`None` and the timeout period has passed with no " @@ -424,7 +427,7 @@ msgid "" "threading servers this method does nothing." msgstr "" -#: library/socketserver.rst:362 +#: library/socketserver.rst:365 msgid "" "Calls :meth:`finish_request` to create an instance of the :attr:" "`RequestHandlerClass`. If desired, this function can create a new process " @@ -432,20 +435,20 @@ msgid "" "`ThreadingMixIn` classes do this." msgstr "" -#: library/socketserver.rst:374 +#: library/socketserver.rst:377 msgid "" "Called by the server's constructor to activate the server. The default " "behavior for a TCP server just invokes :meth:`~socket.socket.listen` on the " "server's socket. May be overridden." msgstr "" -#: library/socketserver.rst:381 +#: library/socketserver.rst:384 msgid "" "Called by the server's constructor to bind the socket to the desired " "address. May be overridden." msgstr "" -#: library/socketserver.rst:387 +#: library/socketserver.rst:390 msgid "" "Must return a Boolean value; if the value is :const:`True`, the request will " "be processed, and if it's :const:`False`, the request will be denied. This " @@ -453,17 +456,17 @@ msgid "" "default implementation always returns :const:`True`." msgstr "" -#: library/socketserver.rst:393 +#: library/socketserver.rst:396 msgid "" "Support for the :term:`context manager` protocol was added. Exiting the " "context manager is equivalent to calling :meth:`server_close`." msgstr "" -#: library/socketserver.rst:399 +#: library/socketserver.rst:402 msgid "Request Handler Objects" msgstr "" -#: library/socketserver.rst:403 +#: library/socketserver.rst:406 msgid "" "This is the superclass of all request handler objects. It defines the " "interface, given below. A concrete request handler subclass must define a " @@ -471,13 +474,13 @@ msgid "" "instance of the subclass is created for each request." msgstr "" -#: library/socketserver.rst:412 +#: library/socketserver.rst:415 msgid "" "Called before the :meth:`handle` method to perform any initialization " "actions required. The default implementation does nothing." msgstr "" -#: library/socketserver.rst:418 +#: library/socketserver.rst:421 msgid "" "This function must do all the work required to service a request. The " "default implementation does nothing. Several instance attributes are " @@ -486,72 +489,72 @@ msgid "" "`server`, in case it needs access to per-server information." msgstr "" -#: library/socketserver.rst:424 +#: library/socketserver.rst:427 msgid "" "The type of :attr:`request` is different for datagram or stream services. " "For stream services, :attr:`request` is a socket object; for datagram " "services, :attr:`request` is a pair of string and socket." msgstr "" -#: library/socketserver.rst:431 +#: library/socketserver.rst:434 msgid "" "Called after the :meth:`handle` method to perform any clean-up actions " "required. The default implementation does nothing. If :meth:`setup` raises " "an exception, this function will not be called." msgstr "" -#: library/socketserver.rst:438 +#: library/socketserver.rst:441 msgid "" "The *new* :class:`socket.socket` object to be used to communicate with the " "client." msgstr "" -#: library/socketserver.rst:444 +#: library/socketserver.rst:447 msgid "Client address returned by :meth:`BaseServer.get_request`." msgstr "" -#: library/socketserver.rst:449 +#: library/socketserver.rst:452 msgid ":class:`BaseServer` object used for handling the request." msgstr "" -#: library/socketserver.rst:455 +#: library/socketserver.rst:458 msgid "" "These :class:`BaseRequestHandler` subclasses override the :meth:" "`~BaseRequestHandler.setup` and :meth:`~BaseRequestHandler.finish` methods, " "and provide :attr:`rfile` and :attr:`wfile` attributes." msgstr "" -#: library/socketserver.rst:461 +#: library/socketserver.rst:464 msgid "" "A file object from which receives the request is read. Support the :class:" "`io.BufferedIOBase` readable interface." msgstr "" -#: library/socketserver.rst:466 +#: library/socketserver.rst:469 msgid "" "A file object to which the reply is written. Support the :class:`io." "BufferedIOBase` writable interface" msgstr "" -#: library/socketserver.rst:470 +#: library/socketserver.rst:473 msgid "" ":attr:`wfile` also supports the :class:`io.BufferedIOBase` writable " "interface." msgstr "" -#: library/socketserver.rst:476 +#: library/socketserver.rst:479 msgid "Examples" msgstr "" -#: library/socketserver.rst:479 +#: library/socketserver.rst:482 msgid ":class:`socketserver.TCPServer` Example" msgstr "" -#: library/socketserver.rst:581 +#: library/socketserver.rst:595 msgid "This is the server side::" msgstr "" -#: library/socketserver.rst:483 +#: library/socketserver.rst:486 msgid "" "import socketserver\n" "\n" @@ -566,11 +569,17 @@ msgid "" "\n" " def handle(self):\n" " # self.request is the TCP socket connected to the client\n" -" self.data = self.request.recv(1024).strip()\n" -" print(\"Received from {}:\".format(self.client_address[0]))\n" -" print(self.data)\n" +" pieces = [b'']\n" +" total = 0\n" +" while b'\\n' not in pieces[-1] and total < 10_000:\n" +" pieces.append(self.request.recv(2000))\n" +" total += len(pieces[-1])\n" +" self.data = b''.join(pieces)\n" +" print(f\"Received from {self.client_address[0]}:\")\n" +" print(self.data.decode(\"utf-8\"))\n" " # just send back the same data, but upper-cased\n" " self.request.sendall(self.data.upper())\n" +" # after we return, the socket will be closed.\n" "\n" "if __name__ == \"__main__\":\n" " HOST, PORT = \"localhost\", 9999\n" @@ -582,42 +591,46 @@ msgid "" " server.serve_forever()" msgstr "" -#: library/socketserver.rst:511 +#: library/socketserver.rst:520 msgid "" "An alternative request handler class that makes use of streams (file-like " "objects that simplify communication by providing the standard file " "interface)::" msgstr "" -#: library/socketserver.rst:514 +#: library/socketserver.rst:523 msgid "" "class MyTCPHandler(socketserver.StreamRequestHandler):\n" "\n" " def handle(self):\n" -" # self.rfile is a file-like object created by the handler;\n" -" # we can now use e.g. readline() instead of raw recv() calls\n" -" self.data = self.rfile.readline().strip()\n" -" print(\"{} wrote:\".format(self.client_address[0]))\n" -" print(self.data)\n" +" # self.rfile is a file-like object created by the handler.\n" +" # We can now use e.g. readline() instead of raw recv() calls.\n" +" # We limit ourselves to 10000 bytes to avoid abuse by the sender.\n" +" self.data = self.rfile.readline(10000).rstrip()\n" +" print(f\"{self.client_address[0]} wrote:\")\n" +" print(self.data.decode(\"utf-8\"))\n" " # Likewise, self.wfile is a file-like object used to write back\n" " # to the client\n" " self.wfile.write(self.data.upper())" msgstr "" -#: library/socketserver.rst:526 +#: library/socketserver.rst:536 msgid "" "The difference is that the ``readline()`` call in the second handler will " "call ``recv()`` multiple times until it encounters a newline character, " -"while the single ``recv()`` call in the first handler will just return what " -"has been received so far from the client's ``sendall()`` call (typically all " -"of it, but this is not guaranteed by the TCP protocol)." +"while the the first handler had to use a ``recv()`` loop to accumulate data " +"until a newline itself. If it had just used a single ``recv()`` without the " +"loop it would just have returned what has been received so far from the " +"client. TCP is stream based: data arrives in the order it was sent, but " +"there no correlation between client ``send()`` or ``sendall()`` calls and " +"the number of ``recv()`` calls on the server required to receive it." msgstr "" -#: library/socketserver.rst:605 +#: library/socketserver.rst:619 msgid "This is the client side::" msgstr "" -#: library/socketserver.rst:535 +#: library/socketserver.rst:548 msgid "" "import socket\n" "import sys\n" @@ -629,24 +642,25 @@ msgid "" "with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock:\n" " # Connect to server and send data\n" " sock.connect((HOST, PORT))\n" -" sock.sendall(bytes(data + \"\\n\", \"utf-8\"))\n" +" sock.sendall(bytes(data, \"utf-8\"))\n" +" sock.sendall(b\"\\n\")\n" "\n" " # Receive data from the server and shut down\n" " received = str(sock.recv(1024), \"utf-8\")\n" "\n" -"print(\"Sent: {}\".format(data))\n" -"print(\"Received: {}\".format(received))" +"print(\"Sent: \", data)\n" +"print(\"Received:\", received)" msgstr "" -#: library/socketserver.rst:680 +#: library/socketserver.rst:694 msgid "The output of the example should look something like this:" msgstr "" -#: library/socketserver.rst:556 +#: library/socketserver.rst:570 msgid "Server:" msgstr "" -#: library/socketserver.rst:558 +#: library/socketserver.rst:572 msgid "" "$ python TCPServer.py\n" "127.0.0.1 wrote:\n" @@ -655,11 +669,11 @@ msgid "" "b'python is nice'" msgstr "" -#: library/socketserver.rst:566 +#: library/socketserver.rst:580 msgid "Client:" msgstr "" -#: library/socketserver.rst:568 +#: library/socketserver.rst:582 msgid "" "$ python TCPClient.py hello world with TCP\n" "Sent: hello world with TCP\n" @@ -669,11 +683,11 @@ msgid "" "Received: PYTHON IS NICE" msgstr "" -#: library/socketserver.rst:579 +#: library/socketserver.rst:593 msgid ":class:`socketserver.UDPServer` Example" msgstr "" -#: library/socketserver.rst:583 +#: library/socketserver.rst:597 msgid "" "import socketserver\n" "\n" @@ -688,7 +702,7 @@ msgid "" " def handle(self):\n" " data = self.request[0].strip()\n" " socket = self.request[1]\n" -" print(\"{} wrote:\".format(self.client_address[0]))\n" +" print(f\"{self.client_address[0]} wrote:\")\n" " print(data)\n" " socket.sendto(data.upper(), self.client_address)\n" "\n" @@ -698,7 +712,7 @@ msgid "" " server.serve_forever()" msgstr "" -#: library/socketserver.rst:607 +#: library/socketserver.rst:621 msgid "" "import socket\n" "import sys\n" @@ -714,31 +728,31 @@ msgid "" "sock.sendto(bytes(data + \"\\n\", \"utf-8\"), (HOST, PORT))\n" "received = str(sock.recv(1024), \"utf-8\")\n" "\n" -"print(\"Sent: {}\".format(data))\n" -"print(\"Received: {}\".format(received))" +"print(\"Sent: \", data)\n" +"print(\"Received:\", received)" msgstr "" -#: library/socketserver.rst:624 +#: library/socketserver.rst:638 msgid "" "The output of the example should look exactly like for the TCP server " "example." msgstr "" -#: library/socketserver.rst:628 +#: library/socketserver.rst:642 msgid "Asynchronous Mixins" msgstr "" -#: library/socketserver.rst:630 +#: library/socketserver.rst:644 msgid "" "To build asynchronous handlers, use the :class:`ThreadingMixIn` and :class:" "`ForkingMixIn` classes." msgstr "" -#: library/socketserver.rst:633 +#: library/socketserver.rst:647 msgid "An example for the :class:`ThreadingMixIn` class::" msgstr "" -#: library/socketserver.rst:635 +#: library/socketserver.rst:649 msgid "" "import socket\n" "import threading\n" @@ -786,7 +800,7 @@ msgid "" " server.shutdown()" msgstr "" -#: library/socketserver.rst:682 +#: library/socketserver.rst:696 msgid "" "$ python ThreadedTCPServer.py\n" "Server loop running in thread: Thread-1\n" @@ -795,7 +809,7 @@ msgid "" "Received: Thread-4: Hello World 3" msgstr "" -#: library/socketserver.rst:691 +#: library/socketserver.rst:705 msgid "" "The :class:`ForkingMixIn` class is used in the same way, except that the " "server will spawn a new process for each request. Available only on POSIX " diff --git a/library/sqlite3.po b/library/sqlite3.po index 855bd328d..de02bab4c 100644 --- a/library/sqlite3.po +++ b/library/sqlite3.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -320,7 +320,7 @@ msgstr "" msgid ":ref:`sqlite3-converters`" msgstr "" -#: library/sqlite3.rst:609 +#: library/sqlite3.rst:612 msgid ":ref:`sqlite3-connection-context-manager`" msgstr "" @@ -371,13 +371,10 @@ msgid "" "converters registered with :func:`register_converter`. Set it to any " "combination (using ``|``, bitwise or) of :const:`PARSE_DECLTYPES` and :const:" "`PARSE_COLNAMES` to enable this. Column names takes precedence over declared " -"types if both flags are set. Types cannot be detected for generated fields " -"(for example ``max(data)``), even when the *detect_types* parameter is set; :" -"class:`str` will be returned instead. By default (``0``), type detection is " -"disabled." +"types if both flags are set. By default (``0``), type detection is disabled." msgstr "" -#: library/sqlite3.rst:298 +#: library/sqlite3.rst:295 msgid "" "Control legacy transaction handling behaviour. See :attr:`Connection." "isolation_level` and :ref:`sqlite3-transaction-control-isolation-level` for " @@ -387,7 +384,7 @@ msgid "" "`~sqlite3.LEGACY_TRANSACTION_CONTROL` (the default)." msgstr "" -#: library/sqlite3.rst:308 +#: library/sqlite3.rst:305 msgid "" "If ``True`` (default), :exc:`ProgrammingError` will be raised if the " "database connection is used by a thread other than the one that created it. " @@ -396,19 +393,19 @@ msgid "" "See :attr:`threadsafety` for more information." msgstr "" -#: library/sqlite3.rst:317 +#: library/sqlite3.rst:314 msgid "" "A custom subclass of :class:`Connection` to create the connection with, if " "not the default :class:`Connection` class." msgstr "" -#: library/sqlite3.rst:321 +#: library/sqlite3.rst:318 msgid "" "The number of statements that :mod:`!sqlite3` should internally cache for " "this connection, to avoid parsing overhead. By default, 128 statements." msgstr "" -#: library/sqlite3.rst:326 +#: library/sqlite3.rst:323 msgid "" "If set to ``True``, *database* is interpreted as a :abbr:`URI (Uniform " "Resource Identifier)` with a file path and an optional query string. The " @@ -417,7 +414,7 @@ msgid "" "various :ref:`sqlite3-uri-tricks`." msgstr "" -#: library/sqlite3.rst:335 +#: library/sqlite3.rst:332 msgid "" "Control :pep:`249` transaction handling behaviour. See :attr:`Connection." "autocommit` and :ref:`sqlite3-transaction-control-autocommit` for more " @@ -430,36 +427,36 @@ msgstr "" msgid "Return type" msgstr "" -#: library/sqlite3.rst:346 +#: library/sqlite3.rst:343 msgid "" "Raises an :ref:`auditing event ` ``sqlite3.connect`` with argument " "``database``." msgstr "" -#: library/sqlite3.rst:347 +#: library/sqlite3.rst:344 msgid "" "Raises an :ref:`auditing event ` ``sqlite3.connect/handle`` with " "argument ``connection_handle``." msgstr "" -#: library/sqlite3.rst:349 +#: library/sqlite3.rst:346 msgid "Added the *uri* parameter." msgstr "" -#: library/sqlite3.rst:352 +#: library/sqlite3.rst:349 msgid "" "*database* can now also be a :term:`path-like object`, not only a string." msgstr "" -#: library/sqlite3.rst:355 +#: library/sqlite3.rst:352 msgid "Added the ``sqlite3.connect/handle`` auditing event." msgstr "" -#: library/sqlite3.rst:358 +#: library/sqlite3.rst:355 msgid "Added the *autocommit* parameter." msgstr "" -#: library/sqlite3.rst:363 +#: library/sqlite3.rst:360 msgid "" "Return ``True`` if the string *statement* appears to contain one or more " "complete SQL statements. No syntactic verification or parsing of any kind is " @@ -467,11 +464,11 @@ msgid "" "and the statement is terminated by a semicolon." msgstr "" -#: library/sqlite3.rst:369 +#: library/sqlite3.rst:366 msgid "For example:" msgstr "" -#: library/sqlite3.rst:371 +#: library/sqlite3.rst:368 msgid "" ">>> sqlite3.complete_statement(\"SELECT foo FROM bar;\")\n" "True\n" @@ -479,20 +476,20 @@ msgid "" "False" msgstr "" -#: library/sqlite3.rst:378 +#: library/sqlite3.rst:375 msgid "" "This function may be useful during command-line input to determine if the " "entered text seems to form a complete SQL statement, or if additional input " "is needed before calling :meth:`~Cursor.execute`." msgstr "" -#: library/sqlite3.rst:382 +#: library/sqlite3.rst:379 msgid "" "See :func:`!runsource` in :source:`Lib/sqlite3/__main__.py` for real-world " "use." msgstr "" -#: library/sqlite3.rst:387 +#: library/sqlite3.rst:384 msgid "" "Enable or disable callback tracebacks. By default you will not get any " "tracebacks in user-defined functions, aggregates, converters, authorizer " @@ -501,14 +498,14 @@ msgid "" "on :data:`sys.stderr`. Use ``False`` to disable the feature again." msgstr "" -#: library/sqlite3.rst:396 +#: library/sqlite3.rst:393 msgid "" "Errors in user-defined function callbacks are logged as unraisable " "exceptions. Use an :func:`unraisable hook handler ` for " "introspection of the failed callback." msgstr "" -#: library/sqlite3.rst:402 +#: library/sqlite3.rst:399 msgid "" "Register an *adapter* :term:`callable` to adapt the Python type *type* into " "an SQLite type. The adapter is called with a Python object of type *type* as " @@ -516,7 +513,7 @@ msgid "" "natively understands `." msgstr "" -#: library/sqlite3.rst:410 +#: library/sqlite3.rst:407 msgid "" "Register the *converter* :term:`callable` to convert SQLite objects of type " "*typename* into a Python object of a specific type. The converter is invoked " @@ -526,115 +523,122 @@ msgid "" "type detection works." msgstr "" -#: library/sqlite3.rst:418 +#: library/sqlite3.rst:415 msgid "" "Note: *typename* and the name of the type in your query are matched case-" "insensitively." msgstr "" -#: library/sqlite3.rst:425 +#: library/sqlite3.rst:422 msgid "Module constants" msgstr "" -#: library/sqlite3.rst:429 +#: library/sqlite3.rst:426 msgid "" "Set :attr:`~Connection.autocommit` to this constant to select old style (pre-" "Python 3.12) transaction control behaviour. See :ref:`sqlite3-transaction-" "control-isolation-level` for more information." msgstr "" -#: library/sqlite3.rst:435 +#: library/sqlite3.rst:432 msgid "" "Pass this flag value to the *detect_types* parameter of :func:`connect` to " -"look up a converter function by using the type name, parsed from the query " -"column name, as the converter dictionary key. The type name must be wrapped " -"in square brackets (``[]``)." +"look up a converter function using the declared types for each column. The " +"types are declared when the database table is created. :mod:`!sqlite3` will " +"look up a converter function using the first word of the declared type as " +"the converter dictionary key. For example:" msgstr "" -#: library/sqlite3.rst:441 +#: library/sqlite3.rst:440 msgid "" -"SELECT p as \"p [point]\" FROM test; ! will look up converter \"point\"" +"CREATE TABLE test(\n" +" i integer primary key, ! will look up a converter named \"integer\"\n" +" p point, ! will look up a converter named \"point\"\n" +" n number(10) ! will look up a converter named \"number\"\n" +" )" msgstr "" -#: library/sqlite3.rst:445 +#: library/sqlite3.rst:448 msgid "" -"This flag may be combined with :const:`PARSE_DECLTYPES` using the ``|`` " +"This flag may be combined with :const:`PARSE_COLNAMES` using the ``|`` " "(bitwise or) operator." msgstr "" -#: library/sqlite3.rst:450 +#: library/sqlite3.rst:453 msgid "" -"Pass this flag value to the *detect_types* parameter of :func:`connect` to " -"look up a converter function using the declared types for each column. The " -"types are declared when the database table is created. :mod:`!sqlite3` will " -"look up a converter function using the first word of the declared type as " -"the converter dictionary key. For example:" +"Generated fields (for example ``MAX(p)``) are returned as :class:`str`. Use :" +"const:`!PARSE_COLNAMES` to enforce types for such queries." msgstr "" #: library/sqlite3.rst:458 msgid "" -"CREATE TABLE test(\n" -" i integer primary key, ! will look up a converter named \"integer\"\n" -" p point, ! will look up a converter named \"point\"\n" -" n number(10) ! will look up a converter named \"number\"\n" -" )" +"Pass this flag value to the *detect_types* parameter of :func:`connect` to " +"look up a converter function by using the type name, parsed from the query " +"column name, as the converter dictionary key. The query column name must be " +"wrapped in double quotes (``\"``) and the type name must be wrapped in " +"square brackets (``[]``)." msgstr "" -#: library/sqlite3.rst:466 +#: library/sqlite3.rst:465 msgid "" -"This flag may be combined with :const:`PARSE_COLNAMES` using the ``|`` " +"SELECT MAX(p) as \"p [point]\" FROM test; ! will look up converter \"point\"" +msgstr "" + +#: library/sqlite3.rst:469 +msgid "" +"This flag may be combined with :const:`PARSE_DECLTYPES` using the ``|`` " "(bitwise or) operator." msgstr "" -#: library/sqlite3.rst:473 +#: library/sqlite3.rst:476 msgid "" "Flags that should be returned by the *authorizer_callback* :term:`callable` " "passed to :meth:`Connection.set_authorizer`, to indicate whether:" msgstr "" -#: library/sqlite3.rst:476 +#: library/sqlite3.rst:479 msgid "Access is allowed (:const:`!SQLITE_OK`)," msgstr "" -#: library/sqlite3.rst:477 +#: library/sqlite3.rst:480 msgid "" "The SQL statement should be aborted with an error (:const:`!SQLITE_DENY`)" msgstr "" -#: library/sqlite3.rst:478 +#: library/sqlite3.rst:481 msgid "" "The column should be treated as a ``NULL`` value (:const:`!SQLITE_IGNORE`)" msgstr "" -#: library/sqlite3.rst:482 +#: library/sqlite3.rst:485 msgid "" "String constant stating the supported DB-API level. Required by the DB-API. " "Hard-coded to ``\"2.0\"``." msgstr "" -#: library/sqlite3.rst:487 +#: library/sqlite3.rst:490 msgid "" "String constant stating the type of parameter marker formatting expected by " "the :mod:`!sqlite3` module. Required by the DB-API. Hard-coded to " "``\"qmark\"``." msgstr "" -#: library/sqlite3.rst:493 +#: library/sqlite3.rst:496 msgid "The ``named`` DB-API parameter style is also supported." msgstr "" -#: library/sqlite3.rst:497 +#: library/sqlite3.rst:500 msgid "" "Version number of the runtime SQLite library as a :class:`string `." msgstr "" -#: library/sqlite3.rst:501 +#: library/sqlite3.rst:504 msgid "" "Version number of the runtime SQLite library as a :class:`tuple` of :class:" "`integers `." msgstr "" -#: library/sqlite3.rst:506 +#: library/sqlite3.rst:509 msgid "" "Integer constant required by the DB-API 2.0, stating the level of thread " "safety the :mod:`!sqlite3` module supports. This attribute is set based on " @@ -642,181 +646,181 @@ msgid "" "underlying SQLite library is compiled with. The SQLite threading modes are:" msgstr "" -#: library/sqlite3.rst:511 +#: library/sqlite3.rst:514 msgid "" "**Single-thread**: In this mode, all mutexes are disabled and SQLite is " "unsafe to use in more than a single thread at once." msgstr "" -#: library/sqlite3.rst:513 +#: library/sqlite3.rst:516 msgid "" "**Multi-thread**: In this mode, SQLite can be safely used by multiple " "threads provided that no single database connection is used simultaneously " "in two or more threads." msgstr "" -#: library/sqlite3.rst:516 +#: library/sqlite3.rst:519 msgid "" "**Serialized**: In serialized mode, SQLite can be safely used by multiple " "threads with no restriction." msgstr "" -#: library/sqlite3.rst:519 +#: library/sqlite3.rst:522 msgid "" "The mappings from SQLite threading modes to DB-API 2.0 threadsafety levels " "are as follows:" msgstr "" -#: library/sqlite3.rst:523 +#: library/sqlite3.rst:526 msgid "SQLite threading mode" msgstr "" -#: library/sqlite3.rst:523 +#: library/sqlite3.rst:526 msgid ":pep:`threadsafety <0249#threadsafety>`" msgstr "" -#: library/sqlite3.rst:523 +#: library/sqlite3.rst:526 msgid "`SQLITE_THREADSAFE`_" msgstr "" -#: library/sqlite3.rst:523 +#: library/sqlite3.rst:526 msgid "DB-API 2.0 meaning" msgstr "" -#: library/sqlite3.rst:526 +#: library/sqlite3.rst:529 msgid "single-thread" msgstr "" -#: library/sqlite3.rst:526 +#: library/sqlite3.rst:529 msgid "0" msgstr "" -#: library/sqlite3.rst:526 +#: library/sqlite3.rst:529 msgid "Threads may not share the module" msgstr "" -#: library/sqlite3.rst:529 +#: library/sqlite3.rst:532 msgid "multi-thread" msgstr "" -#: library/sqlite3.rst:532 +#: library/sqlite3.rst:535 msgid "1" msgstr "" -#: library/sqlite3.rst:529 +#: library/sqlite3.rst:532 msgid "2" msgstr "" -#: library/sqlite3.rst:529 +#: library/sqlite3.rst:532 msgid "Threads may share the module, but not connections" msgstr "" -#: library/sqlite3.rst:532 +#: library/sqlite3.rst:535 msgid "serialized" msgstr "" -#: library/sqlite3.rst:532 +#: library/sqlite3.rst:535 msgid "3" msgstr "" -#: library/sqlite3.rst:532 +#: library/sqlite3.rst:535 msgid "Threads may share the module, connections and cursors" msgstr "" -#: library/sqlite3.rst:538 +#: library/sqlite3.rst:541 msgid "Set *threadsafety* dynamically instead of hard-coding it to ``1``." msgstr "" -#: library/sqlite3.rst:543 +#: library/sqlite3.rst:546 msgid "" "Version number of this module as a :class:`string `. This is not the " "version of the SQLite library." msgstr "" -#: library/sqlite3.rst:556 +#: library/sqlite3.rst:559 msgid "" "This constant used to reflect the version number of the ``pysqlite`` " "package, a third-party library which used to upstream changes to :mod:`!" "sqlite3`. Today, it carries no meaning or practical value." msgstr "" -#: library/sqlite3.rst:553 +#: library/sqlite3.rst:556 msgid "" "Version number of this module as a :class:`tuple` of :class:`integers " "`. This is not the version of the SQLite library." msgstr "" -#: library/sqlite3.rst:580 +#: library/sqlite3.rst:583 msgid "" "These constants are used for the :meth:`Connection.setconfig` and :meth:" "`~Connection.getconfig` methods." msgstr "" -#: library/sqlite3.rst:583 +#: library/sqlite3.rst:586 msgid "" "The availability of these constants varies depending on the version of " "SQLite Python was compiled with." msgstr "" -#: library/sqlite3.rst:590 +#: library/sqlite3.rst:593 msgid "https://www.sqlite.org/c3ref/c_dbconfig_defensive.html" msgstr "" -#: library/sqlite3.rst:591 +#: library/sqlite3.rst:594 msgid "SQLite docs: Database Connection Configuration Options" msgstr "" -#: library/sqlite3.rst:597 +#: library/sqlite3.rst:600 msgid "Connection objects" msgstr "" -#: library/sqlite3.rst:601 +#: library/sqlite3.rst:604 msgid "" "Each open SQLite database is represented by a ``Connection`` object, which " "is created using :func:`sqlite3.connect`. Their main purpose is creating :" "class:`Cursor` objects, and :ref:`sqlite3-controlling-transactions`." msgstr "" -#: library/sqlite3.rst:608 +#: library/sqlite3.rst:611 msgid ":ref:`sqlite3-connection-shortcuts`" msgstr "" -#: library/sqlite3.rst:611 +#: library/sqlite3.rst:614 msgid "An SQLite database connection has the following attributes and methods:" msgstr "" -#: library/sqlite3.rst:615 +#: library/sqlite3.rst:618 msgid "" "Create and return a :class:`Cursor` object. The cursor method accepts a " "single optional parameter *factory*. If supplied, this must be a :term:" "`callable` returning an instance of :class:`Cursor` or its subclasses." msgstr "" -#: library/sqlite3.rst:622 +#: library/sqlite3.rst:625 msgid "" "Open a :class:`Blob` handle to an existing :abbr:`BLOB (Binary Large " "OBject)`." msgstr "" -#: library/sqlite3.rst:625 +#: library/sqlite3.rst:628 msgid "The name of the table where the blob is located." msgstr "" -#: library/sqlite3.rst:628 +#: library/sqlite3.rst:631 msgid "The name of the column where the blob is located." msgstr "" -#: library/sqlite3.rst:631 +#: library/sqlite3.rst:634 msgid "The name of the row where the blob is located." msgstr "" -#: library/sqlite3.rst:634 +#: library/sqlite3.rst:637 msgid "" "Set to ``True`` if the blob should be opened without write permissions. " "Defaults to ``False``." msgstr "" -#: library/sqlite3.rst:639 +#: library/sqlite3.rst:642 msgid "" "The name of the database where the blob is located. Defaults to ``\"main\"``." msgstr "" @@ -825,17 +829,17 @@ msgstr "" msgid "Raises" msgstr "" -#: library/sqlite3.rst:643 +#: library/sqlite3.rst:646 msgid "When trying to open a blob in a ``WITHOUT ROWID`` table." msgstr "" -#: library/sqlite3.rst:650 +#: library/sqlite3.rst:653 msgid "" "The blob size cannot be changed using the :class:`Blob` class. Use the SQL " "function ``zeroblob`` to create a blob with a fixed size." msgstr "" -#: library/sqlite3.rst:657 +#: library/sqlite3.rst:660 msgid "" "Commit any pending transaction to the database. If :attr:`autocommit` is " "``True``, or there is no open transaction, this method does nothing. If :" @@ -843,7 +847,7 @@ msgid "" "pending transaction was committed by this method." msgstr "" -#: library/sqlite3.rst:665 +#: library/sqlite3.rst:668 msgid "" "Roll back to the start of any pending transaction. If :attr:`autocommit` is " "``True``, or there is no open transaction, this method does nothing. If :" @@ -851,7 +855,7 @@ msgid "" "pending transaction was rolled back by this method." msgstr "" -#: library/sqlite3.rst:673 +#: library/sqlite3.rst:676 msgid "" "Close the database connection. If :attr:`autocommit` is ``False``, any " "pending transaction is implicitly rolled back. If :attr:`!autocommit` is " @@ -860,65 +864,65 @@ msgid "" "losing pending changes." msgstr "" -#: library/sqlite3.rst:683 +#: library/sqlite3.rst:686 msgid "" "Create a new :class:`Cursor` object and call :meth:`~Cursor.execute` on it " "with the given *sql* and *parameters*. Return the new cursor object." msgstr "" -#: library/sqlite3.rst:689 +#: library/sqlite3.rst:692 msgid "" "Create a new :class:`Cursor` object and call :meth:`~Cursor.executemany` on " "it with the given *sql* and *parameters*. Return the new cursor object." msgstr "" -#: library/sqlite3.rst:695 +#: library/sqlite3.rst:698 msgid "" "Create a new :class:`Cursor` object and call :meth:`~Cursor.executescript` " "on it with the given *sql_script*. Return the new cursor object." msgstr "" -#: library/sqlite3.rst:701 +#: library/sqlite3.rst:704 msgid "Create or remove a user-defined SQL function." msgstr "" -#: library/sqlite3.rst:703 +#: library/sqlite3.rst:706 msgid "The name of the SQL function." msgstr "" -#: library/sqlite3.rst:706 +#: library/sqlite3.rst:709 msgid "" "The number of arguments the SQL function can accept. If ``-1``, it may take " "any number of arguments." msgstr "" -#: library/sqlite3.rst:710 +#: library/sqlite3.rst:713 msgid "" "A :term:`callable` that is called when the SQL function is invoked. The " "callable must return :ref:`a type natively supported by SQLite `. Set to ``None`` to remove an existing SQL function." msgstr "" -#: library/sqlite3.rst:717 +#: library/sqlite3.rst:720 msgid "" "If ``True``, the created SQL function is marked as `deterministic `_, which allows SQLite to perform additional " "optimizations." msgstr "" -#: library/sqlite3.rst:722 +#: library/sqlite3.rst:725 msgid "If *deterministic* is used with SQLite versions older than 3.8.3." msgstr "" -#: library/sqlite3.rst:725 +#: library/sqlite3.rst:728 msgid "Added the *deterministic* parameter." msgstr "" -#: library/sqlite3.rst:767 library/sqlite3.rst:1090 library/sqlite3.rst:1553 +#: library/sqlite3.rst:770 library/sqlite3.rst:1093 library/sqlite3.rst:1556 msgid "Example:" msgstr "" -#: library/sqlite3.rst:730 +#: library/sqlite3.rst:733 msgid "" ">>> import hashlib\n" ">>> def md5sum(t):\n" @@ -931,21 +935,21 @@ msgid "" ">>> con.close()" msgstr "" -#: library/sqlite3.rst:745 +#: library/sqlite3.rst:748 msgid "Create or remove a user-defined SQL aggregate function." msgstr "" -#: library/sqlite3.rst:747 +#: library/sqlite3.rst:750 msgid "The name of the SQL aggregate function." msgstr "" -#: library/sqlite3.rst:750 +#: library/sqlite3.rst:753 msgid "" "The number of arguments the SQL aggregate function can accept. If ``-1``, it " "may take any number of arguments." msgstr "" -#: library/sqlite3.rst:754 +#: library/sqlite3.rst:757 msgid "" "A class must implement the following methods: * ``step()``: Add a row to " "the aggregate. * ``finalize()``: Return the final result of the aggregate " @@ -954,31 +958,31 @@ msgid "" "*n_arg*. Set to ``None`` to remove an existing SQL aggregate function." msgstr "" -#: library/sqlite3.rst:755 +#: library/sqlite3.rst:758 msgid "A class must implement the following methods:" msgstr "" -#: library/sqlite3.rst:757 +#: library/sqlite3.rst:760 msgid "``step()``: Add a row to the aggregate." msgstr "" -#: library/sqlite3.rst:814 +#: library/sqlite3.rst:817 msgid "" "``finalize()``: Return the final result of the aggregate as :ref:`a type " "natively supported by SQLite `." msgstr "" -#: library/sqlite3.rst:761 +#: library/sqlite3.rst:764 msgid "" "The number of arguments that the ``step()`` method must accept is controlled " "by *n_arg*." msgstr "" -#: library/sqlite3.rst:764 +#: library/sqlite3.rst:767 msgid "Set to ``None`` to remove an existing SQL aggregate function." msgstr "" -#: library/sqlite3.rst:769 +#: library/sqlite3.rst:772 msgid "" "class MySum:\n" " def __init__(self):\n" @@ -1001,21 +1005,21 @@ msgid "" "con.close()" msgstr "" -#: library/sqlite3.rst:799 +#: library/sqlite3.rst:802 msgid "Create or remove a user-defined aggregate window function." msgstr "" -#: library/sqlite3.rst:801 +#: library/sqlite3.rst:804 msgid "The name of the SQL aggregate window function to create or remove." msgstr "" -#: library/sqlite3.rst:804 +#: library/sqlite3.rst:807 msgid "" "The number of arguments the SQL aggregate window function can accept. If " "``-1``, it may take any number of arguments." msgstr "" -#: library/sqlite3.rst:808 +#: library/sqlite3.rst:811 msgid "" "A class that must implement the following methods: * ``step()``: Add a row " "to the current window. * ``value()``: Return the current value of the " @@ -1027,39 +1031,39 @@ msgid "" "function." msgstr "" -#: library/sqlite3.rst:809 +#: library/sqlite3.rst:812 msgid "A class that must implement the following methods:" msgstr "" -#: library/sqlite3.rst:811 +#: library/sqlite3.rst:814 msgid "``step()``: Add a row to the current window." msgstr "" -#: library/sqlite3.rst:812 +#: library/sqlite3.rst:815 msgid "``value()``: Return the current value of the aggregate." msgstr "" -#: library/sqlite3.rst:813 +#: library/sqlite3.rst:816 msgid "``inverse()``: Remove a row from the current window." msgstr "" -#: library/sqlite3.rst:817 +#: library/sqlite3.rst:820 msgid "" "The number of arguments that the ``step()`` and ``value()`` methods must " "accept is controlled by *num_params*." msgstr "" -#: library/sqlite3.rst:820 +#: library/sqlite3.rst:823 msgid "Set to ``None`` to remove an existing SQL aggregate window function." msgstr "" -#: library/sqlite3.rst:822 +#: library/sqlite3.rst:825 msgid "" "If used with a version of SQLite older than 3.25.0, which does not support " "aggregate window functions." msgstr "" -#: library/sqlite3.rst:832 +#: library/sqlite3.rst:835 msgid "" "# Example taken from https://www.sqlite.org/windowfunctions.html#udfwinfunc\n" "class WindowSumInt:\n" @@ -1107,30 +1111,30 @@ msgid "" "con.close()" msgstr "" -#: library/sqlite3.rst:886 +#: library/sqlite3.rst:889 msgid "" "Create a collation named *name* using the collating function *callable*. " "*callable* is passed two :class:`string ` arguments, and it should " "return an :class:`integer `:" msgstr "" -#: library/sqlite3.rst:890 +#: library/sqlite3.rst:893 msgid "``1`` if the first is ordered higher than the second" msgstr "" -#: library/sqlite3.rst:891 +#: library/sqlite3.rst:894 msgid "``-1`` if the first is ordered lower than the second" msgstr "" -#: library/sqlite3.rst:892 +#: library/sqlite3.rst:895 msgid "``0`` if they are ordered equal" msgstr "" -#: library/sqlite3.rst:894 +#: library/sqlite3.rst:897 msgid "The following example shows a reverse sorting collation:" msgstr "" -#: library/sqlite3.rst:896 +#: library/sqlite3.rst:899 msgid "" "def collate_reverse(string1, string2):\n" " if string1 == string2:\n" @@ -1151,24 +1155,24 @@ msgid "" "con.close()" msgstr "" -#: library/sqlite3.rst:922 +#: library/sqlite3.rst:925 msgid "Remove a collation function by setting *callable* to ``None``." msgstr "" -#: library/sqlite3.rst:924 +#: library/sqlite3.rst:927 msgid "" "The collation name can contain any Unicode character. Earlier, only ASCII " "characters were allowed." msgstr "" -#: library/sqlite3.rst:931 +#: library/sqlite3.rst:934 msgid "" "Call this method from a different thread to abort any queries that might be " "executing on the connection. Aborted queries will raise an :exc:" "`OperationalError`." msgstr "" -#: library/sqlite3.rst:938 +#: library/sqlite3.rst:941 msgid "" "Register :term:`callable` *authorizer_callback* to be invoked for each " "attempt to access a column of a table in the database. The callback should " @@ -1177,7 +1181,7 @@ msgid "" "underlying SQLite library." msgstr "" -#: library/sqlite3.rst:945 +#: library/sqlite3.rst:948 msgid "" "The first argument to the callback signifies what kind of operation is to be " "authorized. The second and third argument will be arguments or ``None`` " @@ -1187,7 +1191,7 @@ msgid "" "attempt or ``None`` if this access attempt is directly from input SQL code." msgstr "" -#: library/sqlite3.rst:952 +#: library/sqlite3.rst:955 msgid "" "Please consult the SQLite documentation about the possible values for the " "first argument and the meaning of the second and third argument depending on " @@ -1195,15 +1199,15 @@ msgid "" "module." msgstr "" -#: library/sqlite3.rst:956 +#: library/sqlite3.rst:959 msgid "Passing ``None`` as *authorizer_callback* will disable the authorizer." msgstr "" -#: library/sqlite3.rst:958 +#: library/sqlite3.rst:961 msgid "Added support for disabling the authorizer using ``None``." msgstr "" -#: library/sqlite3.rst:964 +#: library/sqlite3.rst:967 msgid "" "Register :term:`callable` *progress_handler* to be invoked for every *n* " "instructions of the SQLite virtual machine. This is useful if you want to " @@ -1211,26 +1215,26 @@ msgid "" "a GUI." msgstr "" -#: library/sqlite3.rst:969 +#: library/sqlite3.rst:972 msgid "" "If you want to clear any previously installed progress handler, call the " "method with ``None`` for *progress_handler*." msgstr "" -#: library/sqlite3.rst:972 +#: library/sqlite3.rst:975 msgid "" "Returning a non-zero value from the handler function will terminate the " "currently executing query and cause it to raise a :exc:`DatabaseError` " "exception." msgstr "" -#: library/sqlite3.rst:979 +#: library/sqlite3.rst:982 msgid "" "Register :term:`callable` *trace_callback* to be invoked for each SQL " "statement that is actually executed by the SQLite backend." msgstr "" -#: library/sqlite3.rst:982 +#: library/sqlite3.rst:985 msgid "" "The only argument passed to the callback is the statement (as :class:`str`) " "that is being executed. The return value of the callback is ignored. Note " @@ -1240,18 +1244,18 @@ msgid "" "execution of triggers defined in the current database." msgstr "" -#: library/sqlite3.rst:990 +#: library/sqlite3.rst:993 msgid "Passing ``None`` as *trace_callback* will disable the trace callback." msgstr "" -#: library/sqlite3.rst:993 +#: library/sqlite3.rst:996 msgid "" "Exceptions raised in the trace callback are not propagated. As a development " "and debugging aid, use :meth:`~sqlite3.enable_callback_tracebacks` to enable " "printing tracebacks from exceptions raised in the trace callback." msgstr "" -#: library/sqlite3.rst:1003 +#: library/sqlite3.rst:1006 msgid "" "Enable the SQLite engine to load SQLite extensions from shared libraries if " "*enabled* is ``True``; else, disallow loading SQLite extensions. SQLite " @@ -1260,7 +1264,7 @@ msgid "" "distributed with SQLite." msgstr "" -#: library/sqlite3.rst:1012 +#: library/sqlite3.rst:1015 msgid "" "The :mod:`!sqlite3` module is not built with loadable extension support by " "default, because some platforms (notably macOS) have SQLite libraries which " @@ -1269,17 +1273,17 @@ msgid "" "program:`configure`." msgstr "" -#: library/sqlite3.rst:1019 +#: library/sqlite3.rst:1022 msgid "" "Raises an :ref:`auditing event ` ``sqlite3.enable_load_extension`` " "with arguments ``connection``, ``enabled``." msgstr "" -#: library/sqlite3.rst:1023 +#: library/sqlite3.rst:1026 msgid "Added the ``sqlite3.enable_load_extension`` auditing event." msgstr "" -#: library/sqlite3.rst:1029 +#: library/sqlite3.rst:1032 msgid "" "con.enable_load_extension(True)\n" "\n" @@ -1309,45 +1313,45 @@ msgid "" " print(row)" msgstr "" -#: library/sqlite3.rst:1055 +#: library/sqlite3.rst:1058 msgid "" "Load an SQLite extension from a shared library. Enable extension loading " "with :meth:`enable_load_extension` before calling this method." msgstr "" -#: library/sqlite3.rst:1059 +#: library/sqlite3.rst:1062 msgid "The path to the SQLite extension." msgstr "" -#: library/sqlite3.rst:1063 +#: library/sqlite3.rst:1066 msgid "" "Entry point name. If ``None`` (the default), SQLite will come up with an " "entry point name of its own; see the SQLite docs `Loading an Extension`_ for " "details." msgstr "" -#: library/sqlite3.rst:1072 +#: library/sqlite3.rst:1075 msgid "" "Raises an :ref:`auditing event ` ``sqlite3.load_extension`` with " "arguments ``connection``, ``path``." msgstr "" -#: library/sqlite3.rst:1076 +#: library/sqlite3.rst:1079 msgid "Added the ``sqlite3.load_extension`` auditing event." msgstr "" -#: library/sqlite3.rst:1079 +#: library/sqlite3.rst:1082 msgid "Added the *entrypoint* parameter." msgstr "" -#: library/sqlite3.rst:1086 +#: library/sqlite3.rst:1089 msgid "" "Return an :term:`iterator` to dump the database as SQL source code. Useful " "when saving an in-memory database for later restoration. Similar to the ``." "dump`` command in the :program:`sqlite3` shell." msgstr "" -#: library/sqlite3.rst:1092 +#: library/sqlite3.rst:1095 msgid "" "# Convert file example.db to SQL dump file dump.sql\n" "con = sqlite3.connect('example.db')\n" @@ -1357,31 +1361,31 @@ msgid "" "con.close()" msgstr "" -#: library/sqlite3.rst:1175 +#: library/sqlite3.rst:1178 msgid ":ref:`sqlite3-howto-encoding`" msgstr "" -#: library/sqlite3.rst:1108 +#: library/sqlite3.rst:1111 msgid "Create a backup of an SQLite database." msgstr "" -#: library/sqlite3.rst:1110 +#: library/sqlite3.rst:1113 msgid "" "Works even if the database is being accessed by other clients or " "concurrently by the same connection." msgstr "" -#: library/sqlite3.rst:1113 +#: library/sqlite3.rst:1116 msgid "The database connection to save the backup to." msgstr "" -#: library/sqlite3.rst:1116 +#: library/sqlite3.rst:1119 msgid "" "The number of pages to copy at a time. If equal to or less than ``0``, the " "entire database is copied in a single step. Defaults to ``-1``." msgstr "" -#: library/sqlite3.rst:1122 +#: library/sqlite3.rst:1125 msgid "" "If set to a :term:`callable`, it is invoked with three integer arguments for " "every backup iteration: the *status* of the last iteration, the *remaining* " @@ -1389,24 +1393,24 @@ msgid "" "Defaults to ``None``." msgstr "" -#: library/sqlite3.rst:1131 +#: library/sqlite3.rst:1134 msgid "" "The name of the database to back up. Either ``\"main\"`` (the default) for " "the main database, ``\"temp\"`` for the temporary database, or the name of a " "custom database as attached using the ``ATTACH DATABASE`` SQL statement." msgstr "" -#: library/sqlite3.rst:1138 +#: library/sqlite3.rst:1141 msgid "" "The number of seconds to sleep between successive attempts to back up " "remaining pages." msgstr "" -#: library/sqlite3.rst:1142 +#: library/sqlite3.rst:1145 msgid "Example 1, copy an existing database into another:" msgstr "" -#: library/sqlite3.rst:1144 +#: library/sqlite3.rst:1147 msgid "" "def progress(status, remaining, total):\n" " print(f'Copied {total-remaining} of {total} pages...')\n" @@ -1419,11 +1423,11 @@ msgid "" "src.close()" msgstr "" -#: library/sqlite3.rst:1161 +#: library/sqlite3.rst:1164 msgid "Example 2, copy an existing database into a transient copy:" msgstr "" -#: library/sqlite3.rst:1163 +#: library/sqlite3.rst:1166 msgid "" "src = sqlite3.connect('example.db')\n" "dst = sqlite3.connect(':memory:')\n" @@ -1432,31 +1436,31 @@ msgid "" "src.close()" msgstr "" -#: library/sqlite3.rst:1179 +#: library/sqlite3.rst:1182 msgid "Get a connection runtime limit." msgstr "" -#: library/sqlite3.rst:1181 +#: library/sqlite3.rst:1184 msgid "The `SQLite limit category`_ to be queried." msgstr "" -#: library/sqlite3.rst:1223 +#: library/sqlite3.rst:1226 msgid "If *category* is not recognised by the underlying SQLite library." msgstr "" -#: library/sqlite3.rst:1189 +#: library/sqlite3.rst:1192 msgid "" "Example, query the maximum length of an SQL statement for :class:" "`Connection` ``con`` (the default is 1000000000):" msgstr "" -#: library/sqlite3.rst:1199 +#: library/sqlite3.rst:1202 msgid "" ">>> con.getlimit(sqlite3.SQLITE_LIMIT_SQL_LENGTH)\n" "1000000000" msgstr "" -#: library/sqlite3.rst:1209 +#: library/sqlite3.rst:1212 msgid "" "Set a connection runtime limit. Attempts to increase a limit above its hard " "upper bound are silently truncated to the hard upper bound. Regardless of " @@ -1464,22 +1468,22 @@ msgid "" "returned." msgstr "" -#: library/sqlite3.rst:1214 +#: library/sqlite3.rst:1217 msgid "The `SQLite limit category`_ to be set." msgstr "" -#: library/sqlite3.rst:1217 +#: library/sqlite3.rst:1220 msgid "" "The value of the new limit. If negative, the current limit is unchanged." msgstr "" -#: library/sqlite3.rst:1226 +#: library/sqlite3.rst:1229 msgid "" "Example, limit the number of attached databases to 1 for :class:`Connection` " "``con`` (the default limit is 10):" msgstr "" -#: library/sqlite3.rst:1229 +#: library/sqlite3.rst:1232 msgid "" ">>> con.setlimit(sqlite3.SQLITE_LIMIT_ATTACHED, 1)\n" "10\n" @@ -1487,25 +1491,25 @@ msgid "" "1" msgstr "" -#: library/sqlite3.rst:1247 +#: library/sqlite3.rst:1250 msgid "Query a boolean connection configuration option." msgstr "" -#: library/sqlite3.rst:1260 +#: library/sqlite3.rst:1263 msgid "A :ref:`SQLITE_DBCONFIG code `." msgstr "" -#: library/sqlite3.rst:1258 +#: library/sqlite3.rst:1261 msgid "Set a boolean connection configuration option." msgstr "" -#: library/sqlite3.rst:1263 +#: library/sqlite3.rst:1266 msgid "" "``True`` if the configuration option should be enabled (default); ``False`` " "if it should be disabled." msgstr "" -#: library/sqlite3.rst:1271 +#: library/sqlite3.rst:1274 msgid "" "Serialize a database into a :class:`bytes` object. For an ordinary on-disk " "database file, the serialization is just a copy of the disk file. For an in-" @@ -1514,17 +1518,17 @@ msgid "" "backed up to disk." msgstr "" -#: library/sqlite3.rst:1277 +#: library/sqlite3.rst:1280 msgid "The database name to be serialized. Defaults to ``\"main\"``." msgstr "" -#: library/sqlite3.rst:1285 +#: library/sqlite3.rst:1288 msgid "" "This method is only available if the underlying SQLite library has the " "serialize API." msgstr "" -#: library/sqlite3.rst:1293 +#: library/sqlite3.rst:1296 msgid "" "Deserialize a :meth:`serialized ` database into a :class:" "`Connection`. This method causes the database connection to disconnect from " @@ -1532,96 +1536,96 @@ msgid "" "serialization contained in *data*." msgstr "" -#: library/sqlite3.rst:1299 +#: library/sqlite3.rst:1302 msgid "A serialized database." msgstr "" -#: library/sqlite3.rst:1302 +#: library/sqlite3.rst:1305 msgid "The database name to deserialize into. Defaults to ``\"main\"``." msgstr "" -#: library/sqlite3.rst:1306 +#: library/sqlite3.rst:1309 msgid "" "If the database connection is currently involved in a read transaction or a " "backup operation." msgstr "" -#: library/sqlite3.rst:1310 +#: library/sqlite3.rst:1313 msgid "If *data* does not contain a valid SQLite database." msgstr "" -#: library/sqlite3.rst:1313 +#: library/sqlite3.rst:1316 msgid "If :func:`len(data) ` is larger than ``2**63 - 1``." msgstr "" -#: library/sqlite3.rst:1318 +#: library/sqlite3.rst:1321 msgid "" "This method is only available if the underlying SQLite library has the " "deserialize API." msgstr "" -#: library/sqlite3.rst:1325 +#: library/sqlite3.rst:1328 msgid "" "This attribute controls :pep:`249`-compliant transaction behaviour. :attr:`!" "autocommit` has three allowed values:" msgstr "" -#: library/sqlite3.rst:1328 +#: library/sqlite3.rst:1331 msgid "" "``False``: Select :pep:`249`-compliant transaction behaviour, implying that :" "mod:`!sqlite3` ensures a transaction is always open. Use :meth:`commit` and :" "meth:`rollback` to close transactions." msgstr "" -#: library/sqlite3.rst:1332 +#: library/sqlite3.rst:1335 msgid "This is the recommended value of :attr:`!autocommit`." msgstr "" -#: library/sqlite3.rst:1334 +#: library/sqlite3.rst:1337 msgid "" "``True``: Use SQLite's `autocommit mode`_. :meth:`commit` and :meth:" "`rollback` have no effect in this mode." msgstr "" -#: library/sqlite3.rst:1337 +#: library/sqlite3.rst:1340 msgid "" ":data:`LEGACY_TRANSACTION_CONTROL`: Pre-Python 3.12 (non-:pep:`249`-" "compliant) transaction control. See :attr:`isolation_level` for more details." msgstr "" -#: library/sqlite3.rst:1341 +#: library/sqlite3.rst:1344 msgid "This is currently the default value of :attr:`!autocommit`." msgstr "" -#: library/sqlite3.rst:1343 +#: library/sqlite3.rst:1346 msgid "" "Changing :attr:`!autocommit` to ``False`` will open a new transaction, and " "changing it to ``True`` will commit any pending transaction." msgstr "" -#: library/sqlite3.rst:1346 +#: library/sqlite3.rst:1349 msgid "See :ref:`sqlite3-transaction-control-autocommit` for more details." msgstr "" -#: library/sqlite3.rst:1350 +#: library/sqlite3.rst:1353 msgid "" "The :attr:`isolation_level` attribute has no effect unless :attr:" "`autocommit` is :data:`LEGACY_TRANSACTION_CONTROL`." msgstr "" -#: library/sqlite3.rst:1357 +#: library/sqlite3.rst:1360 msgid "" "This read-only attribute corresponds to the low-level SQLite `autocommit " "mode`_." msgstr "" -#: library/sqlite3.rst:1360 +#: library/sqlite3.rst:1363 msgid "" "``True`` if a transaction is active (there are uncommitted changes), " "``False`` otherwise." msgstr "" -#: library/sqlite3.rst:1367 +#: library/sqlite3.rst:1370 msgid "" "Controls the :ref:`legacy transaction handling mode ` of :mod:`!sqlite3`. If set to ``None``, " @@ -1631,13 +1635,13 @@ msgid "" "` is performed." msgstr "" -#: library/sqlite3.rst:1375 +#: library/sqlite3.rst:1378 msgid "" "If not overridden by the *isolation_level* parameter of :func:`connect`, the " "default is ``\"\"``, which is an alias for ``\"DEFERRED\"``." msgstr "" -#: library/sqlite3.rst:1380 +#: library/sqlite3.rst:1383 msgid "" "Using :attr:`autocommit` to control transaction handling is recommended over " "using :attr:`!isolation_level`. :attr:`!isolation_level` has no effect " @@ -1645,7 +1649,7 @@ msgid "" "default)." msgstr "" -#: library/sqlite3.rst:1387 +#: library/sqlite3.rst:1390 msgid "" "The initial :attr:`~Cursor.row_factory` for :class:`Cursor` objects created " "from this connection. Assigning to this attribute does not affect the :attr:" @@ -1654,32 +1658,32 @@ msgid "" "`tuple`." msgstr "" -#: library/sqlite3.rst:1680 library/sqlite3.rst:1703 +#: library/sqlite3.rst:1683 library/sqlite3.rst:1706 msgid "See :ref:`sqlite3-howto-row-factory` for more details." msgstr "" -#: library/sqlite3.rst:1398 +#: library/sqlite3.rst:1401 msgid "" "A :term:`callable` that accepts a :class:`bytes` parameter and returns a " "text representation of it. The callable is invoked for SQLite values with " "the ``TEXT`` data type. By default, this attribute is set to :class:`str`." msgstr "" -#: library/sqlite3.rst:1403 +#: library/sqlite3.rst:1406 msgid "See :ref:`sqlite3-howto-encoding` for more details." msgstr "" -#: library/sqlite3.rst:1407 +#: library/sqlite3.rst:1410 msgid "" "Return the total number of database rows that have been modified, inserted, " "or deleted since the database connection was opened." msgstr "" -#: library/sqlite3.rst:1414 +#: library/sqlite3.rst:1417 msgid "Cursor objects" msgstr "" -#: library/sqlite3.rst:1416 +#: library/sqlite3.rst:1419 msgid "" "A ``Cursor`` object represents a `database cursor`_ which is used to execute " "SQL statements, and manage the context of a fetch operation. Cursors are " @@ -1687,45 +1691,45 @@ msgid "" "`connection shortcut methods `." msgstr "" -#: library/sqlite3.rst:1423 +#: library/sqlite3.rst:1426 msgid "" "Cursor objects are :term:`iterators `, meaning that if you :meth:" "`~Cursor.execute` a ``SELECT`` query, you can simply iterate over the cursor " "to fetch the resulting rows:" msgstr "" -#: library/sqlite3.rst:1434 +#: library/sqlite3.rst:1437 msgid "" "for row in cur.execute(\"SELECT t FROM data\"):\n" " print(row)" msgstr "" -#: library/sqlite3.rst:1448 +#: library/sqlite3.rst:1451 msgid "A :class:`Cursor` instance has the following attributes and methods." msgstr "" -#: library/sqlite3.rst:1455 +#: library/sqlite3.rst:1458 msgid "" "Execute a single SQL statement, optionally binding Python values using :ref:" "`placeholders `." msgstr "" -#: library/sqlite3.rst:1459 +#: library/sqlite3.rst:1462 msgid "A single SQL statement." msgstr "" -#: library/sqlite3.rst:1462 +#: library/sqlite3.rst:1465 msgid "" "Python values to bind to placeholders in *sql*. A :class:`!dict` if named " "placeholders are used. A :term:`!sequence` if unnamed placeholders are used. " "See :ref:`sqlite3-placeholders`." msgstr "" -#: library/sqlite3.rst:1469 +#: library/sqlite3.rst:1472 msgid "If *sql* contains more than one SQL statement." msgstr "" -#: library/sqlite3.rst:1472 +#: library/sqlite3.rst:1475 msgid "" "If :attr:`~Connection.autocommit` is :data:`LEGACY_TRANSACTION_CONTROL`, :" "attr:`~Connection.isolation_level` is not ``None``, *sql* is an ``INSERT``, " @@ -1733,7 +1737,7 @@ msgid "" "transaction, a transaction is implicitly opened before executing *sql*." msgstr "" -#: library/sqlite3.rst:1481 +#: library/sqlite3.rst:1484 msgid "" ":exc:`DeprecationWarning` is emitted if :ref:`named placeholders ` are used and *parameters* is a sequence instead of a :class:" @@ -1741,37 +1745,37 @@ msgid "" "instead." msgstr "" -#: library/sqlite3.rst:1487 +#: library/sqlite3.rst:1490 msgid "Use :meth:`executescript` to execute multiple SQL statements." msgstr "" -#: library/sqlite3.rst:1491 +#: library/sqlite3.rst:1494 msgid "" "For every item in *parameters*, repeatedly execute the :ref:`parameterized " "` :abbr:`DML (Data Manipulation Language)` SQL " "statement *sql*." msgstr "" -#: library/sqlite3.rst:1495 +#: library/sqlite3.rst:1498 msgid "Uses the same implicit transaction handling as :meth:`~Cursor.execute`." msgstr "" -#: library/sqlite3.rst:1497 +#: library/sqlite3.rst:1500 msgid "A single SQL DML statement." msgstr "" -#: library/sqlite3.rst:1500 +#: library/sqlite3.rst:1503 msgid "" "An :term:`!iterable` of parameters to bind with the placeholders in *sql*. " "See :ref:`sqlite3-placeholders`." msgstr "" -#: library/sqlite3.rst:1506 +#: library/sqlite3.rst:1509 msgid "" "If *sql* contains more than one SQL statement, or is not a DML statement." msgstr "" -#: library/sqlite3.rst:1512 +#: library/sqlite3.rst:1515 msgid "" "rows = [\n" " (\"row1\",),\n" @@ -1781,13 +1785,13 @@ msgid "" "cur.executemany(\"INSERT INTO data VALUES(?)\", rows)" msgstr "" -#: library/sqlite3.rst:1527 +#: library/sqlite3.rst:1530 msgid "" "Any resulting rows are discarded, including DML statements with `RETURNING " "clauses`_." msgstr "" -#: library/sqlite3.rst:1534 +#: library/sqlite3.rst:1537 msgid "" ":exc:`DeprecationWarning` is emitted if :ref:`named placeholders ` are used and the items in *parameters* are sequences instead " @@ -1795,7 +1799,7 @@ msgid "" "be raised instead." msgstr "" -#: library/sqlite3.rst:1543 +#: library/sqlite3.rst:1546 msgid "" "Execute the SQL statements in *sql_script*. If the :attr:`~Connection." "autocommit` is :data:`LEGACY_TRANSACTION_CONTROL` and there is a pending " @@ -1804,11 +1808,11 @@ msgid "" "added to *sql_script*." msgstr "" -#: library/sqlite3.rst:1551 +#: library/sqlite3.rst:1554 msgid "*sql_script* must be a :class:`string `." msgstr "" -#: library/sqlite3.rst:1555 +#: library/sqlite3.rst:1558 msgid "" "# cur is an sqlite3.Cursor object\n" "cur.executescript(\"\"\"\n" @@ -1820,20 +1824,20 @@ msgid "" "\"\"\")" msgstr "" -#: library/sqlite3.rst:1568 +#: library/sqlite3.rst:1571 msgid "" "If :attr:`~Cursor.row_factory` is ``None``, return the next row query result " "set as a :class:`tuple`. Else, pass it to the row factory and return its " "result. Return ``None`` if no more data is available." msgstr "" -#: library/sqlite3.rst:1576 +#: library/sqlite3.rst:1579 msgid "" "Return the next set of rows of a query result as a :class:`list`. Return an " "empty list if no more rows are available." msgstr "" -#: library/sqlite3.rst:1579 +#: library/sqlite3.rst:1582 msgid "" "The number of rows to fetch per call is specified by the *size* parameter. " "If *size* is not given, :attr:`arraysize` determines the number of rows to " @@ -1841,7 +1845,7 @@ msgid "" "available are returned." msgstr "" -#: library/sqlite3.rst:1585 +#: library/sqlite3.rst:1588 msgid "" "Note there are performance considerations involved with the *size* " "parameter. For optimal performance, it is usually best to use the arraysize " @@ -1849,36 +1853,36 @@ msgid "" "the same value from one :meth:`fetchmany` call to the next." msgstr "" -#: library/sqlite3.rst:1592 +#: library/sqlite3.rst:1595 msgid "" "Return all (remaining) rows of a query result as a :class:`list`. Return an " "empty list if no rows are available. Note that the :attr:`arraysize` " "attribute can affect the performance of this operation." msgstr "" -#: library/sqlite3.rst:1599 +#: library/sqlite3.rst:1602 msgid "Close the cursor now (rather than whenever ``__del__`` is called)." msgstr "" -#: library/sqlite3.rst:1601 +#: library/sqlite3.rst:1604 msgid "" "The cursor will be unusable from this point forward; a :exc:" "`ProgrammingError` exception will be raised if any operation is attempted " "with the cursor." msgstr "" -#: library/sqlite3.rst:1610 +#: library/sqlite3.rst:1613 msgid "Required by the DB-API. Does nothing in :mod:`!sqlite3`." msgstr "" -#: library/sqlite3.rst:1614 +#: library/sqlite3.rst:1617 msgid "" "Read/write attribute that controls the number of rows returned by :meth:" "`fetchmany`. The default value is 1 which means a single row would be " "fetched per call." msgstr "" -#: library/sqlite3.rst:1619 +#: library/sqlite3.rst:1622 msgid "" "Read-only attribute that provides the SQLite database :class:`Connection` " "belonging to the cursor. A :class:`Cursor` object created by calling :meth:" @@ -1886,7 +1890,7 @@ msgid "" "that refers to *con*:" msgstr "" -#: library/sqlite3.rst:1624 +#: library/sqlite3.rst:1627 msgid "" ">>> con = sqlite3.connect(\":memory:\")\n" ">>> cur = con.cursor()\n" @@ -1895,18 +1899,18 @@ msgid "" ">>> con.close()" msgstr "" -#: library/sqlite3.rst:1634 +#: library/sqlite3.rst:1637 msgid "" "Read-only attribute that provides the column names of the last query. To " "remain compatible with the Python DB API, it returns a 7-tuple for each " "column where the last six items of each tuple are ``None``." msgstr "" -#: library/sqlite3.rst:1638 +#: library/sqlite3.rst:1641 msgid "It is set for ``SELECT`` statements without any matching rows as well." msgstr "" -#: library/sqlite3.rst:1642 +#: library/sqlite3.rst:1645 msgid "" "Read-only attribute that provides the row id of the last inserted row. It is " "only updated after successful ``INSERT`` or ``REPLACE`` statements using " @@ -1916,15 +1920,15 @@ msgid "" "``None``." msgstr "" -#: library/sqlite3.rst:1650 +#: library/sqlite3.rst:1653 msgid "Inserts into ``WITHOUT ROWID`` tables are not recorded." msgstr "" -#: library/sqlite3.rst:1652 +#: library/sqlite3.rst:1655 msgid "Added support for the ``REPLACE`` statement." msgstr "" -#: library/sqlite3.rst:1657 +#: library/sqlite3.rst:1660 msgid "" "Read-only attribute that provides the number of modified rows for " "``INSERT``, ``UPDATE``, ``DELETE``, and ``REPLACE`` statements; is ``-1`` " @@ -1934,7 +1938,7 @@ msgid "" "resulting rows must be fetched in order for :attr:`!rowcount` to be updated." msgstr "" -#: library/sqlite3.rst:1668 +#: library/sqlite3.rst:1671 msgid "" "Control how a row fetched from this :class:`!Cursor` is represented. If " "``None``, a row is represented as a :class:`tuple`. Can be set to the " @@ -1943,18 +1947,18 @@ msgid "" "and returns a custom object representing an SQLite row." msgstr "" -#: library/sqlite3.rst:1675 +#: library/sqlite3.rst:1678 msgid "" "Defaults to what :attr:`Connection.row_factory` was set to when the :class:`!" "Cursor` was created. Assigning to this attribute does not affect :attr:" "`Connection.row_factory` of the parent connection." msgstr "" -#: library/sqlite3.rst:1691 +#: library/sqlite3.rst:1694 msgid "Row objects" msgstr "" -#: library/sqlite3.rst:1695 +#: library/sqlite3.rst:1698 msgid "" "A :class:`!Row` instance serves as a highly optimized :attr:`~Connection." "row_factory` for :class:`Connection` objects. It supports iteration, " @@ -1962,28 +1966,28 @@ msgid "" "index." msgstr "" -#: library/sqlite3.rst:1700 +#: library/sqlite3.rst:1703 msgid "" "Two :class:`!Row` objects compare equal if they have identical column names " "and values." msgstr "" -#: library/sqlite3.rst:1707 +#: library/sqlite3.rst:1710 msgid "" "Return a :class:`list` of column names as :class:`strings `. " "Immediately after a query, it is the first member of each tuple in :attr:" "`Cursor.description`." msgstr "" -#: library/sqlite3.rst:1711 +#: library/sqlite3.rst:1714 msgid "Added support of slicing." msgstr "" -#: library/sqlite3.rst:1718 +#: library/sqlite3.rst:1721 msgid "Blob objects" msgstr "" -#: library/sqlite3.rst:1724 +#: library/sqlite3.rst:1727 msgid "" "A :class:`Blob` instance is a :term:`file-like object` that can read and " "write data in an SQLite :abbr:`BLOB (Binary Large OBject)`. Call :func:" @@ -1991,13 +1995,13 @@ msgid "" "and :term:`slices ` for direct access to the blob data." msgstr "" -#: library/sqlite3.rst:1729 +#: library/sqlite3.rst:1732 msgid "" "Use the :class:`Blob` as a :term:`context manager` to ensure that the blob " "handle is closed after use." msgstr "" -#: library/sqlite3.rst:1732 +#: library/sqlite3.rst:1735 msgid "" "con = sqlite3.connect(\":memory:\")\n" "con.execute(\"CREATE TABLE test(blob_col blob)\")\n" @@ -2019,18 +2023,18 @@ msgid "" "con.close()" msgstr "" -#: library/sqlite3.rst:1760 +#: library/sqlite3.rst:1763 msgid "Close the blob." msgstr "" -#: library/sqlite3.rst:1762 +#: library/sqlite3.rst:1765 msgid "" "The blob will be unusable from this point onward. An :class:`~sqlite3." "Error` (or subclass) exception will be raised if any further operation is " "attempted with the blob." msgstr "" -#: library/sqlite3.rst:1768 +#: library/sqlite3.rst:1771 msgid "" "Read *length* bytes of data from the blob at the current offset position. If " "the end of the blob is reached, the data up to :abbr:`EOF (End of File)` " @@ -2038,18 +2042,18 @@ msgid "" "`~Blob.read` will read until the end of the blob." msgstr "" -#: library/sqlite3.rst:1776 +#: library/sqlite3.rst:1779 msgid "" "Write *data* to the blob at the current offset. This function cannot change " "the blob length. Writing beyond the end of the blob will raise :exc:" "`ValueError`." msgstr "" -#: library/sqlite3.rst:1782 +#: library/sqlite3.rst:1785 msgid "Return the current access position of the blob." msgstr "" -#: library/sqlite3.rst:1786 +#: library/sqlite3.rst:1789 msgid "" "Set the current access position of the blob to *offset*. The *origin* " "argument defaults to :const:`os.SEEK_SET` (absolute blob positioning). Other " @@ -2057,26 +2061,26 @@ msgid "" "position) and :const:`os.SEEK_END` (seek relative to the blob’s end)." msgstr "" -#: library/sqlite3.rst:1794 +#: library/sqlite3.rst:1797 msgid "PrepareProtocol objects" msgstr "" -#: library/sqlite3.rst:1798 +#: library/sqlite3.rst:1801 msgid "" "The PrepareProtocol type's single purpose is to act as a :pep:`246` style " "adaption protocol for objects that can :ref:`adapt themselves ` to :ref:`native SQLite types `." msgstr "" -#: library/sqlite3.rst:1806 +#: library/sqlite3.rst:1809 msgid "Exceptions" msgstr "" -#: library/sqlite3.rst:1808 +#: library/sqlite3.rst:1811 msgid "The exception hierarchy is defined by the DB-API 2.0 (:pep:`249`)." msgstr "" -#: library/sqlite3.rst:1812 +#: library/sqlite3.rst:1815 msgid "" "This exception is not currently raised by the :mod:`!sqlite3` module, but " "may be raised by applications using :mod:`!sqlite3`, for example if a user-" @@ -2084,39 +2088,39 @@ msgid "" "of :exc:`Exception`." msgstr "" -#: library/sqlite3.rst:1819 +#: library/sqlite3.rst:1822 msgid "" "The base class of the other exceptions in this module. Use this to catch all " "errors with one single :keyword:`except` statement. ``Error`` is a subclass " "of :exc:`Exception`." msgstr "" -#: library/sqlite3.rst:1823 +#: library/sqlite3.rst:1826 msgid "" "If the exception originated from within the SQLite library, the following " "two attributes are added to the exception:" msgstr "" -#: library/sqlite3.rst:1828 +#: library/sqlite3.rst:1831 msgid "" "The numeric error code from the `SQLite API `_" msgstr "" -#: library/sqlite3.rst:1835 +#: library/sqlite3.rst:1838 msgid "" "The symbolic name of the numeric error code from the `SQLite API `_" msgstr "" -#: library/sqlite3.rst:1842 +#: library/sqlite3.rst:1845 msgid "" "Exception raised for misuse of the low-level SQLite C API. In other words, " "if this exception is raised, it probably indicates a bug in the :mod:`!" "sqlite3` module. ``InterfaceError`` is a subclass of :exc:`Error`." msgstr "" -#: library/sqlite3.rst:1849 +#: library/sqlite3.rst:1852 msgid "" "Exception raised for errors that are related to the database. This serves as " "the base exception for several types of database errors. It is only raised " @@ -2124,14 +2128,14 @@ msgid "" "subclass of :exc:`Error`." msgstr "" -#: library/sqlite3.rst:1856 +#: library/sqlite3.rst:1859 msgid "" "Exception raised for errors caused by problems with the processed data, like " "numeric values out of range, and strings which are too long. ``DataError`` " "is a subclass of :exc:`DatabaseError`." msgstr "" -#: library/sqlite3.rst:1862 +#: library/sqlite3.rst:1865 msgid "" "Exception raised for errors that are related to the database's operation, " "and not necessarily under the control of the programmer. For example, the " @@ -2139,20 +2143,20 @@ msgid "" "``OperationalError`` is a subclass of :exc:`DatabaseError`." msgstr "" -#: library/sqlite3.rst:1870 +#: library/sqlite3.rst:1873 msgid "" "Exception raised when the relational integrity of the database is affected, " "e.g. a foreign key check fails. It is a subclass of :exc:`DatabaseError`." msgstr "" -#: library/sqlite3.rst:1875 +#: library/sqlite3.rst:1878 msgid "" "Exception raised when SQLite encounters an internal error. If this is " "raised, it may indicate that there is a problem with the runtime SQLite " "library. ``InternalError`` is a subclass of :exc:`DatabaseError`." msgstr "" -#: library/sqlite3.rst:1882 +#: library/sqlite3.rst:1885 msgid "" "Exception raised for :mod:`!sqlite3` API programming errors, for example " "supplying the wrong number of bindings to a query, or trying to operate on a " @@ -2160,7 +2164,7 @@ msgid "" "`DatabaseError`." msgstr "" -#: library/sqlite3.rst:1889 +#: library/sqlite3.rst:1892 msgid "" "Exception raised in case a method or database API is not supported by the " "underlying SQLite library. For example, setting *deterministic* to ``True`` " @@ -2169,78 +2173,78 @@ msgid "" "subclass of :exc:`DatabaseError`." msgstr "" -#: library/sqlite3.rst:1899 +#: library/sqlite3.rst:1902 msgid "SQLite and Python types" msgstr "" -#: library/sqlite3.rst:1901 +#: library/sqlite3.rst:1904 msgid "" "SQLite natively supports the following types: ``NULL``, ``INTEGER``, " "``REAL``, ``TEXT``, ``BLOB``." msgstr "" -#: library/sqlite3.rst:1904 +#: library/sqlite3.rst:1907 msgid "" "The following Python types can thus be sent to SQLite without any problem:" msgstr "" -#: library/sqlite3.rst:1924 +#: library/sqlite3.rst:1927 msgid "Python type" msgstr "" -#: library/sqlite3.rst:1924 +#: library/sqlite3.rst:1927 msgid "SQLite type" msgstr "" -#: library/sqlite3.rst:1926 +#: library/sqlite3.rst:1929 msgid "``None``" msgstr "" -#: library/sqlite3.rst:1926 +#: library/sqlite3.rst:1929 msgid "``NULL``" msgstr "" -#: library/sqlite3.rst:1928 +#: library/sqlite3.rst:1931 msgid ":class:`int`" msgstr "" -#: library/sqlite3.rst:1928 +#: library/sqlite3.rst:1931 msgid "``INTEGER``" msgstr "" -#: library/sqlite3.rst:1930 +#: library/sqlite3.rst:1933 msgid ":class:`float`" msgstr "" -#: library/sqlite3.rst:1930 +#: library/sqlite3.rst:1933 msgid "``REAL``" msgstr "" -#: library/sqlite3.rst:1915 +#: library/sqlite3.rst:1918 msgid ":class:`str`" msgstr "" -#: library/sqlite3.rst:1932 +#: library/sqlite3.rst:1935 msgid "``TEXT``" msgstr "" -#: library/sqlite3.rst:1935 +#: library/sqlite3.rst:1938 msgid ":class:`bytes`" msgstr "" -#: library/sqlite3.rst:1935 +#: library/sqlite3.rst:1938 msgid "``BLOB``" msgstr "" -#: library/sqlite3.rst:1921 +#: library/sqlite3.rst:1924 msgid "This is how SQLite types are converted to Python types by default:" msgstr "" -#: library/sqlite3.rst:1932 +#: library/sqlite3.rst:1935 msgid "depends on :attr:`~Connection.text_factory`, :class:`str` by default" msgstr "" -#: library/sqlite3.rst:1938 +#: library/sqlite3.rst:1941 msgid "" "The type system of the :mod:`!sqlite3` module is extensible in two ways: you " "can store additional Python types in an SQLite database via :ref:`object " @@ -2249,47 +2253,47 @@ msgid "" "converters>`." msgstr "" -#: library/sqlite3.rst:1948 +#: library/sqlite3.rst:1951 msgid "Default adapters and converters (deprecated)" msgstr "" -#: library/sqlite3.rst:1952 +#: library/sqlite3.rst:1955 msgid "" "The default adapters and converters are deprecated as of Python 3.12. " "Instead, use the :ref:`sqlite3-adapter-converter-recipes` and tailor them to " "your needs." msgstr "" -#: library/sqlite3.rst:1956 +#: library/sqlite3.rst:1959 msgid "The deprecated default adapters and converters consist of:" msgstr "" -#: library/sqlite3.rst:1958 +#: library/sqlite3.rst:1961 msgid "" "An adapter for :class:`datetime.date` objects to :class:`strings ` in " "`ISO 8601`_ format." msgstr "" -#: library/sqlite3.rst:1960 +#: library/sqlite3.rst:1963 msgid "" "An adapter for :class:`datetime.datetime` objects to strings in ISO 8601 " "format." msgstr "" -#: library/sqlite3.rst:1962 +#: library/sqlite3.rst:1965 msgid "" "A converter for :ref:`declared ` \"date\" types to :" "class:`datetime.date` objects." msgstr "" -#: library/sqlite3.rst:1964 +#: library/sqlite3.rst:1967 msgid "" "A converter for declared \"timestamp\" types to :class:`datetime.datetime` " "objects. Fractional parts will be truncated to 6 digits (microsecond " "precision)." msgstr "" -#: library/sqlite3.rst:1970 +#: library/sqlite3.rst:1973 msgid "" "The default \"timestamp\" converter ignores UTC offsets in the database and " "always returns a naive :class:`datetime.datetime` object. To preserve UTC " @@ -2297,42 +2301,42 @@ msgid "" "offset-aware converter with :func:`register_converter`." msgstr "" -#: library/sqlite3.rst:1983 +#: library/sqlite3.rst:1986 msgid "Command-line interface" msgstr "" -#: library/sqlite3.rst:1985 +#: library/sqlite3.rst:1988 msgid "" "The :mod:`!sqlite3` module can be invoked as a script, using the " "interpreter's :option:`-m` switch, in order to provide a simple SQLite " "shell. The argument signature is as follows::" msgstr "" -#: library/sqlite3.rst:1990 +#: library/sqlite3.rst:1993 msgid "python -m sqlite3 [-h] [-v] [filename] [sql]" msgstr "" -#: library/sqlite3.rst:1992 +#: library/sqlite3.rst:1995 msgid "Type ``.quit`` or CTRL-D to exit the shell." msgstr "" -#: library/sqlite3.rst:1998 +#: library/sqlite3.rst:2001 msgid "Print CLI help." msgstr "" -#: library/sqlite3.rst:2002 +#: library/sqlite3.rst:2005 msgid "Print underlying SQLite library version." msgstr "" -#: library/sqlite3.rst:2010 +#: library/sqlite3.rst:2013 msgid "How-to guides" msgstr "" -#: library/sqlite3.rst:2015 +#: library/sqlite3.rst:2018 msgid "How to use placeholders to bind values in SQL queries" msgstr "" -#: library/sqlite3.rst:2017 +#: library/sqlite3.rst:2020 msgid "" "SQL operations usually need to use values from Python variables. However, " "beware of using Python's string operations to assemble queries, as they are " @@ -2340,7 +2344,7 @@ msgid "" "close the single quote and inject ``OR TRUE`` to select all rows::" msgstr "" -#: library/sqlite3.rst:2022 +#: library/sqlite3.rst:2025 msgid "" ">>> # Never do this -- insecure!\n" ">>> symbol = input()\n" @@ -2351,7 +2355,7 @@ msgid "" ">>> cur.execute(sql)" msgstr "" -#: library/sqlite3.rst:2030 +#: library/sqlite3.rst:2033 msgid "" "Instead, use the DB-API's parameter substitution. To insert a variable into " "a query string, use a placeholder in the string, and substitute the actual " @@ -2359,7 +2363,7 @@ msgid "" "second argument of the cursor's :meth:`~Cursor.execute` method." msgstr "" -#: library/sqlite3.rst:2035 +#: library/sqlite3.rst:2038 msgid "" "An SQL statement may use one of two kinds of placeholders: question marks " "(qmark style) or named placeholders (named style). For the qmark style, " @@ -2370,7 +2374,7 @@ msgid "" "ignored. Here's an example of both styles:" msgstr "" -#: library/sqlite3.rst:2046 +#: library/sqlite3.rst:2049 msgid "" "con = sqlite3.connect(\":memory:\")\n" "cur = con.execute(\"CREATE TABLE lang(name, first_appeared)\")\n" @@ -2391,24 +2395,24 @@ msgid "" "con.close()" msgstr "" -#: library/sqlite3.rst:2073 +#: library/sqlite3.rst:2076 msgid "" ":pep:`249` numeric placeholders are *not* supported. If used, they will be " "interpreted as named placeholders." msgstr "" -#: library/sqlite3.rst:2080 +#: library/sqlite3.rst:2083 msgid "How to adapt custom Python types to SQLite values" msgstr "" -#: library/sqlite3.rst:2082 +#: library/sqlite3.rst:2085 msgid "" "SQLite supports only a limited set of data types natively. To store custom " "Python types in SQLite databases, *adapt* them to one of the :ref:`Python " "types SQLite natively understands `." msgstr "" -#: library/sqlite3.rst:2086 +#: library/sqlite3.rst:2089 msgid "" "There are two ways to adapt Python objects to SQLite types: letting your " "object adapt itself, or using an *adapter callable*. The latter will take " @@ -2418,11 +2422,11 @@ msgid "" "custom adapter functions." msgstr "" -#: library/sqlite3.rst:2098 +#: library/sqlite3.rst:2101 msgid "How to write adaptable objects" msgstr "" -#: library/sqlite3.rst:2100 +#: library/sqlite3.rst:2103 msgid "" "Suppose we have a :class:`!Point` class that represents a pair of " "coordinates, ``x`` and ``y``, in a Cartesian coordinate system. The " @@ -2432,7 +2436,7 @@ msgid "" "object passed to *protocol* will be of type :class:`PrepareProtocol`." msgstr "" -#: library/sqlite3.rst:2108 +#: library/sqlite3.rst:2111 msgid "" "class Point:\n" " def __init__(self, x, y):\n" @@ -2450,18 +2454,18 @@ msgid "" "con.close()" msgstr "" -#: library/sqlite3.rst:2132 +#: library/sqlite3.rst:2135 msgid "How to register adapter callables" msgstr "" -#: library/sqlite3.rst:2134 +#: library/sqlite3.rst:2137 msgid "" "The other possibility is to create a function that converts the Python " "object to an SQLite-compatible type. This function can then be registered " "using :func:`register_adapter`." msgstr "" -#: library/sqlite3.rst:2138 +#: library/sqlite3.rst:2141 msgid "" "class Point:\n" " def __init__(self, x, y):\n" @@ -2480,68 +2484,68 @@ msgid "" "con.close()" msgstr "" -#: library/sqlite3.rst:2165 +#: library/sqlite3.rst:2168 msgid "How to convert SQLite values to custom Python types" msgstr "" -#: library/sqlite3.rst:2167 +#: library/sqlite3.rst:2170 msgid "" "Writing an adapter lets you convert *from* custom Python types *to* SQLite " "values. To be able to convert *from* SQLite values *to* custom Python types, " "we use *converters*." msgstr "" -#: library/sqlite3.rst:2172 +#: library/sqlite3.rst:2175 msgid "" "Let's go back to the :class:`!Point` class. We stored the x and y " "coordinates separated via semicolons as strings in SQLite." msgstr "" -#: library/sqlite3.rst:2175 +#: library/sqlite3.rst:2178 msgid "" "First, we'll define a converter function that accepts the string as a " "parameter and constructs a :class:`!Point` object from it." msgstr "" -#: library/sqlite3.rst:2180 +#: library/sqlite3.rst:2183 msgid "" "Converter functions are **always** passed a :class:`bytes` object, no matter " "the underlying SQLite data type." msgstr "" -#: library/sqlite3.rst:2183 +#: library/sqlite3.rst:2186 msgid "" "def convert_point(s):\n" " x, y = map(float, s.split(b\";\"))\n" " return Point(x, y)" msgstr "" -#: library/sqlite3.rst:2189 +#: library/sqlite3.rst:2192 msgid "" "We now need to tell :mod:`!sqlite3` when it should convert a given SQLite " "value. This is done when connecting to a database, using the *detect_types* " "parameter of :func:`connect`. There are three options:" msgstr "" -#: library/sqlite3.rst:2193 +#: library/sqlite3.rst:2196 msgid "Implicit: set *detect_types* to :const:`PARSE_DECLTYPES`" msgstr "" -#: library/sqlite3.rst:2194 +#: library/sqlite3.rst:2197 msgid "Explicit: set *detect_types* to :const:`PARSE_COLNAMES`" msgstr "" -#: library/sqlite3.rst:2195 +#: library/sqlite3.rst:2198 msgid "" "Both: set *detect_types* to ``sqlite3.PARSE_DECLTYPES | sqlite3." "PARSE_COLNAMES``. Column names take precedence over declared types." msgstr "" -#: library/sqlite3.rst:2199 +#: library/sqlite3.rst:2202 msgid "The following example illustrates the implicit and explicit approaches:" msgstr "" -#: library/sqlite3.rst:2201 +#: library/sqlite3.rst:2204 msgid "" "class Point:\n" " def __init__(self, x, y):\n" @@ -2583,15 +2587,15 @@ msgid "" "con.close()" msgstr "" -#: library/sqlite3.rst:2252 +#: library/sqlite3.rst:2255 msgid "Adapter and converter recipes" msgstr "" -#: library/sqlite3.rst:2254 +#: library/sqlite3.rst:2257 msgid "This section shows recipes for common adapters and converters." msgstr "" -#: library/sqlite3.rst:2256 +#: library/sqlite3.rst:2259 msgid "" "import datetime\n" "import sqlite3\n" @@ -2629,11 +2633,11 @@ msgid "" "sqlite3.register_converter(\"timestamp\", convert_timestamp)" msgstr "" -#: library/sqlite3.rst:2316 +#: library/sqlite3.rst:2319 msgid "How to use connection shortcut methods" msgstr "" -#: library/sqlite3.rst:2318 +#: library/sqlite3.rst:2321 msgid "" "Using the :meth:`~Connection.execute`, :meth:`~Connection.executemany`, and :" "meth:`~Connection.executescript` methods of the :class:`Connection` class, " @@ -2645,7 +2649,7 @@ msgid "" "object." msgstr "" -#: library/sqlite3.rst:2327 +#: library/sqlite3.rst:2330 msgid "" "# Create and fill the table.\n" "con = sqlite3.connect(\":memory:\")\n" @@ -2669,11 +2673,11 @@ msgid "" "con.close()" msgstr "" -#: library/sqlite3.rst:2359 +#: library/sqlite3.rst:2362 msgid "How to use the connection context manager" msgstr "" -#: library/sqlite3.rst:2361 +#: library/sqlite3.rst:2364 msgid "" "A :class:`Connection` object can be used as a context manager that " "automatically commits or rolls back open transactions when leaving the body " @@ -2685,21 +2689,21 @@ msgid "" "rolling back." msgstr "" -#: library/sqlite3.rst:2372 +#: library/sqlite3.rst:2375 msgid "" "If there is no open transaction upon leaving the body of the ``with`` " "statement, or if :attr:`~Connection.autocommit` is ``True``, the context " "manager does nothing." msgstr "" -#: library/sqlite3.rst:2377 +#: library/sqlite3.rst:2380 msgid "" "The context manager neither implicitly opens a new transaction nor closes " "the connection. If you need a closing context manager, consider using :meth:" "`contextlib.closing`." msgstr "" -#: library/sqlite3.rst:2381 +#: library/sqlite3.rst:2384 msgid "" "con = sqlite3.connect(\":memory:\")\n" "con.execute(\"CREATE TABLE lang(id INTEGER PRIMARY KEY, name VARCHAR " @@ -2723,44 +2727,45 @@ msgid "" "con.close()" msgstr "" -#: library/sqlite3.rst:2411 +#: library/sqlite3.rst:2414 msgid "How to work with SQLite URIs" msgstr "" -#: library/sqlite3.rst:2413 +#: library/sqlite3.rst:2416 msgid "Some useful URI tricks include:" msgstr "" -#: library/sqlite3.rst:2415 +#: library/sqlite3.rst:2418 msgid "Open a database in read-only mode:" msgstr "" -#: library/sqlite3.rst:2417 +#: library/sqlite3.rst:2420 msgid "" ">>> con = sqlite3.connect(\"file:tutorial.db?mode=ro\", uri=True)\n" ">>> con.execute(\"CREATE TABLE readonly(data)\")\n" "Traceback (most recent call last):\n" -"OperationalError: attempt to write a readonly database" +"OperationalError: attempt to write a readonly database\n" +">>> con.close()" msgstr "" -#: library/sqlite3.rst:2424 +#: library/sqlite3.rst:2428 msgid "" "Do not implicitly create a new database file if it does not already exist; " "will raise :exc:`~sqlite3.OperationalError` if unable to create a new file:" msgstr "" -#: library/sqlite3.rst:2427 +#: library/sqlite3.rst:2431 msgid "" ">>> con = sqlite3.connect(\"file:nosuchdb.db?mode=rw\", uri=True)\n" "Traceback (most recent call last):\n" "OperationalError: unable to open database file" msgstr "" -#: library/sqlite3.rst:2434 +#: library/sqlite3.rst:2438 msgid "Create a shared named in-memory database:" msgstr "" -#: library/sqlite3.rst:2436 +#: library/sqlite3.rst:2440 msgid "" "db = \"file:mem1?mode=memory&cache=shared\"\n" "con1 = sqlite3.connect(db, uri=True)\n" @@ -2775,24 +2780,24 @@ msgid "" "con2.close()" msgstr "" -#: library/sqlite3.rst:2450 +#: library/sqlite3.rst:2454 msgid "" "More information about this feature, including a list of parameters, can be " "found in the `SQLite URI documentation`_." msgstr "" -#: library/sqlite3.rst:2459 +#: library/sqlite3.rst:2463 msgid "How to create and use row factories" msgstr "" -#: library/sqlite3.rst:2461 +#: library/sqlite3.rst:2465 msgid "" "By default, :mod:`!sqlite3` represents each row as a :class:`tuple`. If a :" "class:`!tuple` does not suit your needs, you can use the :class:`sqlite3." "Row` class or a custom :attr:`~Cursor.row_factory`." msgstr "" -#: library/sqlite3.rst:2466 +#: library/sqlite3.rst:2470 msgid "" "While :attr:`!row_factory` exists as an attribute both on the :class:" "`Cursor` and the :class:`Connection`, it is recommended to set :class:" @@ -2800,7 +2805,7 @@ msgid "" "use the same row factory." msgstr "" -#: library/sqlite3.rst:2471 +#: library/sqlite3.rst:2475 msgid "" ":class:`!Row` provides indexed and case-insensitive named access to columns, " "with minimal memory overhead and performance impact over a :class:`!tuple`. " @@ -2808,17 +2813,17 @@ msgid "" "attribute:" msgstr "" -#: library/sqlite3.rst:2476 +#: library/sqlite3.rst:2480 msgid "" ">>> con = sqlite3.connect(\":memory:\")\n" ">>> con.row_factory = sqlite3.Row" msgstr "" -#: library/sqlite3.rst:2481 +#: library/sqlite3.rst:2485 msgid "Queries now return :class:`!Row` objects:" msgstr "" -#: library/sqlite3.rst:2483 +#: library/sqlite3.rst:2487 msgid "" ">>> res = con.execute(\"SELECT 'Earth' AS name, 6378 AS radius\")\n" ">>> row = res.fetchone()\n" @@ -2833,7 +2838,7 @@ msgid "" ">>> con.close()" msgstr "" -#: library/sqlite3.rst:2499 +#: library/sqlite3.rst:2503 msgid "" "The ``FROM`` clause can be omitted in the ``SELECT`` statement, as in the " "above example. In such cases, SQLite returns a single row with columns " @@ -2841,25 +2846,25 @@ msgid "" "alias``." msgstr "" -#: library/sqlite3.rst:2504 +#: library/sqlite3.rst:2508 msgid "" "You can create a custom :attr:`~Cursor.row_factory` that returns each row as " "a :class:`dict`, with column names mapped to values:" msgstr "" -#: library/sqlite3.rst:2507 +#: library/sqlite3.rst:2511 msgid "" "def dict_factory(cursor, row):\n" " fields = [column[0] for column in cursor.description]\n" " return {key: value for key, value in zip(fields, row)}" msgstr "" -#: library/sqlite3.rst:2513 +#: library/sqlite3.rst:2517 msgid "" "Using it, queries now return a :class:`!dict` instead of a :class:`!tuple`:" msgstr "" -#: library/sqlite3.rst:2515 +#: library/sqlite3.rst:2519 msgid "" ">>> con = sqlite3.connect(\":memory:\")\n" ">>> con.row_factory = dict_factory\n" @@ -2869,11 +2874,11 @@ msgid "" ">>> con.close()" msgstr "" -#: library/sqlite3.rst:2524 +#: library/sqlite3.rst:2528 msgid "The following row factory returns a :term:`named tuple`:" msgstr "" -#: library/sqlite3.rst:2526 +#: library/sqlite3.rst:2530 msgid "" "from collections import namedtuple\n" "\n" @@ -2883,11 +2888,11 @@ msgid "" " return cls._make(row)" msgstr "" -#: library/sqlite3.rst:2535 +#: library/sqlite3.rst:2539 msgid ":func:`!namedtuple_factory` can be used as follows:" msgstr "" -#: library/sqlite3.rst:2537 +#: library/sqlite3.rst:2541 msgid "" ">>> con = sqlite3.connect(\":memory:\")\n" ">>> con.row_factory = namedtuple_factory\n" @@ -2902,18 +2907,18 @@ msgid "" ">>> con.close()" msgstr "" -#: library/sqlite3.rst:2551 +#: library/sqlite3.rst:2555 msgid "" "With some adjustments, the above recipe can be adapted to use a :class:" "`~dataclasses.dataclass`, or any other custom class, instead of a :class:" "`~collections.namedtuple`." msgstr "" -#: library/sqlite3.rst:2559 +#: library/sqlite3.rst:2563 msgid "How to handle non-UTF-8 text encodings" msgstr "" -#: library/sqlite3.rst:2561 +#: library/sqlite3.rst:2565 msgid "" "By default, :mod:`!sqlite3` uses :class:`str` to adapt SQLite values with " "the ``TEXT`` data type. This works well for UTF-8 encoded text, but it might " @@ -2921,7 +2926,7 @@ msgid "" "`~Connection.text_factory` to handle such cases." msgstr "" -#: library/sqlite3.rst:2567 +#: library/sqlite3.rst:2571 msgid "" "Because of SQLite's `flexible typing`_, it is not uncommon to encounter " "table columns with the ``TEXT`` data type containing non-UTF-8 encodings, or " @@ -2932,39 +2937,39 @@ msgid "" "text using this :attr:`~Connection.text_factory`:" msgstr "" -#: library/sqlite3.rst:2576 +#: library/sqlite3.rst:2580 msgid "con.text_factory = lambda data: str(data, encoding=\"latin2\")" msgstr "" -#: library/sqlite3.rst:2580 +#: library/sqlite3.rst:2584 msgid "" "For invalid UTF-8 or arbitrary data in stored in ``TEXT`` table columns, you " "can use the following technique, borrowed from the :ref:`unicode-howto`:" msgstr "" -#: library/sqlite3.rst:2583 +#: library/sqlite3.rst:2587 msgid "con.text_factory = lambda data: str(data, errors=\"surrogateescape\")" msgstr "" -#: library/sqlite3.rst:2589 +#: library/sqlite3.rst:2593 msgid "" "The :mod:`!sqlite3` module API does not support strings containing " "surrogates." msgstr "" -#: library/sqlite3.rst:2594 +#: library/sqlite3.rst:2598 msgid ":ref:`unicode-howto`" msgstr "" -#: library/sqlite3.rst:2600 +#: library/sqlite3.rst:2604 msgid "Explanation" msgstr "" -#: library/sqlite3.rst:2606 +#: library/sqlite3.rst:2610 msgid "Transaction control" msgstr "" -#: library/sqlite3.rst:2608 +#: library/sqlite3.rst:2612 msgid "" ":mod:`!sqlite3` offers multiple methods of controlling whether, when and how " "database transactions are opened and closed. :ref:`sqlite3-transaction-" @@ -2972,24 +2977,24 @@ msgid "" "isolation-level` retains the pre-Python 3.12 behaviour." msgstr "" -#: library/sqlite3.rst:2617 +#: library/sqlite3.rst:2621 msgid "Transaction control via the ``autocommit`` attribute" msgstr "" -#: library/sqlite3.rst:2619 +#: library/sqlite3.rst:2623 msgid "" "The recommended way of controlling transaction behaviour is through the :" "attr:`Connection.autocommit` attribute, which should preferably be set using " "the *autocommit* parameter of :func:`connect`." msgstr "" -#: library/sqlite3.rst:2624 +#: library/sqlite3.rst:2628 msgid "" "It is suggested to set *autocommit* to ``False``, which implies :pep:`249`-" "compliant transaction control. This means:" msgstr "" -#: library/sqlite3.rst:2628 +#: library/sqlite3.rst:2632 msgid "" ":mod:`!sqlite3` ensures that a transaction is always open, so :func:" "`connect`, :meth:`Connection.commit`, and :meth:`Connection.rollback` will " @@ -2998,21 +3003,21 @@ msgid "" "when opening transactions." msgstr "" -#: library/sqlite3.rst:2633 +#: library/sqlite3.rst:2637 msgid "Transactions should be committed explicitly using :meth:`!commit`." msgstr "" -#: library/sqlite3.rst:2634 +#: library/sqlite3.rst:2638 msgid "Transactions should be rolled back explicitly using :meth:`!rollback`." msgstr "" -#: library/sqlite3.rst:2635 +#: library/sqlite3.rst:2639 msgid "" "An implicit rollback is performed if the database is :meth:`~Connection." "close`-ed with pending changes." msgstr "" -#: library/sqlite3.rst:2638 +#: library/sqlite3.rst:2642 msgid "" "Set *autocommit* to ``True`` to enable SQLite's `autocommit mode`_. In this " "mode, :meth:`Connection.commit` and :meth:`Connection.rollback` have no " @@ -3021,25 +3026,25 @@ msgid "" "in_transaction` to query the low-level SQLite autocommit mode." msgstr "" -#: library/sqlite3.rst:2646 +#: library/sqlite3.rst:2650 msgid "" "Set *autocommit* to :data:`LEGACY_TRANSACTION_CONTROL` to leave transaction " "control behaviour to the :attr:`Connection.isolation_level` attribute. See :" "ref:`sqlite3-transaction-control-isolation-level` for more information." msgstr "" -#: library/sqlite3.rst:2655 +#: library/sqlite3.rst:2659 msgid "Transaction control via the ``isolation_level`` attribute" msgstr "" -#: library/sqlite3.rst:2659 +#: library/sqlite3.rst:2663 msgid "" "The recommended way of controlling transactions is via the :attr:" "`~Connection.autocommit` attribute. See :ref:`sqlite3-transaction-control-" "autocommit`." msgstr "" -#: library/sqlite3.rst:2663 +#: library/sqlite3.rst:2667 msgid "" "If :attr:`Connection.autocommit` is set to :data:" "`LEGACY_TRANSACTION_CONTROL` (the default), transaction behaviour is " @@ -3047,7 +3052,7 @@ msgid "" "Otherwise, :attr:`!isolation_level` has no effect." msgstr "" -#: library/sqlite3.rst:2669 +#: library/sqlite3.rst:2673 msgid "" "If the connection attribute :attr:`~Connection.isolation_level` is not " "``None``, new transactions are implicitly opened before :meth:`~Cursor." @@ -3061,7 +3066,7 @@ msgid "" "attribute." msgstr "" -#: library/sqlite3.rst:2682 +#: library/sqlite3.rst:2686 msgid "" "If :attr:`~Connection.isolation_level` is set to ``None``, no transactions " "are implicitly opened at all. This leaves the underlying SQLite library in " @@ -3071,33 +3076,33 @@ msgid "" "in_transaction` attribute." msgstr "" -#: library/sqlite3.rst:2690 +#: library/sqlite3.rst:2694 msgid "" "The :meth:`~Cursor.executescript` method implicitly commits any pending " "transaction before execution of the given SQL script, regardless of the " "value of :attr:`~Connection.isolation_level`." msgstr "" -#: library/sqlite3.rst:2694 +#: library/sqlite3.rst:2698 msgid "" ":mod:`!sqlite3` used to implicitly commit an open transaction before DDL " "statements. This is no longer the case." msgstr "" -#: library/sqlite3.rst:2698 +#: library/sqlite3.rst:2702 msgid "" "The recommended way of controlling transactions is now via the :attr:" "`~Connection.autocommit` attribute." msgstr "" -#: library/sqlite3.rst:1450 +#: library/sqlite3.rst:1453 msgid "? (question mark)" msgstr "" -#: library/sqlite3.rst:1451 +#: library/sqlite3.rst:1454 msgid "in SQL statements" msgstr "" -#: library/sqlite3.rst:1451 +#: library/sqlite3.rst:1454 msgid ": (colon)" msgstr "" diff --git a/library/ssl.po b/library/ssl.po index fa1a99248..a8d287f87 100644 --- a/library/ssl.po +++ b/library/ssl.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -419,10 +419,10 @@ msgstr "" msgid "" ">>> import ssl\n" ">>> timestamp = ssl.cert_time_to_seconds(\"Jan 5 09:34:43 2018 GMT\")\n" -">>> timestamp \n" +">>> timestamp\n" "1515144883\n" ">>> from datetime import datetime\n" -">>> print(datetime.utcfromtimestamp(timestamp)) \n" +">>> print(datetime.utcfromtimestamp(timestamp))\n" "2018-01-05 09:34:43" msgstr "" @@ -2253,8 +2253,8 @@ msgstr "" msgid "" "A :class:`TLSVersion` enum member representing the highest supported TLS " "version. The value defaults to :attr:`TLSVersion.MAXIMUM_SUPPORTED`. The " -"attribute is read-only for protocols other than :attr:`PROTOCOL_TLS`, :attr:" -"`PROTOCOL_TLS_CLIENT`, and :attr:`PROTOCOL_TLS_SERVER`." +"attribute is read-only for protocols other than :const:`PROTOCOL_TLS`, :" +"const:`PROTOCOL_TLS_CLIENT`, and :const:`PROTOCOL_TLS_SERVER`." msgstr "" #: library/ssl.rst:1892 @@ -2275,7 +2275,7 @@ msgstr "" #: library/ssl.rst:1912 msgid "" -"Control the number of TLS 1.3 session tickets of a :attr:" +"Control the number of TLS 1.3 session tickets of a :const:" "`PROTOCOL_TLS_SERVER` context. The setting has no impact on TLS 1.0 to 1.2 " "connections." msgstr "" @@ -2862,10 +2862,11 @@ msgstr "" #: library/ssl.rst:2371 msgid "" "The :mod:`asyncio` module supports :ref:`non-blocking SSL sockets ` and provides a higher level API. It polls for events using " -"the :mod:`selectors` module and handles :exc:`SSLWantWriteError`, :exc:" -"`SSLWantReadError` and :exc:`BlockingIOError` exceptions. It runs the SSL " -"handshake asynchronously as well." +"nonblocking>` and provides a higher level :ref:`Streams API `. It polls for events using the :mod:`selectors` module and " +"handles :exc:`SSLWantWriteError`, :exc:`SSLWantReadError` and :exc:" +"`BlockingIOError` exceptions. It runs the SSL handshake asynchronously as " +"well." msgstr "" #: library/ssl.rst:2380 diff --git a/library/statistics.po b/library/statistics.po index f94304295..a7004f83d 100644 --- a/library/statistics.po +++ b/library/statistics.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -1403,7 +1403,7 @@ msgid "" ">>> X = NormalDist(10, 2.5).samples(n, seed=3652260728)\n" ">>> Y = NormalDist(15, 1.75).samples(n, seed=4582495471)\n" ">>> Z = NormalDist(50, 1.25).samples(n, seed=6582483453)\n" -">>> quantiles(map(model, X, Y, Z)) \n" +">>> quantiles(map(model, X, Y, Z))\n" "[1.4591308524824727, 1.8035946855390597, 2.175091447274739]" msgstr "" diff --git a/library/stdtypes.po b/library/stdtypes.po index 128b201c9..30d2af10a 100644 --- a/library/stdtypes.po +++ b/library/stdtypes.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2023-02-01 18:55-0500\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -137,8 +137,8 @@ msgstr "İşlem" msgid "Result" msgstr "Sonuç" -#: library/stdtypes.rst:276 library/stdtypes.rst:965 library/stdtypes.rst:2423 -#: library/stdtypes.rst:3642 +#: library/stdtypes.rst:276 library/stdtypes.rst:965 library/stdtypes.rst:2429 +#: library/stdtypes.rst:3648 msgid "Notes" msgstr "Notlar" @@ -150,7 +150,7 @@ msgstr "``x or y``" msgid "if *x* is true, then *x*, else *y*" msgstr "*x* doğruysa, *x*, aksi halde *y*" -#: library/stdtypes.rst:967 library/stdtypes.rst:1181 library/stdtypes.rst:3648 +#: library/stdtypes.rst:967 library/stdtypes.rst:1181 library/stdtypes.rst:3654 msgid "\\(1)" msgstr "\\(1)" @@ -162,8 +162,8 @@ msgstr "``x and y``" msgid "if *x* is false, then *x*, else *y*" msgstr "*x* yanlışsa, *x*, aksi halde *y*" -#: library/stdtypes.rst:289 library/stdtypes.rst:1209 library/stdtypes.rst:2435 -#: library/stdtypes.rst:3654 +#: library/stdtypes.rst:289 library/stdtypes.rst:1209 library/stdtypes.rst:2441 +#: library/stdtypes.rst:3660 msgid "\\(2)" msgstr "\\(2)" @@ -175,14 +175,14 @@ msgstr "``not x``" msgid "if *x* is false, then ``True``, else ``False``" msgstr "*x* yanlışsa, ``True``, aksi halde ``False``" -#: library/stdtypes.rst:979 library/stdtypes.rst:2437 library/stdtypes.rst:2441 -#: library/stdtypes.rst:3656 library/stdtypes.rst:3660 -#: library/stdtypes.rst:3662 +#: library/stdtypes.rst:979 library/stdtypes.rst:2443 library/stdtypes.rst:2447 +#: library/stdtypes.rst:3662 library/stdtypes.rst:3666 +#: library/stdtypes.rst:3668 msgid "\\(3)" msgstr "\\(3)" -#: library/stdtypes.rst:320 library/stdtypes.rst:1016 library/stdtypes.rst:2469 -#: library/stdtypes.rst:3692 +#: library/stdtypes.rst:320 library/stdtypes.rst:1016 library/stdtypes.rst:2475 +#: library/stdtypes.rst:3698 msgid "Notes:" msgstr "Notlar:" @@ -233,8 +233,8 @@ msgstr "" msgid "This table summarizes the comparison operations:" msgstr "Bu tablo karşılaştırma operatörlerini özetlemektedir:" -#: library/stdtypes.rst:2400 library/stdtypes.rst:3619 -#: library/stdtypes.rst:3642 +#: library/stdtypes.rst:2406 library/stdtypes.rst:3625 +#: library/stdtypes.rst:3648 msgid "Meaning" msgstr "Anlamı" @@ -574,7 +574,7 @@ msgstr "" "gerçek kısmı *re*, sanal kısmı *im* olan bir karmaşık sayı. *im* varsayılan " "olarak sıfırdır." -#: library/stdtypes.rst:1202 library/stdtypes.rst:3679 +#: library/stdtypes.rst:1202 library/stdtypes.rst:3685 msgid "\\(6)" msgstr "\\(6)" @@ -610,8 +610,8 @@ msgstr "``pow(x, y)``" msgid "*x* to the power *y*" msgstr "*x* üzeri *y*" -#: library/stdtypes.rst:313 library/stdtypes.rst:1194 library/stdtypes.rst:2459 -#: library/stdtypes.rst:3675 library/stdtypes.rst:3682 +#: library/stdtypes.rst:313 library/stdtypes.rst:1194 library/stdtypes.rst:2465 +#: library/stdtypes.rst:3681 library/stdtypes.rst:3688 msgid "\\(5)" msgstr "\\(5)" @@ -784,8 +784,8 @@ msgstr "``x | y``" msgid "bitwise :dfn:`or` of *x* and *y*" msgstr "bit düzeyinde *x* :dfn:`or` *y*" -#: library/stdtypes.rst:421 library/stdtypes.rst:1216 library/stdtypes.rst:2449 -#: library/stdtypes.rst:3668 +#: library/stdtypes.rst:421 library/stdtypes.rst:1216 library/stdtypes.rst:2455 +#: library/stdtypes.rst:3674 msgid "\\(4)" msgstr "\\(4)" @@ -1550,9 +1550,9 @@ msgstr "Oluşturucu Tipleri" #, fuzzy msgid "" "Python's :term:`generator`\\s provide a convenient way to implement the " -"iterator protocol. If a container object's :meth:`~iterator.__iter__` " -"method is implemented as a generator, it will automatically return an " -"iterator object (technically, a generator object) supplying the :meth:`!" +"iterator protocol. If a container object's :meth:`~object.__iter__` method " +"is implemented as a generator, it will automatically return an iterator " +"object (technically, a generator object) supplying the :meth:`~iterator." "__iter__` and :meth:`~generator.__next__` methods. More information about " "generators can be found in :ref:`the documentation for the yield expression " "`." @@ -1729,7 +1729,7 @@ msgstr "" "*x* 'in *s* içindeki ilk görüldüğü dizini (*i* dizininde veya sonrasında ve " "*j* dizininden önce)" -#: library/stdtypes.rst:3650 +#: library/stdtypes.rst:3656 msgid "\\(8)" msgstr "\\(8)" @@ -2925,7 +2925,7 @@ msgstr "" msgid "Return the string encoded to :class:`bytes`." msgstr "" -#: library/stdtypes.rst:2815 +#: library/stdtypes.rst:2821 msgid "" "*encoding* defaults to ``'utf-8'``; see :ref:`standard-encodings` for " "possible values." @@ -2953,11 +2953,11 @@ msgid "" "ref:`debug build ` is used." msgstr "" -#: library/stdtypes.rst:2834 +#: library/stdtypes.rst:2840 msgid "Added support for keyword arguments." msgstr "" -#: library/stdtypes.rst:2837 +#: library/stdtypes.rst:2843 msgid "" "The value of the *errors* argument is now checked in :ref:`devmode` and in :" "ref:`debug mode `." @@ -3226,25 +3226,32 @@ msgstr "" "Numeric_Type=Numeric özellik değerine sahip karakterlerdir." #: library/stdtypes.rst:1879 +#, fuzzy +msgid "" +"Return true if all characters in the string are printable, false if it " +"contains at least one non-printable character." +msgstr "" +"Dizedeki tüm büyük harfli karakterler [4]_ küçük harfli ise ve en az bir " +"büyük harfli karakter varsa ``True``, aksi takdirde ``False`` döndürür." + +#: library/stdtypes.rst:1882 +msgid "" +"Here \"printable\" means the character is suitable for :func:`repr` to use " +"in its output; \"non-printable\" means that :func:`repr` on built-in types " +"will hex-escape the character. It has no bearing on the handling of strings " +"written to :data:`sys.stdout` or :data:`sys.stderr`." +msgstr "" + +#: library/stdtypes.rst:1887 msgid "" -"Return ``True`` if all characters in the string are printable or the string " -"is empty, ``False`` otherwise. Nonprintable characters are those characters " -"defined in the Unicode character database as \"Other\" or \"Separator\", " -"excepting the ASCII space (0x20) which is considered printable. (Note that " -"printable characters in this context are those which should not be escaped " -"when :func:`repr` is invoked on a string. It has no bearing on the handling " -"of strings written to :data:`sys.stdout` or :data:`sys.stderr`.)" -msgstr "" -"Dizedeki tüm karakterler yazdırılabilirse veya dize boşsa ``True``, aksi " -"takdirde ``False`` döndürür. Yazdırılamayan karakterler, yazdırılabilir " -"olarak kabul edilen ASCII boşluğu (0x20) dışında, Unicode karakter " -"veritabanında \"Diğer\" veya \"Ayırıcı\" olarak tanımlanan karakterlerdir. " -"(Bu bağlamda, yazdırılabilir karakterlerin :func:`repr` bir dize üzerinde " -"çağrıldığında kaçılmaması gereken karakterler olduğunu unutmayın. Bunun :" -"data:`sys.stdout` veya :data:`sys.stderr` dosyalarına yazılan dizelerin " -"işlenmesiyle bir ilgisi yoktur)" - -#: library/stdtypes.rst:1890 +"The printable characters are those which in the Unicode character database " +"(see :mod:`unicodedata`) have a general category in group Letter, Mark, " +"Number, Punctuation, or Symbol (L, M, N, P, or S); plus the ASCII space " +"0x20. Nonprintable characters are those in group Separator or Other (Z or " +"C), except the ASCII space." +msgstr "" + +#: library/stdtypes.rst:1896 msgid "" "Return ``True`` if there are only whitespace characters in the string and " "there is at least one character, ``False`` otherwise." @@ -3252,7 +3259,7 @@ msgstr "" "Dizede yalnızca boşluk karakterleri varsa ve en az bir karakter varsa " "``True``, aksi takdirde ``False`` döndürür." -#: library/stdtypes.rst:1893 +#: library/stdtypes.rst:1899 msgid "" "A character is *whitespace* if in the Unicode character database (see :mod:" "`unicodedata`), either its general category is ``Zs`` (\"Separator, " @@ -3262,7 +3269,7 @@ msgstr "" "sınıfı ``WS``, ``B`` veya ``S``’den biri ise Unicode karakter veritabanında " "(bkz. :mod:`unicodedata`) *beyaz boşluk karakteri*’dir." -#: library/stdtypes.rst:1901 +#: library/stdtypes.rst:1907 msgid "" "Return ``True`` if the string is a titlecased string and there is at least " "one character, for example uppercase characters may only follow uncased " @@ -3274,7 +3281,7 @@ msgstr "" "karakterleri ve küçük harfli karakterler sadece büyük harfli karakterleri " "takip edebilir. Aksi takdirde ``False`` döndürür." -#: library/stdtypes.rst:1908 +#: library/stdtypes.rst:1914 msgid "" "Return ``True`` if all cased characters [4]_ in the string are uppercase and " "there is at least one cased character, ``False`` otherwise." @@ -3282,7 +3289,7 @@ msgstr "" "Dizedeki tüm karakterler [4]_ büyük harfli ise ve en az bir büyük harfli " "karakter varsa ``True``, aksi takdirde ``False`` döndürür." -#: library/stdtypes.rst:1926 +#: library/stdtypes.rst:1932 msgid "" "Return a string which is the concatenation of the strings in *iterable*. A :" "exc:`TypeError` will be raised if there are any non-string values in " @@ -3294,7 +3301,7 @@ msgstr "" "olmayan değerler varsa bir :exc:`TypeError` oluşacaktır. Öğeler arasındaki " "ayırıcı, bu yöntemi sağlayan dizedir." -#: library/stdtypes.rst:1934 +#: library/stdtypes.rst:1940 msgid "" "Return the string left justified in a string of length *width*. Padding is " "done using the specified *fillchar* (default is an ASCII space). The " @@ -3305,7 +3312,7 @@ msgstr "" "boşluğudur). *width*, ``len(s)`` değerinden küçük veya ona eşitse orijinal " "dize döndürülür." -#: library/stdtypes.rst:1941 +#: library/stdtypes.rst:1947 msgid "" "Return a copy of the string with all the cased characters [4]_ converted to " "lowercase." @@ -3313,7 +3320,7 @@ msgstr "" "Dizenin tüm büyük harfli karakterlerini [4]_ küçük harfe dönüştürerek bir " "kopyasını döndürür." -#: library/stdtypes.rst:1944 +#: library/stdtypes.rst:1950 #, fuzzy msgid "" "The lowercasing algorithm used is `described in section 3.13 'Default Case " @@ -3322,7 +3329,7 @@ msgid "" msgstr "" "Harf küçültme algoritması, Unicode Standardının 3.13 bölümünde açıklanmıştır." -#: library/stdtypes.rst:1951 +#: library/stdtypes.rst:1957 msgid "" "Return a copy of the string with leading characters removed. The *chars* " "argument is a string specifying the set of characters to be removed. If " @@ -3336,7 +3343,7 @@ msgstr "" "boşlukları kaldırır. *chars* bağımsız değişkeni bir ön ek değildir; bunun " "yerine, değerlerinin tüm kombinasyonları çıkarılır::" -#: library/stdtypes.rst:1956 +#: library/stdtypes.rst:1962 msgid "" ">>> ' spacious '.lstrip()\n" "'spacious '\n" @@ -3344,7 +3351,7 @@ msgid "" "'example.com'" msgstr "" -#: library/stdtypes.rst:1961 +#: library/stdtypes.rst:1967 msgid "" "See :meth:`str.removeprefix` for a method that will remove a single prefix " "string rather than all of a set of characters. For example::" @@ -3353,7 +3360,7 @@ msgstr "" "kaldıracak bir yöntem için :meth:`str.removeprefix` bölümüne bakın. " "Örneğin::" -#: library/stdtypes.rst:1964 +#: library/stdtypes.rst:1970 msgid "" ">>> 'Arthur: three!'.lstrip('Arthur: ')\n" "'ee!'\n" @@ -3361,7 +3368,7 @@ msgid "" "'three!'" msgstr "" -#: library/stdtypes.rst:1972 +#: library/stdtypes.rst:1978 msgid "" "This static method returns a translation table usable for :meth:`str." "translate`." @@ -3369,7 +3376,7 @@ msgstr "" "Bu statik yöntem :meth:`str.translate` için kullanılabilecek bir çeviri " "tablosu döndürür." -#: library/stdtypes.rst:1974 +#: library/stdtypes.rst:1980 msgid "" "If there is only one argument, it must be a dictionary mapping Unicode " "ordinals (integers) or characters (strings of length 1) to Unicode ordinals, " @@ -3382,7 +3389,7 @@ msgstr "" "sözlük olmalıdır. Karakter anahtarları daha sonra sıradanlara " "dönüştürülecektir." -#: library/stdtypes.rst:1979 +#: library/stdtypes.rst:1985 msgid "" "If there are two arguments, they must be strings of equal length, and in the " "resulting dictionary, each character in x will be mapped to the character at " @@ -3394,7 +3401,7 @@ msgstr "" "eşlenecektir. Üçüncü bir bağımsız değişken varsa, karakterleri sonuçta " "``None`` ile eşlenecek bir dizge olmalıdır." -#: library/stdtypes.rst:1987 +#: library/stdtypes.rst:1993 msgid "" "Split the string at the first occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself, and the part " @@ -3406,7 +3413,7 @@ msgstr "" "Ayırıcı bulunamazsa, dizenin kendisini ve ardından iki boş dizeyi içeren bir " "3'lü döndürür." -#: library/stdtypes.rst:1995 +#: library/stdtypes.rst:2001 msgid "" "If the string starts with the *prefix* string, return " "``string[len(prefix):]``. Otherwise, return a copy of the original string::" @@ -3414,7 +3421,7 @@ msgstr "" "Eğer dize *prefix* dizesi ile başlıyorsa, ``dize[len(prefix):]`` döndürür. " "Aksi takdirde, orijinal dizgenin bir kopyasını döndürür::" -#: library/stdtypes.rst:1999 +#: library/stdtypes.rst:2005 msgid "" ">>> 'TestHook'.removeprefix('Test')\n" "'Hook'\n" @@ -3422,7 +3429,7 @@ msgid "" "'BaseTestCase'" msgstr "" -#: library/stdtypes.rst:2009 +#: library/stdtypes.rst:2015 msgid "" "If the string ends with the *suffix* string and that *suffix* is not empty, " "return ``string[:-len(suffix)]``. Otherwise, return a copy of the original " @@ -3432,7 +3439,7 @@ msgstr "" "``dize[:-len(suffix)]`` döndürür. Aksi takdirde, orijinal dizenin bir " "kopyasını döndürür::" -#: library/stdtypes.rst:2013 +#: library/stdtypes.rst:2019 msgid "" ">>> 'MiscTests'.removesuffix('Tests')\n" "'Misc'\n" @@ -3440,7 +3447,7 @@ msgid "" "'TmpDirMixin'" msgstr "" -#: library/stdtypes.rst:2023 +#: library/stdtypes.rst:2029 msgid "" "Return a copy of the string with all occurrences of substring *old* replaced " "by *new*. If the optional argument *count* is given, only the first *count* " @@ -3450,7 +3457,7 @@ msgstr "" "kopyasını döndürür. İsteğe bağlı olarak *count* bağımsız değişkeni " "verilirse, yalnızca ilk *count* oluşumu değiştirilir." -#: library/stdtypes.rst:2030 +#: library/stdtypes.rst:2036 msgid "" "Return the highest index in the string where substring *sub* is found, such " "that *sub* is contained within ``s[start:end]``. Optional arguments *start* " @@ -3461,7 +3468,7 @@ msgstr "" "*end* dilim gösterimindeki gibi yorumlanır. Başarısızlık durumunda ``-1`` " "döndürür." -#: library/stdtypes.rst:2037 +#: library/stdtypes.rst:2043 msgid "" "Like :meth:`rfind` but raises :exc:`ValueError` when the substring *sub* is " "not found." @@ -3469,7 +3476,7 @@ msgstr "" ":meth:`rfind` gibi, ancak *sub* alt dizesi bulunamadığında :exc:`ValueError` " "yükseltir." -#: library/stdtypes.rst:2043 +#: library/stdtypes.rst:2049 msgid "" "Return the string right justified in a string of length *width*. Padding is " "done using the specified *fillchar* (default is an ASCII space). The " @@ -3480,7 +3487,7 @@ msgstr "" "boşluğudur). *width*, ``len(s)`` değerinden küçük veya ona eşitse orijinal " "dize döndürülür." -#: library/stdtypes.rst:2050 +#: library/stdtypes.rst:2056 msgid "" "Split the string at the last occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself, and the part " @@ -3492,7 +3499,7 @@ msgstr "" "Ayırıcı bulunamazsa, dizenin kendisini ve ardından iki boş dizeyi içeren bir " "3'lü döndürür." -#: library/stdtypes.rst:2058 +#: library/stdtypes.rst:2064 msgid "" "Return a list of the words in the string, using *sep* as the delimiter " "string. If *maxsplit* is given, at most *maxsplit* splits are done, the " @@ -3506,7 +3513,7 @@ msgstr "" "herhangi bir boşluk dizesi ayırıcıdır. Sağdan bölme dışında, :meth:`rsplit` " "aşağıda ayrıntılı olarak açıklanan :meth:`split` gibi davranır." -#: library/stdtypes.rst:2067 +#: library/stdtypes.rst:2073 msgid "" "Return a copy of the string with trailing characters removed. The *chars* " "argument is a string specifying the set of characters to be removed. If " @@ -3520,7 +3527,7 @@ msgstr "" "boşlukları kaldırır. *chars* bağımsız değişkeni bir ön ek değildir; bunun " "yerine, değerlerinin tüm kombinasyonları çıkarılır::" -#: library/stdtypes.rst:2072 +#: library/stdtypes.rst:2078 msgid "" ">>> ' spacious '.rstrip()\n" "' spacious'\n" @@ -3528,7 +3535,7 @@ msgid "" "'mississ'" msgstr "" -#: library/stdtypes.rst:2077 +#: library/stdtypes.rst:2083 msgid "" "See :meth:`str.removesuffix` for a method that will remove a single suffix " "string rather than all of a set of characters. For example::" @@ -3537,7 +3544,7 @@ msgstr "" "kaldıracak bir yöntem için :meth:`str.removeprefix` bölümüne bakın. " "Örneğin::" -#: library/stdtypes.rst:2080 +#: library/stdtypes.rst:2086 msgid "" ">>> 'Monty Python'.rstrip(' Python')\n" "'M'\n" @@ -3545,7 +3552,7 @@ msgid "" "'Monty'" msgstr "" -#: library/stdtypes.rst:2087 +#: library/stdtypes.rst:2093 msgid "" "Return a list of the words in the string, using *sep* as the delimiter " "string. If *maxsplit* is given, at most *maxsplit* splits are done (thus, " @@ -3559,7 +3566,7 @@ msgstr "" "Eğer *maxsplit* belirtilmemişse veya ``-1`` ise, bölme sayısında bir " "sınırlama yoktur (tüm olası bölmeler yapılır)." -#: library/stdtypes.rst:2093 +#: library/stdtypes.rst:2099 #, fuzzy msgid "" "If *sep* is given, consecutive delimiters are not grouped together and are " @@ -3575,15 +3582,15 @@ msgstr "" "(örneğin, ``'1<>2<>3'.split('<>')``, ``['1', '2', '3']`` döndürür). Boş bir " "dizeyi belirtilen bir ayırıcıyla bölmek ``['']`` döndürür." -#: library/stdtypes.rst:2118 library/stdtypes.rst:2238 -#: library/stdtypes.rst:3152 library/stdtypes.rst:3261 -#: library/stdtypes.rst:3302 library/stdtypes.rst:3344 -#: library/stdtypes.rst:3376 library/stdtypes.rst:3426 -#: library/stdtypes.rst:3495 library/stdtypes.rst:3519 +#: library/stdtypes.rst:2124 library/stdtypes.rst:2244 +#: library/stdtypes.rst:3158 library/stdtypes.rst:3267 +#: library/stdtypes.rst:3308 library/stdtypes.rst:3350 +#: library/stdtypes.rst:3382 library/stdtypes.rst:3432 +#: library/stdtypes.rst:3501 library/stdtypes.rst:3525 msgid "For example::" msgstr "Örneğin: ::" -#: library/stdtypes.rst:2102 +#: library/stdtypes.rst:2108 msgid "" ">>> '1,2,3'.split(',')\n" "['1', '2', '3']\n" @@ -3595,7 +3602,7 @@ msgid "" "['1', '2', '3<4']" msgstr "" -#: library/stdtypes.rst:2111 +#: library/stdtypes.rst:2117 msgid "" "If *sep* is not specified or is ``None``, a different splitting algorithm is " "applied: runs of consecutive whitespace are regarded as a single separator, " @@ -3610,7 +3617,7 @@ msgstr "" "dizeler olmaz. Dolayısıyla, boş bir dizeyi veya sadece beyaz boşluktan " "oluşan bir dizeyi ``None`` ayırıcısıyla bölmek ``[]`` döndürür." -#: library/stdtypes.rst:2120 +#: library/stdtypes.rst:2126 msgid "" ">>> '1 2 3'.split()\n" "['1', '2', '3']\n" @@ -3620,7 +3627,7 @@ msgid "" "['1', '2', '3']" msgstr "" -#: library/stdtypes.rst:2133 +#: library/stdtypes.rst:2139 msgid "" "Return a list of the lines in the string, breaking at line boundaries. Line " "breaks are not included in the resulting list unless *keepends* is given and " @@ -3630,7 +3637,7 @@ msgstr "" "Satır sonları için *keepends* belirtilmediği ve true değerinde olmadığı " "sürece, satır sonları sonuç listesine dahil edilmez." -#: library/stdtypes.rst:2137 +#: library/stdtypes.rst:2143 msgid "" "This method splits on the following line boundaries. In particular, the " "boundaries are a superset of :term:`universal newlines`." @@ -3638,107 +3645,107 @@ msgstr "" "Bu yöntem aşağıdaki satır sınırlarında bölme yapar. Spesifik olarak, " "sınırlar :term:`universal newlines` 'ın bir üst kümesidir." -#: library/stdtypes.rst:2141 +#: library/stdtypes.rst:2147 msgid "Representation" msgstr "Temsil" -#: library/stdtypes.rst:2141 +#: library/stdtypes.rst:2147 msgid "Description" msgstr "Açıklama" -#: library/stdtypes.rst:2143 +#: library/stdtypes.rst:2149 msgid "``\\n``" msgstr "``\\n``" -#: library/stdtypes.rst:2143 +#: library/stdtypes.rst:2149 msgid "Line Feed" msgstr "Satır Atlama" -#: library/stdtypes.rst:2145 +#: library/stdtypes.rst:2151 msgid "``\\r``" msgstr "``\\r``" -#: library/stdtypes.rst:2145 +#: library/stdtypes.rst:2151 msgid "Carriage Return" msgstr "Satır Başına Alma" -#: library/stdtypes.rst:2147 +#: library/stdtypes.rst:2153 msgid "``\\r\\n``" msgstr "``\\r\\n``" -#: library/stdtypes.rst:2147 +#: library/stdtypes.rst:2153 msgid "Carriage Return + Line Feed" msgstr "Satır Başına Alma + Satır Atlama" -#: library/stdtypes.rst:2149 +#: library/stdtypes.rst:2155 msgid "``\\v`` or ``\\x0b``" msgstr "``\\v`` or ``\\x0b``" -#: library/stdtypes.rst:2149 +#: library/stdtypes.rst:2155 msgid "Line Tabulation" msgstr "Satır Tablolama" -#: library/stdtypes.rst:2151 +#: library/stdtypes.rst:2157 msgid "``\\f`` or ``\\x0c``" msgstr "``\\f`` or ``\\x0c``" -#: library/stdtypes.rst:2151 +#: library/stdtypes.rst:2157 msgid "Form Feed" msgstr "Form Besleme" -#: library/stdtypes.rst:2153 +#: library/stdtypes.rst:2159 msgid "``\\x1c``" msgstr "``\\x1c``" -#: library/stdtypes.rst:2153 +#: library/stdtypes.rst:2159 msgid "File Separator" msgstr "Dosya Ayırıcı" -#: library/stdtypes.rst:2155 +#: library/stdtypes.rst:2161 msgid "``\\x1d``" msgstr "``\\x1d``" -#: library/stdtypes.rst:2155 +#: library/stdtypes.rst:2161 msgid "Group Separator" msgstr "Grup Ayırıcı" -#: library/stdtypes.rst:2157 +#: library/stdtypes.rst:2163 msgid "``\\x1e``" msgstr "``\\x1e``" -#: library/stdtypes.rst:2157 +#: library/stdtypes.rst:2163 msgid "Record Separator" msgstr "Kayıt Ayırıcı" -#: library/stdtypes.rst:2159 +#: library/stdtypes.rst:2165 msgid "``\\x85``" msgstr "``\\x85``" -#: library/stdtypes.rst:2159 +#: library/stdtypes.rst:2165 msgid "Next Line (C1 Control Code)" msgstr "Yeni Satır (C1 Denetim Kodu)" -#: library/stdtypes.rst:2161 +#: library/stdtypes.rst:2167 msgid "``\\u2028``" msgstr "``\\u2028``" -#: library/stdtypes.rst:2161 +#: library/stdtypes.rst:2167 msgid "Line Separator" msgstr "Satır Ayrıcı" -#: library/stdtypes.rst:2163 +#: library/stdtypes.rst:2169 msgid "``\\u2029``" msgstr "``\\u2029``" -#: library/stdtypes.rst:2163 +#: library/stdtypes.rst:2169 msgid "Paragraph Separator" msgstr "Paragraf Ayırıcı" -#: library/stdtypes.rst:2168 +#: library/stdtypes.rst:2174 msgid "``\\v`` and ``\\f`` added to list of line boundaries." msgstr "``\\v`` ve ``\\f`` satır sınırlarına eklenir." -#: library/stdtypes.rst:2172 +#: library/stdtypes.rst:2178 msgid "" ">>> 'ab c\\n\\nde fg\\rkl\\r\\n'.splitlines()\n" "['ab c', '', 'de fg', 'kl']\n" @@ -3746,7 +3753,7 @@ msgid "" "['ab c\\n', '\\n', 'de fg\\r', 'kl\\r\\n']" msgstr "" -#: library/stdtypes.rst:2177 +#: library/stdtypes.rst:2183 msgid "" "Unlike :meth:`~str.split` when a delimiter string *sep* is given, this " "method returns an empty list for the empty string, and a terminal line break " @@ -3756,7 +3763,7 @@ msgstr "" "farklı olarak, bu yöntem boş dize için boş bir liste döndürür ve bir " "terminal satır sonu fazladan bir satır ile sonuçlanmaz::" -#: library/stdtypes.rst:2181 +#: library/stdtypes.rst:2187 msgid "" ">>> \"\".splitlines()\n" "[]\n" @@ -3764,11 +3771,11 @@ msgid "" "['One line']" msgstr "" -#: library/stdtypes.rst:2186 +#: library/stdtypes.rst:2192 msgid "For comparison, ``split('\\n')`` gives::" msgstr "Kıyaslayacak olursak ``split(‘\\n’)`` şu değeri verir::" -#: library/stdtypes.rst:2188 +#: library/stdtypes.rst:2194 msgid "" ">>> ''.split('\\n')\n" "['']\n" @@ -3776,7 +3783,7 @@ msgid "" "['Two lines', '']" msgstr "" -#: library/stdtypes.rst:2196 +#: library/stdtypes.rst:2202 msgid "" "Return ``True`` if string starts with the *prefix*, otherwise return " "``False``. *prefix* can also be a tuple of prefixes to look for. With " @@ -3788,7 +3795,7 @@ msgstr "" "İsteğe bağlı *start* ile, o konumdan başlayan dizeyi sınar. İsteğe bağlı " "*end* ile, dizeyi o konumda karşılaştırmayı durdurur." -#: library/stdtypes.rst:2204 +#: library/stdtypes.rst:2210 msgid "" "Return a copy of the string with the leading and trailing characters " "removed. The *chars* argument is a string specifying the set of characters " @@ -3803,7 +3810,7 @@ msgstr "" "veya son ek değildir; bunun yerine, değerlerinin tüm kombinasyonları " "çıkarılır::" -#: library/stdtypes.rst:2210 +#: library/stdtypes.rst:2216 msgid "" ">>> ' spacious '.strip()\n" "'spacious'\n" @@ -3811,7 +3818,7 @@ msgid "" "'example'" msgstr "" -#: library/stdtypes.rst:2215 +#: library/stdtypes.rst:2221 msgid "" "The outermost leading and trailing *chars* argument values are stripped from " "the string. Characters are removed from the leading end until reaching a " @@ -3823,14 +3830,14 @@ msgstr "" "karakterine ulaşılana kadar önde gelen uçtan çıkarılır. Benzer bir işlem son " "uçta da gerçekleşir. Örneğin::" -#: library/stdtypes.rst:2221 +#: library/stdtypes.rst:2227 msgid "" ">>> comment_string = '#....... Section 3.2.1 Issue #32 .......'\n" ">>> comment_string.strip('.#! ')\n" "'Section 3.2.1 Issue #32'" msgstr "" -#: library/stdtypes.rst:2228 +#: library/stdtypes.rst:2234 msgid "" "Return a copy of the string with uppercase characters converted to lowercase " "and vice versa. Note that it is not necessarily true that ``s.swapcase()." @@ -3840,7 +3847,7 @@ msgstr "" "dizenin bir kopyasını döndürür. ``s.swapcase().swapcase() == s`` ifadesinin " "mutlaka doğru olması gerekmediğine dikkat edin." -#: library/stdtypes.rst:2235 +#: library/stdtypes.rst:2241 msgid "" "Return a titlecased version of the string where words start with an " "uppercase character and the remaining characters are lowercase." @@ -3848,13 +3855,13 @@ msgstr "" "Sözcüklerin büyük harfle başladığı ve kalan karakterlerin küçük harf olduğu " "dizenin başlıklandırılmış bir sürümünü döndürür." -#: library/stdtypes.rst:2240 +#: library/stdtypes.rst:2246 msgid "" ">>> 'Hello world'.title()\n" "'Hello World'" msgstr "" -#: library/stdtypes.rst:3463 +#: library/stdtypes.rst:3469 msgid "" "The algorithm uses a simple language-independent definition of a word as " "groups of consecutive letters. The definition works in many contexts but it " @@ -3866,19 +3873,19 @@ msgstr "" "kısaltmalar ve iyeliklerdeki kesme işaretlerinin kelime sınırları " "oluşturduğu anlamına gelir ve bu istenen sonuç olmayabilir::" -#: library/stdtypes.rst:2248 +#: library/stdtypes.rst:2254 msgid "" ">>> \"they're bill's friends from the UK\".title()\n" "\"They'Re Bill'S Friends From The Uk\"" msgstr "" -#: library/stdtypes.rst:2251 +#: library/stdtypes.rst:2257 msgid "" "The :func:`string.capwords` function does not have this problem, as it " "splits words on spaces only." msgstr "" -#: library/stdtypes.rst:2254 +#: library/stdtypes.rst:2260 #, fuzzy msgid "" "Alternatively, a workaround for apostrophes can be constructed using regular " @@ -3887,7 +3894,7 @@ msgstr "" "Alternatif olarak, kesme işaretleri için geçici bir çözüm düzenli ifadeler " "kullanılarak oluşturulabilir::" -#: library/stdtypes.rst:2257 +#: library/stdtypes.rst:2263 msgid "" ">>> import re\n" ">>> def titlecase(s):\n" @@ -3899,7 +3906,7 @@ msgid "" "\"They're Bill's Friends.\"" msgstr "" -#: library/stdtypes.rst:2269 +#: library/stdtypes.rst:2275 #, fuzzy msgid "" "Return a copy of the string in which each character has been mapped through " @@ -3921,19 +3928,19 @@ msgstr "" "veya karakteri kendisiyle eşlemek için bir :exc:`LookupError` istisnası " "oluşturmak." -#: library/stdtypes.rst:2278 +#: library/stdtypes.rst:2284 msgid "" "You can use :meth:`str.maketrans` to create a translation map from character-" "to-character mappings in different formats." msgstr "" -#: library/stdtypes.rst:2281 +#: library/stdtypes.rst:2287 msgid "" "See also the :mod:`codecs` module for a more flexible approach to custom " "character mappings." msgstr "" -#: library/stdtypes.rst:2287 +#: library/stdtypes.rst:2293 msgid "" "Return a copy of the string with all the cased characters [4]_ converted to " "uppercase. Note that ``s.upper().isupper()`` might be ``False`` if ``s`` " @@ -3942,7 +3949,7 @@ msgid "" "titlecase)." msgstr "" -#: library/stdtypes.rst:2293 +#: library/stdtypes.rst:2299 #, fuzzy msgid "" "The uppercasing algorithm used is `described in section 3.13 'Default Case " @@ -3951,7 +3958,7 @@ msgid "" msgstr "" "Harf büyütme algoritması, Unicode Standardının 3.13 bölümünde açıklanmıştır." -#: library/stdtypes.rst:2300 +#: library/stdtypes.rst:2306 msgid "" "Return a copy of the string left filled with ASCII ``'0'`` digits to make a " "string of length *width*. A leading sign prefix (``'+'``/``'-'``) is handled " @@ -3959,7 +3966,7 @@ msgid "" "original string is returned if *width* is less than or equal to ``len(s)``." msgstr "" -#: library/stdtypes.rst:2308 +#: library/stdtypes.rst:2314 msgid "" ">>> \"42\".zfill(5)\n" "'00042'\n" @@ -3967,11 +3974,11 @@ msgid "" "'-0042'" msgstr "" -#: library/stdtypes.rst:2318 +#: library/stdtypes.rst:2324 msgid "``printf``-style String Formatting" msgstr "" -#: library/stdtypes.rst:2331 +#: library/stdtypes.rst:2337 msgid "" "The formatting operations described here exhibit a variety of quirks that " "lead to a number of common errors (such as failing to display tuples and " @@ -3982,7 +3989,7 @@ msgid "" "or extensibility." msgstr "" -#: library/stdtypes.rst:2339 +#: library/stdtypes.rst:2345 msgid "" "String objects have one unique built-in operation: the ``%`` operator " "(modulo). This is also known as the string *formatting* or *interpolation* " @@ -3992,7 +3999,7 @@ msgid "" "in the C language." msgstr "" -#: library/stdtypes.rst:2345 +#: library/stdtypes.rst:2351 msgid "" "If *format* requires a single argument, *values* may be a single non-tuple " "object. [5]_ Otherwise, *values* must be a tuple with exactly the number of " @@ -4000,36 +4007,36 @@ msgid "" "example, a dictionary)." msgstr "" -#: library/stdtypes.rst:3574 +#: library/stdtypes.rst:3580 msgid "" "A conversion specifier contains two or more characters and has the following " "components, which must occur in this order:" msgstr "" -#: library/stdtypes.rst:3577 +#: library/stdtypes.rst:3583 msgid "The ``'%'`` character, which marks the start of the specifier." msgstr "" -#: library/stdtypes.rst:3579 +#: library/stdtypes.rst:3585 msgid "" "Mapping key (optional), consisting of a parenthesised sequence of characters " "(for example, ``(somename)``)." msgstr "" -#: library/stdtypes.rst:3582 +#: library/stdtypes.rst:3588 msgid "" "Conversion flags (optional), which affect the result of some conversion " "types." msgstr "" -#: library/stdtypes.rst:3585 +#: library/stdtypes.rst:3591 msgid "" "Minimum field width (optional). If specified as an ``'*'`` (asterisk), the " "actual width is read from the next element of the tuple in *values*, and the " "object to convert comes after the minimum field width and optional precision." msgstr "" -#: library/stdtypes.rst:3589 +#: library/stdtypes.rst:3595 msgid "" "Precision (optional), given as a ``'.'`` (dot) followed by the precision. " "If specified as ``'*'`` (an asterisk), the actual precision is read from the " @@ -4037,15 +4044,15 @@ msgid "" "the precision." msgstr "" -#: library/stdtypes.rst:3594 +#: library/stdtypes.rst:3600 msgid "Length modifier (optional)." msgstr "" -#: library/stdtypes.rst:3596 +#: library/stdtypes.rst:3602 msgid "Conversion type." msgstr "" -#: library/stdtypes.rst:2379 +#: library/stdtypes.rst:2385 msgid "" "When the right argument is a dictionary (or other mapping type), then the " "formats in the string *must* include a parenthesised mapping key into that " @@ -4053,277 +4060,277 @@ msgid "" "selects the value to be formatted from the mapping. For example:" msgstr "" -#: library/stdtypes.rst:3607 +#: library/stdtypes.rst:3613 msgid "" "In this case no ``*`` specifiers may occur in a format (since they require a " "sequential parameter list)." msgstr "" -#: library/stdtypes.rst:3610 +#: library/stdtypes.rst:3616 msgid "The conversion flag characters are:" msgstr "" -#: library/stdtypes.rst:3619 +#: library/stdtypes.rst:3625 msgid "Flag" msgstr "" -#: library/stdtypes.rst:3621 +#: library/stdtypes.rst:3627 msgid "``'#'``" msgstr "" -#: library/stdtypes.rst:3621 +#: library/stdtypes.rst:3627 msgid "" "The value conversion will use the \"alternate form\" (where defined below)." msgstr "" -#: library/stdtypes.rst:3624 +#: library/stdtypes.rst:3630 msgid "``'0'``" msgstr "" -#: library/stdtypes.rst:3624 +#: library/stdtypes.rst:3630 msgid "The conversion will be zero padded for numeric values." msgstr "" -#: library/stdtypes.rst:3626 +#: library/stdtypes.rst:3632 msgid "``'-'``" msgstr "" -#: library/stdtypes.rst:3626 +#: library/stdtypes.rst:3632 msgid "" "The converted value is left adjusted (overrides the ``'0'`` conversion if " "both are given)." msgstr "" -#: library/stdtypes.rst:3629 +#: library/stdtypes.rst:3635 msgid "``' '``" msgstr "" -#: library/stdtypes.rst:3629 +#: library/stdtypes.rst:3635 msgid "" "(a space) A blank should be left before a positive number (or empty string) " "produced by a signed conversion." msgstr "" -#: library/stdtypes.rst:3632 +#: library/stdtypes.rst:3638 msgid "``'+'``" msgstr "" -#: library/stdtypes.rst:3632 +#: library/stdtypes.rst:3638 msgid "" "A sign character (``'+'`` or ``'-'``) will precede the conversion (overrides " "a \"space\" flag)." msgstr "" -#: library/stdtypes.rst:3636 +#: library/stdtypes.rst:3642 msgid "" "A length modifier (``h``, ``l``, or ``L``) may be present, but is ignored as " "it is not necessary for Python -- so e.g. ``%ld`` is identical to ``%d``." msgstr "" -#: library/stdtypes.rst:3639 +#: library/stdtypes.rst:3645 msgid "The conversion types are:" msgstr "" -#: library/stdtypes.rst:3642 +#: library/stdtypes.rst:3648 msgid "Conversion" msgstr "" -#: library/stdtypes.rst:3644 +#: library/stdtypes.rst:3650 msgid "``'d'``" msgstr "" -#: library/stdtypes.rst:2427 library/stdtypes.rst:3646 +#: library/stdtypes.rst:2433 library/stdtypes.rst:3652 msgid "Signed integer decimal." msgstr "" -#: library/stdtypes.rst:3646 +#: library/stdtypes.rst:3652 msgid "``'i'``" msgstr "" -#: library/stdtypes.rst:3648 +#: library/stdtypes.rst:3654 msgid "``'o'``" msgstr "" -#: library/stdtypes.rst:3648 +#: library/stdtypes.rst:3654 msgid "Signed octal value." msgstr "" -#: library/stdtypes.rst:3650 +#: library/stdtypes.rst:3656 msgid "``'u'``" msgstr "" -#: library/stdtypes.rst:3650 +#: library/stdtypes.rst:3656 msgid "Obsolete type -- it is identical to ``'d'``." msgstr "" -#: library/stdtypes.rst:3652 +#: library/stdtypes.rst:3658 msgid "``'x'``" msgstr "" -#: library/stdtypes.rst:3652 +#: library/stdtypes.rst:3658 msgid "Signed hexadecimal (lowercase)." msgstr "" -#: library/stdtypes.rst:3654 +#: library/stdtypes.rst:3660 msgid "``'X'``" msgstr "" -#: library/stdtypes.rst:3654 +#: library/stdtypes.rst:3660 msgid "Signed hexadecimal (uppercase)." msgstr "" -#: library/stdtypes.rst:3656 +#: library/stdtypes.rst:3662 msgid "``'e'``" msgstr "" -#: library/stdtypes.rst:3656 +#: library/stdtypes.rst:3662 msgid "Floating-point exponential format (lowercase)." msgstr "" -#: library/stdtypes.rst:3658 +#: library/stdtypes.rst:3664 msgid "``'E'``" msgstr "" -#: library/stdtypes.rst:3658 +#: library/stdtypes.rst:3664 msgid "Floating-point exponential format (uppercase)." msgstr "" -#: library/stdtypes.rst:3660 +#: library/stdtypes.rst:3666 msgid "``'f'``" msgstr "" -#: library/stdtypes.rst:2443 library/stdtypes.rst:3662 +#: library/stdtypes.rst:2449 library/stdtypes.rst:3668 msgid "Floating-point decimal format." msgstr "" -#: library/stdtypes.rst:3662 +#: library/stdtypes.rst:3668 msgid "``'F'``" msgstr "" -#: library/stdtypes.rst:3664 +#: library/stdtypes.rst:3670 msgid "``'g'``" msgstr "" -#: library/stdtypes.rst:3664 +#: library/stdtypes.rst:3670 msgid "" "Floating-point format. Uses lowercase exponential format if exponent is less " "than -4 or not less than precision, decimal format otherwise." msgstr "" -#: library/stdtypes.rst:3668 +#: library/stdtypes.rst:3674 msgid "``'G'``" msgstr "" -#: library/stdtypes.rst:3668 +#: library/stdtypes.rst:3674 msgid "" "Floating-point format. Uses uppercase exponential format if exponent is less " "than -4 or not less than precision, decimal format otherwise." msgstr "" -#: library/stdtypes.rst:3672 +#: library/stdtypes.rst:3678 msgid "``'c'``" msgstr "" -#: library/stdtypes.rst:2453 +#: library/stdtypes.rst:2459 msgid "Single character (accepts integer or single character string)." msgstr "" -#: library/stdtypes.rst:3685 +#: library/stdtypes.rst:3691 msgid "``'r'``" msgstr "" -#: library/stdtypes.rst:2456 +#: library/stdtypes.rst:2462 msgid "String (converts any Python object using :func:`repr`)." msgstr "" -#: library/stdtypes.rst:3679 +#: library/stdtypes.rst:3685 msgid "``'s'``" msgstr "" -#: library/stdtypes.rst:2459 +#: library/stdtypes.rst:2465 msgid "String (converts any Python object using :func:`str`)." msgstr "" -#: library/stdtypes.rst:3682 +#: library/stdtypes.rst:3688 msgid "``'a'``" msgstr "" -#: library/stdtypes.rst:2462 +#: library/stdtypes.rst:2468 msgid "String (converts any Python object using :func:`ascii`)." msgstr "" -#: library/stdtypes.rst:3688 +#: library/stdtypes.rst:3694 msgid "``'%'``" msgstr "" -#: library/stdtypes.rst:3688 +#: library/stdtypes.rst:3694 msgid "No argument is converted, results in a ``'%'`` character in the result." msgstr "" -#: library/stdtypes.rst:3695 +#: library/stdtypes.rst:3701 msgid "" "The alternate form causes a leading octal specifier (``'0o'``) to be " "inserted before the first digit." msgstr "" -#: library/stdtypes.rst:3699 +#: library/stdtypes.rst:3705 msgid "" "The alternate form causes a leading ``'0x'`` or ``'0X'`` (depending on " "whether the ``'x'`` or ``'X'`` format was used) to be inserted before the " "first digit." msgstr "" -#: library/stdtypes.rst:3703 +#: library/stdtypes.rst:3709 msgid "" "The alternate form causes the result to always contain a decimal point, even " "if no digits follow it." msgstr "" -#: library/stdtypes.rst:3706 +#: library/stdtypes.rst:3712 msgid "" "The precision determines the number of digits after the decimal point and " "defaults to 6." msgstr "" -#: library/stdtypes.rst:3710 +#: library/stdtypes.rst:3716 msgid "" "The alternate form causes the result to always contain a decimal point, and " "trailing zeroes are not removed as they would otherwise be." msgstr "" -#: library/stdtypes.rst:3713 +#: library/stdtypes.rst:3719 msgid "" "The precision determines the number of significant digits before and after " "the decimal point and defaults to 6." msgstr "" -#: library/stdtypes.rst:3717 +#: library/stdtypes.rst:3723 msgid "If precision is ``N``, the output is truncated to ``N`` characters." msgstr "" -#: library/stdtypes.rst:3726 +#: library/stdtypes.rst:3732 msgid "See :pep:`237`." msgstr "" -#: library/stdtypes.rst:2499 +#: library/stdtypes.rst:2505 msgid "" "Since Python strings have an explicit length, ``%s`` conversions do not " "assume that ``'\\0'`` is the end of the string." msgstr "" -#: library/stdtypes.rst:2504 +#: library/stdtypes.rst:2510 msgid "" "``%f`` conversions for numbers whose absolute value is over 1e50 are no " "longer replaced by ``%g`` conversions." msgstr "" -#: library/stdtypes.rst:2515 +#: library/stdtypes.rst:2521 msgid "" "Binary Sequence Types --- :class:`bytes`, :class:`bytearray`, :class:" "`memoryview`" msgstr "" -#: library/stdtypes.rst:2523 +#: library/stdtypes.rst:2529 msgid "" "The core built-in types for manipulating binary data are :class:`bytes` and :" "class:`bytearray`. They are supported by :class:`memoryview` which uses the :" @@ -4331,17 +4338,17 @@ msgid "" "objects without needing to make a copy." msgstr "" -#: library/stdtypes.rst:2528 +#: library/stdtypes.rst:2534 msgid "" "The :mod:`array` module supports efficient storage of basic data types like " "32-bit integers and IEEE754 double-precision floating values." msgstr "" -#: library/stdtypes.rst:2534 +#: library/stdtypes.rst:2540 msgid "Bytes Objects" msgstr "" -#: library/stdtypes.rst:2538 +#: library/stdtypes.rst:2544 msgid "" "Bytes objects are immutable sequences of single bytes. Since many major " "binary protocols are based on the ASCII text encoding, bytes objects offer " @@ -4349,41 +4356,41 @@ msgid "" "and are closely related to string objects in a variety of other ways." msgstr "" -#: library/stdtypes.rst:2545 +#: library/stdtypes.rst:2551 msgid "" "Firstly, the syntax for bytes literals is largely the same as that for " "string literals, except that a ``b`` prefix is added:" msgstr "" -#: library/stdtypes.rst:2548 +#: library/stdtypes.rst:2554 msgid "Single quotes: ``b'still allows embedded \"double\" quotes'``" msgstr "" -#: library/stdtypes.rst:2549 +#: library/stdtypes.rst:2555 #, fuzzy msgid "Double quotes: ``b\"still allows embedded 'single' quotes\"``" msgstr "Çift tırnak: ``b\"katıştırılmış 'tek' tırnaklara izin verir\"``" -#: library/stdtypes.rst:2550 +#: library/stdtypes.rst:2556 msgid "" "Triple quoted: ``b'''3 single quotes'''``, ``b\"\"\"3 double quotes\"\"\"``" msgstr "" -#: library/stdtypes.rst:2552 +#: library/stdtypes.rst:2558 msgid "" "Only ASCII characters are permitted in bytes literals (regardless of the " "declared source code encoding). Any binary values over 127 must be entered " "into bytes literals using the appropriate escape sequence." msgstr "" -#: library/stdtypes.rst:2556 +#: library/stdtypes.rst:2562 msgid "" "As with string literals, bytes literals may also use a ``r`` prefix to " "disable processing of escape sequences. See :ref:`strings` for more about " "the various forms of bytes literal, including supported escape sequences." msgstr "" -#: library/stdtypes.rst:2560 +#: library/stdtypes.rst:2566 msgid "" "While bytes literals and representations are based on ASCII text, bytes " "objects actually behave like immutable sequences of integers, with each " @@ -4396,29 +4403,29 @@ msgid "" "compatible will usually lead to data corruption)." msgstr "" -#: library/stdtypes.rst:2570 +#: library/stdtypes.rst:2576 msgid "" "In addition to the literal forms, bytes objects can be created in a number " "of other ways:" msgstr "" -#: library/stdtypes.rst:2573 +#: library/stdtypes.rst:2579 msgid "A zero-filled bytes object of a specified length: ``bytes(10)``" msgstr "" -#: library/stdtypes.rst:2574 +#: library/stdtypes.rst:2580 msgid "From an iterable of integers: ``bytes(range(20))``" msgstr "" -#: library/stdtypes.rst:2575 +#: library/stdtypes.rst:2581 msgid "Copying existing binary data via the buffer protocol: ``bytes(obj)``" msgstr "" -#: library/stdtypes.rst:2577 +#: library/stdtypes.rst:2583 msgid "Also see the :ref:`bytes ` built-in." msgstr "" -#: library/stdtypes.rst:2579 +#: library/stdtypes.rst:2585 msgid "" "Since 2 hexadecimal digits correspond precisely to a single byte, " "hexadecimal numbers are a commonly used format for describing binary data. " @@ -4426,32 +4433,32 @@ msgid "" "that format:" msgstr "" -#: library/stdtypes.rst:2585 +#: library/stdtypes.rst:2591 msgid "" "This :class:`bytes` class method returns a bytes object, decoding the given " "string object. The string must contain two hexadecimal digits per byte, " "with ASCII whitespace being ignored." msgstr "" -#: library/stdtypes.rst:2592 +#: library/stdtypes.rst:2598 msgid "" ":meth:`bytes.fromhex` now skips all ASCII whitespace in the string, not just " "spaces." msgstr "" -#: library/stdtypes.rst:2596 +#: library/stdtypes.rst:2602 msgid "" "A reverse conversion function exists to transform a bytes object into its " "hexadecimal representation." msgstr "" -#: library/stdtypes.rst:2686 +#: library/stdtypes.rst:2692 msgid "" "Return a string object containing two hexadecimal digits for each byte in " "the instance." msgstr "" -#: library/stdtypes.rst:2607 +#: library/stdtypes.rst:2613 msgid "" "If you want to make the hex string easier to read, you can specify a single " "character separator *sep* parameter to include in the output. By default, " @@ -4460,13 +4467,13 @@ msgid "" "the separator position from the right, negative values from the left." msgstr "" -#: library/stdtypes.rst:2624 +#: library/stdtypes.rst:2630 msgid "" ":meth:`bytes.hex` now supports optional *sep* and *bytes_per_sep* parameters " "to insert separators between bytes in the hex output." msgstr "" -#: library/stdtypes.rst:2628 +#: library/stdtypes.rst:2634 msgid "" "Since bytes objects are sequences of integers (akin to a tuple), for a bytes " "object *b*, ``b[0]`` will be an integer, while ``b[0:1]`` will be a bytes " @@ -4474,58 +4481,58 @@ msgid "" "and slicing will produce a string of length 1)" msgstr "" -#: library/stdtypes.rst:2633 +#: library/stdtypes.rst:2639 msgid "" "The representation of bytes objects uses the literal format (``b'...'``) " "since it is often more useful than e.g. ``bytes([46, 46, 46])``. You can " "always convert a bytes object into a list of integers using ``list(b)``." msgstr "" -#: library/stdtypes.rst:2641 +#: library/stdtypes.rst:2647 msgid "Bytearray Objects" msgstr "" -#: library/stdtypes.rst:2645 +#: library/stdtypes.rst:2651 msgid "" ":class:`bytearray` objects are a mutable counterpart to :class:`bytes` " "objects." msgstr "" -#: library/stdtypes.rst:2650 +#: library/stdtypes.rst:2656 msgid "" "There is no dedicated literal syntax for bytearray objects, instead they are " "always created by calling the constructor:" msgstr "" -#: library/stdtypes.rst:2653 +#: library/stdtypes.rst:2659 msgid "Creating an empty instance: ``bytearray()``" msgstr "" -#: library/stdtypes.rst:2654 +#: library/stdtypes.rst:2660 msgid "Creating a zero-filled instance with a given length: ``bytearray(10)``" msgstr "" -#: library/stdtypes.rst:2655 +#: library/stdtypes.rst:2661 msgid "From an iterable of integers: ``bytearray(range(20))``" msgstr "" -#: library/stdtypes.rst:2656 +#: library/stdtypes.rst:2662 msgid "" "Copying existing binary data via the buffer protocol: ``bytearray(b'Hi!')``" msgstr "" -#: library/stdtypes.rst:2658 +#: library/stdtypes.rst:2664 msgid "" "As bytearray objects are mutable, they support the :ref:`mutable ` sequence operations in addition to the common bytes and bytearray " "operations described in :ref:`bytes-methods`." msgstr "" -#: library/stdtypes.rst:2662 +#: library/stdtypes.rst:2668 msgid "Also see the :ref:`bytearray ` built-in." msgstr "" -#: library/stdtypes.rst:2664 +#: library/stdtypes.rst:2670 msgid "" "Since 2 hexadecimal digits correspond precisely to a single byte, " "hexadecimal numbers are a commonly used format for describing binary data. " @@ -4533,33 +4540,33 @@ msgid "" "in that format:" msgstr "" -#: library/stdtypes.rst:2670 +#: library/stdtypes.rst:2676 msgid "" "This :class:`bytearray` class method returns bytearray object, decoding the " "given string object. The string must contain two hexadecimal digits per " "byte, with ASCII whitespace being ignored." msgstr "" -#: library/stdtypes.rst:2677 +#: library/stdtypes.rst:2683 msgid "" ":meth:`bytearray.fromhex` now skips all ASCII whitespace in the string, not " "just spaces." msgstr "" -#: library/stdtypes.rst:2681 +#: library/stdtypes.rst:2687 msgid "" "A reverse conversion function exists to transform a bytearray object into " "its hexadecimal representation." msgstr "" -#: library/stdtypes.rst:2694 +#: library/stdtypes.rst:2700 msgid "" "Similar to :meth:`bytes.hex`, :meth:`bytearray.hex` now supports optional " "*sep* and *bytes_per_sep* parameters to insert separators between bytes in " "the hex output." msgstr "" -#: library/stdtypes.rst:2699 +#: library/stdtypes.rst:2705 msgid "" "Since bytearray objects are sequences of integers (akin to a list), for a " "bytearray object *b*, ``b[0]`` will be an integer, while ``b[0:1]`` will be " @@ -4567,7 +4574,7 @@ msgid "" "both indexing and slicing will produce a string of length 1)" msgstr "" -#: library/stdtypes.rst:2704 +#: library/stdtypes.rst:2710 msgid "" "The representation of bytearray objects uses the bytes literal format " "(``bytearray(b'...')``) since it is often more useful than e.g. " @@ -4575,11 +4582,11 @@ msgid "" "a list of integers using ``list(b)``." msgstr "" -#: library/stdtypes.rst:2713 +#: library/stdtypes.rst:2719 msgid "Bytes and Bytearray Operations" msgstr "" -#: library/stdtypes.rst:2718 +#: library/stdtypes.rst:2724 msgid "" "Both bytes and bytearray objects support the :ref:`common ` " "sequence operations. They interoperate not just with operands of the same " @@ -4588,81 +4595,81 @@ msgid "" "return type of the result may depend on the order of operands." msgstr "" -#: library/stdtypes.rst:2726 +#: library/stdtypes.rst:2732 msgid "" "The methods on bytes and bytearray objects don't accept strings as their " "arguments, just as the methods on strings don't accept bytes as their " "arguments. For example, you have to write::" msgstr "" -#: library/stdtypes.rst:2730 +#: library/stdtypes.rst:2736 msgid "" "a = \"abc\"\n" "b = a.replace(\"a\", \"f\")" msgstr "" -#: library/stdtypes.rst:2733 +#: library/stdtypes.rst:2739 msgid "and::" msgstr "" -#: library/stdtypes.rst:2735 +#: library/stdtypes.rst:2741 msgid "" "a = b\"abc\"\n" "b = a.replace(b\"a\", b\"f\")" msgstr "" -#: library/stdtypes.rst:2738 +#: library/stdtypes.rst:2744 msgid "" "Some bytes and bytearray operations assume the use of ASCII compatible " "binary formats, and hence should be avoided when working with arbitrary " "binary data. These restrictions are covered below." msgstr "" -#: library/stdtypes.rst:2743 +#: library/stdtypes.rst:2749 msgid "" "Using these ASCII based operations to manipulate binary data that is not " "stored in an ASCII based format may lead to data corruption." msgstr "" -#: library/stdtypes.rst:2746 +#: library/stdtypes.rst:2752 msgid "" "The following methods on bytes and bytearray objects can be used with " "arbitrary binary data." msgstr "" -#: library/stdtypes.rst:2752 +#: library/stdtypes.rst:2758 msgid "" "Return the number of non-overlapping occurrences of subsequence *sub* in the " "range [*start*, *end*]. Optional arguments *start* and *end* are " "interpreted as in slice notation." msgstr "" -#: library/stdtypes.rst:2861 library/stdtypes.rst:2949 -#: library/stdtypes.rst:2962 +#: library/stdtypes.rst:2867 library/stdtypes.rst:2955 +#: library/stdtypes.rst:2968 msgid "" "The subsequence to search for may be any :term:`bytes-like object` or an " "integer in the range 0 to 255." msgstr "" -#: library/stdtypes.rst:2759 +#: library/stdtypes.rst:2765 msgid "" "If *sub* is empty, returns the number of empty slices between characters " "which is the length of the bytes object plus one." msgstr "" -#: library/stdtypes.rst:2873 library/stdtypes.rst:2952 -#: library/stdtypes.rst:2965 +#: library/stdtypes.rst:2879 library/stdtypes.rst:2958 +#: library/stdtypes.rst:2971 msgid "Also accept an integer in the range 0 to 255 as the subsequence." msgstr "" -#: library/stdtypes.rst:2769 +#: library/stdtypes.rst:2775 msgid "" "If the binary data starts with the *prefix* string, return " "``bytes[len(prefix):]``. Otherwise, return a copy of the original binary " "data::" msgstr "" -#: library/stdtypes.rst:2773 +#: library/stdtypes.rst:2779 msgid "" ">>> b'TestHook'.removeprefix(b'Test')\n" "b'Hook'\n" @@ -4670,28 +4677,28 @@ msgid "" "b'BaseTestCase'" msgstr "" -#: library/stdtypes.rst:2778 +#: library/stdtypes.rst:2784 msgid "The *prefix* may be any :term:`bytes-like object`." msgstr "" -#: library/stdtypes.rst:2804 library/stdtypes.rst:3030 -#: library/stdtypes.rst:3075 library/stdtypes.rst:3131 -#: library/stdtypes.rst:3220 library/stdtypes.rst:3387 -#: library/stdtypes.rst:3485 library/stdtypes.rst:3528 -#: library/stdtypes.rst:3730 +#: library/stdtypes.rst:2810 library/stdtypes.rst:3036 +#: library/stdtypes.rst:3081 library/stdtypes.rst:3137 +#: library/stdtypes.rst:3226 library/stdtypes.rst:3393 +#: library/stdtypes.rst:3491 library/stdtypes.rst:3534 +#: library/stdtypes.rst:3736 msgid "" "The bytearray version of this method does *not* operate in place - it always " "produces a new object, even if no changes were made." msgstr "" -#: library/stdtypes.rst:2791 +#: library/stdtypes.rst:2797 msgid "" "If the binary data ends with the *suffix* string and that *suffix* is not " "empty, return ``bytes[:-len(suffix)]``. Otherwise, return a copy of the " "original binary data::" msgstr "" -#: library/stdtypes.rst:2795 +#: library/stdtypes.rst:2801 msgid "" ">>> b'MiscTests'.removesuffix(b'Tests')\n" "b'Misc'\n" @@ -4699,15 +4706,15 @@ msgid "" "b'TmpDirMixin'" msgstr "" -#: library/stdtypes.rst:2800 +#: library/stdtypes.rst:2806 msgid "The *suffix* may be any :term:`bytes-like object`." msgstr "" -#: library/stdtypes.rst:2813 +#: library/stdtypes.rst:2819 msgid "Return the bytes decoded to a :class:`str`." msgstr "" -#: library/stdtypes.rst:2818 +#: library/stdtypes.rst:2824 msgid "" "*errors* controls how decoding errors are handled. If ``'strict'`` (the " "default), a :exc:`UnicodeError` exception is raised. Other possible values " @@ -4715,21 +4722,21 @@ msgid "" "`codecs.register_error`. See :ref:`error-handlers` for details." msgstr "" -#: library/stdtypes.rst:2824 +#: library/stdtypes.rst:2830 msgid "" "For performance reasons, the value of *errors* is not checked for validity " "unless a decoding error actually occurs, :ref:`devmode` is enabled or a :ref:" "`debug build ` is used." msgstr "" -#: library/stdtypes.rst:2830 +#: library/stdtypes.rst:2836 msgid "" "Passing the *encoding* argument to :class:`str` allows decoding any :term:" "`bytes-like object` directly, without needing to make a temporary :class:`!" "bytes` or :class:`!bytearray` object." msgstr "" -#: library/stdtypes.rst:2845 +#: library/stdtypes.rst:2851 msgid "" "Return ``True`` if the binary data ends with the specified *suffix*, " "otherwise return ``False``. *suffix* can also be a tuple of suffixes to " @@ -4737,11 +4744,11 @@ msgid "" "optional *end*, stop comparing at that position." msgstr "" -#: library/stdtypes.rst:2850 +#: library/stdtypes.rst:2856 msgid "The suffix(es) to search for may be any :term:`bytes-like object`." msgstr "" -#: library/stdtypes.rst:2856 +#: library/stdtypes.rst:2862 msgid "" "Return the lowest index in the data where the subsequence *sub* is found, " "such that *sub* is contained in the slice ``s[start:end]``. Optional " @@ -4749,26 +4756,26 @@ msgid "" "``-1`` if *sub* is not found." msgstr "" -#: library/stdtypes.rst:2866 +#: library/stdtypes.rst:2872 msgid "" "The :meth:`~bytes.find` method should be used only if you need to know the " "position of *sub*. To check if *sub* is a substring or not, use the :" "keyword:`in` operator::" msgstr "" -#: library/stdtypes.rst:2870 +#: library/stdtypes.rst:2876 msgid "" ">>> b'Py' in b'Python'\n" "True" msgstr "" -#: library/stdtypes.rst:2880 +#: library/stdtypes.rst:2886 msgid "" "Like :meth:`~bytes.find`, but raise :exc:`ValueError` when the subsequence " "is not found." msgstr "" -#: library/stdtypes.rst:2893 +#: library/stdtypes.rst:2899 msgid "" "Return a bytes or bytearray object which is the concatenation of the binary " "data sequences in *iterable*. A :exc:`TypeError` will be raised if there " @@ -4778,7 +4785,7 @@ msgid "" "method." msgstr "" -#: library/stdtypes.rst:2904 +#: library/stdtypes.rst:2910 msgid "" "This static method returns a translation table usable for :meth:`bytes." "translate` that will map each character in *from* into the character at the " @@ -4786,7 +4793,7 @@ msgid "" "objects ` and have the same length." msgstr "" -#: library/stdtypes.rst:2915 +#: library/stdtypes.rst:2921 msgid "" "Split the sequence at the first occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself or its " @@ -4795,24 +4802,24 @@ msgid "" "by two empty bytes or bytearray objects." msgstr "" -#: library/stdtypes.rst:2979 +#: library/stdtypes.rst:2985 msgid "The separator to search for may be any :term:`bytes-like object`." msgstr "" -#: library/stdtypes.rst:2928 +#: library/stdtypes.rst:2934 msgid "" "Return a copy of the sequence with all occurrences of subsequence *old* " "replaced by *new*. If the optional argument *count* is given, only the " "first *count* occurrences are replaced." msgstr "" -#: library/stdtypes.rst:2932 +#: library/stdtypes.rst:2938 msgid "" "The subsequence to search for and its replacement may be any :term:`bytes-" "like object`." msgstr "" -#: library/stdtypes.rst:2944 +#: library/stdtypes.rst:2950 msgid "" "Return the highest index in the sequence where the subsequence *sub* is " "found, such that *sub* is contained within ``s[start:end]``. Optional " @@ -4820,13 +4827,13 @@ msgid "" "``-1`` on failure." msgstr "" -#: library/stdtypes.rst:2959 +#: library/stdtypes.rst:2965 msgid "" "Like :meth:`~bytes.rfind` but raises :exc:`ValueError` when the subsequence " "*sub* is not found." msgstr "" -#: library/stdtypes.rst:2972 +#: library/stdtypes.rst:2978 msgid "" "Split the sequence at the last occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself or its " @@ -4835,7 +4842,7 @@ msgid "" "followed by a copy of the original sequence." msgstr "" -#: library/stdtypes.rst:2985 +#: library/stdtypes.rst:2991 msgid "" "Return ``True`` if the binary data starts with the specified *prefix*, " "otherwise return ``False``. *prefix* can also be a tuple of prefixes to " @@ -4843,11 +4850,11 @@ msgid "" "optional *end*, stop comparing at that position." msgstr "" -#: library/stdtypes.rst:2990 +#: library/stdtypes.rst:2996 msgid "The prefix(es) to search for may be any :term:`bytes-like object`." msgstr "" -#: library/stdtypes.rst:2996 +#: library/stdtypes.rst:3002 msgid "" "Return a copy of the bytes or bytearray object where all bytes occurring in " "the optional argument *delete* are removed, and the remaining bytes have " @@ -4855,28 +4862,28 @@ msgid "" "object of length 256." msgstr "" -#: library/stdtypes.rst:3001 +#: library/stdtypes.rst:3007 msgid "" "You can use the :func:`bytes.maketrans` method to create a translation table." msgstr "" -#: library/stdtypes.rst:3004 +#: library/stdtypes.rst:3010 msgid "" "Set the *table* argument to ``None`` for translations that only delete " "characters::" msgstr "" -#: library/stdtypes.rst:3007 +#: library/stdtypes.rst:3013 msgid "" ">>> b'read this short text'.translate(None, b'aeiou')\n" "b'rd ths shrt txt'" msgstr "" -#: library/stdtypes.rst:3010 +#: library/stdtypes.rst:3016 msgid "*delete* is now supported as a keyword argument." msgstr "" -#: library/stdtypes.rst:3014 +#: library/stdtypes.rst:3020 msgid "" "The following methods on bytes and bytearray objects have default behaviours " "that assume the use of ASCII compatible binary formats, but can still be " @@ -4885,7 +4892,7 @@ msgid "" "instead produce new objects." msgstr "" -#: library/stdtypes.rst:3023 +#: library/stdtypes.rst:3029 msgid "" "Return a copy of the object centered in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -4893,7 +4900,7 @@ msgid "" "less than or equal to ``len(s)``." msgstr "" -#: library/stdtypes.rst:3037 +#: library/stdtypes.rst:3043 msgid "" "Return a copy of the object left justified in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -4901,7 +4908,7 @@ msgid "" "less than or equal to ``len(s)``." msgstr "" -#: library/stdtypes.rst:3051 +#: library/stdtypes.rst:3057 msgid "" "Return a copy of the sequence with specified leading bytes removed. The " "*chars* argument is a binary sequence specifying the set of byte values to " @@ -4911,7 +4918,7 @@ msgid "" "all combinations of its values are stripped::" msgstr "" -#: library/stdtypes.rst:3058 +#: library/stdtypes.rst:3064 msgid "" ">>> b' spacious '.lstrip()\n" "b'spacious '\n" @@ -4919,14 +4926,14 @@ msgid "" "b'example.com'" msgstr "" -#: library/stdtypes.rst:3063 +#: library/stdtypes.rst:3069 msgid "" "The binary sequence of byte values to remove may be any :term:`bytes-like " "object`. See :meth:`~bytes.removeprefix` for a method that will remove a " "single prefix string rather than all of a set of characters. For example::" msgstr "" -#: library/stdtypes.rst:3068 +#: library/stdtypes.rst:3074 msgid "" ">>> b'Arthur: three!'.lstrip(b'Arthur: ')\n" "b'ee!'\n" @@ -4934,7 +4941,7 @@ msgid "" "b'three!'" msgstr "" -#: library/stdtypes.rst:3082 +#: library/stdtypes.rst:3088 msgid "" "Return a copy of the object right justified in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -4942,7 +4949,7 @@ msgid "" "less than or equal to ``len(s)``." msgstr "" -#: library/stdtypes.rst:3096 +#: library/stdtypes.rst:3102 msgid "" "Split the binary sequence into subsequences of the same type, using *sep* as " "the delimiter string. If *maxsplit* is given, at most *maxsplit* splits are " @@ -4952,7 +4959,7 @@ msgid "" "described in detail below." msgstr "" -#: library/stdtypes.rst:3107 +#: library/stdtypes.rst:3113 msgid "" "Return a copy of the sequence with specified trailing bytes removed. The " "*chars* argument is a binary sequence specifying the set of byte values to " @@ -4962,7 +4969,7 @@ msgid "" "all combinations of its values are stripped::" msgstr "" -#: library/stdtypes.rst:3114 +#: library/stdtypes.rst:3120 msgid "" ">>> b' spacious '.rstrip()\n" "b' spacious'\n" @@ -4970,14 +4977,14 @@ msgid "" "b'mississ'" msgstr "" -#: library/stdtypes.rst:3119 +#: library/stdtypes.rst:3125 msgid "" "The binary sequence of byte values to remove may be any :term:`bytes-like " "object`. See :meth:`~bytes.removesuffix` for a method that will remove a " "single suffix string rather than all of a set of characters. For example::" msgstr "" -#: library/stdtypes.rst:3124 +#: library/stdtypes.rst:3130 msgid "" ">>> b'Monty Python'.rstrip(b' Python')\n" "b'M'\n" @@ -4985,7 +4992,7 @@ msgid "" "b'Monty'" msgstr "" -#: library/stdtypes.rst:3138 +#: library/stdtypes.rst:3144 msgid "" "Split the binary sequence into subsequences of the same type, using *sep* as " "the delimiter string. If *maxsplit* is given and non-negative, at most " @@ -4994,7 +5001,7 @@ msgid "" "limit on the number of splits (all possible splits are made)." msgstr "" -#: library/stdtypes.rst:3144 +#: library/stdtypes.rst:3150 #, fuzzy msgid "" "If *sep* is given, consecutive delimiters are not grouped together and are " @@ -5011,7 +5018,7 @@ msgstr "" "(örneğin, ``'1<>2<>3'.split('<>')``, ``['1', '2', '3']`` döndürür). Boş bir " "dizeyi belirtilen bir ayırıcıyla bölmek ``['']`` döndürür." -#: library/stdtypes.rst:3154 +#: library/stdtypes.rst:3160 msgid "" ">>> b'1,2,3'.split(b',')\n" "[b'1', b'2', b'3']\n" @@ -5023,7 +5030,7 @@ msgid "" "[b'1', b'2', b'3<4']" msgstr "" -#: library/stdtypes.rst:3163 +#: library/stdtypes.rst:3169 msgid "" "If *sep* is not specified or is ``None``, a different splitting algorithm is " "applied: runs of consecutive ASCII whitespace are regarded as a single " @@ -5033,7 +5040,7 @@ msgid "" "without a specified separator returns ``[]``." msgstr "" -#: library/stdtypes.rst:3173 +#: library/stdtypes.rst:3179 msgid "" ">>> b'1 2 3'.split()\n" "[b'1', b'2', b'3']\n" @@ -5043,7 +5050,7 @@ msgid "" "[b'1', b'2', b'3']" msgstr "" -#: library/stdtypes.rst:3184 +#: library/stdtypes.rst:3190 msgid "" "Return a copy of the sequence with specified leading and trailing bytes " "removed. The *chars* argument is a binary sequence specifying the set of " @@ -5053,7 +5060,7 @@ msgid "" "a prefix or suffix; rather, all combinations of its values are stripped::" msgstr "" -#: library/stdtypes.rst:3192 +#: library/stdtypes.rst:3198 msgid "" ">>> b' spacious '.strip()\n" "b'spacious'\n" @@ -5061,13 +5068,13 @@ msgid "" "b'example'" msgstr "" -#: library/stdtypes.rst:3197 +#: library/stdtypes.rst:3203 msgid "" "The binary sequence of byte values to remove may be any :term:`bytes-like " "object`." msgstr "" -#: library/stdtypes.rst:3206 +#: library/stdtypes.rst:3212 msgid "" "The following methods on bytes and bytearray objects assume the use of ASCII " "compatible binary formats and should not be applied to arbitrary binary " @@ -5075,14 +5082,14 @@ msgid "" "operate in place, and instead produce new objects." msgstr "" -#: library/stdtypes.rst:3214 +#: library/stdtypes.rst:3220 msgid "" "Return a copy of the sequence with each byte interpreted as an ASCII " "character, and the first byte capitalized and the rest lowercased. Non-ASCII " "byte values are passed through unchanged." msgstr "" -#: library/stdtypes.rst:3227 +#: library/stdtypes.rst:3233 msgid "" "Return a copy of the sequence where all ASCII tab characters are replaced by " "one or more ASCII spaces, depending on the current column and the given tab " @@ -5098,7 +5105,7 @@ msgid "" "by one regardless of how the byte value is represented when printed::" msgstr "" -#: library/stdtypes.rst:3241 +#: library/stdtypes.rst:3247 msgid "" ">>> b'01\\t012\\t0123\\t01234'.expandtabs()\n" "b'01 012 0123 01234'\n" @@ -5106,7 +5113,7 @@ msgid "" "b'01 012 0123 01234'" msgstr "" -#: library/stdtypes.rst:3255 +#: library/stdtypes.rst:3261 msgid "" "Return ``True`` if all bytes in the sequence are alphabetical ASCII " "characters or ASCII decimal digits and the sequence is not empty, ``False`` " @@ -5115,7 +5122,7 @@ msgid "" "digits are those byte values in the sequence ``b'0123456789'``." msgstr "" -#: library/stdtypes.rst:3263 +#: library/stdtypes.rst:3269 msgid "" ">>> b'ABCabc1'.isalnum()\n" "True\n" @@ -5123,7 +5130,7 @@ msgid "" "False" msgstr "" -#: library/stdtypes.rst:3272 +#: library/stdtypes.rst:3278 msgid "" "Return ``True`` if all bytes in the sequence are alphabetic ASCII characters " "and the sequence is not empty, ``False`` otherwise. Alphabetic ASCII " @@ -5131,7 +5138,7 @@ msgid "" "``b'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'``." msgstr "" -#: library/stdtypes.rst:3279 +#: library/stdtypes.rst:3285 msgid "" ">>> b'ABCabc'.isalpha()\n" "True\n" @@ -5139,20 +5146,20 @@ msgid "" "False" msgstr "" -#: library/stdtypes.rst:3288 +#: library/stdtypes.rst:3294 msgid "" "Return ``True`` if the sequence is empty or all bytes in the sequence are " "ASCII, ``False`` otherwise. ASCII bytes are in the range 0-0x7F." msgstr "" -#: library/stdtypes.rst:3298 +#: library/stdtypes.rst:3304 msgid "" "Return ``True`` if all bytes in the sequence are ASCII decimal digits and " "the sequence is not empty, ``False`` otherwise. ASCII decimal digits are " "those byte values in the sequence ``b'0123456789'``." msgstr "" -#: library/stdtypes.rst:3304 +#: library/stdtypes.rst:3310 msgid "" ">>> b'1234'.isdigit()\n" "True\n" @@ -5160,13 +5167,13 @@ msgid "" "False" msgstr "" -#: library/stdtypes.rst:3313 +#: library/stdtypes.rst:3319 msgid "" "Return ``True`` if there is at least one lowercase ASCII character in the " "sequence and no uppercase ASCII characters, ``False`` otherwise." msgstr "" -#: library/stdtypes.rst:3318 +#: library/stdtypes.rst:3324 msgid "" ">>> b'hello world'.islower()\n" "True\n" @@ -5174,15 +5181,15 @@ msgid "" "False" msgstr "" -#: library/stdtypes.rst:3365 library/stdtypes.rst:3431 -#: library/stdtypes.rst:3500 +#: library/stdtypes.rst:3371 library/stdtypes.rst:3437 +#: library/stdtypes.rst:3506 msgid "" "Lowercase ASCII characters are those byte values in the sequence " "``b'abcdefghijklmnopqrstuvwxyz'``. Uppercase ASCII characters are those byte " "values in the sequence ``b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'``." msgstr "" -#: library/stdtypes.rst:3331 +#: library/stdtypes.rst:3337 msgid "" "Return ``True`` if all bytes in the sequence are ASCII whitespace and the " "sequence is not empty, ``False`` otherwise. ASCII whitespace characters are " @@ -5190,14 +5197,14 @@ msgid "" "newline, carriage return, vertical tab, form feed)." msgstr "" -#: library/stdtypes.rst:3340 +#: library/stdtypes.rst:3346 msgid "" "Return ``True`` if the sequence is ASCII titlecase and the sequence is not " "empty, ``False`` otherwise. See :meth:`bytes.title` for more details on the " "definition of \"titlecase\"." msgstr "" -#: library/stdtypes.rst:3346 +#: library/stdtypes.rst:3352 msgid "" ">>> b'Hello World'.istitle()\n" "True\n" @@ -5205,14 +5212,14 @@ msgid "" "False" msgstr "" -#: library/stdtypes.rst:3355 +#: library/stdtypes.rst:3361 msgid "" "Return ``True`` if there is at least one uppercase alphabetic ASCII " "character in the sequence and no lowercase ASCII characters, ``False`` " "otherwise." msgstr "" -#: library/stdtypes.rst:3360 +#: library/stdtypes.rst:3366 msgid "" ">>> b'HELLO WORLD'.isupper()\n" "True\n" @@ -5220,19 +5227,19 @@ msgid "" "False" msgstr "" -#: library/stdtypes.rst:3373 +#: library/stdtypes.rst:3379 msgid "" "Return a copy of the sequence with all the uppercase ASCII characters " "converted to their corresponding lowercase counterpart." msgstr "" -#: library/stdtypes.rst:3378 +#: library/stdtypes.rst:3384 msgid "" ">>> b'Hello World'.lower()\n" "b'hello world'" msgstr "" -#: library/stdtypes.rst:3398 +#: library/stdtypes.rst:3404 msgid "" "Return a list of the lines in the binary sequence, breaking at ASCII line " "boundaries. This method uses the :term:`universal newlines` approach to " @@ -5240,7 +5247,7 @@ msgid "" "*keepends* is given and true." msgstr "" -#: library/stdtypes.rst:3405 +#: library/stdtypes.rst:3411 msgid "" ">>> b'ab c\\n\\nde fg\\rkl\\r\\n'.splitlines()\n" "[b'ab c', b'', b'de fg', b'kl']\n" @@ -5248,14 +5255,14 @@ msgid "" "[b'ab c\\n', b'\\n', b'de fg\\r', b'kl\\r\\n']" msgstr "" -#: library/stdtypes.rst:3410 +#: library/stdtypes.rst:3416 msgid "" "Unlike :meth:`~bytes.split` when a delimiter string *sep* is given, this " "method returns an empty list for the empty string, and a terminal line break " "does not result in an extra line::" msgstr "" -#: library/stdtypes.rst:3414 +#: library/stdtypes.rst:3420 msgid "" ">>> b\"\".split(b'\\n'), b\"Two lines\\n\".split(b'\\n')\n" "([b''], [b'Two lines', b''])\n" @@ -5263,19 +5270,19 @@ msgid "" "([], [b'One line'])" msgstr "" -#: library/stdtypes.rst:3423 +#: library/stdtypes.rst:3429 msgid "" "Return a copy of the sequence with all the lowercase ASCII characters " "converted to their corresponding uppercase counterpart and vice-versa." msgstr "" -#: library/stdtypes.rst:3428 +#: library/stdtypes.rst:3434 msgid "" ">>> b'Hello World'.swapcase()\n" "b'hELLO wORLD'" msgstr "" -#: library/stdtypes.rst:3435 +#: library/stdtypes.rst:3441 msgid "" "Unlike :func:`str.swapcase`, it is always the case that ``bin.swapcase()." "swapcase() == bin`` for the binary versions. Case conversions are " @@ -5283,20 +5290,20 @@ msgid "" "Unicode code points." msgstr "" -#: library/stdtypes.rst:3449 +#: library/stdtypes.rst:3455 msgid "" "Return a titlecased version of the binary sequence where words start with an " "uppercase ASCII character and the remaining characters are lowercase. " "Uncased byte values are left unmodified." msgstr "" -#: library/stdtypes.rst:3455 +#: library/stdtypes.rst:3461 msgid "" ">>> b'Hello world'.title()\n" "b'Hello World'" msgstr "" -#: library/stdtypes.rst:3458 +#: library/stdtypes.rst:3464 msgid "" "Lowercase ASCII characters are those byte values in the sequence " "``b'abcdefghijklmnopqrstuvwxyz'``. Uppercase ASCII characters are those byte " @@ -5304,20 +5311,20 @@ msgid "" "values are uncased." msgstr "" -#: library/stdtypes.rst:3468 +#: library/stdtypes.rst:3474 msgid "" ">>> b\"they're bill's friends from the UK\".title()\n" "b\"They'Re Bill'S Friends From The Uk\"" msgstr "" -#: library/stdtypes.rst:3471 +#: library/stdtypes.rst:3477 msgid "" "A workaround for apostrophes can be constructed using regular expressions::" msgstr "" "Kesme işaretleri için geçici bir çözüm düzenli ifadeler kullanılarak " "oluşturulabilir::" -#: library/stdtypes.rst:3473 +#: library/stdtypes.rst:3479 msgid "" ">>> import re\n" ">>> def titlecase(s):\n" @@ -5330,19 +5337,19 @@ msgid "" "b\"They're Bill's Friends.\"" msgstr "" -#: library/stdtypes.rst:3492 +#: library/stdtypes.rst:3498 msgid "" "Return a copy of the sequence with all the lowercase ASCII characters " "converted to their corresponding uppercase counterpart." msgstr "" -#: library/stdtypes.rst:3497 +#: library/stdtypes.rst:3503 msgid "" ">>> b'Hello World'.upper()\n" "b'HELLO WORLD'" msgstr "" -#: library/stdtypes.rst:3513 +#: library/stdtypes.rst:3519 msgid "" "Return a copy of the sequence left filled with ASCII ``b'0'`` digits to make " "a sequence of length *width*. A leading sign prefix (``b'+'``/ ``b'-'``) is " @@ -5351,7 +5358,7 @@ msgid "" "*width* is less than or equal to ``len(seq)``." msgstr "" -#: library/stdtypes.rst:3521 +#: library/stdtypes.rst:3527 msgid "" ">>> b\"42\".zfill(5)\n" "b'00042'\n" @@ -5359,11 +5366,11 @@ msgid "" "b'-0042'" msgstr "" -#: library/stdtypes.rst:3535 +#: library/stdtypes.rst:3541 msgid "``printf``-style Bytes Formatting" msgstr "" -#: library/stdtypes.rst:3552 +#: library/stdtypes.rst:3558 msgid "" "The formatting operations described here exhibit a variety of quirks that " "lead to a number of common errors (such as failing to display tuples and " @@ -5371,7 +5378,7 @@ msgid "" "dictionary, wrap it in a tuple." msgstr "" -#: library/stdtypes.rst:3557 +#: library/stdtypes.rst:3563 msgid "" "Bytes objects (``bytes``/``bytearray``) have one unique built-in operation: " "the ``%`` operator (modulo). This is also known as the bytes *formatting* or " @@ -5381,7 +5388,7 @@ msgid "" "func:`sprintf` in the C language." msgstr "" -#: library/stdtypes.rst:3564 +#: library/stdtypes.rst:3570 msgid "" "If *format* requires a single argument, *values* may be a single non-tuple " "object. [5]_ Otherwise, *values* must be a tuple with exactly the number of " @@ -5389,7 +5396,7 @@ msgid "" "example, a dictionary)." msgstr "" -#: library/stdtypes.rst:3598 +#: library/stdtypes.rst:3604 msgid "" "When the right argument is a dictionary (or other mapping type), then the " "formats in the bytes object *must* include a parenthesised mapping key into " @@ -5397,73 +5404,73 @@ msgid "" "mapping key selects the value to be formatted from the mapping. For example:" msgstr "" -#: library/stdtypes.rst:3672 +#: library/stdtypes.rst:3678 msgid "Single byte (accepts integer or single byte objects)." msgstr "" -#: library/stdtypes.rst:3675 +#: library/stdtypes.rst:3681 msgid "``'b'``" msgstr "" -#: library/stdtypes.rst:3675 +#: library/stdtypes.rst:3681 msgid "" "Bytes (any object that follows the :ref:`buffer protocol ` or " "has :meth:`~object.__bytes__`)." msgstr "" -#: library/stdtypes.rst:3679 +#: library/stdtypes.rst:3685 msgid "" "``'s'`` is an alias for ``'b'`` and should only be used for Python2/3 code " "bases." msgstr "" -#: library/stdtypes.rst:3682 +#: library/stdtypes.rst:3688 msgid "" "Bytes (converts any Python object using ``repr(obj).encode('ascii', " "'backslashreplace')``)." msgstr "" -#: library/stdtypes.rst:3685 +#: library/stdtypes.rst:3691 msgid "" "``'r'`` is an alias for ``'a'`` and should only be used for Python2/3 code " "bases." msgstr "" -#: library/stdtypes.rst:3685 +#: library/stdtypes.rst:3691 msgid "\\(7)" msgstr "" -#: library/stdtypes.rst:3720 +#: library/stdtypes.rst:3726 msgid "``b'%s'`` is deprecated, but will not be removed during the 3.x series." msgstr "" -#: library/stdtypes.rst:3723 +#: library/stdtypes.rst:3729 msgid "``b'%r'`` is deprecated, but will not be removed during the 3.x series." msgstr "" -#: library/stdtypes.rst:3735 +#: library/stdtypes.rst:3741 msgid ":pep:`461` - Adding % formatting to bytes and bytearray" msgstr "" -#: library/stdtypes.rst:3742 +#: library/stdtypes.rst:3748 msgid "Memory Views" msgstr "" -#: library/stdtypes.rst:3744 +#: library/stdtypes.rst:3750 msgid "" ":class:`memoryview` objects allow Python code to access the internal data of " "an object that supports the :ref:`buffer protocol ` without " "copying." msgstr "" -#: library/stdtypes.rst:3750 +#: library/stdtypes.rst:3756 msgid "" "Create a :class:`memoryview` that references *object*. *object* must " "support the buffer protocol. Built-in objects that support the buffer " "protocol include :class:`bytes` and :class:`bytearray`." msgstr "" -#: library/stdtypes.rst:3754 +#: library/stdtypes.rst:3760 msgid "" "A :class:`memoryview` has the notion of an *element*, which is the atomic " "memory unit handled by the originating *object*. For many simple types such " @@ -5471,32 +5478,32 @@ msgid "" "other types such as :class:`array.array` may have bigger elements." msgstr "" -#: library/stdtypes.rst:3759 +#: library/stdtypes.rst:3765 msgid "" "``len(view)`` is equal to the length of :class:`~memoryview.tolist`, which " "is the nested list representation of the view. If ``view.ndim = 1``, this is " "equal to the number of elements in the view." msgstr "" -#: library/stdtypes.rst:3763 +#: library/stdtypes.rst:3769 msgid "" "If ``view.ndim == 0``, ``len(view)`` now raises :exc:`TypeError` instead of " "returning 1." msgstr "" -#: library/stdtypes.rst:3766 +#: library/stdtypes.rst:3772 msgid "" "The :class:`~memoryview.itemsize` attribute will give you the number of " "bytes in a single element." msgstr "" -#: library/stdtypes.rst:3769 +#: library/stdtypes.rst:3775 msgid "" "A :class:`memoryview` supports slicing and indexing to expose its data. One-" "dimensional slicing will result in a subview::" msgstr "" -#: library/stdtypes.rst:3772 +#: library/stdtypes.rst:3778 msgid "" ">>> v = memoryview(b'abcefg')\n" ">>> v[1]\n" @@ -5509,7 +5516,7 @@ msgid "" "b'bce'" msgstr "" -#: library/stdtypes.rst:3782 +#: library/stdtypes.rst:3788 msgid "" "If :class:`~memoryview.format` is one of the native format specifiers from " "the :mod:`struct` module, indexing with an integer or a tuple of integers is " @@ -5520,11 +5527,11 @@ msgid "" "memoryviews can be indexed with the empty tuple." msgstr "" -#: library/stdtypes.rst:3791 +#: library/stdtypes.rst:3797 msgid "Here is an example with a non-byte format::" msgstr "" -#: library/stdtypes.rst:3793 +#: library/stdtypes.rst:3799 msgid "" ">>> import array\n" ">>> a = array.array('l', [-11111111, 22222222, -33333333, 44444444])\n" @@ -5537,13 +5544,13 @@ msgid "" "[-11111111, -33333333]" msgstr "" -#: library/stdtypes.rst:3803 +#: library/stdtypes.rst:3809 msgid "" "If the underlying object is writable, the memoryview supports one-" "dimensional slice assignment. Resizing is not allowed::" msgstr "" -#: library/stdtypes.rst:3806 +#: library/stdtypes.rst:3812 msgid "" ">>> data = bytearray(b'abcefg')\n" ">>> v = memoryview(data)\n" @@ -5565,14 +5572,14 @@ msgid "" "bytearray(b'z1spam')" msgstr "" -#: library/stdtypes.rst:3824 +#: library/stdtypes.rst:3830 msgid "" "One-dimensional memoryviews of :term:`hashable` (read-only) types with " "formats 'B', 'b' or 'c' are also hashable. The hash is defined as ``hash(m) " "== hash(m.tobytes())``::" msgstr "" -#: library/stdtypes.rst:3828 +#: library/stdtypes.rst:3834 msgid "" ">>> v = memoryview(b'abcefg')\n" ">>> hash(v) == hash(b'abcefg')\n" @@ -5583,40 +5590,40 @@ msgid "" "True" msgstr "" -#: library/stdtypes.rst:3836 +#: library/stdtypes.rst:3842 msgid "" "One-dimensional memoryviews can now be sliced. One-dimensional memoryviews " "with formats 'B', 'b' or 'c' are now :term:`hashable`." msgstr "" -#: library/stdtypes.rst:3840 +#: library/stdtypes.rst:3846 msgid "" "memoryview is now registered automatically with :class:`collections.abc." "Sequence`" msgstr "" -#: library/stdtypes.rst:3844 +#: library/stdtypes.rst:3850 msgid "memoryviews can now be indexed with tuple of integers." msgstr "" -#: library/stdtypes.rst:3847 +#: library/stdtypes.rst:3853 msgid ":class:`memoryview` has several methods:" msgstr "" -#: library/stdtypes.rst:3851 +#: library/stdtypes.rst:3857 msgid "" "A memoryview and a :pep:`3118` exporter are equal if their shapes are " "equivalent and if all corresponding values are equal when the operands' " "respective format codes are interpreted using :mod:`struct` syntax." msgstr "" -#: library/stdtypes.rst:3855 +#: library/stdtypes.rst:3861 msgid "" "For the subset of :mod:`struct` format strings currently supported by :meth:" "`tolist`, ``v`` and ``w`` are equal if ``v.tolist() == w.tolist()``::" msgstr "" -#: library/stdtypes.rst:3858 +#: library/stdtypes.rst:3864 msgid "" ">>> import array\n" ">>> a = array.array('I', [1, 2, 3, 4, 5])\n" @@ -5635,14 +5642,14 @@ msgid "" "True" msgstr "" -#: library/stdtypes.rst:3874 +#: library/stdtypes.rst:3880 msgid "" "If either format string is not supported by the :mod:`struct` module, then " "the objects will always compare as unequal (even if the format strings and " "buffer contents are identical)::" msgstr "" -#: library/stdtypes.rst:3878 +#: library/stdtypes.rst:3884 msgid "" ">>> from ctypes import BigEndianStructure, c_long\n" ">>> class BEPoint(BigEndianStructure):\n" @@ -5657,25 +5664,25 @@ msgid "" "False" msgstr "" -#: library/stdtypes.rst:3890 +#: library/stdtypes.rst:3896 msgid "" "Note that, as with floating-point numbers, ``v is w`` does *not* imply ``v " "== w`` for memoryview objects." msgstr "" -#: library/stdtypes.rst:3893 +#: library/stdtypes.rst:3899 msgid "" "Previous versions compared the raw memory disregarding the item format and " "the logical array structure." msgstr "" -#: library/stdtypes.rst:3899 +#: library/stdtypes.rst:3905 msgid "" "Return the data in the buffer as a bytestring. This is equivalent to " "calling the :class:`bytes` constructor on the memoryview. ::" msgstr "" -#: library/stdtypes.rst:3902 +#: library/stdtypes.rst:3908 msgid "" ">>> m = memoryview(b\"abc\")\n" ">>> m.tobytes()\n" @@ -5684,7 +5691,7 @@ msgid "" "b'abc'" msgstr "" -#: library/stdtypes.rst:3908 +#: library/stdtypes.rst:3914 msgid "" "For non-contiguous arrays the result is equal to the flattened list " "representation with all elements converted to bytes. :meth:`tobytes` " @@ -5692,7 +5699,7 @@ msgid "" "module syntax." msgstr "" -#: library/stdtypes.rst:3913 +#: library/stdtypes.rst:3919 msgid "" "*order* can be {'C', 'F', 'A'}. When *order* is 'C' or 'F', the data of the " "original array is converted to C or Fortran order. For contiguous views, 'A' " @@ -5701,31 +5708,31 @@ msgid "" "to C first. *order=None* is the same as *order='C'*." msgstr "" -#: library/stdtypes.rst:3922 +#: library/stdtypes.rst:3928 msgid "" "Return a string object containing two hexadecimal digits for each byte in " "the buffer. ::" msgstr "" -#: library/stdtypes.rst:3925 +#: library/stdtypes.rst:3931 msgid "" ">>> m = memoryview(b\"abc\")\n" ">>> m.hex()\n" "'616263'" msgstr "" -#: library/stdtypes.rst:3931 +#: library/stdtypes.rst:3937 msgid "" "Similar to :meth:`bytes.hex`, :meth:`memoryview.hex` now supports optional " "*sep* and *bytes_per_sep* parameters to insert separators between bytes in " "the hex output." msgstr "" -#: library/stdtypes.rst:3938 +#: library/stdtypes.rst:3944 msgid "Return the data in the buffer as a list of elements. ::" msgstr "" -#: library/stdtypes.rst:3940 +#: library/stdtypes.rst:3946 msgid "" ">>> memoryview(b'abc').tolist()\n" "[97, 98, 99]\n" @@ -5736,19 +5743,19 @@ msgid "" "[1.1, 2.2, 3.3]" msgstr "" -#: library/stdtypes.rst:3948 +#: library/stdtypes.rst:3954 msgid "" ":meth:`tolist` now supports all single character native formats in :mod:" "`struct` module syntax as well as multi-dimensional representations." msgstr "" -#: library/stdtypes.rst:3955 +#: library/stdtypes.rst:3961 msgid "" "Return a readonly version of the memoryview object. The original memoryview " "object is unchanged. ::" msgstr "" -#: library/stdtypes.rst:3958 +#: library/stdtypes.rst:3964 msgid "" ">>> m = memoryview(bytearray(b'abc'))\n" ">>> mm = m.toreadonly()\n" @@ -5763,7 +5770,7 @@ msgid "" "[43, 98, 99]" msgstr "" -#: library/stdtypes.rst:3974 +#: library/stdtypes.rst:3980 msgid "" "Release the underlying buffer exposed by the memoryview object. Many " "objects take special actions when a view is held on them (for example, a :" @@ -5772,14 +5779,14 @@ msgid "" "resources) as soon as possible." msgstr "" -#: library/stdtypes.rst:3980 +#: library/stdtypes.rst:3986 msgid "" "After this method has been called, any further operation on the view raises " "a :class:`ValueError` (except :meth:`release` itself which can be called " "multiple times)::" msgstr "" -#: library/stdtypes.rst:3984 +#: library/stdtypes.rst:3990 msgid "" ">>> m = memoryview(b'abc')\n" ">>> m.release()\n" @@ -5789,13 +5796,13 @@ msgid "" "ValueError: operation forbidden on released memoryview object" msgstr "" -#: library/stdtypes.rst:3991 +#: library/stdtypes.rst:3997 msgid "" "The context management protocol can be used for a similar effect, using the " "``with`` statement::" msgstr "" -#: library/stdtypes.rst:3994 +#: library/stdtypes.rst:4000 msgid "" ">>> with memoryview(b'abc') as m:\n" "... m[0]\n" @@ -5807,7 +5814,7 @@ msgid "" "ValueError: operation forbidden on released memoryview object" msgstr "" -#: library/stdtypes.rst:4007 +#: library/stdtypes.rst:4013 msgid "" "Cast a memoryview to a new format or shape. *shape* defaults to " "``[byte_length//new_itemsize]``, which means that the result view will be " @@ -5816,7 +5823,7 @@ msgid "" "contiguous -> 1D." msgstr "" -#: library/stdtypes.rst:4013 +#: library/stdtypes.rst:4019 msgid "" "The destination format is restricted to a single element native format in :" "mod:`struct` syntax. One of the formats must be a byte format ('B', 'b' or " @@ -5824,11 +5831,11 @@ msgid "" "Note that all byte lengths may depend on the operating system." msgstr "" -#: library/stdtypes.rst:4019 +#: library/stdtypes.rst:4025 msgid "Cast 1D/long to 1D/unsigned bytes::" msgstr "" -#: library/stdtypes.rst:4021 +#: library/stdtypes.rst:4027 msgid "" ">>> import array\n" ">>> a = array.array('l', [1,2,3])\n" @@ -5852,11 +5859,11 @@ msgid "" "24" msgstr "" -#: library/stdtypes.rst:4042 +#: library/stdtypes.rst:4048 msgid "Cast 1D/unsigned bytes to 1D/char::" msgstr "" -#: library/stdtypes.rst:4044 +#: library/stdtypes.rst:4050 msgid "" ">>> b = bytearray(b'zyz')\n" ">>> x = memoryview(b)\n" @@ -5870,11 +5877,11 @@ msgid "" "bytearray(b'ayz')" msgstr "" -#: library/stdtypes.rst:4055 +#: library/stdtypes.rst:4061 msgid "Cast 1D/bytes to 3D/ints to 1D/signed char::" msgstr "" -#: library/stdtypes.rst:4057 +#: library/stdtypes.rst:4063 msgid "" ">>> import struct\n" ">>> buf = struct.pack(\"i\"*12, *list(range(12)))\n" @@ -5901,11 +5908,11 @@ msgid "" "48" msgstr "" -#: library/stdtypes.rst:4081 +#: library/stdtypes.rst:4087 msgid "Cast 1D/unsigned long to 2D/unsigned long::" msgstr "" -#: library/stdtypes.rst:4083 +#: library/stdtypes.rst:4089 msgid "" ">>> buf = struct.pack(\"L\"*6, *list(range(6)))\n" ">>> x = memoryview(buf)\n" @@ -5918,19 +5925,19 @@ msgid "" "[[0, 1, 2], [3, 4, 5]]" msgstr "" -#: library/stdtypes.rst:4095 +#: library/stdtypes.rst:4101 msgid "The source format is no longer restricted when casting to a byte view." msgstr "" -#: library/stdtypes.rst:4098 +#: library/stdtypes.rst:4104 msgid "There are also several readonly attributes available:" msgstr "" -#: library/stdtypes.rst:4102 +#: library/stdtypes.rst:4108 msgid "The underlying object of the memoryview::" msgstr "" -#: library/stdtypes.rst:4104 +#: library/stdtypes.rst:4110 msgid "" ">>> b = bytearray(b'xyz')\n" ">>> m = memoryview(b)\n" @@ -5938,14 +5945,14 @@ msgid "" "True" msgstr "" -#: library/stdtypes.rst:4113 +#: library/stdtypes.rst:4119 msgid "" "``nbytes == product(shape) * itemsize == len(m.tobytes())``. This is the " "amount of space in bytes that the array would use in a contiguous " "representation. It is not necessarily equal to ``len(m)``::" msgstr "" -#: library/stdtypes.rst:4117 +#: library/stdtypes.rst:4123 msgid "" ">>> import array\n" ">>> a = array.array('i', [1,2,3,4,5])\n" @@ -5963,11 +5970,11 @@ msgid "" "12" msgstr "" -#: library/stdtypes.rst:4132 +#: library/stdtypes.rst:4138 msgid "Multi-dimensional arrays::" msgstr "" -#: library/stdtypes.rst:4134 +#: library/stdtypes.rst:4140 msgid "" ">>> import struct\n" ">>> buf = struct.pack(\"d\"*12, *[1.5*x for x in range(12)])\n" @@ -5981,11 +5988,11 @@ msgid "" "96" msgstr "" -#: library/stdtypes.rst:4149 +#: library/stdtypes.rst:4155 msgid "A bool indicating whether the memory is read only." msgstr "" -#: library/stdtypes.rst:4153 +#: library/stdtypes.rst:4159 msgid "" "A string containing the format (in :mod:`struct` module style) for each " "element in the view. A memoryview can be created from exporters with " @@ -5993,17 +6000,17 @@ msgid "" "restricted to native single element formats." msgstr "" -#: library/stdtypes.rst:4158 +#: library/stdtypes.rst:4164 msgid "" "format ``'B'`` is now handled according to the struct module syntax. This " "means that ``memoryview(b'abc')[0] == b'abc'[0] == 97``." msgstr "" -#: library/stdtypes.rst:4164 +#: library/stdtypes.rst:4170 msgid "The size in bytes of each element of the memoryview::" msgstr "" -#: library/stdtypes.rst:4166 +#: library/stdtypes.rst:4172 msgid "" ">>> import array, struct\n" ">>> m = memoryview(array.array('H', [32000, 32001, 32002]))\n" @@ -6015,49 +6022,49 @@ msgid "" "True" msgstr "" -#: library/stdtypes.rst:4177 +#: library/stdtypes.rst:4183 msgid "" "An integer indicating how many dimensions of a multi-dimensional array the " "memory represents." msgstr "" -#: library/stdtypes.rst:4182 +#: library/stdtypes.rst:4188 msgid "" "A tuple of integers the length of :attr:`ndim` giving the shape of the " "memory as an N-dimensional array." msgstr "" -#: library/stdtypes.rst:4193 +#: library/stdtypes.rst:4199 msgid "An empty tuple instead of ``None`` when ndim = 0." msgstr "" -#: library/stdtypes.rst:4190 +#: library/stdtypes.rst:4196 msgid "" "A tuple of integers the length of :attr:`ndim` giving the size in bytes to " "access each element for each dimension of the array." msgstr "" -#: library/stdtypes.rst:4198 +#: library/stdtypes.rst:4204 msgid "Used internally for PIL-style arrays. The value is informational only." msgstr "" -#: library/stdtypes.rst:4202 +#: library/stdtypes.rst:4208 msgid "A bool indicating whether the memory is C-:term:`contiguous`." msgstr "Belleğin C-:term:`contiguous` olup olmadığını gösteren bir bool." -#: library/stdtypes.rst:4208 +#: library/stdtypes.rst:4214 msgid "A bool indicating whether the memory is Fortran :term:`contiguous`." msgstr "Belleğin Fortran :term:`contiguous` olup olmadığını gösteren bir bool." -#: library/stdtypes.rst:4214 +#: library/stdtypes.rst:4220 msgid "A bool indicating whether the memory is :term:`contiguous`." msgstr "Belleğin :term:`contiguous` olup olmadığını gösteren bir bool." -#: library/stdtypes.rst:4222 +#: library/stdtypes.rst:4228 msgid "Set Types --- :class:`set`, :class:`frozenset`" msgstr "Set Türleri --- :class:`set`, :class:`frozenset`" -#: library/stdtypes.rst:4226 +#: library/stdtypes.rst:4232 msgid "" "A :dfn:`set` object is an unordered collection of distinct :term:`hashable` " "objects. Common uses include membership testing, removing duplicates from a " @@ -6073,7 +6080,7 @@ msgstr "" "için yerleşik :class:`dict`, :class:`list` ve :class:`tuple` sınıflarına ve :" "mod:`collections` modülüne bakın)" -#: library/stdtypes.rst:4233 +#: library/stdtypes.rst:4239 msgid "" "Like other collections, sets support ``x in set``, ``len(set)``, and ``for x " "in set``. Being an unordered collection, sets do not record element " @@ -6085,7 +6092,7 @@ msgstr "" "eleman konumunu veya ekleme sırasını kaydetmez. Buna göre, kümeler " "dizinleme, dilimleme veya sıra benzeri davranışları desteklemez." -#: library/stdtypes.rst:4238 +#: library/stdtypes.rst:4244 msgid "" "There are currently two built-in set types, :class:`set` and :class:" "`frozenset`. The :class:`set` type is mutable --- the contents can be " @@ -6104,7 +6111,7 @@ msgstr "" "term:`hashable` --- içeriği oluşturulduktan sonra değiştirilemez; bu nedenle " "bir sözlük anahtarı veya başka bir kümenin öğesi olarak kullanılabilir." -#: library/stdtypes.rst:4246 +#: library/stdtypes.rst:4252 msgid "" "Non-empty sets (not frozensets) can be created by placing a comma-separated " "list of elements within braces, for example: ``{'jack', 'sjoerd'}``, in " @@ -6114,11 +6121,11 @@ msgstr "" "parantez içine virgülle ayrılmış bir öğe listesi yerleştirilerek " "oluşturulabilir, örneğin: ``{'jack', 'sjoerd'}``." -#: library/stdtypes.rst:4250 +#: library/stdtypes.rst:4256 msgid "The constructors for both classes work the same:" msgstr "Her iki sınıfın kurucuları aynı şekilde çalışır:" -#: library/stdtypes.rst:4255 +#: library/stdtypes.rst:4261 msgid "" "Return a new set or frozenset object whose elements are taken from " "*iterable*. The elements of a set must be :term:`hashable`. To represent " @@ -6130,24 +6137,24 @@ msgstr "" "kümelerini temsil etmek için, iç kümeler :class:`frozenset` nesneleri " "olmalıdır. Eğer *iterable* belirtilmemişse, yeni bir boş küme döndürülür." -#: library/stdtypes.rst:4261 +#: library/stdtypes.rst:4267 msgid "Sets can be created by several means:" msgstr "Setler çeşitli yollarla oluşturulabilir:" -#: library/stdtypes.rst:4263 +#: library/stdtypes.rst:4269 msgid "" "Use a comma-separated list of elements within braces: ``{'jack', 'sjoerd'}``" msgstr "" "Parantez içinde virgülle ayrılmış bir öğe listesi kullanın: ``{'jack', " "'sjoerd'}``" -#: library/stdtypes.rst:4264 +#: library/stdtypes.rst:4270 msgid "" "Use a set comprehension: ``{c for c in 'abracadabra' if c not in 'abc'}``" msgstr "" "Bir küme kavrayışı kullanın: ``{c for c in 'abracadabra' if c not in 'abc'}``" -#: library/stdtypes.rst:4265 +#: library/stdtypes.rst:4271 msgid "" "Use the type constructor: ``set()``, ``set('foobar')``, ``set(['a', 'b', " "'foo'])``" @@ -6155,26 +6162,26 @@ msgstr "" "Tür kurucusunu kullanın: ``set()``, ``set('foobar')``, ``set(['a', 'b', " "'foo'])``" -#: library/stdtypes.rst:4267 +#: library/stdtypes.rst:4273 msgid "" "Instances of :class:`set` and :class:`frozenset` provide the following " "operations:" msgstr "" ":class:`set` ve :class:`frozenset` örnekleri aşağıdaki işlemleri sağlar:" -#: library/stdtypes.rst:4272 +#: library/stdtypes.rst:4278 msgid "Return the number of elements in set *s* (cardinality of *s*)." msgstr "*s* kümesindeki eleman sayısını döndürür (*s*'nin kardinalitesi)." -#: library/stdtypes.rst:4276 +#: library/stdtypes.rst:4282 msgid "Test *x* for membership in *s*." msgstr "*x*'i *s* üyeliği için test edin." -#: library/stdtypes.rst:4280 +#: library/stdtypes.rst:4286 msgid "Test *x* for non-membership in *s*." msgstr "*x*'in *s*'ye üye olup olmadığını test edin." -#: library/stdtypes.rst:4284 +#: library/stdtypes.rst:4290 msgid "" "Return ``True`` if the set has no elements in common with *other*. Sets are " "disjoint if and only if their intersection is the empty set." @@ -6182,11 +6189,11 @@ msgstr "" "Kümenin *other* kümelerle ortak hiçbir elemanı yoksa ``True`` döndürür. " "Kümeler, ancak ve ancak kesişimleri boş küme ise ayrıktır." -#: library/stdtypes.rst:4290 +#: library/stdtypes.rst:4296 msgid "Test whether every element in the set is in *other*." msgstr "Kümedeki her elemanın *other* içinde olup olmadığını test edin." -#: library/stdtypes.rst:4294 +#: library/stdtypes.rst:4300 msgid "" "Test whether the set is a proper subset of *other*, that is, ``set <= other " "and set != other``." @@ -6194,11 +6201,11 @@ msgstr "" "Kümenin *other* kümenin uygun bir alt kümesi olup olmadığını, yani ``set <= " "other and set != other`` olup olmadığını test eder." -#: library/stdtypes.rst:4300 +#: library/stdtypes.rst:4306 msgid "Test whether every element in *other* is in the set." msgstr "Kümedeki her elemanın *other* içinde olup olmadığını test edin." -#: library/stdtypes.rst:4304 +#: library/stdtypes.rst:4310 msgid "" "Test whether the set is a proper superset of *other*, that is, ``set >= " "other and set != other``." @@ -6206,33 +6213,33 @@ msgstr "" "Kümenin *other* kümenin uygun bir üst kümesi olup olmadığını, yani ``set >= " "other and set != other`` olup olmadığını test edin." -#: library/stdtypes.rst:4310 +#: library/stdtypes.rst:4316 msgid "Return a new set with elements from the set and all others." msgstr "" "Kümedeki ve diğer tüm kümelerdeki elemanları içeren yeni bir küme döndürür." -#: library/stdtypes.rst:4315 +#: library/stdtypes.rst:4321 msgid "Return a new set with elements common to the set and all others." msgstr "" "Küme ve diğer tüm kümeler için ortak öğeler içeren yeni bir küme döndürür." -#: library/stdtypes.rst:4320 +#: library/stdtypes.rst:4326 msgid "Return a new set with elements in the set that are not in the others." msgstr "" "Küme içinde diğerlerinde olmayan elemanlar içeren yeni bir küme döndürür." -#: library/stdtypes.rst:4325 +#: library/stdtypes.rst:4331 msgid "" "Return a new set with elements in either the set or *other* but not both." msgstr "" "Elemanları ya kümede ya da *diğer* kümede olan ancak her ikisinde de olmayan " "yeni bir küme döndürür." -#: library/stdtypes.rst:4329 +#: library/stdtypes.rst:4335 msgid "Return a shallow copy of the set." msgstr "Kümenin yüzeysel bir kopyasını döndürür." -#: library/stdtypes.rst:4332 +#: library/stdtypes.rst:4338 msgid "" "Note, the non-operator versions of :meth:`union`, :meth:`intersection`, :" "meth:`difference`, :meth:`symmetric_difference`, :meth:`issubset`, and :meth:" @@ -6250,7 +6257,7 @@ msgstr "" "\n" "Translated with www.DeepL.com/Translator (free version)" -#: library/stdtypes.rst:4339 +#: library/stdtypes.rst:4345 msgid "" "Both :class:`set` and :class:`frozenset` support set to set comparisons. Two " "sets are equal if and only if every element of each set is contained in the " @@ -6269,7 +6276,7 @@ msgstr "" "\n" "Translated with www.DeepL.com/Translator (free version)" -#: library/stdtypes.rst:4346 +#: library/stdtypes.rst:4352 msgid "" "Instances of :class:`set` are compared to instances of :class:`frozenset` " "based on their members. For example, ``set('abc') == frozenset('abc')`` " @@ -6279,7 +6286,7 @@ msgstr "" "karşılaştırılır. Örneğin, ``set('abc') == frozenset('abc')`` ``True`` " "döndürür ve ``set('abc') in set([frozenset('abc')])`` de öyle." -#: library/stdtypes.rst:4350 +#: library/stdtypes.rst:4356 msgid "" "The subset and equality comparisons do not generalize to a total ordering " "function. For example, any two nonempty disjoint sets are not equal and are " @@ -6291,7 +6298,7 @@ msgstr "" "değildir ve birbirinin alt kümesi değildir, bu nedenle aşağıdakilerin *all* " "``Yanlış`` döndürür: ``ab``." -#: library/stdtypes.rst:4355 +#: library/stdtypes.rst:4361 msgid "" "Since sets only define partial ordering (subset relationships), the output " "of the :meth:`list.sort` method is undefined for lists of sets." @@ -6299,11 +6306,11 @@ msgstr "" "Kümeler yalnızca kısmi sıralama (alt küme ilişkileri) tanımladığından, :meth:" "`list.sort` yönteminin çıktısı küme listeleri için tanımsızdır." -#: library/stdtypes.rst:4358 +#: library/stdtypes.rst:4364 msgid "Set elements, like dictionary keys, must be :term:`hashable`." msgstr "Sözlük anahtarları gibi küme öğeleri de :term:`hashable` olmalıdır." -#: library/stdtypes.rst:4360 +#: library/stdtypes.rst:4366 msgid "" "Binary operations that mix :class:`set` instances with :class:`frozenset` " "return the type of the first operand. For example: ``frozenset('ab') | " @@ -6313,7 +6320,7 @@ msgstr "" "ilk işlenenin türünü döndürür. Örneğin: ``frozenset('ab') | set('bc')`` " "bir :class:`frozenset` örneği döndürür." -#: library/stdtypes.rst:4364 +#: library/stdtypes.rst:4370 msgid "" "The following table lists operations available for :class:`set` that do not " "apply to immutable instances of :class:`frozenset`:" @@ -6321,31 +6328,31 @@ msgstr "" "Aşağıdaki tabloda :class:`set` için kullanılabilen ve :class:`frozenset` 'in " "değişmez örneklerine uygulanmayan işlemler listelenmektedir:" -#: library/stdtypes.rst:4370 +#: library/stdtypes.rst:4376 msgid "Update the set, adding elements from all others." msgstr "Diğer tüm öğeleri ekleyerek seti güncelleyin." -#: library/stdtypes.rst:4375 +#: library/stdtypes.rst:4381 msgid "Update the set, keeping only elements found in it and all others." msgstr "" "Yalnızca içinde bulunan öğeleri ve diğerlerini koruyarak seti güncelleyin." -#: library/stdtypes.rst:4380 +#: library/stdtypes.rst:4386 msgid "Update the set, removing elements found in others." msgstr "Diğerlerinde bulunan öğeleri kaldırarak kümeyi güncelleyin." -#: library/stdtypes.rst:4385 +#: library/stdtypes.rst:4391 msgid "" "Update the set, keeping only elements found in either set, but not in both." msgstr "" "Kümeyi güncelleyin, yalnızca her iki kümede de bulunan öğeleri saklayın, " "ancak her ikisinde de bulunmayın." -#: library/stdtypes.rst:4389 +#: library/stdtypes.rst:4395 msgid "Add element *elem* to the set." msgstr "Kümeye *elem* öğesini ekleyin." -#: library/stdtypes.rst:4393 +#: library/stdtypes.rst:4399 msgid "" "Remove element *elem* from the set. Raises :exc:`KeyError` if *elem* is not " "contained in the set." @@ -6353,11 +6360,11 @@ msgstr "" "Kümeden *elem* elemanını kaldırır. Eğer *elem* kümede bulunmuyorsa :exc:" "`KeyError` değerini yükseltir." -#: library/stdtypes.rst:4398 +#: library/stdtypes.rst:4404 msgid "Remove element *elem* from the set if it is present." msgstr "Eğer varsa *elem* öğesini kümeden kaldırır." -#: library/stdtypes.rst:4402 +#: library/stdtypes.rst:4408 msgid "" "Remove and return an arbitrary element from the set. Raises :exc:`KeyError` " "if the set is empty." @@ -6365,11 +6372,11 @@ msgstr "" "Kümeden rastgele bir elemanı kaldırır ve döndürür. Küme boşsa :exc:" "`KeyError` değerini yükseltir." -#: library/stdtypes.rst:4407 +#: library/stdtypes.rst:4413 msgid "Remove all elements from the set." msgstr "Kümeden tüm öğeleri kaldırın." -#: library/stdtypes.rst:4410 +#: library/stdtypes.rst:4416 msgid "" "Note, the non-operator versions of the :meth:`update`, :meth:" "`intersection_update`, :meth:`difference_update`, and :meth:" @@ -6380,7 +6387,7 @@ msgstr "" "ve :meth:`symmetric_difference_update` metotlarının operatör olmayan " "versiyonları herhangi bir iterable'ı argüman olarak kabul edecektir." -#: library/stdtypes.rst:4415 +#: library/stdtypes.rst:4421 #, fuzzy msgid "" "Note, the *elem* argument to the :meth:`~object.__contains__`, :meth:" @@ -6391,11 +6398,11 @@ msgstr "" "*elem* argümanı bir küme olabilir. Eş değer bir frozenset aramayı " "desteklemek için, *elem*'den geçici bir tane oluşturulur." -#: library/stdtypes.rst:4424 +#: library/stdtypes.rst:4430 msgid "Mapping Types --- :class:`dict`" msgstr "Mapping Types --- :class:`dict`" -#: library/stdtypes.rst:4434 +#: library/stdtypes.rst:4440 msgid "" "A :term:`mapping` object maps :term:`hashable` values to arbitrary objects. " "Mappings are mutable objects. There is currently only one standard mapping " @@ -6409,7 +6416,7 @@ msgstr "" "class:`list`, :class:`set` ve :class:`tuple` sınıflarına ve :mod:" "`collections` modülüne bakın)." -#: library/stdtypes.rst:4440 +#: library/stdtypes.rst:4446 msgid "" "A dictionary's keys are *almost* arbitrary values. Values that are not :" "term:`hashable`, that is, values containing lists, dictionaries or other " @@ -6424,7 +6431,7 @@ msgstr "" "``True`` gibi) aynı sözlük girdisini indekslemek için birbirinin yerine " "kullanılabilir." -#: library/stdtypes.rst:4451 +#: library/stdtypes.rst:4457 msgid "" "Return a new dictionary initialized from an optional positional argument and " "a possibly empty set of keyword arguments." @@ -6432,27 +6439,27 @@ msgstr "" "İsteğe bağlı bir konumsal bağımsız değişken ve muhtemelen boş bir anahtar " "sözcük bağımsız değişken kümesinden başlatılan yeni bir sözlük döndürür." -#: library/stdtypes.rst:4454 +#: library/stdtypes.rst:4460 msgid "Dictionaries can be created by several means:" msgstr "Sözlükler çeşitli yollarla oluşturulabilir:" -#: library/stdtypes.rst:4456 +#: library/stdtypes.rst:4462 msgid "" "Use a comma-separated list of ``key: value`` pairs within braces: ``{'jack': " "4098, 'sjoerd': 4127}`` or ``{4098: 'jack', 4127: 'sjoerd'}``" msgstr "" -#: library/stdtypes.rst:4458 +#: library/stdtypes.rst:4464 msgid "Use a dict comprehension: ``{}``, ``{x: x ** 2 for x in range(10)}``" msgstr "" -#: library/stdtypes.rst:4459 +#: library/stdtypes.rst:4465 msgid "" "Use the type constructor: ``dict()``, ``dict([('foo', 100), ('bar', " "200)])``, ``dict(foo=100, bar=200)``" msgstr "" -#: library/stdtypes.rst:4462 +#: library/stdtypes.rst:4468 msgid "" "If no positional argument is given, an empty dictionary is created. If a " "positional argument is given and it defines a ``keys()`` method, a " @@ -6465,7 +6472,7 @@ msgid "" "that key becomes the corresponding value in the new dictionary." msgstr "" -#: library/stdtypes.rst:4472 +#: library/stdtypes.rst:4478 msgid "" "If keyword arguments are given, the keyword arguments and their values are " "added to the dictionary created from the positional argument. If a key " @@ -6473,13 +6480,13 @@ msgid "" "the value from the positional argument." msgstr "" -#: library/stdtypes.rst:4477 +#: library/stdtypes.rst:4483 msgid "" "To illustrate, the following examples all return a dictionary equal to " "``{\"one\": 1, \"two\": 2, \"three\": 3}``::" msgstr "" -#: library/stdtypes.rst:4480 +#: library/stdtypes.rst:4486 msgid "" ">>> a = dict(one=1, two=2, three=3)\n" ">>> b = {'one': 1, 'two': 2, 'three': 3}\n" @@ -6491,33 +6498,33 @@ msgid "" "True" msgstr "" -#: library/stdtypes.rst:4489 +#: library/stdtypes.rst:4495 msgid "" "Providing keyword arguments as in the first example only works for keys that " "are valid Python identifiers. Otherwise, any valid keys can be used." msgstr "" -#: library/stdtypes.rst:4493 +#: library/stdtypes.rst:4499 msgid "" "These are the operations that dictionaries support (and therefore, custom " "mapping types should support too):" msgstr "" -#: library/stdtypes.rst:4498 +#: library/stdtypes.rst:4504 msgid "Return a list of all the keys used in the dictionary *d*." msgstr "" -#: library/stdtypes.rst:4502 +#: library/stdtypes.rst:4508 msgid "Return the number of items in the dictionary *d*." msgstr "" -#: library/stdtypes.rst:4506 +#: library/stdtypes.rst:4512 msgid "" "Return the item of *d* with key *key*. Raises a :exc:`KeyError` if *key* is " "not in the map." msgstr "" -#: library/stdtypes.rst:4511 +#: library/stdtypes.rst:4517 msgid "" "If a subclass of dict defines a method :meth:`__missing__` and *key* is not " "present, the ``d[key]`` operation calls that method with the key *key* as " @@ -6528,7 +6535,7 @@ msgid "" "an instance variable::" msgstr "" -#: library/stdtypes.rst:4519 +#: library/stdtypes.rst:4525 msgid "" ">>> class Counter(dict):\n" "... def __missing__(self, key):\n" @@ -6542,51 +6549,51 @@ msgid "" "1" msgstr "" -#: library/stdtypes.rst:4530 +#: library/stdtypes.rst:4536 msgid "" "The example above shows part of the implementation of :class:`collections." "Counter`. A different ``__missing__`` method is used by :class:`collections." "defaultdict`." msgstr "" -#: library/stdtypes.rst:4536 +#: library/stdtypes.rst:4542 msgid "Set ``d[key]`` to *value*." msgstr "" -#: library/stdtypes.rst:4540 +#: library/stdtypes.rst:4546 msgid "" "Remove ``d[key]`` from *d*. Raises a :exc:`KeyError` if *key* is not in the " "map." msgstr "" -#: library/stdtypes.rst:4545 +#: library/stdtypes.rst:4551 msgid "Return ``True`` if *d* has a key *key*, else ``False``." msgstr "" -#: library/stdtypes.rst:4549 +#: library/stdtypes.rst:4555 msgid "Equivalent to ``not key in d``." msgstr "" -#: library/stdtypes.rst:4553 +#: library/stdtypes.rst:4559 msgid "" "Return an iterator over the keys of the dictionary. This is a shortcut for " "``iter(d.keys())``." msgstr "" -#: library/stdtypes.rst:4558 +#: library/stdtypes.rst:4564 msgid "Remove all items from the dictionary." msgstr "" -#: library/stdtypes.rst:4562 +#: library/stdtypes.rst:4568 msgid "Return a shallow copy of the dictionary." msgstr "" -#: library/stdtypes.rst:4566 +#: library/stdtypes.rst:4572 msgid "" "Create a new dictionary with keys from *iterable* and values set to *value*." msgstr "" -#: library/stdtypes.rst:4568 +#: library/stdtypes.rst:4574 msgid "" ":meth:`fromkeys` is a class method that returns a new dictionary. *value* " "defaults to ``None``. All of the values refer to just a single instance, so " @@ -6595,70 +6602,70 @@ msgid "" "` instead." msgstr "" -#: library/stdtypes.rst:4576 +#: library/stdtypes.rst:4582 msgid "" "Return the value for *key* if *key* is in the dictionary, else *default*. If " "*default* is not given, it defaults to ``None``, so that this method never " "raises a :exc:`KeyError`." msgstr "" -#: library/stdtypes.rst:4582 +#: library/stdtypes.rst:4588 msgid "" "Return a new view of the dictionary's items (``(key, value)`` pairs). See " "the :ref:`documentation of view objects `." msgstr "" -#: library/stdtypes.rst:4587 +#: library/stdtypes.rst:4593 msgid "" "Return a new view of the dictionary's keys. See the :ref:`documentation of " "view objects `." msgstr "" -#: library/stdtypes.rst:4592 +#: library/stdtypes.rst:4598 msgid "" "If *key* is in the dictionary, remove it and return its value, else return " "*default*. If *default* is not given and *key* is not in the dictionary, a :" "exc:`KeyError` is raised." msgstr "" -#: library/stdtypes.rst:4598 +#: library/stdtypes.rst:4604 msgid "" "Remove and return a ``(key, value)`` pair from the dictionary. Pairs are " "returned in :abbr:`LIFO (last-in, first-out)` order." msgstr "" -#: library/stdtypes.rst:4601 +#: library/stdtypes.rst:4607 msgid "" ":meth:`popitem` is useful to destructively iterate over a dictionary, as " "often used in set algorithms. If the dictionary is empty, calling :meth:" "`popitem` raises a :exc:`KeyError`." msgstr "" -#: library/stdtypes.rst:4605 +#: library/stdtypes.rst:4611 msgid "" "LIFO order is now guaranteed. In prior versions, :meth:`popitem` would " "return an arbitrary key/value pair." msgstr "" -#: library/stdtypes.rst:4611 +#: library/stdtypes.rst:4617 msgid "" "Return a reverse iterator over the keys of the dictionary. This is a " "shortcut for ``reversed(d.keys())``." msgstr "" -#: library/stdtypes.rst:4618 +#: library/stdtypes.rst:4624 msgid "" "If *key* is in the dictionary, return its value. If not, insert *key* with " "a value of *default* and return *default*. *default* defaults to ``None``." msgstr "" -#: library/stdtypes.rst:4624 +#: library/stdtypes.rst:4630 msgid "" "Update the dictionary with the key/value pairs from *other*, overwriting " "existing keys. Return ``None``." msgstr "" -#: library/stdtypes.rst:4627 +#: library/stdtypes.rst:4633 msgid "" ":meth:`update` accepts either another object with a ``keys()`` method (in " "which case :meth:`~object.__getitem__` is called with every key returned " @@ -6667,54 +6674,54 @@ msgid "" "is then updated with those key/value pairs: ``d.update(red=1, blue=2)``." msgstr "" -#: library/stdtypes.rst:4635 +#: library/stdtypes.rst:4641 msgid "" "Return a new view of the dictionary's values. See the :ref:`documentation " "of view objects `." msgstr "" -#: library/stdtypes.rst:4638 +#: library/stdtypes.rst:4644 msgid "" "An equality comparison between one ``dict.values()`` view and another will " "always return ``False``. This also applies when comparing ``dict.values()`` " "to itself::" msgstr "" -#: library/stdtypes.rst:4642 +#: library/stdtypes.rst:4648 msgid "" ">>> d = {'a': 1}\n" ">>> d.values() == d.values()\n" "False" msgstr "" -#: library/stdtypes.rst:4648 +#: library/stdtypes.rst:4654 msgid "" "Create a new dictionary with the merged keys and values of *d* and *other*, " "which must both be dictionaries. The values of *other* take priority when " "*d* and *other* share keys." msgstr "" -#: library/stdtypes.rst:4656 +#: library/stdtypes.rst:4662 msgid "" "Update the dictionary *d* with keys and values from *other*, which may be " "either a :term:`mapping` or an :term:`iterable` of key/value pairs. The " "values of *other* take priority when *d* and *other* share keys." msgstr "" -#: library/stdtypes.rst:4662 +#: library/stdtypes.rst:4668 msgid "" "Dictionaries compare equal if and only if they have the same ``(key, " "value)`` pairs (regardless of ordering). Order comparisons ('<', '<=', '>=', " "'>') raise :exc:`TypeError`." msgstr "" -#: library/stdtypes.rst:4666 +#: library/stdtypes.rst:4672 msgid "" "Dictionaries preserve insertion order. Note that updating a key does not " "affect the order. Keys added after deletion are inserted at the end. ::" msgstr "" -#: library/stdtypes.rst:4669 +#: library/stdtypes.rst:4675 msgid "" ">>> d = {\"one\": 1, \"two\": 2, \"three\": 3, \"four\": 4}\n" ">>> d\n" @@ -6732,17 +6739,17 @@ msgid "" "{'one': 42, 'three': 3, 'four': 4, 'two': None}" msgstr "" -#: library/stdtypes.rst:4684 +#: library/stdtypes.rst:4690 msgid "" "Dictionary order is guaranteed to be insertion order. This behavior was an " "implementation detail of CPython from 3.6." msgstr "" -#: library/stdtypes.rst:4688 +#: library/stdtypes.rst:4694 msgid "Dictionaries and dictionary views are reversible. ::" msgstr "" -#: library/stdtypes.rst:4690 +#: library/stdtypes.rst:4696 msgid "" ">>> d = {\"one\": 1, \"two\": 2, \"three\": 3, \"four\": 4}\n" ">>> d\n" @@ -6755,21 +6762,21 @@ msgid "" "[('four', 4), ('three', 3), ('two', 2), ('one', 1)]" msgstr "" -#: library/stdtypes.rst:4700 +#: library/stdtypes.rst:4706 msgid "Dictionaries are now reversible." msgstr "" -#: library/stdtypes.rst:4705 +#: library/stdtypes.rst:4711 msgid "" ":class:`types.MappingProxyType` can be used to create a read-only view of a :" "class:`dict`." msgstr "" -#: library/stdtypes.rst:4712 +#: library/stdtypes.rst:4718 msgid "Dictionary view objects" msgstr "" -#: library/stdtypes.rst:4714 +#: library/stdtypes.rst:4720 msgid "" "The objects returned by :meth:`dict.keys`, :meth:`dict.values` and :meth:" "`dict.items` are *view objects*. They provide a dynamic view on the " @@ -6777,23 +6784,23 @@ msgid "" "reflects these changes." msgstr "" -#: library/stdtypes.rst:4719 +#: library/stdtypes.rst:4725 msgid "" "Dictionary views can be iterated over to yield their respective data, and " "support membership tests:" msgstr "" -#: library/stdtypes.rst:4724 +#: library/stdtypes.rst:4730 msgid "Return the number of entries in the dictionary." msgstr "" -#: library/stdtypes.rst:4728 +#: library/stdtypes.rst:4734 msgid "" "Return an iterator over the keys, values or items (represented as tuples of " "``(key, value)``) in the dictionary." msgstr "" -#: library/stdtypes.rst:4731 +#: library/stdtypes.rst:4737 msgid "" "Keys and values are iterated over in insertion order. This allows the " "creation of ``(value, key)`` pairs using :func:`zip`: ``pairs = zip(d." @@ -6801,39 +6808,39 @@ msgid "" "[(v, k) for (k, v) in d.items()]``." msgstr "" -#: library/stdtypes.rst:4736 +#: library/stdtypes.rst:4742 msgid "" "Iterating views while adding or deleting entries in the dictionary may raise " "a :exc:`RuntimeError` or fail to iterate over all entries." msgstr "" -#: library/stdtypes.rst:4739 +#: library/stdtypes.rst:4745 msgid "Dictionary order is guaranteed to be insertion order." msgstr "" -#: library/stdtypes.rst:4744 +#: library/stdtypes.rst:4750 msgid "" "Return ``True`` if *x* is in the underlying dictionary's keys, values or " "items (in the latter case, *x* should be a ``(key, value)`` tuple)." msgstr "" -#: library/stdtypes.rst:4749 +#: library/stdtypes.rst:4755 msgid "" "Return a reverse iterator over the keys, values or items of the dictionary. " "The view will be iterated in reverse order of the insertion." msgstr "" -#: library/stdtypes.rst:4752 +#: library/stdtypes.rst:4758 msgid "Dictionary views are now reversible." msgstr "" -#: library/stdtypes.rst:4757 +#: library/stdtypes.rst:4763 msgid "" "Return a :class:`types.MappingProxyType` that wraps the original dictionary " "to which the view refers." msgstr "" -#: library/stdtypes.rst:4762 +#: library/stdtypes.rst:4768 msgid "" "Keys views are set-like since their entries are unique and :term:`hashable`. " "Items views also have set-like operations since the (key, value) pairs are " @@ -6847,11 +6854,11 @@ msgid "" "input." msgstr "" -#: library/stdtypes.rst:4774 +#: library/stdtypes.rst:4780 msgid "An example of dictionary view usage::" msgstr "" -#: library/stdtypes.rst:4776 +#: library/stdtypes.rst:4782 msgid "" ">>> dishes = {'eggs': 2, 'sausage': 1, 'bacon': 1, 'spam': 500}\n" ">>> keys = dishes.keys()\n" @@ -6892,11 +6899,11 @@ msgid "" "500" msgstr "" -#: library/stdtypes.rst:4818 +#: library/stdtypes.rst:4824 msgid "Context Manager Types" msgstr "Bağlam Yöneticisi Türleri" -#: library/stdtypes.rst:4825 +#: library/stdtypes.rst:4831 msgid "" "Python's :keyword:`with` statement supports the concept of a runtime context " "defined by a context manager. This is implemented using a pair of methods " @@ -6904,7 +6911,7 @@ msgid "" "before the statement body is executed and exited when the statement ends:" msgstr "" -#: library/stdtypes.rst:4833 +#: library/stdtypes.rst:4839 msgid "" "Enter the runtime context and return either this object or another object " "related to the runtime context. The value returned by this method is bound " @@ -6912,14 +6919,14 @@ msgid "" "using this context manager." msgstr "" -#: library/stdtypes.rst:4838 +#: library/stdtypes.rst:4844 msgid "" "An example of a context manager that returns itself is a :term:`file " "object`. File objects return themselves from __enter__() to allow :func:" "`open` to be used as the context expression in a :keyword:`with` statement." msgstr "" -#: library/stdtypes.rst:4842 +#: library/stdtypes.rst:4848 msgid "" "An example of a context manager that returns a related object is the one " "returned by :func:`decimal.localcontext`. These managers set the active " @@ -6929,7 +6936,7 @@ msgid "" "the :keyword:`!with` statement." msgstr "" -#: library/stdtypes.rst:4852 +#: library/stdtypes.rst:4858 msgid "" "Exit the runtime context and return a Boolean flag indicating if any " "exception that occurred should be suppressed. If an exception occurred while " @@ -6938,7 +6945,7 @@ msgid "" "arguments are ``None``." msgstr "" -#: library/stdtypes.rst:4857 +#: library/stdtypes.rst:4863 msgid "" "Returning a true value from this method will cause the :keyword:`with` " "statement to suppress the exception and continue execution with the " @@ -6949,7 +6956,7 @@ msgid "" "statement." msgstr "" -#: library/stdtypes.rst:4864 +#: library/stdtypes.rst:4870 msgid "" "The exception passed in should never be reraised explicitly - instead, this " "method should return a false value to indicate that the method completed " @@ -6958,7 +6965,7 @@ msgid "" "__exit__` method has actually failed." msgstr "" -#: library/stdtypes.rst:4870 +#: library/stdtypes.rst:4876 msgid "" "Python defines several context managers to support easy thread " "synchronisation, prompt closure of files or other objects, and simpler " @@ -6967,7 +6974,7 @@ msgid "" "management protocol. See the :mod:`contextlib` module for some examples." msgstr "" -#: library/stdtypes.rst:4876 +#: library/stdtypes.rst:4882 msgid "" "Python's :term:`generator`\\s and the :class:`contextlib.contextmanager` " "decorator provide a convenient way to implement these protocols. If a " @@ -6977,7 +6984,7 @@ msgid "" "rather than the iterator produced by an undecorated generator function." msgstr "" -#: library/stdtypes.rst:4883 +#: library/stdtypes.rst:4889 msgid "" "Note that there is no specific slot for any of these methods in the type " "structure for Python objects in the Python/C API. Extension types wanting to " @@ -6986,23 +6993,23 @@ msgid "" "a single class dictionary lookup is negligible." msgstr "" -#: library/stdtypes.rst:4891 +#: library/stdtypes.rst:4897 msgid "" "Type Annotation Types --- :ref:`Generic Alias `, :ref:" "`Union `" msgstr "" -#: library/stdtypes.rst:4896 +#: library/stdtypes.rst:4902 msgid "" "The core built-in types for :term:`type annotations ` are :ref:" "`Generic Alias ` and :ref:`Union `." msgstr "" -#: library/stdtypes.rst:4903 +#: library/stdtypes.rst:4909 msgid "Generic Alias Type" msgstr "Genel Takma Ad Türü" -#: library/stdtypes.rst:4909 +#: library/stdtypes.rst:4915 msgid "" "``GenericAlias`` objects are generally created by :ref:`subscripting " "` a class. They are most often used with :ref:`container " @@ -7012,13 +7019,13 @@ msgid "" "are intended primarily for use with :term:`type annotations `." msgstr "" -#: library/stdtypes.rst:4919 +#: library/stdtypes.rst:4925 msgid "" "It is generally only possible to subscript a class if the class implements " "the special method :meth:`~object.__class_getitem__`." msgstr "" -#: library/stdtypes.rst:4922 +#: library/stdtypes.rst:4928 msgid "" "A ``GenericAlias`` object acts as a proxy for a :term:`generic type`, " "implementing *parameterized generics*." @@ -7026,7 +7033,7 @@ msgstr "" "Bir ``GenericAlias`` nesnesi, :term:`generic type` için bir vekil olarak " "hareket eder ve *parameterized generics* uygular." -#: library/stdtypes.rst:4925 +#: library/stdtypes.rst:4931 msgid "" "For a container class, the argument(s) supplied to a :ref:`subscription " "` of the class may indicate the type(s) of the elements an " @@ -7035,7 +7042,7 @@ msgid "" "`bytes`." msgstr "" -#: library/stdtypes.rst:4931 +#: library/stdtypes.rst:4937 msgid "" "For a class which defines :meth:`~object.__class_getitem__` but is not a " "container, the argument(s) supplied to a subscription of the class will " @@ -7044,7 +7051,7 @@ msgid "" "the :class:`str` data type and the :class:`bytes` data type:" msgstr "" -#: library/stdtypes.rst:4937 +#: library/stdtypes.rst:4943 msgid "" "If ``x = re.search('foo', 'foo')``, ``x`` will be a :ref:`re.Match ` object where the return values of ``x.group(0)`` and ``x[0]`` will " @@ -7052,7 +7059,7 @@ msgid "" "annotations with the ``GenericAlias`` ``re.Match[str]``." msgstr "" -#: library/stdtypes.rst:4943 +#: library/stdtypes.rst:4949 msgid "" "If ``y = re.search(b'bar', b'bar')``, (note the ``b`` for :class:`bytes`), " "``y`` will also be an instance of ``re.Match``, but the return values of ``y." @@ -7061,7 +7068,7 @@ msgid "" "objects>` objects with ``re.Match[bytes]``." msgstr "" -#: library/stdtypes.rst:4949 +#: library/stdtypes.rst:4955 msgid "" "``GenericAlias`` objects are instances of the class :class:`types." "GenericAlias`, which can also be used to create ``GenericAlias`` objects " @@ -7070,7 +7077,7 @@ msgstr "" "``GenericAlias`` nesneleri, doğrudan ``GenericAlias`` nesneleri oluşturmak " "için de kullanılabilen :class:`types.GenericAlias` sınıfının örnekleridir." -#: library/stdtypes.rst:4955 +#: library/stdtypes.rst:4961 msgid "" "Creates a ``GenericAlias`` representing a type ``T`` parameterized by types " "*X*, *Y*, and more depending on the ``T`` used. For example, a function " @@ -7081,13 +7088,13 @@ msgstr "" "Örneğin, :class:`float` elemanları içeren bir :class:`list` bekleyen bir " "fonksiyon::" -#: library/stdtypes.rst:4960 +#: library/stdtypes.rst:4966 msgid "" "def average(values: list[float]) -> float:\n" " return sum(values) / len(values)" msgstr "" -#: library/stdtypes.rst:4963 +#: library/stdtypes.rst:4969 msgid "" "Another example for :term:`mapping` objects, using a :class:`dict`, which is " "a generic type expecting two type parameters representing the key type and " @@ -7099,13 +7106,13 @@ msgstr "" "başka bir örnek. Bu örnekte, fonksiyon :class:`str` türünde anahtarları ve :" "class:`int` türünde değerleri olan bir ``dict`` bekler::" -#: library/stdtypes.rst:4968 +#: library/stdtypes.rst:4974 msgid "" "def send_post_request(url: str, body: dict[str, int]) -> None:\n" " ..." msgstr "" -#: library/stdtypes.rst:4971 +#: library/stdtypes.rst:4977 msgid "" "The builtin functions :func:`isinstance` and :func:`issubclass` do not " "accept ``GenericAlias`` types for their second argument::" @@ -7113,7 +7120,7 @@ msgstr "" "Yerleşik :func:`isinstance` ve :func:`issubclass` işlevleri ikinci " "argümanları için ``GenericAlias`` türlerini kabul etmez::" -#: library/stdtypes.rst:4974 +#: library/stdtypes.rst:4980 msgid "" ">>> isinstance([1, 2], list[str])\n" "Traceback (most recent call last):\n" @@ -7121,7 +7128,7 @@ msgid "" "TypeError: isinstance() argument 2 cannot be a parameterized generic" msgstr "" -#: library/stdtypes.rst:4979 +#: library/stdtypes.rst:4985 msgid "" "The Python runtime does not enforce :term:`type annotations `. " "This extends to generic types and their type parameters. When creating a " @@ -7135,14 +7142,14 @@ msgstr "" "elemanlar türlerine göre kontrol edilmez. Örneğin, aşağıdaki kod tavsiye " "edilmez, ancak hatasız çalışacaktır::" -#: library/stdtypes.rst:4985 +#: library/stdtypes.rst:4991 msgid "" ">>> t = list[str]\n" ">>> t([1, 2, 3])\n" "[1, 2, 3]" msgstr "" -#: library/stdtypes.rst:4989 +#: library/stdtypes.rst:4995 msgid "" "Furthermore, parameterized generics erase type parameters during object " "creation::" @@ -7150,7 +7157,7 @@ msgstr "" "Ayrıca, parametrelendirilmiş jenerikler nesne oluşturma sırasında tip " "parametrelerini siler::" -#: library/stdtypes.rst:4992 +#: library/stdtypes.rst:4998 msgid "" ">>> t = list[str]\n" ">>> type(t)\n" @@ -7161,7 +7168,7 @@ msgid "" "" msgstr "" -#: library/stdtypes.rst:5000 +#: library/stdtypes.rst:5006 msgid "" "Calling :func:`repr` or :func:`str` on a generic shows the parameterized " "type::" @@ -7169,7 +7176,7 @@ msgstr "" "Bir jenerik üzerinde :func:`repr` veya :func:`str` çağrısı " "parametrelendirilmiş türü gösterir::" -#: library/stdtypes.rst:5002 +#: library/stdtypes.rst:5008 msgid "" ">>> repr(list[int])\n" "'list[int]'\n" @@ -7178,7 +7185,7 @@ msgid "" "'list[int]'" msgstr "" -#: library/stdtypes.rst:5008 +#: library/stdtypes.rst:5014 msgid "" "The :meth:`~object.__getitem__` method of generic containers will raise an " "exception to disallow mistakes like ``dict[str][str]``::" @@ -7186,7 +7193,7 @@ msgstr "" "Genel kapsayıcıların :meth:`~object.__getitem__` metodu, ``dict[str][str]`` " "gibi hatalara izin vermemek için bir istisna oluşturacaktır::" -#: library/stdtypes.rst:5011 +#: library/stdtypes.rst:5017 msgid "" ">>> dict[str][str]\n" "Traceback (most recent call last):\n" @@ -7194,7 +7201,7 @@ msgid "" "TypeError: dict[str] is not a generic class" msgstr "" -#: library/stdtypes.rst:5016 +#: library/stdtypes.rst:5022 msgid "" "However, such expressions are valid when :ref:`type variables ` " "are used. The index must have as many elements as there are type variable " @@ -7204,7 +7211,7 @@ msgstr "" "geçerlidir. Dizin, ``GenericAlias`` nesnesinin :attr:`~genericalias." "__args__` öğesindeki tür değişkeni öğeleri kadar öğeye sahip olmalıdır::" -#: library/stdtypes.rst:5020 +#: library/stdtypes.rst:5026 msgid "" ">>> from typing import TypeVar\n" ">>> Y = TypeVar('Y')\n" @@ -7212,11 +7219,11 @@ msgid "" "dict[str, int]" msgstr "" -#: library/stdtypes.rst:5027 +#: library/stdtypes.rst:5033 msgid "Standard Generic Classes" msgstr "Standart Jenerik Sınıflar" -#: library/stdtypes.rst:5029 +#: library/stdtypes.rst:5035 msgid "" "The following standard library classes support parameterized generics. This " "list is non-exhaustive." @@ -7224,241 +7231,251 @@ msgstr "" "Bu standart kütüphane sınıfları parametrelendirilmiş jenerikleri destekler. " "Bu liste kapsamlı değildir." -#: library/stdtypes.rst:5032 +#: library/stdtypes.rst:5038 msgid ":class:`tuple`" msgstr ":class:`tuple`" -#: library/stdtypes.rst:5033 +#: library/stdtypes.rst:5039 msgid ":class:`list`" msgstr ":class:`list`" -#: library/stdtypes.rst:5034 +#: library/stdtypes.rst:5040 msgid ":class:`dict`" msgstr ":class:`dict`" -#: library/stdtypes.rst:5035 +#: library/stdtypes.rst:5041 msgid ":class:`set`" msgstr ":class:`set`" -#: library/stdtypes.rst:5036 +#: library/stdtypes.rst:5042 msgid ":class:`frozenset`" msgstr ":class:`frozenset`" -#: library/stdtypes.rst:5037 +#: library/stdtypes.rst:5043 msgid ":class:`type`" msgstr ":class:`type`" -#: library/stdtypes.rst:5038 +#: library/stdtypes.rst:5044 +#, fuzzy +msgid ":class:`asyncio.Future`" +msgstr ":class:`tuple`" + +#: library/stdtypes.rst:5045 +#, fuzzy +msgid ":class:`asyncio.Task`" +msgstr ":class:`list`" + +#: library/stdtypes.rst:5046 msgid ":class:`collections.deque`" msgstr ":class:`collections.deque`" -#: library/stdtypes.rst:5039 +#: library/stdtypes.rst:5047 msgid ":class:`collections.defaultdict`" msgstr ":class:`collections.defaultdict`" -#: library/stdtypes.rst:5040 +#: library/stdtypes.rst:5048 msgid ":class:`collections.OrderedDict`" msgstr ":class:`collections.OrderedDict`" -#: library/stdtypes.rst:5041 +#: library/stdtypes.rst:5049 msgid ":class:`collections.Counter`" msgstr ":class:`collections.Counter`" -#: library/stdtypes.rst:5042 +#: library/stdtypes.rst:5050 msgid ":class:`collections.ChainMap`" msgstr ":class:`collections.ChainMap`" -#: library/stdtypes.rst:5043 +#: library/stdtypes.rst:5051 msgid ":class:`collections.abc.Awaitable`" msgstr ":class:`collections.abc.Awaitable`" -#: library/stdtypes.rst:5044 +#: library/stdtypes.rst:5052 msgid ":class:`collections.abc.Coroutine`" msgstr ":class:`collections.abc.Coroutine`" -#: library/stdtypes.rst:5045 +#: library/stdtypes.rst:5053 msgid ":class:`collections.abc.AsyncIterable`" msgstr ":class:`collections.abc.AsyncIterable`" -#: library/stdtypes.rst:5046 +#: library/stdtypes.rst:5054 msgid ":class:`collections.abc.AsyncIterator`" msgstr ":class:`collections.abc.AsyncIterator`" -#: library/stdtypes.rst:5047 +#: library/stdtypes.rst:5055 msgid ":class:`collections.abc.AsyncGenerator`" msgstr ":class:`collections.abc.AsyncGenerator`" -#: library/stdtypes.rst:5048 +#: library/stdtypes.rst:5056 msgid ":class:`collections.abc.Iterable`" msgstr ":class:`collections.abc.Iterable`" -#: library/stdtypes.rst:5049 +#: library/stdtypes.rst:5057 msgid ":class:`collections.abc.Iterator`" msgstr ":class:`collections.abc.Iterator`" -#: library/stdtypes.rst:5050 +#: library/stdtypes.rst:5058 msgid ":class:`collections.abc.Generator`" msgstr ":class:`collections.abc.Generator`" -#: library/stdtypes.rst:5051 +#: library/stdtypes.rst:5059 msgid ":class:`collections.abc.Reversible`" msgstr ":class:`collections.abc.Reversible`" -#: library/stdtypes.rst:5052 +#: library/stdtypes.rst:5060 msgid ":class:`collections.abc.Container`" msgstr ":class:`collections.abc.Container`" -#: library/stdtypes.rst:5053 +#: library/stdtypes.rst:5061 msgid ":class:`collections.abc.Collection`" msgstr ":class:`collections.abc.Collection`" -#: library/stdtypes.rst:5054 +#: library/stdtypes.rst:5062 msgid ":class:`collections.abc.Callable`" msgstr ":class:`collections.abc.Callable`" -#: library/stdtypes.rst:5055 +#: library/stdtypes.rst:5063 msgid ":class:`collections.abc.Set`" msgstr ":class:`collections.abc.Set`" -#: library/stdtypes.rst:5056 +#: library/stdtypes.rst:5064 msgid ":class:`collections.abc.MutableSet`" msgstr ":class:`collections.abc.MutableSet`" -#: library/stdtypes.rst:5057 +#: library/stdtypes.rst:5065 msgid ":class:`collections.abc.Mapping`" msgstr ":class:`collections.abc.Mapping`" -#: library/stdtypes.rst:5058 +#: library/stdtypes.rst:5066 msgid ":class:`collections.abc.MutableMapping`" msgstr ":class:`collections.abc.MutableMapping`" -#: library/stdtypes.rst:5059 +#: library/stdtypes.rst:5067 msgid ":class:`collections.abc.Sequence`" msgstr ":class:`collections.abc.Sequence`" -#: library/stdtypes.rst:5060 +#: library/stdtypes.rst:5068 msgid ":class:`collections.abc.MutableSequence`" msgstr ":class:`collections.abc.MutableSequence`" -#: library/stdtypes.rst:5061 +#: library/stdtypes.rst:5069 msgid ":class:`collections.abc.ByteString`" msgstr ":class:`collections.abc.ByteString`" -#: library/stdtypes.rst:5062 +#: library/stdtypes.rst:5070 msgid ":class:`collections.abc.MappingView`" msgstr ":class:`collections.abc.MappingView`" -#: library/stdtypes.rst:5063 +#: library/stdtypes.rst:5071 msgid ":class:`collections.abc.KeysView`" msgstr ":class:`collections.abc.KeysView`" -#: library/stdtypes.rst:5064 +#: library/stdtypes.rst:5072 msgid ":class:`collections.abc.ItemsView`" msgstr ":class:`collections.abc.ItemsView`" -#: library/stdtypes.rst:5065 +#: library/stdtypes.rst:5073 msgid ":class:`collections.abc.ValuesView`" msgstr ":class:`collections.abc.ValuesView`" -#: library/stdtypes.rst:5066 +#: library/stdtypes.rst:5074 msgid ":class:`contextlib.AbstractContextManager`" msgstr ":class:`contextlib.AbstractContextManager`" -#: library/stdtypes.rst:5067 +#: library/stdtypes.rst:5075 msgid ":class:`contextlib.AbstractAsyncContextManager`" msgstr ":class:`contextlib.AbstractAsyncContextManager`" -#: library/stdtypes.rst:5068 +#: library/stdtypes.rst:5076 msgid ":class:`dataclasses.Field`" msgstr ":class:`dataclasses.Field`" -#: library/stdtypes.rst:5069 +#: library/stdtypes.rst:5077 msgid ":class:`functools.cached_property`" msgstr ":class:`functools.cached_property`" -#: library/stdtypes.rst:5070 +#: library/stdtypes.rst:5078 msgid ":class:`functools.partialmethod`" msgstr "" -#: library/stdtypes.rst:5071 +#: library/stdtypes.rst:5079 msgid ":class:`os.PathLike`" msgstr ":class:`os.PathLike`" -#: library/stdtypes.rst:5072 +#: library/stdtypes.rst:5080 msgid ":class:`queue.LifoQueue`" msgstr ":class:`queue.LifoQueue`" -#: library/stdtypes.rst:5073 +#: library/stdtypes.rst:5081 msgid ":class:`queue.Queue`" msgstr ":class:`queue.Queue`" -#: library/stdtypes.rst:5074 +#: library/stdtypes.rst:5082 msgid ":class:`queue.PriorityQueue`" msgstr ":class:`queue.PriorityQueue`" -#: library/stdtypes.rst:5075 +#: library/stdtypes.rst:5083 msgid ":class:`queue.SimpleQueue`" msgstr ":class:`tuple`" -#: library/stdtypes.rst:5076 +#: library/stdtypes.rst:5084 msgid ":ref:`re.Pattern `" msgstr ":ref:`re.Pattern `" -#: library/stdtypes.rst:5077 +#: library/stdtypes.rst:5085 msgid ":ref:`re.Match `" msgstr ":ref:`re.Match `" -#: library/stdtypes.rst:5078 +#: library/stdtypes.rst:5086 msgid ":class:`shelve.BsdDbShelf`" msgstr ":class:`shelve.BsdDbShelf`" -#: library/stdtypes.rst:5079 +#: library/stdtypes.rst:5087 msgid ":class:`shelve.DbfilenameShelf`" msgstr ":class:`shelve.DbfilenameShelf`" -#: library/stdtypes.rst:5080 +#: library/stdtypes.rst:5088 msgid ":class:`shelve.Shelf`" msgstr ":class:`shelve.Shelf`" -#: library/stdtypes.rst:5081 +#: library/stdtypes.rst:5089 msgid ":class:`types.MappingProxyType`" msgstr ":class:`types.MappingProxyType`" -#: library/stdtypes.rst:5082 +#: library/stdtypes.rst:5090 msgid ":class:`weakref.WeakKeyDictionary`" msgstr "" -#: library/stdtypes.rst:5083 +#: library/stdtypes.rst:5091 msgid ":class:`weakref.WeakMethod`" msgstr "" -#: library/stdtypes.rst:5084 +#: library/stdtypes.rst:5092 msgid ":class:`weakref.WeakSet`" msgstr ":class:`weakref.WeakSet`" -#: library/stdtypes.rst:5085 +#: library/stdtypes.rst:5093 msgid ":class:`weakref.WeakValueDictionary`" msgstr "" -#: library/stdtypes.rst:5090 +#: library/stdtypes.rst:5098 msgid "Special Attributes of ``GenericAlias`` objects" msgstr "``GenericAlias`` objesinin Özel Öznitelikleri" -#: library/stdtypes.rst:5092 +#: library/stdtypes.rst:5100 msgid "All parameterized generics implement special read-only attributes." msgstr "Tüm parametreli jenerikler özel salt okunur öznitelikler uygular." -#: library/stdtypes.rst:5096 +#: library/stdtypes.rst:5104 msgid "This attribute points at the non-parameterized generic class::" msgstr "Bu öznitelik, parametrelendirilmemiş genel sınıfa işaret eder::" -#: library/stdtypes.rst:5098 +#: library/stdtypes.rst:5106 msgid "" ">>> list[int].__origin__\n" "" msgstr "" -#: library/stdtypes.rst:5104 +#: library/stdtypes.rst:5112 msgid "" "This attribute is a :class:`tuple` (possibly of length 1) of generic types " "passed to the original :meth:`~object.__class_getitem__` of the generic " @@ -7468,13 +7485,13 @@ msgstr "" "öğesine iletilen jenerik tiplerinden bir :class:`tuple` 'dır (muhtemelen 1 " "uzunluğunda)::" -#: library/stdtypes.rst:5108 +#: library/stdtypes.rst:5116 msgid "" ">>> dict[str, list[int]].__args__\n" "(, list[int])" msgstr "" -#: library/stdtypes.rst:5114 +#: library/stdtypes.rst:5122 msgid "" "This attribute is a lazily computed tuple (possibly empty) of unique type " "variables found in ``__args__``::" @@ -7482,7 +7499,7 @@ msgstr "" "Bu öznitelik, ''__args__'' içinde bulunan benzersiz tür değişkenlerin tembel " "bir şekilde hesaplanmış bir demetidir (muhtemelen boş):" -#: library/stdtypes.rst:5117 +#: library/stdtypes.rst:5125 msgid "" ">>> from typing import TypeVar\n" "\n" @@ -7491,7 +7508,7 @@ msgid "" "(~T,)" msgstr "" -#: library/stdtypes.rst:5125 +#: library/stdtypes.rst:5133 msgid "" "A ``GenericAlias`` object with :class:`typing.ParamSpec` parameters may not " "have correct ``__parameters__`` after substitution because :class:`typing." @@ -7501,49 +7518,49 @@ msgstr "" "değiştirildikten sonra doğru ``__parameters__`` olmayabilir çünkü :class:" "`typing.ParamSpec` öncelikle statik tip kontrolü için tasarlanmıştır." -#: library/stdtypes.rst:5132 +#: library/stdtypes.rst:5140 msgid "" "A boolean that is true if the alias has been unpacked using the ``*`` " "operator (see :data:`~typing.TypeVarTuple`)." msgstr "" -#: library/stdtypes.rst:5140 +#: library/stdtypes.rst:5148 msgid ":pep:`484` - Type Hints" msgstr "" -#: library/stdtypes.rst:5141 +#: library/stdtypes.rst:5149 msgid "Introducing Python's framework for type annotations." msgstr "" -#: library/stdtypes.rst:5143 +#: library/stdtypes.rst:5151 msgid ":pep:`585` - Type Hinting Generics In Standard Collections" msgstr "" ":pep:`585` - Standart Koleksiyonlarda Tip İma Etme (Type Hinting) Jenerikleri" -#: library/stdtypes.rst:5144 +#: library/stdtypes.rst:5152 msgid "" "Introducing the ability to natively parameterize standard-library classes, " "provided they implement the special class method :meth:`~object." "__class_getitem__`." msgstr "" -#: library/stdtypes.rst:5148 +#: library/stdtypes.rst:5156 msgid "" ":ref:`Generics`, :ref:`user-defined generics ` and :" "class:`typing.Generic`" msgstr "" -#: library/stdtypes.rst:5149 +#: library/stdtypes.rst:5157 msgid "" "Documentation on how to implement generic classes that can be parameterized " "at runtime and understood by static type-checkers." msgstr "" -#: library/stdtypes.rst:5158 +#: library/stdtypes.rst:5166 msgid "Union Type" msgstr "Sendika Türü" -#: library/stdtypes.rst:5164 +#: library/stdtypes.rst:5172 msgid "" "A union object holds the value of the ``|`` (bitwise or) operation on " "multiple :ref:`type objects `. These types are intended " @@ -7557,7 +7574,7 @@ msgstr "" "Birleşim türü ifadesi, aşağıdakilere kıyasla daha temiz tür ipucu sözdizimi " "sağlar :data:`typing.Union`." -#: library/stdtypes.rst:5171 +#: library/stdtypes.rst:5179 msgid "" "Defines a union object which holds types *X*, *Y*, and so forth. ``X | Y`` " "means either X or Y. It is equivalent to ``typing.Union[X, Y]``. For " @@ -7568,13 +7585,13 @@ msgstr "" "anlamına gelir. Bu, ``typing.Union[X, Y]`` ile eş değerdir. Örneğin, " "aşağıdaki işlev :class:`int` veya :class:`float`::" -#: library/stdtypes.rst:5176 +#: library/stdtypes.rst:5184 msgid "" "def square(number: int | float) -> int | float:\n" " return number ** 2" msgstr "" -#: library/stdtypes.rst:5181 +#: library/stdtypes.rst:5189 msgid "" "The ``|`` operand cannot be used at runtime to define unions where one or " "more members is a forward reference. For example, ``int | \"Foo\"``, where " @@ -7583,54 +7600,54 @@ msgid "" "a string, e.g. ``\"int | Foo\"``." msgstr "" -#: library/stdtypes.rst:5189 +#: library/stdtypes.rst:5197 msgid "" "Union objects can be tested for equality with other union objects. Details:" msgstr "" "Birlik nesneleri, diğer birlik nesneleriyle eşitlik açısından test " "edilebilir. Detaylar:" -#: library/stdtypes.rst:5191 +#: library/stdtypes.rst:5199 msgid "Unions of unions are flattened::" msgstr "Birliklerin birlikleri düzleştirimiştir::" -#: library/stdtypes.rst:5193 +#: library/stdtypes.rst:5201 msgid "(int | str) | float == int | str | float" msgstr "" -#: library/stdtypes.rst:5195 +#: library/stdtypes.rst:5203 msgid "Redundant types are removed::" msgstr "Gereksiz türler kaldırılır::" -#: library/stdtypes.rst:5197 +#: library/stdtypes.rst:5205 msgid "int | str | int == int | str" msgstr "" -#: library/stdtypes.rst:5199 +#: library/stdtypes.rst:5207 msgid "When comparing unions, the order is ignored::" msgstr "Birlikleri karşılaştırırken, sipariş göz ardı edilir::" -#: library/stdtypes.rst:5201 +#: library/stdtypes.rst:5209 msgid "int | str == str | int" msgstr "" -#: library/stdtypes.rst:5203 +#: library/stdtypes.rst:5211 msgid "It is compatible with :data:`typing.Union`::" msgstr ":data:`typing.Union`:: ile uyumludur:" -#: library/stdtypes.rst:5205 +#: library/stdtypes.rst:5213 msgid "int | str == typing.Union[int, str]" msgstr "" -#: library/stdtypes.rst:5207 +#: library/stdtypes.rst:5215 msgid "Optional types can be spelled as a union with ``None``::" msgstr "İsteğe bağlı türler ``None``:: ile bir birlik olarak yazılabilir:" -#: library/stdtypes.rst:5209 +#: library/stdtypes.rst:5217 msgid "str | None == typing.Optional[str]" msgstr "" -#: library/stdtypes.rst:5214 +#: library/stdtypes.rst:5222 msgid "" "Calls to :func:`isinstance` and :func:`issubclass` are also supported with a " "union object::" @@ -7638,20 +7655,20 @@ msgstr "" ":func:`isinstance` ve :func:`issubclass` çağrıları da bir birlik nesnesiyle " "desteklenir::" -#: library/stdtypes.rst:5217 +#: library/stdtypes.rst:5225 msgid "" ">>> isinstance(\"\", int | str)\n" "True" msgstr "" -#: library/stdtypes.rst:5220 +#: library/stdtypes.rst:5228 #, fuzzy msgid "" "However, :ref:`parameterized generics ` in union objects " "cannot be checked::" msgstr "Ancak, :ref:`types-genericalias` içeren union nesneleri kullanılamaz::" -#: library/stdtypes.rst:5223 +#: library/stdtypes.rst:5231 msgid "" ">>> isinstance(1, int | list[int]) # short-circuit evaluation\n" "True\n" @@ -7661,7 +7678,7 @@ msgid "" "TypeError: isinstance() argument 2 cannot be a parameterized generic" msgstr "" -#: library/stdtypes.rst:5230 +#: library/stdtypes.rst:5238 msgid "" "The user-exposed type for the union object can be accessed from :data:`types." "UnionType` and used for :func:`isinstance` checks. An object cannot be " @@ -7671,7 +7688,7 @@ msgstr "" "erişilebilir ve :func:`isinstance` kontrolleri için kullanılabilir. Bir " "nesne şu türden örneklenemez::" -#: library/stdtypes.rst:5234 +#: library/stdtypes.rst:5242 msgid "" ">>> import types\n" ">>> isinstance(int | str, types.UnionType)\n" @@ -7682,7 +7699,7 @@ msgid "" "TypeError: cannot create 'types.UnionType' instances" msgstr "" -#: library/stdtypes.rst:5243 +#: library/stdtypes.rst:5251 #, fuzzy msgid "" "The :meth:`!__or__` method for type objects was added to support the syntax " @@ -7693,7 +7710,7 @@ msgstr "" "için eklendi. Eğer bir metaclass :meth:`__or__` metodunu uygularsa, Union " "bunu geçersiz kılabilir::" -#: library/stdtypes.rst:5247 +#: library/stdtypes.rst:5255 msgid "" ">>> class M(type):\n" "... def __or__(self, other):\n" @@ -7708,15 +7725,15 @@ msgid "" "int | C" msgstr "" -#: library/stdtypes.rst:5263 +#: library/stdtypes.rst:5271 msgid ":pep:`604` -- PEP proposing the ``X | Y`` syntax and the Union type." msgstr ":pep:`604` -- ``X | Y`` sözdizimini ve Birlik türünü öneren PEP." -#: library/stdtypes.rst:5271 +#: library/stdtypes.rst:5279 msgid "Other Built-in Types" msgstr "Diğer Yerleşik Tipler" -#: library/stdtypes.rst:5273 +#: library/stdtypes.rst:5281 msgid "" "The interpreter supports several other kinds of objects. Most of these " "support only one or two operations." @@ -7724,11 +7741,11 @@ msgstr "" "Yorumlayıcı başka nesne türlerini de destekler. Bunların çoğu yalnızca bir " "veya iki işlemi destekler." -#: library/stdtypes.rst:5280 +#: library/stdtypes.rst:5288 msgid "Modules" msgstr "Modüller" -#: library/stdtypes.rst:5282 +#: library/stdtypes.rst:5290 msgid "" "The only special operation on a module is attribute access: ``m.name``, " "where *m* is a module and *name* accesses a name defined in *m*'s symbol " @@ -7746,7 +7763,7 @@ msgstr "" "bunun yerine bir yerlerde *foo* adında bir modül için (harici) bir " "*tanımlama* gerektirir)" -#: library/stdtypes.rst:5289 +#: library/stdtypes.rst:5297 msgid "" "A special attribute of every module is :attr:`~object.__dict__`. This is the " "dictionary containing the module's symbol table. Modifying this dictionary " @@ -7764,7 +7781,7 @@ msgstr "" "`` yazamazsınız). :attr:`~object.__dict__` öğesinin doğrudan değiştirilmesi " "önerilmez." -#: library/stdtypes.rst:5297 +#: library/stdtypes.rst:5305 msgid "" "Modules built into the interpreter are written like this: ````. If loaded from a file, they are written as ````. Eğer bir dosyadan yüklenmişlerse, ```` şeklinde yazılırlar." -#: library/stdtypes.rst:5305 +#: library/stdtypes.rst:5313 msgid "Classes and Class Instances" msgstr "Sınıflar ve Sınıf Örnekleri" -#: library/stdtypes.rst:5307 +#: library/stdtypes.rst:5315 msgid "See :ref:`objects` and :ref:`class` for these." msgstr "Bunlar için :ref:`class` ve :ref:`objects` bakın." -#: library/stdtypes.rst:5313 +#: library/stdtypes.rst:5321 msgid "Functions" msgstr "Fonksiyonlar" -#: library/stdtypes.rst:5315 +#: library/stdtypes.rst:5323 msgid "" "Function objects are created by function definitions. The only operation on " "a function object is to call it: ``func(argument-list)``." @@ -7795,7 +7812,7 @@ msgstr "" "fonksiyon nesnesi üzerindeki tek işlem onu çağırmaktır: ``func(argument-" "list)``." -#: library/stdtypes.rst:5318 +#: library/stdtypes.rst:5326 msgid "" "There are really two flavors of function objects: built-in functions and " "user-defined functions. Both support the same operation (to call the " @@ -7807,15 +7824,15 @@ msgstr "" "çağırmak için), ancak uygulama farklıdır, dolayısıyla farklı nesne türleri " "vardır." -#: library/stdtypes.rst:5322 +#: library/stdtypes.rst:5330 msgid "See :ref:`function` for more information." msgstr "Daha fazla bilgi için :ref:`function` bölümüne bakınız." -#: library/stdtypes.rst:5328 +#: library/stdtypes.rst:5336 msgid "Methods" msgstr "Yöntemler" -#: library/stdtypes.rst:5332 +#: library/stdtypes.rst:5340 #, fuzzy msgid "" "Methods are functions that are called using the attribute notation. There " @@ -7828,7 +7845,7 @@ msgstr "" "yöntemleri. Yerleşik yöntemler, onları destekleyen türlerle birlikte " "tanımlanır." -#: library/stdtypes.rst:5337 +#: library/stdtypes.rst:5345 #, fuzzy msgid "" "If you access a method (a function defined in a class namespace) through an " @@ -7850,7 +7867,7 @@ msgstr "" "``m(arg-1, arg-2, ..., arg-n)`` çağrısı tamamen ``m.__func__(m.__self__, " "arg-1, arg-2, ..., arg-n)`` çağrısına eş değerdir." -#: library/stdtypes.rst:5348 +#: library/stdtypes.rst:5356 #, fuzzy msgid "" "Like :ref:`function objects `, bound method objects " @@ -7869,7 +7886,7 @@ msgstr "" "ayarlamak için, bunu temel işlev nesnesi üzerinde açıkça ayarlamanız " "gerekir::" -#: library/stdtypes.rst:5356 +#: library/stdtypes.rst:5364 msgid "" ">>> class C:\n" "... def method(self):\n" @@ -7885,16 +7902,16 @@ msgid "" "'my name is method'" msgstr "" -#: library/stdtypes.rst:5371 +#: library/stdtypes.rst:5379 #, fuzzy msgid "See :ref:`instance-methods` for more information." msgstr "Daha fazla bilgi için :ref:`types` sayfasına bakın." -#: library/stdtypes.rst:5379 +#: library/stdtypes.rst:5387 msgid "Code Objects" msgstr "Kod Nesneleri" -#: library/stdtypes.rst:5385 +#: library/stdtypes.rst:5393 #, fuzzy msgid "" "Code objects are used by the implementation to represent \"pseudo-compiled\" " @@ -7911,7 +7928,7 @@ msgstr "" "tarafından döndürülür ve :attr:`__code__` niteliği aracılığıyla işlev " "nesnelerinden çıkarılabilir. Ayrıca :mod:`code` modülüne de bakınız." -#: library/stdtypes.rst:5392 +#: library/stdtypes.rst:5400 #, fuzzy msgid "" "Accessing :attr:`~function.__code__` raises an :ref:`auditing event " @@ -7921,7 +7938,7 @@ msgstr "" "``__code__`` 'e erişmek,``obj`` ve ``\"__code__\"`` argümanlarıyla :ref:" "`denetim etkinliği ` ``object.__getattr__`` oluşturur." -#: library/stdtypes.rst:5399 +#: library/stdtypes.rst:5407 msgid "" "A code object can be executed or evaluated by passing it (instead of a " "source string) to the :func:`exec` or :func:`eval` built-in functions." @@ -7929,15 +7946,15 @@ msgstr "" "Bir kod nesnesi (kaynak dize yerine) :func:`exec` veya :func:`eval` yerleşik " "işlevlerine geçirilerek yürütülebilir veya değerlendirilebilir." -#: library/stdtypes.rst:5402 +#: library/stdtypes.rst:5410 msgid "See :ref:`types` for more information." msgstr "Daha fazla bilgi için :ref:`types` sayfasına bakın." -#: library/stdtypes.rst:5408 +#: library/stdtypes.rst:5416 msgid "Type Objects" msgstr "Type Objects" -#: library/stdtypes.rst:5414 +#: library/stdtypes.rst:5422 msgid "" "Type objects represent the various object types. An object's type is " "accessed by the built-in function :func:`type`. There are no special " @@ -7949,15 +7966,15 @@ msgstr "" "işlem yoktur. Standart modül :mod:`types` tüm standart yerleşik türler için " "isimleri tanımlar." -#: library/stdtypes.rst:5419 +#: library/stdtypes.rst:5427 msgid "Types are written like this: ````." msgstr "Türler şu şekilde yazılır: ````." -#: library/stdtypes.rst:5425 +#: library/stdtypes.rst:5433 msgid "The Null Object" msgstr "Null Nesne" -#: library/stdtypes.rst:5427 +#: library/stdtypes.rst:5435 msgid "" "This object is returned by functions that don't explicitly return a value. " "It supports no special operations. There is exactly one null object, named " @@ -7967,15 +7984,15 @@ msgstr "" "operasyonları desteklemez. Tam olarak ``None`` (yerleşik bir ad) adlı bir " "null nesne vardır. ``type(None)()`` aynı singleton'u üretir." -#: library/stdtypes.rst:5431 +#: library/stdtypes.rst:5439 msgid "It is written as ``None``." msgstr "''Yok'' olarak yazılmıştır." -#: library/stdtypes.rst:5438 +#: library/stdtypes.rst:5446 msgid "The Ellipsis Object" msgstr "Üç Nokta Nesnesi" -#: library/stdtypes.rst:5440 +#: library/stdtypes.rst:5448 msgid "" "This object is commonly used by slicing (see :ref:`slicings`). It supports " "no special operations. There is exactly one ellipsis object, named :const:" @@ -7987,15 +8004,15 @@ msgstr "" "ad) adında bir elips nesnesi vardır. ``type(Ellipsis)()``, :const:" "`Ellipsis` singletonunu üretir." -#: library/stdtypes.rst:5445 +#: library/stdtypes.rst:5453 msgid "It is written as ``Ellipsis`` or ``...``." msgstr "``Ellipsis`` veya ``...`` olarak yazılmıştır." -#: library/stdtypes.rst:5451 +#: library/stdtypes.rst:5459 msgid "The NotImplemented Object" msgstr "NotImplemented Nesnesi" -#: library/stdtypes.rst:5453 +#: library/stdtypes.rst:5461 #, fuzzy msgid "" "This object is returned from comparisons and binary operations when they are " @@ -8008,16 +8025,16 @@ msgstr "" "ref:`comparisons` sayfasına bakın. Tam olarak bir ``NotImplemented`` " "nesnesi vardır. ``type(NotImplemented)()``, singleton örneğini üretir." -#: library/stdtypes.rst:5458 +#: library/stdtypes.rst:5466 #, fuzzy msgid "It is written as :code:`NotImplemented`." msgstr "''NotImplemented'' olarak yazılmıştır." -#: library/stdtypes.rst:5464 +#: library/stdtypes.rst:5472 msgid "Internal Objects" msgstr "İç Nesneler" -#: library/stdtypes.rst:5466 +#: library/stdtypes.rst:5474 #, fuzzy msgid "" "See :ref:`types` for this information. It describes :ref:`stack frame " @@ -8027,11 +8044,11 @@ msgstr "" "Bu bilgi için :ref:`types` sayfasına bakın. Yığın çerçeve nesnelerini, geri " "izleme nesnelerini ve dilim nesnelerini açıklar." -#: library/stdtypes.rst:5474 +#: library/stdtypes.rst:5482 msgid "Special Attributes" msgstr "Özel Özellikler" -#: library/stdtypes.rst:5476 +#: library/stdtypes.rst:5484 msgid "" "The implementation adds a few special read-only attributes to several object " "types, where they are relevant. Some of these are not reported by the :func:" @@ -8041,12 +8058,12 @@ msgstr "" "öznitelik ekler. Bunlardan bazıları :func:`dir` yerleşik işlevi tarafından " "bildirilmez." -#: library/stdtypes.rst:5483 +#: library/stdtypes.rst:5491 msgid "" "The name of the class, function, method, descriptor, or generator instance." msgstr "Sınıf, fonksiyon, yöntem, tanımlayıcı veya üretici örneğinin adı." -#: library/stdtypes.rst:5489 +#: library/stdtypes.rst:5497 msgid "" "The :term:`qualified name` of the class, function, method, descriptor, or " "generator instance." @@ -8054,27 +8071,27 @@ msgstr "" "Sınıf, fonksiyon, yöntem, tanımlayıcı veya üretici örneğinin :term:" "`qualified name`." -#: library/stdtypes.rst:5497 +#: library/stdtypes.rst:5505 msgid "The name of the module in which a class or function was defined." msgstr "" -#: library/stdtypes.rst:5502 +#: library/stdtypes.rst:5510 msgid "" "The documentation string of a class or function, or ``None`` if undefined." msgstr "" -#: library/stdtypes.rst:5507 +#: library/stdtypes.rst:5515 msgid "" "The :ref:`type parameters ` of generic classes, functions, and :" "ref:`type aliases `. For classes and functions that are not " "generic, this will be an empty tuple." msgstr "" -#: library/stdtypes.rst:5517 +#: library/stdtypes.rst:5525 msgid "Integer string conversion length limitation" msgstr "" -#: library/stdtypes.rst:5519 +#: library/stdtypes.rst:5527 msgid "" "CPython has a global limit for converting between :class:`int` and :class:" "`str` to mitigate denial of service attacks. This limit *only* applies to " @@ -8082,7 +8099,7 @@ msgid "" "binary conversions are unlimited. The limit can be configured." msgstr "" -#: library/stdtypes.rst:5524 +#: library/stdtypes.rst:5532 msgid "" "The :class:`int` type in CPython is an arbitrary length number stored in " "binary form (commonly known as a \"bignum\"). There exists no algorithm that " @@ -8092,24 +8109,24 @@ msgid "" "value such as ``int('1' * 500_000)`` can take over a second on a fast CPU." msgstr "" -#: library/stdtypes.rst:5531 +#: library/stdtypes.rst:5539 msgid "" "Limiting conversion size offers a practical way to avoid :cve:`2020-10735`." msgstr "" -#: library/stdtypes.rst:5533 +#: library/stdtypes.rst:5541 msgid "" "The limit is applied to the number of digit characters in the input or " "output string when a non-linear conversion algorithm would be involved. " "Underscores and the sign are not counted towards the limit." msgstr "" -#: library/stdtypes.rst:5537 +#: library/stdtypes.rst:5545 msgid "" "When an operation would exceed the limit, a :exc:`ValueError` is raised:" msgstr "" -#: library/stdtypes.rst:5539 +#: library/stdtypes.rst:5547 msgid "" ">>> import sys\n" ">>> sys.set_int_max_str_digits(4300) # Illustrative, this is the default.\n" @@ -8133,7 +8150,7 @@ msgid "" ">>> assert int(hex(i_squared), base=16) == i*i # Hexadecimal is unlimited." msgstr "" -#: library/stdtypes.rst:5559 +#: library/stdtypes.rst:5567 msgid "" "The default limit is 4300 digits as provided in :data:`sys.int_info." "default_max_str_digits `. The lowest limit that can be " @@ -8141,11 +8158,11 @@ msgid "" "str_digits_check_threshold `." msgstr "" -#: library/stdtypes.rst:5564 +#: library/stdtypes.rst:5572 msgid "Verification:" msgstr "Doğrulama" -#: library/stdtypes.rst:5566 +#: library/stdtypes.rst:5574 msgid "" ">>> import sys\n" ">>> assert sys.int_info.default_max_str_digits == 4300, sys.int_info\n" @@ -8156,91 +8173,91 @@ msgid "" "..." msgstr "" -#: library/stdtypes.rst:5579 +#: library/stdtypes.rst:5587 msgid "Affected APIs" msgstr "" -#: library/stdtypes.rst:5581 +#: library/stdtypes.rst:5589 msgid "" "The limitation only applies to potentially slow conversions between :class:" "`int` and :class:`str` or :class:`bytes`:" msgstr "" -#: library/stdtypes.rst:5584 +#: library/stdtypes.rst:5592 msgid "``int(string)`` with default base 10." msgstr "" -#: library/stdtypes.rst:5585 +#: library/stdtypes.rst:5593 msgid "``int(string, base)`` for all bases that are not a power of 2." msgstr "" -#: library/stdtypes.rst:5586 +#: library/stdtypes.rst:5594 msgid "``str(integer)``." msgstr "" -#: library/stdtypes.rst:5587 +#: library/stdtypes.rst:5595 msgid "``repr(integer)``." msgstr "" -#: library/stdtypes.rst:5588 +#: library/stdtypes.rst:5596 msgid "" "any other string conversion to base 10, for example ``f\"{integer}\"``, " "``\"{}\".format(integer)``, or ``b\"%d\" % integer``." msgstr "" -#: library/stdtypes.rst:5591 +#: library/stdtypes.rst:5599 msgid "The limitations do not apply to functions with a linear algorithm:" msgstr "" -#: library/stdtypes.rst:5593 +#: library/stdtypes.rst:5601 msgid "``int(string, base)`` with base 2, 4, 8, 16, or 32." msgstr "" -#: library/stdtypes.rst:5594 +#: library/stdtypes.rst:5602 msgid ":func:`int.from_bytes` and :func:`int.to_bytes`." msgstr "" -#: library/stdtypes.rst:5595 +#: library/stdtypes.rst:5603 msgid ":func:`hex`, :func:`oct`, :func:`bin`." msgstr "" -#: library/stdtypes.rst:5596 +#: library/stdtypes.rst:5604 msgid ":ref:`formatspec` for hex, octal, and binary numbers." msgstr "" -#: library/stdtypes.rst:5597 +#: library/stdtypes.rst:5605 #, fuzzy msgid ":class:`str` to :class:`float`." msgstr ":class:`str` 'den :class:`float` 'a." -#: library/stdtypes.rst:5598 +#: library/stdtypes.rst:5606 msgid ":class:`str` to :class:`decimal.Decimal`." msgstr "" -#: library/stdtypes.rst:5601 +#: library/stdtypes.rst:5609 msgid "Configuring the limit" msgstr "" -#: library/stdtypes.rst:5603 +#: library/stdtypes.rst:5611 msgid "" "Before Python starts up you can use an environment variable or an " "interpreter command line flag to configure the limit:" msgstr "" -#: library/stdtypes.rst:5606 +#: library/stdtypes.rst:5614 msgid "" ":envvar:`PYTHONINTMAXSTRDIGITS`, e.g. ``PYTHONINTMAXSTRDIGITS=640 python3`` " "to set the limit to 640 or ``PYTHONINTMAXSTRDIGITS=0 python3`` to disable " "the limitation." msgstr "" -#: library/stdtypes.rst:5609 +#: library/stdtypes.rst:5617 msgid "" ":option:`-X int_max_str_digits <-X>`, e.g. ``python3 -X " "int_max_str_digits=640``" msgstr "" -#: library/stdtypes.rst:5611 +#: library/stdtypes.rst:5619 msgid "" ":data:`sys.flags.int_max_str_digits` contains the value of :envvar:" "`PYTHONINTMAXSTRDIGITS` or :option:`-X int_max_str_digits <-X>`. If both the " @@ -8249,38 +8266,38 @@ msgid "" "int_info.default_max_str_digits` was used during initialization." msgstr "" -#: library/stdtypes.rst:5617 +#: library/stdtypes.rst:5625 msgid "" "From code, you can inspect the current limit and set a new one using these :" "mod:`sys` APIs:" msgstr "" -#: library/stdtypes.rst:5620 +#: library/stdtypes.rst:5628 msgid "" ":func:`sys.get_int_max_str_digits` and :func:`sys.set_int_max_str_digits` " "are a getter and setter for the interpreter-wide limit. Subinterpreters have " "their own limit." msgstr "" -#: library/stdtypes.rst:5624 +#: library/stdtypes.rst:5632 msgid "" "Information about the default and minimum can be found in :data:`sys." "int_info`:" msgstr "" -#: library/stdtypes.rst:5626 +#: library/stdtypes.rst:5634 msgid "" ":data:`sys.int_info.default_max_str_digits ` is the compiled-" "in default limit." msgstr "" -#: library/stdtypes.rst:5628 +#: library/stdtypes.rst:5636 msgid "" ":data:`sys.int_info.str_digits_check_threshold ` is the lowest " "accepted value for the limit (other than 0 which disables it)." msgstr "" -#: library/stdtypes.rst:5635 +#: library/stdtypes.rst:5643 msgid "" "Setting a low limit *can* lead to problems. While rare, code exists that " "contains integer constants in decimal in their source that exceed the " @@ -8292,7 +8309,7 @@ msgid "" "constants is to convert them to ``0x`` hexadecimal form as it has no limit." msgstr "" -#: library/stdtypes.rst:5644 +#: library/stdtypes.rst:5652 msgid "" "Test your application thoroughly if you use a low limit. Ensure your tests " "run with the limit set early via the environment or flag so that it applies " @@ -8300,11 +8317,11 @@ msgid "" "to precompile ``.py`` sources to ``.pyc`` files." msgstr "" -#: library/stdtypes.rst:5650 +#: library/stdtypes.rst:5658 msgid "Recommended configuration" msgstr "" -#: library/stdtypes.rst:5652 +#: library/stdtypes.rst:5660 msgid "" "The default :data:`sys.int_info.default_max_str_digits` is expected to be " "reasonable for most applications. If your application requires a different " @@ -8312,11 +8329,11 @@ msgid "" "as these APIs were added in security patch releases in versions before 3.12." msgstr "" -#: library/stdtypes.rst:5657 +#: library/stdtypes.rst:5665 msgid "Example::" msgstr "Örnek::" -#: library/stdtypes.rst:5659 +#: library/stdtypes.rst:5667 msgid "" ">>> import sys\n" ">>> if hasattr(sys, \"set_int_max_str_digits\"):\n" @@ -8329,15 +8346,15 @@ msgid "" "... sys.set_int_max_str_digits(lower_bound)" msgstr "" -#: library/stdtypes.rst:5669 +#: library/stdtypes.rst:5677 msgid "If you need to disable it entirely, set it to ``0``." msgstr "" -#: library/stdtypes.rst:5673 +#: library/stdtypes.rst:5681 msgid "Footnotes" msgstr "Dipnotlar" -#: library/stdtypes.rst:5674 +#: library/stdtypes.rst:5682 msgid "" "Additional information on these special methods may be found in the Python " "Reference Manual (:ref:`customization`)." @@ -8345,7 +8362,7 @@ msgstr "" "Bu özel yöntemler hakkında daha fazla bilgi Python Referans El Kitabında (:" "ref:`customization`) bulunabilir." -#: library/stdtypes.rst:5677 +#: library/stdtypes.rst:5685 msgid "" "As a consequence, the list ``[1, 2]`` is considered equal to ``[1.0, 2.0]``, " "and similarly for tuples." @@ -8353,12 +8370,12 @@ msgstr "" "Sonuç olarak, ``[1, 2]`` listesi ``[1.0, 2.0]`` ve benzer şekilde demetler " "için eşit kabul edilir." -#: library/stdtypes.rst:5680 +#: library/stdtypes.rst:5688 msgid "They must have since the parser can't tell the type of the operands." msgstr "" "Ayrıştırıcı, işlenenlerin türünü söyleyemediğinden sahip olmaları gerekir." -#: library/stdtypes.rst:5682 +#: library/stdtypes.rst:5690 msgid "" "Cased characters are those with general category property being one of " "\"Lu\" (Letter, uppercase), \"Ll\" (Letter, lowercase), or \"Lt\" (Letter, " @@ -8368,7 +8385,7 @@ msgstr "" "\"Ll\" (Harf, küçük harf) veya \"Lt\" (Harf, başlık) karakterlerinden biri " "olan karakterlerdir." -#: library/stdtypes.rst:5685 +#: library/stdtypes.rst:5693 msgid "" "To format only a tuple you should therefore provide a singleton tuple whose " "only element is the tuple to be formatted." @@ -8382,11 +8399,11 @@ msgid "built-in" msgstr "Gömülü Türler" #: library/stdtypes.rst:316 library/stdtypes.rst:950 library/stdtypes.rst:1139 -#: library/stdtypes.rst:4426 library/stdtypes.rst:5410 +#: library/stdtypes.rst:4432 library/stdtypes.rst:5418 msgid "types" msgstr "" -#: library/stdtypes.rst:1154 library/stdtypes.rst:4426 +#: library/stdtypes.rst:1154 library/stdtypes.rst:4432 msgid "statement" msgstr "" @@ -8508,9 +8525,9 @@ msgstr "``is not``" #: library/stdtypes.rst:208 library/stdtypes.rst:1117 library/stdtypes.rst:1260 #: library/stdtypes.rst:1383 library/stdtypes.rst:1540 -#: library/stdtypes.rst:2536 library/stdtypes.rst:4224 -#: library/stdtypes.rst:4905 library/stdtypes.rst:5330 -#: library/stdtypes.rst:5374 +#: library/stdtypes.rst:2542 library/stdtypes.rst:4230 +#: library/stdtypes.rst:4911 library/stdtypes.rst:5338 +#: library/stdtypes.rst:5382 #, fuzzy msgid "object" msgstr "Kod Nesneleri" @@ -8603,8 +8620,8 @@ msgstr "" msgid "arithmetic" msgstr "" -#: library/stdtypes.rst:950 library/stdtypes.rst:4426 library/stdtypes.rst:5395 -#: library/stdtypes.rst:5410 +#: library/stdtypes.rst:950 library/stdtypes.rst:4432 library/stdtypes.rst:5403 +#: library/stdtypes.rst:5418 msgid "built-in function" msgstr "" @@ -8621,7 +8638,7 @@ msgstr "" msgid "complex" msgstr ":func:`complex`" -#: library/stdtypes.rst:2393 library/stdtypes.rst:3612 +#: library/stdtypes.rst:2399 library/stdtypes.rst:3618 msgid "+ (plus)" msgstr "" @@ -8635,11 +8652,11 @@ msgstr "Grup Ayırıcı" msgid "binary operator" msgstr "Satır Ayrıcı" -#: library/stdtypes.rst:2393 library/stdtypes.rst:3612 +#: library/stdtypes.rst:2399 library/stdtypes.rst:3618 msgid "- (minus)" msgstr "" -#: library/stdtypes.rst:2350 library/stdtypes.rst:3569 +#: library/stdtypes.rst:2356 library/stdtypes.rst:3575 msgid "* (asterisk)" msgstr "" @@ -8651,7 +8668,7 @@ msgstr "" msgid "//" msgstr "" -#: library/stdtypes.rst:2320 library/stdtypes.rst:3537 +#: library/stdtypes.rst:2326 library/stdtypes.rst:3543 msgid "% (percent)" msgstr "" @@ -8659,7 +8676,7 @@ msgstr "" msgid "**" msgstr "" -#: library/stdtypes.rst:393 library/stdtypes.rst:1154 library/stdtypes.rst:4426 +#: library/stdtypes.rst:393 library/stdtypes.rst:1154 library/stdtypes.rst:4432 #, fuzzy msgid "operations on" msgstr "İşlem" @@ -8669,7 +8686,7 @@ msgstr "İşlem" msgid "conjugate() (complex number method)" msgstr "*c* karmaşık sayısının eşleniği" -#: library/stdtypes.rst:1606 library/stdtypes.rst:5410 +#: library/stdtypes.rst:1606 library/stdtypes.rst:5418 #, fuzzy msgid "module" msgstr "Modüller" @@ -8738,7 +8755,7 @@ msgstr "" msgid "iterator protocol" msgstr "" -#: library/stdtypes.rst:4820 +#: library/stdtypes.rst:4826 msgid "protocol" msgstr "" @@ -8765,7 +8782,7 @@ msgstr "" msgid "iteration over" msgstr "İşlem" -#: library/stdtypes.rst:4426 +#: library/stdtypes.rst:4432 msgid "len" msgstr "" @@ -8847,12 +8864,12 @@ msgstr "" msgid "list" msgstr "" -#: library/stdtypes.rst:2517 library/stdtypes.rst:2715 -#: library/stdtypes.rst:3537 +#: library/stdtypes.rst:2523 library/stdtypes.rst:2721 +#: library/stdtypes.rst:3543 msgid "bytearray" msgstr "" -#: library/stdtypes.rst:4426 library/stdtypes.rst:5410 +#: library/stdtypes.rst:4432 library/stdtypes.rst:5418 msgid "type" msgstr "" @@ -8860,7 +8877,7 @@ msgstr "" msgid "assignment" msgstr "" -#: library/stdtypes.rst:4426 +#: library/stdtypes.rst:4432 msgid "del" msgstr "" @@ -8901,7 +8918,7 @@ msgstr "" msgid "range" msgstr "Aralıklar" -#: library/stdtypes.rst:1553 library/stdtypes.rst:2320 +#: library/stdtypes.rst:1553 library/stdtypes.rst:2326 msgid "string" msgstr "" @@ -8923,16 +8940,16 @@ msgstr "" msgid "io.StringIO" msgstr "" -#: library/stdtypes.rst:2509 +#: library/stdtypes.rst:2515 msgid "buffer protocol" msgstr "" -#: library/stdtypes.rst:2517 library/stdtypes.rst:2715 -#: library/stdtypes.rst:3537 +#: library/stdtypes.rst:2523 library/stdtypes.rst:2721 +#: library/stdtypes.rst:3543 msgid "bytes" msgstr "" -#: library/stdtypes.rst:2715 +#: library/stdtypes.rst:2721 #, fuzzy msgid "methods" msgstr "Yöntemler" @@ -8941,194 +8958,213 @@ msgstr "Yöntemler" msgid "re" msgstr "" -#: library/stdtypes.rst:3391 +#: library/stdtypes.rst:3397 msgid "universal newlines" msgstr "" -#: library/stdtypes.rst:2128 +#: library/stdtypes.rst:2134 msgid "str.splitlines method" msgstr "" -#: library/stdtypes.rst:2320 +#: library/stdtypes.rst:2326 msgid "formatting, string (%)" msgstr "" -#: library/stdtypes.rst:2320 +#: library/stdtypes.rst:2326 msgid "interpolation, string (%)" msgstr "" -#: library/stdtypes.rst:2320 +#: library/stdtypes.rst:2326 msgid "formatting, printf" msgstr "" -#: library/stdtypes.rst:2320 +#: library/stdtypes.rst:2326 msgid "interpolation, printf" msgstr "" -#: library/stdtypes.rst:3537 +#: library/stdtypes.rst:3543 msgid "printf-style formatting" msgstr "" -#: library/stdtypes.rst:3537 +#: library/stdtypes.rst:3543 msgid "sprintf-style formatting" msgstr "" -#: library/stdtypes.rst:3569 +#: library/stdtypes.rst:3575 msgid "() (parentheses)" msgstr "" -#: library/stdtypes.rst:2393 library/stdtypes.rst:3612 +#: library/stdtypes.rst:2399 library/stdtypes.rst:3618 msgid "in printf-style formatting" msgstr "" -#: library/stdtypes.rst:3569 +#: library/stdtypes.rst:3575 msgid ". (dot)" msgstr "" -#: library/stdtypes.rst:3612 +#: library/stdtypes.rst:3618 msgid "# (hash)" msgstr "" -#: library/stdtypes.rst:3612 +#: library/stdtypes.rst:3618 msgid "space" msgstr "" -#: library/stdtypes.rst:2509 +#: library/stdtypes.rst:2515 #, fuzzy msgid "binary sequence types" msgstr "Değiştirilebilir Dizi Tipleri" -#: library/stdtypes.rst:2517 +#: library/stdtypes.rst:2523 msgid "memoryview" msgstr "" -#: library/stdtypes.rst:2517 +#: library/stdtypes.rst:2523 msgid "array" msgstr "" -#: library/stdtypes.rst:3391 +#: library/stdtypes.rst:3397 msgid "bytes.splitlines method" msgstr "" -#: library/stdtypes.rst:3391 +#: library/stdtypes.rst:3397 msgid "bytearray.splitlines method" msgstr "" -#: library/stdtypes.rst:3537 +#: library/stdtypes.rst:3543 msgid "formatting" msgstr "" -#: library/stdtypes.rst:3537 +#: library/stdtypes.rst:3543 msgid "bytes (%)" msgstr "" -#: library/stdtypes.rst:3537 +#: library/stdtypes.rst:3543 msgid "bytearray (%)" msgstr "" -#: library/stdtypes.rst:3537 +#: library/stdtypes.rst:3543 #, fuzzy msgid "interpolation" msgstr "Satır Tablolama" -#: library/stdtypes.rst:4224 +#: library/stdtypes.rst:4230 msgid "set" msgstr "" -#: library/stdtypes.rst:4426 +#: library/stdtypes.rst:4432 msgid "mapping" msgstr "" -#: library/stdtypes.rst:4426 +#: library/stdtypes.rst:4432 msgid "dictionary" msgstr "" -#: library/stdtypes.rst:4509 +#: library/stdtypes.rst:4515 msgid "__missing__()" msgstr "" -#: library/stdtypes.rst:4820 +#: library/stdtypes.rst:4826 #, fuzzy msgid "context manager" msgstr "Bağlam Yöneticisi Türleri" -#: library/stdtypes.rst:4820 +#: library/stdtypes.rst:4826 msgid "context management protocol" msgstr "" -#: library/stdtypes.rst:4820 +#: library/stdtypes.rst:4826 #, fuzzy msgid "context management" msgstr "Bağlam Yöneticisi Türleri" -#: library/stdtypes.rst:4893 +#: library/stdtypes.rst:4899 msgid "annotation" msgstr "" -#: library/stdtypes.rst:4893 +#: library/stdtypes.rst:4899 msgid "type annotation; type hint" msgstr "" -#: library/stdtypes.rst:4905 +#: library/stdtypes.rst:4911 #, fuzzy msgid "GenericAlias" msgstr "Genel Takma Ad Türü" -#: library/stdtypes.rst:4905 +#: library/stdtypes.rst:4911 msgid "Generic" msgstr "" -#: library/stdtypes.rst:4905 +#: library/stdtypes.rst:4911 msgid "Alias" msgstr "" -#: library/stdtypes.rst:5160 +#: library/stdtypes.rst:5168 #, fuzzy msgid "Union" msgstr "Sendika Türü" -#: library/stdtypes.rst:5160 +#: library/stdtypes.rst:5168 msgid "union" msgstr "" -#: library/stdtypes.rst:5330 +#: library/stdtypes.rst:5338 #, fuzzy msgid "method" msgstr "Yöntemler" -#: library/stdtypes.rst:5374 +#: library/stdtypes.rst:5382 msgid "code" msgstr "" -#: library/stdtypes.rst:5374 +#: library/stdtypes.rst:5382 #, fuzzy msgid "code object" msgstr "Kod Nesneleri" -#: library/stdtypes.rst:5381 +#: library/stdtypes.rst:5389 msgid "compile" msgstr "" -#: library/stdtypes.rst:5381 +#: library/stdtypes.rst:5389 msgid "__code__ (function object attribute)" msgstr "" -#: library/stdtypes.rst:5395 +#: library/stdtypes.rst:5403 msgid "exec" msgstr "" -#: library/stdtypes.rst:5395 +#: library/stdtypes.rst:5403 msgid "eval" msgstr "" -#: library/stdtypes.rst:5434 +#: library/stdtypes.rst:5442 msgid "..." msgstr "" -#: library/stdtypes.rst:5434 +#: library/stdtypes.rst:5442 msgid "ellipsis literal" msgstr "" +#~ msgid "" +#~ "Return ``True`` if all characters in the string are printable or the " +#~ "string is empty, ``False`` otherwise. Nonprintable characters are those " +#~ "characters defined in the Unicode character database as \"Other\" or " +#~ "\"Separator\", excepting the ASCII space (0x20) which is considered " +#~ "printable. (Note that printable characters in this context are those " +#~ "which should not be escaped when :func:`repr` is invoked on a string. It " +#~ "has no bearing on the handling of strings written to :data:`sys.stdout` " +#~ "or :data:`sys.stderr`.)" +#~ msgstr "" +#~ "Dizedeki tüm karakterler yazdırılabilirse veya dize boşsa ``True``, aksi " +#~ "takdirde ``False`` döndürür. Yazdırılamayan karakterler, yazdırılabilir " +#~ "olarak kabul edilen ASCII boşluğu (0x20) dışında, Unicode karakter " +#~ "veritabanında \"Diğer\" veya \"Ayırıcı\" olarak tanımlanan " +#~ "karakterlerdir. (Bu bağlamda, yazdırılabilir karakterlerin :func:`repr` " +#~ "bir dize üzerinde çağrıldığında kaçılmaması gereken karakterler olduğunu " +#~ "unutmayın. Bunun :data:`sys.stdout` veya :data:`sys.stderr` dosyalarına " +#~ "yazılan dizelerin işlenmesiyle bir ilgisi yoktur)" + #~ msgid "" #~ "A dictionary or other mapping object used to store an object's (writable) " #~ "attributes." diff --git a/library/string.po b/library/string.po index e4cfb62af..f8d7a50d6 100644 --- a/library/string.po +++ b/library/string.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -77,25 +77,32 @@ msgid "" "the ``C`` locale: ``!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~``." msgstr "" -#: library/string.rst:64 +#: library/string.rst:65 msgid "" -"String of ASCII characters which are considered printable. This is a " -"combination of :const:`digits`, :const:`ascii_letters`, :const:" +"String of ASCII characters which are considered printable by Python. This is " +"a combination of :const:`digits`, :const:`ascii_letters`, :const:" "`punctuation`, and :const:`whitespace`." msgstr "" #: library/string.rst:71 msgid "" +"By design, :meth:`string.printable.isprintable() ` returns :" +"const:`False`. In particular, ``string.printable`` is not printable in the " +"POSIX sense (see :manpage:`LC_CTYPE `)." +msgstr "" + +#: library/string.rst:78 +msgid "" "A string containing all ASCII characters that are considered whitespace. " "This includes the characters space, tab, linefeed, return, formfeed, and " "vertical tab." msgstr "" -#: library/string.rst:79 +#: library/string.rst:86 msgid "Custom String Formatting" msgstr "" -#: library/string.rst:81 +#: library/string.rst:88 msgid "" "The built-in string class provides the ability to do complex variable " "substitutions and value formatting via the :meth:`~str.format` method " @@ -105,24 +112,24 @@ msgid "" "method." msgstr "" -#: library/string.rst:90 +#: library/string.rst:97 msgid "The :class:`Formatter` class has the following public methods:" msgstr "" -#: library/string.rst:94 +#: library/string.rst:101 msgid "" "The primary API method. It takes a format string and an arbitrary set of " "positional and keyword arguments. It is just a wrapper that calls :meth:" "`vformat`." msgstr "" -#: library/string.rst:98 +#: library/string.rst:105 msgid "" "A format string argument is now :ref:`positional-only `." msgstr "" -#: library/string.rst:104 +#: library/string.rst:111 msgid "" "This function does the actual work of formatting. It is exposed as a " "separate function for cases where you want to pass in a predefined " @@ -132,13 +139,13 @@ msgid "" "and replacement fields. It calls the various methods described below." msgstr "" -#: library/string.rst:112 +#: library/string.rst:119 msgid "" "In addition, the :class:`Formatter` defines a number of methods that are " "intended to be replaced by subclasses:" msgstr "" -#: library/string.rst:117 +#: library/string.rst:124 msgid "" "Loop over the format_string and return an iterable of tuples " "(*literal_text*, *field_name*, *format_spec*, *conversion*). This is used " @@ -146,7 +153,7 @@ msgid "" "replacement fields." msgstr "" -#: library/string.rst:122 +#: library/string.rst:129 msgid "" "The values in the tuple conceptually represent a span of literal text " "followed by a single replacement field. If there is no literal text (which " @@ -156,7 +163,7 @@ msgid "" "be ``None``." msgstr "" -#: library/string.rst:131 +#: library/string.rst:138 msgid "" "Given *field_name* as returned by :meth:`parse` (see above), convert it to " "an object to be formatted. Returns a tuple (obj, used_key). The default " @@ -166,7 +173,7 @@ msgid "" "*key* parameter to :meth:`get_value`." msgstr "" -#: library/string.rst:140 +#: library/string.rst:147 msgid "" "Retrieve a given field value. The *key* argument will be either an integer " "or a string. If it is an integer, it represents the index of the positional " @@ -174,21 +181,21 @@ msgid "" "in *kwargs*." msgstr "" -#: library/string.rst:145 +#: library/string.rst:152 msgid "" "The *args* parameter is set to the list of positional arguments to :meth:" "`vformat`, and the *kwargs* parameter is set to the dictionary of keyword " "arguments." msgstr "" -#: library/string.rst:149 +#: library/string.rst:156 msgid "" "For compound field names, these functions are only called for the first " "component of the field name; subsequent components are handled through " "normal attribute and indexing operations." msgstr "" -#: library/string.rst:153 +#: library/string.rst:160 msgid "" "So for example, the field expression '0.name' would cause :meth:`get_value` " "to be called with a *key* argument of 0. The ``name`` attribute will be " @@ -196,13 +203,13 @@ msgid "" "`getattr` function." msgstr "" -#: library/string.rst:158 +#: library/string.rst:165 msgid "" "If the index or keyword refers to an item that does not exist, then an :exc:" "`IndexError` or :exc:`KeyError` should be raised." msgstr "" -#: library/string.rst:163 +#: library/string.rst:170 msgid "" "Implement checking for unused arguments if desired. The arguments to this " "function is the set of all argument keys that were actually referred to in " @@ -212,24 +219,24 @@ msgid "" "meth:`check_unused_args` is assumed to raise an exception if the check fails." msgstr "" -#: library/string.rst:173 +#: library/string.rst:180 msgid "" ":meth:`format_field` simply calls the global :func:`format` built-in. The " "method is provided so that subclasses can override it." msgstr "" -#: library/string.rst:178 +#: library/string.rst:185 msgid "" "Converts the value (returned by :meth:`get_field`) given a conversion type " "(as in the tuple returned by the :meth:`parse` method). The default version " "understands 's' (str), 'r' (repr) and 'a' (ascii) conversion types." msgstr "" -#: library/string.rst:187 +#: library/string.rst:194 msgid "Format String Syntax" msgstr "" -#: library/string.rst:189 +#: library/string.rst:196 msgid "" "The :meth:`str.format` method and the :class:`Formatter` class share the " "same syntax for format strings (although in the case of :class:`Formatter`, " @@ -239,7 +246,7 @@ msgid "" "expressions." msgstr "" -#: library/string.rst:202 +#: library/string.rst:209 msgid "" "Format strings contain \"replacement fields\" surrounded by curly braces ``{}" "``. Anything that is not contained in braces is considered literal text, " @@ -248,11 +255,11 @@ msgid "" "``." msgstr "" -#: library/string.rst:207 +#: library/string.rst:214 msgid "The grammar for a replacement field is as follows:" msgstr "" -#: library/string.rst:219 +#: library/string.rst:226 msgid "" "In less formal terms, the replacement field can start with a *field_name* " "that specifies the object whose value is to be formatted and inserted into " @@ -262,11 +269,11 @@ msgid "" "specify a non-default format for the replacement value." msgstr "" -#: library/string.rst:226 +#: library/string.rst:233 msgid "See also the :ref:`formatspec` section." msgstr "" -#: library/string.rst:228 +#: library/string.rst:235 msgid "" "The *field_name* itself begins with an *arg_name* that is either a number or " "a keyword. If it's a number, it refers to a positional argument, and if " @@ -283,22 +290,22 @@ msgid "" "lookup using :meth:`~object.__getitem__`." msgstr "" -#: library/string.rst:242 +#: library/string.rst:249 msgid "" "The positional argument specifiers can be omitted for :meth:`str.format`, so " "``'{} {}'.format(a, b)`` is equivalent to ``'{0} {1}'.format(a, b)``." msgstr "" -#: library/string.rst:246 +#: library/string.rst:253 msgid "" "The positional argument specifiers can be omitted for :class:`Formatter`." msgstr "" -#: library/string.rst:249 +#: library/string.rst:256 msgid "Some simple format string examples::" msgstr "" -#: library/string.rst:251 +#: library/string.rst:258 msgid "" "\"First, thou shalt count to {0}\" # References first positional argument\n" "\"Bring me a {}\" # Implicitly references the first " @@ -311,7 +318,7 @@ msgid "" "'players'." msgstr "" -#: library/string.rst:258 +#: library/string.rst:265 msgid "" "The *conversion* field causes a type coercion before formatting. Normally, " "the job of formatting a value is done by the :meth:`~object.__format__` " @@ -321,25 +328,25 @@ msgid "" "`~object.__format__`, the normal formatting logic is bypassed." msgstr "" -#: library/string.rst:265 +#: library/string.rst:272 msgid "" "Three conversion flags are currently supported: ``'!s'`` which calls :func:" "`str` on the value, ``'!r'`` which calls :func:`repr` and ``'!a'`` which " "calls :func:`ascii`." msgstr "" -#: library/string.rst:269 +#: library/string.rst:276 msgid "Some examples::" msgstr "" -#: library/string.rst:271 +#: library/string.rst:278 msgid "" "\"Harold's a clever {0!s}\" # Calls str() on the argument first\n" "\"Bring out the holy {name!r}\" # Calls repr() on the argument first\n" "\"More {!a}\" # Calls ascii() on the argument first" msgstr "" -#: library/string.rst:275 +#: library/string.rst:282 msgid "" "The *format_spec* field contains a specification of how the value should be " "presented, including such details as field width, alignment, padding, " @@ -347,13 +354,13 @@ msgid "" "\"formatting mini-language\" or interpretation of the *format_spec*." msgstr "" -#: library/string.rst:280 +#: library/string.rst:287 msgid "" "Most built-in types support a common formatting mini-language, which is " "described in the next section." msgstr "" -#: library/string.rst:283 +#: library/string.rst:290 msgid "" "A *format_spec* field can also include nested replacement fields within it. " "These nested replacement fields may contain a field name, conversion flag " @@ -363,15 +370,15 @@ msgid "" "to be dynamically specified." msgstr "" -#: library/string.rst:290 +#: library/string.rst:297 msgid "See the :ref:`formatexamples` section for some examples." msgstr "" -#: library/string.rst:296 +#: library/string.rst:303 msgid "Format Specification Mini-Language" msgstr "" -#: library/string.rst:298 +#: library/string.rst:305 msgid "" "\"Format specifications\" are used within replacement fields contained " "within a format string to define how individual values are presented (see :" @@ -380,25 +387,25 @@ msgid "" "how the format specification is to be interpreted." msgstr "" -#: library/string.rst:305 +#: library/string.rst:312 msgid "" "Most built-in types implement the following options for format " "specifications, although some of the formatting options are only supported " "by the numeric types." msgstr "" -#: library/string.rst:308 +#: library/string.rst:315 msgid "" "A general convention is that an empty format specification produces the same " "result as if you had called :func:`str` on the value. A non-empty format " "specification typically modifies the result." msgstr "" -#: library/string.rst:312 +#: library/string.rst:319 msgid "The general form of a *standard format specifier* is:" msgstr "" -#: library/string.rst:324 +#: library/string.rst:331 msgid "" "If a valid *align* value is specified, it can be preceded by a *fill* " "character that can be any character and defaults to a space if omitted. It " @@ -409,113 +416,114 @@ msgid "" "the :func:`format` function." msgstr "" -#: library/string.rst:333 +#: library/string.rst:340 msgid "The meaning of the various alignment options is as follows:" msgstr "" -#: library/string.rst:373 +#: library/string.rst:381 msgid "Option" msgstr "" -#: library/string.rst:373 library/string.rst:467 library/string.rst:502 +#: library/string.rst:381 library/string.rst:477 library/string.rst:512 msgid "Meaning" msgstr "" -#: library/string.rst:344 +#: library/string.rst:351 msgid "``'<'``" msgstr "" -#: library/string.rst:344 +#: library/string.rst:351 msgid "" "Forces the field to be left-aligned within the available space (this is the " "default for most objects)." msgstr "" -#: library/string.rst:347 +#: library/string.rst:354 msgid "``'>'``" msgstr "" -#: library/string.rst:347 +#: library/string.rst:354 msgid "" "Forces the field to be right-aligned within the available space (this is the " "default for numbers)." msgstr "" -#: library/string.rst:350 +#: library/string.rst:357 msgid "``'='``" msgstr "" -#: library/string.rst:350 +#: library/string.rst:357 msgid "" "Forces the padding to be placed after the sign (if any) but before the " "digits. This is used for printing fields in the form '+000000120'. This " -"alignment option is only valid for numeric types. It becomes the default " -"for numbers when '0' immediately precedes the field width." +"alignment option is only valid for numeric types, excluding :class:" +"`complex`. It becomes the default for numbers when '0' immediately precedes " +"the field width." msgstr "" -#: library/string.rst:356 +#: library/string.rst:364 msgid "``'^'``" msgstr "" -#: library/string.rst:356 +#: library/string.rst:364 msgid "Forces the field to be centered within the available space." msgstr "" -#: library/string.rst:360 +#: library/string.rst:368 msgid "" "Note that unless a minimum field width is defined, the field width will " "always be the same size as the data to fill it, so that the alignment option " "has no meaning in this case." msgstr "" -#: library/string.rst:364 +#: library/string.rst:372 msgid "" "The *sign* option is only valid for number types, and can be one of the " "following:" msgstr "" -#: library/string.rst:375 +#: library/string.rst:383 msgid "``'+'``" msgstr "" -#: library/string.rst:375 +#: library/string.rst:383 msgid "" "indicates that a sign should be used for both positive as well as negative " "numbers." msgstr "" -#: library/string.rst:378 +#: library/string.rst:386 msgid "``'-'``" msgstr "" -#: library/string.rst:378 +#: library/string.rst:386 msgid "" "indicates that a sign should be used only for negative numbers (this is the " "default behavior)." msgstr "" -#: library/string.rst:381 +#: library/string.rst:389 msgid "space" msgstr "" -#: library/string.rst:381 +#: library/string.rst:389 msgid "" "indicates that a leading space should be used on positive numbers, and a " "minus sign on negative numbers." msgstr "" -#: library/string.rst:388 +#: library/string.rst:396 msgid "" "The ``'z'`` option coerces negative zero floating-point values to positive " "zero after rounding to the format precision. This option is only valid for " "floating-point presentation types." msgstr "" -#: library/string.rst:392 +#: library/string.rst:400 msgid "Added the ``'z'`` option (see also :pep:`682`)." msgstr "" -#: library/string.rst:397 +#: library/string.rst:405 msgid "" "The ``'#'`` option causes the \"alternate form\" to be used for the " "conversion. The alternate form is defined differently for different types. " @@ -529,17 +537,19 @@ msgid "" "and ``'G'`` conversions, trailing zeros are not removed from the result." msgstr "" -#: library/string.rst:411 +#: library/string.rst:419 msgid "" -"The ``','`` option signals the use of a comma for a thousands separator. For " -"a locale aware separator, use the ``'n'`` integer presentation type instead." +"The ``','`` option signals the use of a comma for a thousands separator for " +"floating-point presentation types and for integer presentation type ``'d'``. " +"For other presentation types, this option is an error. For a locale aware " +"separator, use the ``'n'`` integer presentation type instead." msgstr "" -#: library/string.rst:415 +#: library/string.rst:425 msgid "Added the ``','`` option (see also :pep:`378`)." msgstr "" -#: library/string.rst:420 +#: library/string.rst:430 msgid "" "The ``'_'`` option signals the use of an underscore for a thousands " "separator for floating-point presentation types and for integer presentation " @@ -548,32 +558,32 @@ msgid "" "presentation types, specifying this option is an error." msgstr "" -#: library/string.rst:427 +#: library/string.rst:437 msgid "Added the ``'_'`` option (see also :pep:`515`)." msgstr "" -#: library/string.rst:430 +#: library/string.rst:440 msgid "" "*width* is a decimal integer defining the minimum total field width, " "including any prefixes, separators, and other formatting characters. If not " "specified, then the field width will be determined by the content." msgstr "" -#: library/string.rst:434 +#: library/string.rst:444 msgid "" "When no explicit alignment is given, preceding the *width* field by a zero " -"(``'0'``) character enables sign-aware zero-padding for numeric types. This " -"is equivalent to a *fill* character of ``'0'`` with an *alignment* type of " -"``'='``." +"(``'0'``) character enables sign-aware zero-padding for numeric types, " +"excluding :class:`complex`. This is equivalent to a *fill* character of " +"``'0'`` with an *alignment* type of ``'='``." msgstr "" -#: library/string.rst:439 +#: library/string.rst:449 msgid "" "Preceding the *width* field by ``'0'`` no longer affects the default " "alignment for strings." msgstr "" -#: library/string.rst:443 +#: library/string.rst:453 msgid "" "The *precision* is a decimal integer indicating how many digits should be " "displayed after the decimal point for presentation types ``'f'`` and " @@ -584,108 +594,108 @@ msgid "" "types." msgstr "" -#: library/string.rst:451 +#: library/string.rst:461 msgid "Finally, the *type* determines how the data should be presented." msgstr "" -#: library/string.rst:453 +#: library/string.rst:463 msgid "The available string presentation types are:" msgstr "" -#: library/string.rst:467 library/string.rst:502 +#: library/string.rst:477 library/string.rst:512 msgid "Type" msgstr "" -#: library/string.rst:458 +#: library/string.rst:468 msgid "``'s'``" msgstr "" -#: library/string.rst:458 +#: library/string.rst:468 msgid "String format. This is the default type for strings and may be omitted." msgstr "" -#: library/string.rst:490 library/string.rst:575 +#: library/string.rst:500 library/string.rst:585 msgid "None" msgstr "" -#: library/string.rst:461 +#: library/string.rst:471 msgid "The same as ``'s'``." msgstr "" -#: library/string.rst:464 +#: library/string.rst:474 msgid "The available integer presentation types are:" msgstr "" -#: library/string.rst:469 +#: library/string.rst:479 msgid "``'b'``" msgstr "" -#: library/string.rst:469 +#: library/string.rst:479 msgid "Binary format. Outputs the number in base 2." msgstr "" -#: library/string.rst:471 +#: library/string.rst:481 msgid "``'c'``" msgstr "" -#: library/string.rst:471 +#: library/string.rst:481 msgid "" "Character. Converts the integer to the corresponding unicode character " "before printing." msgstr "" -#: library/string.rst:474 +#: library/string.rst:484 msgid "``'d'``" msgstr "" -#: library/string.rst:474 +#: library/string.rst:484 msgid "Decimal Integer. Outputs the number in base 10." msgstr "" -#: library/string.rst:476 +#: library/string.rst:486 msgid "``'o'``" msgstr "" -#: library/string.rst:476 +#: library/string.rst:486 msgid "Octal format. Outputs the number in base 8." msgstr "" -#: library/string.rst:478 +#: library/string.rst:488 msgid "``'x'``" msgstr "" -#: library/string.rst:478 +#: library/string.rst:488 msgid "" "Hex format. Outputs the number in base 16, using lower-case letters for the " "digits above 9." msgstr "" -#: library/string.rst:481 +#: library/string.rst:491 msgid "``'X'``" msgstr "" -#: library/string.rst:481 +#: library/string.rst:491 msgid "" "Hex format. Outputs the number in base 16, using upper-case letters for the " "digits above 9. In case ``'#'`` is specified, the prefix ``'0x'`` will be " "upper-cased to ``'0X'`` as well." msgstr "" -#: library/string.rst:568 +#: library/string.rst:578 msgid "``'n'``" msgstr "" -#: library/string.rst:486 +#: library/string.rst:496 msgid "" "Number. This is the same as ``'d'``, except that it uses the current locale " "setting to insert the appropriate number separator characters." msgstr "" -#: library/string.rst:490 +#: library/string.rst:500 msgid "The same as ``'d'``." msgstr "" -#: library/string.rst:493 +#: library/string.rst:503 msgid "" "In addition to the above presentation types, integers can be formatted with " "the floating-point presentation types listed below (except ``'n'`` and " @@ -693,17 +703,17 @@ msgid "" "floating-point number before formatting." msgstr "" -#: library/string.rst:498 +#: library/string.rst:508 msgid "" "The available presentation types for :class:`float` and :class:`~decimal." "Decimal` values are:" msgstr "" -#: library/string.rst:504 +#: library/string.rst:514 msgid "``'e'``" msgstr "" -#: library/string.rst:504 +#: library/string.rst:514 msgid "" "Scientific notation. For a given precision ``p``, formats the number in " "scientific notation with the letter 'e' separating the coefficient from the " @@ -715,21 +725,21 @@ msgid "" "is used." msgstr "" -#: library/string.rst:515 +#: library/string.rst:525 msgid "``'E'``" msgstr "" -#: library/string.rst:515 +#: library/string.rst:525 msgid "" "Scientific notation. Same as ``'e'`` except it uses an upper case 'E' as the " "separator character." msgstr "" -#: library/string.rst:518 +#: library/string.rst:528 msgid "``'f'``" msgstr "" -#: library/string.rst:518 +#: library/string.rst:528 msgid "" "Fixed-point notation. For a given precision ``p``, formats the number as a " "decimal number with exactly ``p`` digits following the decimal point. With " @@ -739,21 +749,21 @@ msgid "" "point is omitted unless the ``#`` option is used." msgstr "" -#: library/string.rst:527 +#: library/string.rst:537 msgid "``'F'``" msgstr "" -#: library/string.rst:527 +#: library/string.rst:537 msgid "" "Fixed-point notation. Same as ``'f'``, but converts ``nan`` to ``NAN`` and " "``inf`` to ``INF``." msgstr "" -#: library/string.rst:530 +#: library/string.rst:540 msgid "``'g'``" msgstr "" -#: library/string.rst:530 +#: library/string.rst:540 msgid "" "General format. For a given precision ``p >= 1``, this rounds the number to " "``p`` significant digits and then formats the result in either fixed-point " @@ -761,7 +771,7 @@ msgid "" "``0`` is treated as equivalent to a precision of ``1``." msgstr "" -#: library/string.rst:537 +#: library/string.rst:547 msgid "" "The precise rules are as follows: suppose that the result formatted with " "presentation type ``'e'`` and precision ``p-1`` would have exponent " @@ -774,7 +784,7 @@ msgid "" "unless the ``'#'`` option is used." msgstr "" -#: library/string.rst:550 +#: library/string.rst:560 msgid "" "With no precision given, uses a precision of ``6`` significant digits for :" "class:`float`. For :class:`~decimal.Decimal`, the coefficient of the result " @@ -784,40 +794,40 @@ msgid "" "notation is used otherwise." msgstr "" -#: library/string.rst:559 +#: library/string.rst:569 msgid "" "Positive and negative infinity, positive and negative zero, and nans, are " "formatted as ``inf``, ``-inf``, ``0``, ``-0`` and ``nan`` respectively, " "regardless of the precision." msgstr "" -#: library/string.rst:564 +#: library/string.rst:574 msgid "``'G'``" msgstr "" -#: library/string.rst:564 +#: library/string.rst:574 msgid "" "General format. Same as ``'g'`` except switches to ``'E'`` if the number " "gets too large. The representations of infinity and NaN are uppercased, too." msgstr "" -#: library/string.rst:568 +#: library/string.rst:578 msgid "" "Number. This is the same as ``'g'``, except that it uses the current locale " "setting to insert the appropriate number separator characters." msgstr "" -#: library/string.rst:572 +#: library/string.rst:582 msgid "``'%'``" msgstr "" -#: library/string.rst:572 +#: library/string.rst:582 msgid "" "Percentage. Multiplies the number by 100 and displays in fixed (``'f'``) " "format, followed by a percent sign." msgstr "" -#: library/string.rst:575 +#: library/string.rst:585 msgid "" "For :class:`float` this is like the ``'g'`` type, except that when fixed-" "point notation is used to format the result, it always includes at least one " @@ -826,47 +836,67 @@ msgid "" "as large as needed to represent the given value faithfully." msgstr "" -#: library/string.rst:583 +#: library/string.rst:593 msgid "" "For :class:`~decimal.Decimal`, this is the same as either ``'g'`` or ``'G'`` " "depending on the value of ``context.capitals`` for the current decimal " "context." msgstr "" -#: library/string.rst:587 +#: library/string.rst:597 msgid "" "The overall effect is to match the output of :func:`str` as altered by the " "other format modifiers." msgstr "" -#: library/string.rst:595 +#: library/string.rst:601 +msgid "" +"The result should be correctly rounded to a given precision ``p`` of digits " +"after the decimal point. The rounding mode for :class:`float` matches that " +"of the :func:`round` builtin. For :class:`~decimal.Decimal`, the rounding " +"mode of the current :ref:`context ` will be used." +msgstr "" + +#: library/string.rst:606 +msgid "" +"The available presentation types for :class:`complex` are the same as those " +"for :class:`float` (``'%'`` is not allowed). Both the real and imaginary " +"components of a complex number are formatted as floating-point numbers, " +"according to the specified presentation type. They are separated by the " +"mandatory sign of the imaginary part, the latter being terminated by a ``j`` " +"suffix. If the presentation type is missing, the result will match the " +"output of :func:`str` (complex numbers with a non-zero real part are also " +"surrounded by parentheses), possibly altered by other format modifiers." +msgstr "" + +#: library/string.rst:619 msgid "Format examples" msgstr "" -#: library/string.rst:597 +#: library/string.rst:621 msgid "" "This section contains examples of the :meth:`str.format` syntax and " "comparison with the old ``%``-formatting." msgstr "" -#: library/string.rst:600 +#: library/string.rst:624 msgid "" "In most of the cases the syntax is similar to the old ``%``-formatting, with " "the addition of the ``{}`` and with ``:`` used instead of ``%``. For " "example, ``'%03.2f'`` can be translated to ``'{:03.2f}'``." msgstr "" -#: library/string.rst:604 +#: library/string.rst:628 msgid "" "The new format syntax also supports new and different options, shown in the " "following examples." msgstr "" -#: library/string.rst:607 +#: library/string.rst:631 msgid "Accessing arguments by position::" msgstr "" -#: library/string.rst:609 +#: library/string.rst:633 msgid "" ">>> '{0}, {1}, {2}'.format('a', 'b', 'c')\n" "'a, b, c'\n" @@ -881,11 +911,11 @@ msgid "" "'abracadabra'" msgstr "" -#: library/string.rst:620 +#: library/string.rst:644 msgid "Accessing arguments by name::" msgstr "" -#: library/string.rst:622 +#: library/string.rst:646 msgid "" ">>> 'Coordinates: {latitude}, {longitude}'.format(latitude='37.24N', " "longitude='-115.81W')\n" @@ -895,11 +925,11 @@ msgid "" "'Coordinates: 37.24N, -115.81W'" msgstr "" -#: library/string.rst:628 +#: library/string.rst:652 msgid "Accessing arguments' attributes::" msgstr "" -#: library/string.rst:630 +#: library/string.rst:654 msgid "" ">>> c = 3-5j\n" ">>> ('The complex number {0} is formed from the real part {0.real} '\n" @@ -916,33 +946,33 @@ msgid "" "'Point(4, 2)'" msgstr "" -#: library/string.rst:643 +#: library/string.rst:667 msgid "Accessing arguments' items::" msgstr "" -#: library/string.rst:645 +#: library/string.rst:669 msgid "" ">>> coord = (3, 5)\n" ">>> 'X: {0[0]}; Y: {0[1]}'.format(coord)\n" "'X: 3; Y: 5'" msgstr "" -#: library/string.rst:649 +#: library/string.rst:673 msgid "Replacing ``%s`` and ``%r``::" msgstr "" -#: library/string.rst:651 +#: library/string.rst:675 msgid "" ">>> \"repr() shows quotes: {!r}; str() doesn't: {!s}\".format('test1', " "'test2')\n" "\"repr() shows quotes: 'test1'; str() doesn't: test2\"" msgstr "" -#: library/string.rst:654 +#: library/string.rst:678 msgid "Aligning the text and specifying a width::" msgstr "" -#: library/string.rst:656 +#: library/string.rst:680 msgid "" ">>> '{:<30}'.format('left aligned')\n" "'left aligned '\n" @@ -954,11 +984,11 @@ msgid "" "'***********centered***********'" msgstr "" -#: library/string.rst:665 +#: library/string.rst:689 msgid "Replacing ``%+f``, ``%-f``, and ``% f`` and specifying a sign::" msgstr "" -#: library/string.rst:667 +#: library/string.rst:691 msgid "" ">>> '{:+f}; {:+f}'.format(3.14, -3.14) # show it always\n" "'+3.140000; -3.140000'\n" @@ -969,12 +999,12 @@ msgid "" "'3.140000; -3.140000'" msgstr "" -#: library/string.rst:674 +#: library/string.rst:698 msgid "" "Replacing ``%x`` and ``%o`` and converting the value to different bases::" msgstr "" -#: library/string.rst:676 +#: library/string.rst:700 msgid "" ">>> # format also supports binary numbers\n" ">>> \"int: {0:d}; hex: {0:x}; oct: {0:o}; bin: {0:b}\".format(42)\n" @@ -984,21 +1014,21 @@ msgid "" "'int: 42; hex: 0x2a; oct: 0o52; bin: 0b101010'" msgstr "" -#: library/string.rst:683 +#: library/string.rst:707 msgid "Using the comma as a thousands separator::" msgstr "" -#: library/string.rst:685 +#: library/string.rst:709 msgid "" ">>> '{:,}'.format(1234567890)\n" "'1,234,567,890'" msgstr "" -#: library/string.rst:688 +#: library/string.rst:712 msgid "Expressing a percentage::" msgstr "" -#: library/string.rst:690 +#: library/string.rst:714 msgid "" ">>> points = 19\n" ">>> total = 22\n" @@ -1006,11 +1036,11 @@ msgid "" "'Correct answers: 86.36%'" msgstr "" -#: library/string.rst:695 +#: library/string.rst:719 msgid "Using type-specific formatting::" msgstr "" -#: library/string.rst:697 +#: library/string.rst:721 msgid "" ">>> import datetime\n" ">>> d = datetime.datetime(2010, 7, 4, 12, 15, 58)\n" @@ -1018,11 +1048,11 @@ msgid "" "'2010-07-04 12:15:58'" msgstr "" -#: library/string.rst:702 +#: library/string.rst:726 msgid "Nesting arguments and more complex examples::" msgstr "" -#: library/string.rst:704 +#: library/string.rst:728 msgid "" ">>> for align, text in zip('<^>', ['left', 'center', 'right']):\n" "... '{0:{fill}{align}16}'.format(text, fill=align, align=align)\n" @@ -1038,7 +1068,7 @@ msgid "" "3232235521\n" ">>>\n" ">>> width = 5\n" -">>> for num in range(5,12): \n" +">>> for num in range(5,12):\n" "... for base in 'dXob':\n" "... print('{0:{width}{base}}'.format(num, base=base, width=width), " "end=' ')\n" @@ -1053,11 +1083,11 @@ msgid "" " 11 B 13 1011" msgstr "" -#: library/string.rst:736 +#: library/string.rst:760 msgid "Template strings" msgstr "" -#: library/string.rst:738 +#: library/string.rst:762 msgid "" "Template strings provide simpler string substitutions as described in :pep:" "`292`. A primary use case for template strings is for internationalization " @@ -1067,17 +1097,17 @@ msgid "" "the `flufl.i18n `_ package." msgstr "" -#: library/string.rst:748 +#: library/string.rst:772 msgid "" "Template strings support ``$``-based substitutions, using the following " "rules:" msgstr "" -#: library/string.rst:750 +#: library/string.rst:774 msgid "``$$`` is an escape; it is replaced with a single ``$``." msgstr "" -#: library/string.rst:752 +#: library/string.rst:776 msgid "" "``$identifier`` names a substitution placeholder matching a mapping key of " "``\"identifier\"``. By default, ``\"identifier\"`` is restricted to any " @@ -1087,30 +1117,30 @@ msgid "" "specification." msgstr "" -#: library/string.rst:759 +#: library/string.rst:783 msgid "" "``${identifier}`` is equivalent to ``$identifier``. It is required when " "valid identifier characters follow the placeholder but are not part of the " "placeholder, such as ``\"${noun}ification\"``." msgstr "" -#: library/string.rst:763 +#: library/string.rst:787 msgid "" "Any other appearance of ``$`` in the string will result in a :exc:" "`ValueError` being raised." msgstr "" -#: library/string.rst:766 +#: library/string.rst:790 msgid "" "The :mod:`string` module provides a :class:`Template` class that implements " "these rules. The methods of :class:`Template` are:" msgstr "" -#: library/string.rst:772 +#: library/string.rst:796 msgid "The constructor takes a single argument which is the template string." msgstr "" -#: library/string.rst:777 +#: library/string.rst:801 msgid "" "Performs the template substitution, returning a new string. *mapping* is " "any dictionary-like object with keys that match the placeholders in the " @@ -1119,7 +1149,7 @@ msgid "" "there are duplicates, the placeholders from *kwds* take precedence." msgstr "" -#: library/string.rst:786 +#: library/string.rst:810 msgid "" "Like :meth:`substitute`, except that if placeholders are missing from " "*mapping* and *kwds*, instead of raising a :exc:`KeyError` exception, the " @@ -1128,7 +1158,7 @@ msgid "" "simply return ``$`` instead of raising :exc:`ValueError`." msgstr "" -#: library/string.rst:792 +#: library/string.rst:816 msgid "" "While other exceptions may still occur, this method is called \"safe\" " "because it always tries to return a usable string instead of raising an " @@ -1138,33 +1168,33 @@ msgid "" "Python identifiers." msgstr "" -#: library/string.rst:802 +#: library/string.rst:826 msgid "" "Returns false if the template has invalid placeholders that will cause :meth:" "`substitute` to raise :exc:`ValueError`." msgstr "" -#: library/string.rst:810 +#: library/string.rst:834 msgid "" "Returns a list of the valid identifiers in the template, in the order they " "first appear, ignoring any invalid identifiers." msgstr "" -#: library/string.rst:815 +#: library/string.rst:839 msgid ":class:`Template` instances also provide one public data attribute:" msgstr "" -#: library/string.rst:819 +#: library/string.rst:843 msgid "" "This is the object passed to the constructor's *template* argument. In " "general, you shouldn't change it, but read-only access is not enforced." msgstr "" -#: library/string.rst:822 +#: library/string.rst:846 msgid "Here is an example of how to use a Template::" msgstr "" -#: library/string.rst:824 +#: library/string.rst:848 msgid "" ">>> from string import Template\n" ">>> s = Template('$who likes $what')\n" @@ -1183,7 +1213,7 @@ msgid "" "'tim likes $what'" msgstr "" -#: library/string.rst:840 +#: library/string.rst:864 msgid "" "Advanced usage: you can derive subclasses of :class:`Template` to customize " "the placeholder syntax, delimiter character, or the entire regular " @@ -1191,7 +1221,7 @@ msgid "" "these class attributes:" msgstr "" -#: library/string.rst:845 +#: library/string.rst:869 msgid "" "*delimiter* -- This is the literal string describing a placeholder " "introducing delimiter. The default value is ``$``. Note that this should " @@ -1201,7 +1231,7 @@ msgid "" "the subclass's class namespace)." msgstr "" -#: library/string.rst:852 +#: library/string.rst:876 msgid "" "*idpattern* -- This is the regular expression describing the pattern for non-" "braced placeholders. The default value is the regular expression ``(?a:[_a-" @@ -1209,19 +1239,19 @@ msgid "" "pattern will also apply to braced placeholders." msgstr "" -#: library/string.rst:859 +#: library/string.rst:883 msgid "" "Since default *flags* is ``re.IGNORECASE``, pattern ``[a-z]`` can match with " "some non-ASCII characters. That's why we use the local ``a`` flag here." msgstr "" -#: library/string.rst:863 +#: library/string.rst:887 msgid "" "*braceidpattern* can be used to define separate patterns used inside and " "outside the braces." msgstr "" -#: library/string.rst:867 +#: library/string.rst:891 msgid "" "*braceidpattern* -- This is like *idpattern* but describes the pattern for " "braced placeholders. Defaults to ``None`` which means to fall back to " @@ -1230,7 +1260,7 @@ msgid "" "unbraced placeholders." msgstr "" -#: library/string.rst:875 +#: library/string.rst:899 msgid "" "*flags* -- The regular expression flags that will be applied when compiling " "the regular expression used for recognizing substitutions. The default " @@ -1239,7 +1269,7 @@ msgid "" "regular expressions." msgstr "" -#: library/string.rst:883 +#: library/string.rst:907 msgid "" "Alternatively, you can provide the entire regular expression pattern by " "overriding the class attribute *pattern*. If you do this, the value must be " @@ -1248,41 +1278,41 @@ msgid "" "placeholder rule:" msgstr "" -#: library/string.rst:889 +#: library/string.rst:913 msgid "" "*escaped* -- This group matches the escape sequence, e.g. ``$$``, in the " "default pattern." msgstr "" -#: library/string.rst:892 +#: library/string.rst:916 msgid "" "*named* -- This group matches the unbraced placeholder name; it should not " "include the delimiter in capturing group." msgstr "" -#: library/string.rst:895 +#: library/string.rst:919 msgid "" "*braced* -- This group matches the brace enclosed placeholder name; it " "should not include either the delimiter or braces in the capturing group." msgstr "" -#: library/string.rst:898 +#: library/string.rst:922 msgid "" "*invalid* -- This group matches any other delimiter pattern (usually a " "single delimiter), and it should appear last in the regular expression." msgstr "" -#: library/string.rst:901 +#: library/string.rst:925 msgid "" "The methods on this class will raise :exc:`ValueError` if the pattern " "matches the template without one of these named groups matching." msgstr "" -#: library/string.rst:906 +#: library/string.rst:930 msgid "Helper functions" msgstr "" -#: library/string.rst:910 +#: library/string.rst:934 msgid "" "Split the argument into words using :meth:`str.split`, capitalize each word " "using :meth:`str.capitalize`, and join the capitalized words using :meth:" @@ -1292,75 +1322,75 @@ msgid "" "the words." msgstr "" -#: library/string.rst:195 +#: library/string.rst:202 msgid "{} (curly brackets)" msgstr "" -#: library/string.rst:335 library/string.rst:386 library/string.rst:409 -#: library/string.rst:418 +#: library/string.rst:342 library/string.rst:394 library/string.rst:417 +#: library/string.rst:428 msgid "in string formatting" msgstr "" -#: library/string.rst:195 +#: library/string.rst:202 msgid ". (dot)" msgstr "" -#: library/string.rst:195 +#: library/string.rst:202 msgid "[] (square brackets)" msgstr "" -#: library/string.rst:195 +#: library/string.rst:202 msgid "! (exclamation)" msgstr "" -#: library/string.rst:195 +#: library/string.rst:202 msgid ": (colon)" msgstr "" -#: library/string.rst:335 +#: library/string.rst:342 msgid "< (less)" msgstr "" -#: library/string.rst:335 +#: library/string.rst:342 msgid "> (greater)" msgstr "" -#: library/string.rst:335 +#: library/string.rst:342 msgid "= (equals)" msgstr "" -#: library/string.rst:335 +#: library/string.rst:342 msgid "^ (caret)" msgstr "" -#: library/string.rst:367 +#: library/string.rst:375 msgid "+ (plus)" msgstr "" -#: library/string.rst:367 +#: library/string.rst:375 msgid "- (minus)" msgstr "" -#: library/string.rst:386 +#: library/string.rst:394 msgid "z" msgstr "" -#: library/string.rst:395 +#: library/string.rst:403 msgid "# (hash)" msgstr "" -#: library/string.rst:409 +#: library/string.rst:417 msgid ", (comma)" msgstr "" -#: library/string.rst:418 +#: library/string.rst:428 msgid "_ (underscore)" msgstr "" -#: library/string.rst:746 +#: library/string.rst:770 msgid "$ (dollar)" msgstr "" -#: library/string.rst:746 +#: library/string.rst:770 msgid "in template strings" msgstr "" diff --git a/library/sys.po b/library/sys.po index 41153f80d..fff26cc63 100644 --- a/library/sys.po +++ b/library/sys.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -24,7 +24,8 @@ msgstr "" msgid "" "This module provides access to some variables used or maintained by the " "interpreter and to functions that interact strongly with the interpreter. It " -"is always available." +"is always available. Unless explicitly noted otherwise, all variables are " +"read-only." msgstr "" #: library/sys.rst:16 @@ -39,8 +40,8 @@ msgid "" "removed)." msgstr "" -#: library/sys.rst:288 library/sys.rst:747 library/sys.rst:978 -#: library/sys.rst:1707 library/sys.rst:1730 library/sys.rst:1982 +#: library/sys.rst:288 library/sys.rst:747 library/sys.rst:1007 +#: library/sys.rst:1736 library/sys.rst:1759 library/sys.rst:2011 msgid "Availability" msgstr "" @@ -957,8 +958,8 @@ msgstr "" #: library/sys.rst:754 msgid "" -"Return the name of the current default string encoding used by the Unicode " -"implementation." +"Return ``'utf-8'``. This is the name of the default string encoding, used in " +"methods like :meth:`str.encode`." msgstr "" #: library/sys.rst:760 @@ -1095,7 +1096,7 @@ msgstr "" #: library/sys.rst:873 msgid "" -"Return the interpreter's \"thread switch interval\"; see :func:" +"Return the interpreter's \"thread switch interval\" in seconds; see :func:" "`setswitchinterval`." msgstr "" @@ -1135,15 +1136,48 @@ msgid "" "argument ``depth``." msgstr "" +#: library/sys.rst:912 +msgid "" +"This function only exists if CPython was built using the specialized " +"configure option :option:`--with-trace-refs`. It is intended only for " +"debugging garbage-collection issues." +msgstr "" + #: library/sys.rst:916 +msgid "" +"Return a list of up to *limit* dynamically allocated Python objects. If " +"*type* is given, only objects of that exact type (not subtypes) are included." +msgstr "" + +#: library/sys.rst:920 +msgid "" +"Objects from the list are not safe to use. Specifically, the result will " +"include objects from all interpreters that share their object allocator " +"state (that is, ones created with :c:member:`PyInterpreterConfig." +"use_main_obmalloc` set to 1 or using :c:func:`Py_NewInterpreter`, and the :" +"ref:`main interpreter `). Mixing objects from " +"different interpreters may lead to crashes or other unexpected behavior." +msgstr "" + +#: library/sys.rst:931 +msgid "" +"This function should be used for specialized purposes only. It is not " +"guaranteed to exist in all implementations of Python." +msgstr "" + +#: library/sys.rst:936 +msgid "The result may include objects from other interpreters." +msgstr "" + +#: library/sys.rst:945 msgid "Get the profiler function as set by :func:`setprofile`." msgstr "" -#: library/sys.rst:925 +#: library/sys.rst:954 msgid "Get the trace function as set by :func:`settrace`." msgstr "" -#: library/sys.rst:929 +#: library/sys.rst:958 msgid "" "The :func:`gettrace` function is intended only for implementing debuggers, " "profilers, coverage tools and the like. Its behavior is part of the " @@ -1151,7 +1185,7 @@ msgid "" "thus may not be available in all Python implementations." msgstr "" -#: library/sys.rst:937 +#: library/sys.rst:966 msgid "" "Return a named tuple describing the Windows version currently running. The " "named elements are *major*, *minor*, *build*, *platform*, *service_pack*, " @@ -1163,54 +1197,54 @@ msgid "" "first 5 elements are retrievable by indexing." msgstr "" -#: library/sys.rst:948 +#: library/sys.rst:977 msgid "*platform* will be ``2`` (VER_PLATFORM_WIN32_NT)." msgstr "" -#: library/sys.rst:950 +#: library/sys.rst:979 msgid "*product_type* may be one of the following values:" msgstr "" -#: library/sys.rst:953 +#: library/sys.rst:982 msgid "Constant" msgstr "" -#: library/sys.rst:953 +#: library/sys.rst:982 msgid "Meaning" msgstr "" -#: library/sys.rst:955 +#: library/sys.rst:984 msgid "``1`` (VER_NT_WORKSTATION)" msgstr "" -#: library/sys.rst:955 +#: library/sys.rst:984 msgid "The system is a workstation." msgstr "" -#: library/sys.rst:957 +#: library/sys.rst:986 msgid "``2`` (VER_NT_DOMAIN_CONTROLLER)" msgstr "" -#: library/sys.rst:957 +#: library/sys.rst:986 msgid "The system is a domain controller." msgstr "" -#: library/sys.rst:960 +#: library/sys.rst:989 msgid "``3`` (VER_NT_SERVER)" msgstr "" -#: library/sys.rst:960 +#: library/sys.rst:989 msgid "The system is a server, but not a domain controller." msgstr "" -#: library/sys.rst:964 +#: library/sys.rst:993 msgid "" "This function wraps the Win32 :c:func:`!GetVersionEx` function; see the " "Microsoft documentation on :c:func:`!OSVERSIONINFOEX` for more information " "about these fields." msgstr "" -#: library/sys.rst:968 +#: library/sys.rst:997 msgid "" "*platform_version* returns the major version, minor version and build number " "of the current operating system, rather than the version that is being " @@ -1218,24 +1252,24 @@ msgid "" "feature detection." msgstr "" -#: library/sys.rst:974 +#: library/sys.rst:1003 msgid "" "*platform_version* derives the version from kernel32.dll which can be of a " "different version than the OS version. Please use :mod:`platform` module for " "achieving accurate OS version." msgstr "" -#: library/sys.rst:980 +#: library/sys.rst:1009 msgid "" "Changed to a named tuple and added *service_pack_minor*, " "*service_pack_major*, *suite_mask*, and *product_type*." msgstr "" -#: library/sys.rst:984 +#: library/sys.rst:1013 msgid "Added *platform_version*" msgstr "" -#: library/sys.rst:990 +#: library/sys.rst:1019 msgid "" "Returns an *asyncgen_hooks* object, which is similar to a :class:" "`~collections.namedtuple` of the form ``(firstiter, finalizer)``, where " @@ -1245,71 +1279,71 @@ msgid "" "loop." msgstr "" -#: library/sys.rst:997 +#: library/sys.rst:1026 msgid "See :pep:`525` for more details." msgstr "" -#: library/sys.rst:1678 +#: library/sys.rst:1707 msgid "" "This function has been added on a provisional basis (see :pep:`411` for " "details.)" msgstr "" -#: library/sys.rst:1007 +#: library/sys.rst:1036 msgid "" "Get the current coroutine origin tracking depth, as set by :func:" "`set_coroutine_origin_tracking_depth`." msgstr "" -#: library/sys.rst:1699 +#: library/sys.rst:1728 msgid "" "This function has been added on a provisional basis (see :pep:`411` for " "details.) Use it only for debugging purposes." msgstr "" -#: library/sys.rst:1019 +#: library/sys.rst:1048 msgid "" "A :term:`named tuple` giving parameters of the numeric hash implementation. " "For more details about hashing of numeric types, see :ref:`numeric-hash`." msgstr "" -#: library/sys.rst:1025 +#: library/sys.rst:1054 msgid "The width in bits used for hash values" msgstr "" -#: library/sys.rst:1029 +#: library/sys.rst:1058 msgid "The prime modulus P used for numeric hash scheme" msgstr "" -#: library/sys.rst:1033 +#: library/sys.rst:1062 msgid "The hash value returned for a positive infinity" msgstr "" -#: library/sys.rst:1037 +#: library/sys.rst:1066 msgid "(This attribute is no longer used)" msgstr "" -#: library/sys.rst:1041 +#: library/sys.rst:1070 msgid "The multiplier used for the imaginary part of a complex number" msgstr "" -#: library/sys.rst:1045 +#: library/sys.rst:1074 msgid "The name of the algorithm for hashing of str, bytes, and memoryview" msgstr "" -#: library/sys.rst:1049 +#: library/sys.rst:1078 msgid "The internal output size of the hash algorithm" msgstr "" -#: library/sys.rst:1053 +#: library/sys.rst:1082 msgid "The size of the seed key of the hash algorithm" msgstr "" -#: library/sys.rst:1057 +#: library/sys.rst:1086 msgid "Added *algorithm*, *hash_bits* and *seed_bits*" msgstr "" -#: library/sys.rst:1063 +#: library/sys.rst:1092 msgid "" "The version number encoded as a single integer. This is guaranteed to " "increase with each version, including proper support for non-production " @@ -1317,7 +1351,7 @@ msgid "" "version 1.5.2, use::" msgstr "" -#: library/sys.rst:1067 +#: library/sys.rst:1096 msgid "" "if sys.hexversion >= 0x010502F0:\n" " # use some advanced feature\n" @@ -1327,7 +1361,7 @@ msgid "" " ..." msgstr "" -#: library/sys.rst:1074 +#: library/sys.rst:1103 msgid "" "This is called ``hexversion`` since it only really looks meaningful when " "viewed as the result of passing it to the built-in :func:`hex` function. " @@ -1335,25 +1369,25 @@ msgid "" "human-friendly encoding of the same information." msgstr "" -#: library/sys.rst:1079 +#: library/sys.rst:1108 msgid "More details of ``hexversion`` can be found at :ref:`apiabiversion`." msgstr "" -#: library/sys.rst:1084 +#: library/sys.rst:1113 msgid "" "An object containing information about the implementation of the currently " "running Python interpreter. The following attributes are required to exist " "in all Python implementations." msgstr "" -#: library/sys.rst:1088 +#: library/sys.rst:1117 msgid "" "*name* is the implementation's identifier, e.g. ``'cpython'``. The actual " "string is defined by the Python implementation, but it is guaranteed to be " "lower case." msgstr "" -#: library/sys.rst:1092 +#: library/sys.rst:1121 msgid "" "*version* is a named tuple, in the same format as :data:`sys.version_info`. " "It represents the version of the Python *implementation*. This has a " @@ -1365,13 +1399,13 @@ msgid "" "the same value, since it is the reference implementation." msgstr "" -#: library/sys.rst:1102 +#: library/sys.rst:1131 msgid "" "*hexversion* is the implementation version in hexadecimal format, like :data:" "`sys.hexversion`." msgstr "" -#: library/sys.rst:1105 +#: library/sys.rst:1134 msgid "" "*cache_tag* is the tag used by the import machinery in the filenames of " "cached modules. By convention, it would be a composite of the " @@ -1380,7 +1414,7 @@ msgid "" "set to ``None``, it indicates that module caching should be disabled." msgstr "" -#: library/sys.rst:1112 +#: library/sys.rst:1141 msgid "" ":data:`sys.implementation` may contain additional attributes specific to the " "Python implementation. These non-standard attributes must start with an " @@ -1390,47 +1424,47 @@ msgid "" "versions, however.) See :pep:`421` for more information." msgstr "" -#: library/sys.rst:1123 +#: library/sys.rst:1152 msgid "" "The addition of new required attributes must go through the normal PEP " "process. See :pep:`421` for more information." msgstr "" -#: library/sys.rst:1128 +#: library/sys.rst:1157 msgid "" "A :term:`named tuple` that holds information about Python's internal " "representation of integers. The attributes are read only." msgstr "" -#: library/sys.rst:1133 +#: library/sys.rst:1162 msgid "" "The number of bits held in each digit. Python integers are stored internally " "in base ``2**int_info.bits_per_digit``." msgstr "" -#: library/sys.rst:1138 +#: library/sys.rst:1167 msgid "The size in bytes of the C type used to represent a digit." msgstr "" -#: library/sys.rst:1142 +#: library/sys.rst:1171 msgid "" "The default value for :func:`sys.get_int_max_str_digits` when it is not " "otherwise explicitly configured." msgstr "" -#: library/sys.rst:1147 +#: library/sys.rst:1176 msgid "" "The minimum non-zero value for :func:`sys.set_int_max_str_digits`, :envvar:" "`PYTHONINTMAXSTRDIGITS`, or :option:`-X int_max_str_digits <-X>`." msgstr "" -#: library/sys.rst:1154 +#: library/sys.rst:1183 msgid "" "Added :attr:`~int_info.default_max_str_digits` and :attr:`~int_info." "str_digits_check_threshold`." msgstr "" -#: library/sys.rst:1160 +#: library/sys.rst:1189 msgid "" "When this attribute exists, its value is automatically called (with no " "arguments) when the interpreter is launched in :ref:`interactive mode `." msgstr "" -#: library/sys.rst:1168 +#: library/sys.rst:1197 msgid "" "Raises an :ref:`auditing event ` ``cpython.run_interactivehook`` " "with the hook object as the argument when the hook is called on startup." msgstr "" -#: library/sys.rst:1177 +#: library/sys.rst:1206 msgid "" "Enter *string* in the table of \"interned\" strings and return the interned " "string -- which is *string* itself or a copy. Interning strings is useful to " @@ -1457,19 +1491,19 @@ msgid "" "attributes have interned keys." msgstr "" -#: library/sys.rst:1185 +#: library/sys.rst:1214 msgid "" "Interned strings are not immortal; you must keep a reference to the return " "value of :func:`intern` around to benefit from it." msgstr "" -#: library/sys.rst:1191 +#: library/sys.rst:1220 msgid "" "Return :const:`True` if the Python interpreter is :term:`shutting down " "`, :const:`False` otherwise." msgstr "" -#: library/sys.rst:1198 +#: library/sys.rst:1227 msgid "" "This variable is not always defined; it is set to the exception instance " "when an exception is not handled and the interpreter prints an error message " @@ -1480,34 +1514,34 @@ msgid "" "more information.)" msgstr "" -#: library/sys.rst:1212 +#: library/sys.rst:1241 msgid "" "These three variables are deprecated; use :data:`sys.last_exc` instead. They " "hold the legacy representation of ``sys.last_exc``, as returned from :func:" "`exc_info` above." msgstr "" -#: library/sys.rst:1218 +#: library/sys.rst:1247 msgid "" "An integer giving the maximum value a variable of type :c:type:`Py_ssize_t` " "can take. It's usually ``2**31 - 1`` on a 32-bit platform and ``2**63 - 1`` " "on a 64-bit platform." msgstr "" -#: library/sys.rst:1225 +#: library/sys.rst:1254 msgid "" "An integer giving the value of the largest Unicode code point, i.e. " "``1114111`` (``0x10FFFF`` in hexadecimal)." msgstr "" -#: library/sys.rst:1228 +#: library/sys.rst:1257 msgid "" "Before :pep:`393`, ``sys.maxunicode`` used to be either ``0xFFFF`` or " "``0x10FFFF``, depending on the configuration option that specified whether " "Unicode characters were stored as UCS-2 or UCS-4." msgstr "" -#: library/sys.rst:1236 +#: library/sys.rst:1265 msgid "" "A list of :term:`meta path finder` objects that have their :meth:`~importlib." "abc.MetaPathFinder.find_spec` methods called to see if one of the objects " @@ -1520,40 +1554,40 @@ msgid "" "``None`` if the module cannot be found." msgstr "" -#: library/sys.rst:1249 +#: library/sys.rst:1278 msgid ":class:`importlib.abc.MetaPathFinder`" msgstr "" -#: library/sys.rst:1250 +#: library/sys.rst:1279 msgid "" "The abstract base class defining the interface of finder objects on :data:" "`meta_path`." msgstr "" -#: library/sys.rst:1252 +#: library/sys.rst:1281 msgid ":class:`importlib.machinery.ModuleSpec`" msgstr "" -#: library/sys.rst:1253 +#: library/sys.rst:1282 msgid "" "The concrete class which :meth:`~importlib.abc.MetaPathFinder.find_spec` " "should return instances of." msgstr "" -#: library/sys.rst:1259 +#: library/sys.rst:1288 msgid "" ":term:`Module specs ` were introduced in Python 3.4, by :pep:" "`451`." msgstr "" -#: library/sys.rst:1264 +#: library/sys.rst:1293 msgid "" "Removed the fallback that looked for a :meth:`!find_module` method if a :" "data:`meta_path` entry didn't have a :meth:`~importlib.abc.MetaPathFinder." "find_spec` method." msgstr "" -#: library/sys.rst:1270 +#: library/sys.rst:1299 msgid "" "This is a dictionary that maps module names to modules which have already " "been loaded. This can be manipulated to force reloading of modules and " @@ -1565,13 +1599,13 @@ msgid "" "other threads." msgstr "" -#: library/sys.rst:1282 +#: library/sys.rst:1311 msgid "" "The list of the original command line arguments passed to the Python " "executable." msgstr "" -#: library/sys.rst:1285 +#: library/sys.rst:1314 msgid "" "The elements of :data:`sys.orig_argv` are the arguments to the Python " "interpreter, while the elements of :data:`sys.argv` are the arguments to the " @@ -1579,68 +1613,68 @@ msgid "" "in :data:`sys.orig_argv` and missing from :data:`sys.argv`." msgstr "" -#: library/sys.rst:1297 +#: library/sys.rst:1326 msgid "" "A list of strings that specifies the search path for modules. Initialized " "from the environment variable :envvar:`PYTHONPATH`, plus an installation-" "dependent default." msgstr "" -#: library/sys.rst:1301 +#: library/sys.rst:1330 msgid "" "By default, as initialized upon program startup, a potentially unsafe path " "is prepended to :data:`sys.path` (*before* the entries inserted as a result " "of :envvar:`PYTHONPATH`):" msgstr "" -#: library/sys.rst:1305 +#: library/sys.rst:1334 msgid "" "``python -m module`` command line: prepend the current working directory." msgstr "" -#: library/sys.rst:1307 +#: library/sys.rst:1336 msgid "" "``python script.py`` command line: prepend the script's directory. If it's a " "symbolic link, resolve symbolic links." msgstr "" -#: library/sys.rst:1309 +#: library/sys.rst:1338 msgid "" "``python -c code`` and ``python`` (REPL) command lines: prepend an empty " "string, which means the current working directory." msgstr "" -#: library/sys.rst:1312 +#: library/sys.rst:1341 msgid "" "To not prepend this potentially unsafe path, use the :option:`-P` command " "line option or the :envvar:`PYTHONSAFEPATH` environment variable." msgstr "" -#: library/sys.rst:1315 +#: library/sys.rst:1344 msgid "" "A program is free to modify this list for its own purposes. Only strings " "should be added to :data:`sys.path`; all other data types are ignored during " "import." msgstr "" -#: library/sys.rst:1321 +#: library/sys.rst:1350 msgid "" "Module :mod:`site` This describes how to use .pth files to extend :data:`sys." "path`." msgstr "" -#: library/sys.rst:1326 +#: library/sys.rst:1355 msgid "" "A list of callables that take a path argument to try to create a :term:" "`finder` for the path. If a finder can be created, it is to be returned by " "the callable, else raise :exc:`ImportError`." msgstr "" -#: library/sys.rst:1341 +#: library/sys.rst:1370 msgid "Originally specified in :pep:`302`." msgstr "" -#: library/sys.rst:1335 +#: library/sys.rst:1364 msgid "" "A dictionary acting as a cache for :term:`finder` objects. The keys are " "paths that have been passed to :data:`sys.path_hooks` and the values are the " @@ -1648,13 +1682,13 @@ msgid "" "is found on :data:`sys.path_hooks` then ``None`` is stored." msgstr "" -#: library/sys.rst:1346 +#: library/sys.rst:1375 msgid "" "This string contains a platform identifier that can be used to append " "platform-specific components to :data:`sys.path`, for instance." msgstr "" -#: library/sys.rst:1349 +#: library/sys.rst:1378 msgid "" "For Unix systems, except on Linux and AIX, this is the lowercased OS name as " "returned by ``uname -s`` with the first part of the version as returned by " @@ -1663,7 +1697,7 @@ msgid "" "version, it is therefore recommended to use the following idiom::" msgstr "" -#: library/sys.rst:1355 +#: library/sys.rst:1384 msgid "" "if sys.platform.startswith('freebsd'):\n" " # FreeBSD-specific code here...\n" @@ -1673,75 +1707,75 @@ msgid "" " # AIX-specific code here..." msgstr "" -#: library/sys.rst:1362 +#: library/sys.rst:1391 msgid "For other systems, the values are:" msgstr "" -#: library/sys.rst:1365 +#: library/sys.rst:1394 msgid "System" msgstr "" -#: library/sys.rst:1365 +#: library/sys.rst:1394 msgid "``platform`` value" msgstr "" -#: library/sys.rst:1367 +#: library/sys.rst:1396 msgid "AIX" msgstr "" -#: library/sys.rst:1367 +#: library/sys.rst:1396 msgid "``'aix'``" msgstr "" -#: library/sys.rst:1368 +#: library/sys.rst:1397 msgid "Emscripten" msgstr "" -#: library/sys.rst:1368 +#: library/sys.rst:1397 msgid "``'emscripten'``" msgstr "" -#: library/sys.rst:1369 +#: library/sys.rst:1398 msgid "Linux" msgstr "" -#: library/sys.rst:1369 +#: library/sys.rst:1398 msgid "``'linux'``" msgstr "" -#: library/sys.rst:1370 +#: library/sys.rst:1399 msgid "WASI" msgstr "" -#: library/sys.rst:1370 +#: library/sys.rst:1399 msgid "``'wasi'``" msgstr "" -#: library/sys.rst:1371 +#: library/sys.rst:1400 msgid "Windows" msgstr "" -#: library/sys.rst:1371 +#: library/sys.rst:1400 msgid "``'win32'``" msgstr "" -#: library/sys.rst:1372 +#: library/sys.rst:1401 msgid "Windows/Cygwin" msgstr "" -#: library/sys.rst:1372 +#: library/sys.rst:1401 msgid "``'cygwin'``" msgstr "" -#: library/sys.rst:1373 +#: library/sys.rst:1402 msgid "macOS" msgstr "" -#: library/sys.rst:1373 +#: library/sys.rst:1402 msgid "``'darwin'``" msgstr "" -#: library/sys.rst:1376 +#: library/sys.rst:1405 msgid "" "On Linux, :data:`sys.platform` doesn't contain the major version anymore. It " "is always ``'linux'``, instead of ``'linux2'`` or ``'linux3'``. Since older " @@ -1749,7 +1783,7 @@ msgid "" "the ``startswith`` idiom presented above." msgstr "" -#: library/sys.rst:1382 +#: library/sys.rst:1411 msgid "" "On AIX, :data:`sys.platform` doesn't contain the major version anymore. It " "is always ``'aix'``, instead of ``'aix5'`` or ``'aix7'``. Since older " @@ -1757,57 +1791,57 @@ msgid "" "the ``startswith`` idiom presented above." msgstr "" -#: library/sys.rst:1390 +#: library/sys.rst:1419 msgid "" ":data:`os.name` has a coarser granularity. :func:`os.uname` gives system-" "dependent version information." msgstr "" -#: library/sys.rst:1393 +#: library/sys.rst:1422 msgid "" "The :mod:`platform` module provides detailed checks for the system's " "identity." msgstr "" -#: library/sys.rst:1399 +#: library/sys.rst:1428 msgid "" "Name of the platform-specific library directory. It is used to build the " "path of standard library and the paths of installed extension modules." msgstr "" -#: library/sys.rst:1402 +#: library/sys.rst:1431 msgid "" "It is equal to ``\"lib\"`` on most platforms. On Fedora and SuSE, it is " "equal to ``\"lib64\"`` on 64-bit platforms which gives the following ``sys." "path`` paths (where ``X.Y`` is the Python ``major.minor`` version):" msgstr "" -#: library/sys.rst:1406 +#: library/sys.rst:1435 msgid "" "``/usr/lib64/pythonX.Y/``: Standard library (like ``os.py`` of the :mod:`os` " "module)" msgstr "" -#: library/sys.rst:1408 +#: library/sys.rst:1437 msgid "" "``/usr/lib64/pythonX.Y/lib-dynload/``: C extension modules of the standard " "library (like the :mod:`errno` module, the exact filename is platform " "specific)" msgstr "" -#: library/sys.rst:1411 +#: library/sys.rst:1440 msgid "" "``/usr/lib/pythonX.Y/site-packages/`` (always use ``lib``, not :data:`sys." "platlibdir`): Third-party modules" msgstr "" -#: library/sys.rst:1413 +#: library/sys.rst:1442 msgid "" "``/usr/lib64/pythonX.Y/site-packages/``: C extension modules of third-party " "packages" msgstr "" -#: library/sys.rst:1421 +#: library/sys.rst:1450 msgid "" "A string giving the site-specific directory prefix where the platform " "independent Python files are installed; on Unix, the default is :file:`/usr/" @@ -1816,14 +1850,14 @@ msgid "" "derived paths." msgstr "" -#: library/sys.rst:1427 +#: library/sys.rst:1456 msgid "" "If a :ref:`virtual environment ` is in effect, this value will be " "changed in ``site.py`` to point to the virtual environment. The value for " "the Python installation will still be available, via :data:`base_prefix`." msgstr "" -#: library/sys.rst:1442 +#: library/sys.rst:1471 msgid "" "Strings specifying the primary and secondary prompt of the interpreter. " "These are only defined if the interpreter is in interactive mode. Their " @@ -1833,7 +1867,7 @@ msgid "" "used to implement a dynamic prompt." msgstr "" -#: library/sys.rst:1452 +#: library/sys.rst:1481 msgid "" "Set the flags used by the interpreter for :c:func:`dlopen` calls, such as " "when the interpreter loads extension modules. Among other things, this will " @@ -1844,14 +1878,14 @@ msgid "" "g. :const:`os.RTLD_LAZY`)." msgstr "" -#: library/sys.rst:1464 +#: library/sys.rst:1493 msgid "" "Set the :ref:`integer string conversion length limitation " "` used by this interpreter. See also :func:" "`get_int_max_str_digits`." msgstr "" -#: library/sys.rst:1476 +#: library/sys.rst:1505 msgid "" "Set the system's profile function, which allows you to implement a Python " "source code profiler in Python. See chapter :ref:`profile` for more " @@ -1866,14 +1900,14 @@ msgid "" "in the profile function will cause itself unset." msgstr "" -#: library/sys.rst:1488 +#: library/sys.rst:1517 msgid "" "The same tracing mechanism is used for :func:`!setprofile` as :func:" "`settrace`. To trace calls with :func:`!setprofile` inside a tracing " "function (e.g. in a debugger breakpoint), see :func:`call_tracing`." msgstr "" -#: library/sys.rst:1492 +#: library/sys.rst:1521 msgid "" "Profile functions should have three arguments: *frame*, *event*, and *arg*. " "*frame* is the current stack frame. *event* is a string: ``'call'``, " @@ -1881,71 +1915,71 @@ msgid "" "depends on the event type." msgstr "" -#: library/sys.rst:1584 +#: library/sys.rst:1613 msgid "The events have the following meaning:" msgstr "" -#: library/sys.rst:1586 +#: library/sys.rst:1615 msgid "``'call'``" msgstr "" -#: library/sys.rst:1500 +#: library/sys.rst:1529 msgid "" "A function is called (or some other code block entered). The profile " "function is called; *arg* is ``None``." msgstr "" -#: library/sys.rst:1601 +#: library/sys.rst:1630 msgid "``'return'``" msgstr "" -#: library/sys.rst:1504 +#: library/sys.rst:1533 msgid "" "A function (or other code block) is about to return. The profile function " "is called; *arg* is the value that will be returned, or ``None`` if the " "event is caused by an exception being raised." msgstr "" -#: library/sys.rst:1508 +#: library/sys.rst:1537 msgid "``'c_call'``" msgstr "" -#: library/sys.rst:1509 +#: library/sys.rst:1538 msgid "" "A C function is about to be called. This may be an extension function or a " "built-in. *arg* is the C function object." msgstr "" -#: library/sys.rst:1512 +#: library/sys.rst:1541 msgid "``'c_return'``" msgstr "" -#: library/sys.rst:1513 +#: library/sys.rst:1542 msgid "A C function has returned. *arg* is the C function object." msgstr "" -#: library/sys.rst:1515 +#: library/sys.rst:1544 msgid "``'c_exception'``" msgstr "" -#: library/sys.rst:1516 +#: library/sys.rst:1545 msgid "A C function has raised an exception. *arg* is the C function object." msgstr "" -#: library/sys.rst:1518 +#: library/sys.rst:1547 msgid "" "Raises an :ref:`auditing event ` ``sys.setprofile`` with no " "arguments." msgstr "" -#: library/sys.rst:1523 +#: library/sys.rst:1552 msgid "" "Set the maximum depth of the Python interpreter stack to *limit*. This " "limit prevents infinite recursion from causing an overflow of the C stack " "and crashing Python." msgstr "" -#: library/sys.rst:1527 +#: library/sys.rst:1556 msgid "" "The highest possible limit is platform-dependent. A user may need to set " "the limit higher when they have a program that requires deep recursion and a " @@ -1953,19 +1987,19 @@ msgid "" "because a too-high limit can lead to a crash." msgstr "" -#: library/sys.rst:1532 +#: library/sys.rst:1561 msgid "" "If the new limit is too low at the current recursion depth, a :exc:" "`RecursionError` exception is raised." msgstr "" -#: library/sys.rst:1535 +#: library/sys.rst:1564 msgid "" "A :exc:`RecursionError` exception is now raised if the new limit is too low " "at the current recursion depth." msgstr "" -#: library/sys.rst:1542 +#: library/sys.rst:1571 msgid "" "Set the interpreter's thread switch interval (in seconds). This floating-" "point value determines the ideal duration of the \"timeslices\" allocated to " @@ -1976,7 +2010,7 @@ msgid "" "scheduler." msgstr "" -#: library/sys.rst:1559 +#: library/sys.rst:1588 msgid "" "Set the system's trace function, which allows you to implement a Python " "source code debugger in Python. The function is thread-specific; for a " @@ -1985,7 +2019,7 @@ msgid "" "`threading.settrace`." msgstr "" -#: library/sys.rst:1564 +#: library/sys.rst:1593 msgid "" "Trace functions should have three arguments: *frame*, *event*, and *arg*. " "*frame* is the current stack frame. *event* is a string: ``'call'``, " @@ -1993,7 +2027,7 @@ msgid "" "the event type." msgstr "" -#: library/sys.rst:1569 +#: library/sys.rst:1598 msgid "" "The trace function is invoked (with *event* set to ``'call'``) whenever a " "new local scope is entered; it should return a reference to a local trace " @@ -2001,36 +2035,36 @@ msgid "" "traced." msgstr "" -#: library/sys.rst:1574 +#: library/sys.rst:1603 msgid "" "The local trace function should return a reference to itself, or to another " "function which would then be used as the local trace function for the scope." msgstr "" -#: library/sys.rst:1577 +#: library/sys.rst:1606 msgid "" "If there is any error occurred in the trace function, it will be unset, just " "like ``settrace(None)`` is called." msgstr "" -#: library/sys.rst:1581 +#: library/sys.rst:1610 msgid "" "Tracing is disabled while calling the trace function (e.g. a function set " "by :func:`!settrace`). For recursive tracing see :func:`call_tracing`." msgstr "" -#: library/sys.rst:1587 +#: library/sys.rst:1616 msgid "" "A function is called (or some other code block entered). The global trace " "function is called; *arg* is ``None``; the return value specifies the local " "trace function." msgstr "" -#: library/sys.rst:1591 +#: library/sys.rst:1620 msgid "``'line'``" msgstr "" -#: library/sys.rst:1592 +#: library/sys.rst:1621 msgid "" "The interpreter is about to execute a new line of code or re-execute the " "condition of a loop. The local trace function is called; *arg* is ``None``; " @@ -2040,7 +2074,7 @@ msgid "" "to :const:`False` on that :ref:`frame `." msgstr "" -#: library/sys.rst:1602 +#: library/sys.rst:1631 msgid "" "A function (or other code block) is about to return. The local trace " "function is called; *arg* is the value that will be returned, or ``None`` if " @@ -2048,22 +2082,22 @@ msgid "" "return value is ignored." msgstr "" -#: library/sys.rst:1607 +#: library/sys.rst:1636 msgid "``'exception'``" msgstr "" -#: library/sys.rst:1608 +#: library/sys.rst:1637 msgid "" "An exception has occurred. The local trace function is called; *arg* is a " "tuple ``(exception, value, traceback)``; the return value specifies the new " "local trace function." msgstr "" -#: library/sys.rst:1612 +#: library/sys.rst:1641 msgid "``'opcode'``" msgstr "" -#: library/sys.rst:1613 +#: library/sys.rst:1642 msgid "" "The interpreter is about to execute a new opcode (see :mod:`dis` for opcode " "details). The local trace function is called; *arg* is ``None``; the return " @@ -2073,13 +2107,13 @@ msgid "" "objects>`." msgstr "" -#: library/sys.rst:1620 +#: library/sys.rst:1649 msgid "" "Note that as an exception is propagated down the chain of callers, an " "``'exception'`` event is generated at each level." msgstr "" -#: library/sys.rst:1623 +#: library/sys.rst:1652 msgid "" "For more fine-grained usage, it's possible to set a trace function by " "assigning ``frame.f_trace = tracefunc`` explicitly, rather than relying on " @@ -2093,17 +2127,17 @@ msgid "" "on each frame)." msgstr "" -#: library/sys.rst:1634 +#: library/sys.rst:1663 msgid "For more information on code and frame objects, refer to :ref:`types`." msgstr "" -#: library/sys.rst:1636 +#: library/sys.rst:1665 msgid "" "Raises an :ref:`auditing event ` ``sys.settrace`` with no " "arguments." msgstr "" -#: library/sys.rst:1640 +#: library/sys.rst:1669 msgid "" "The :func:`settrace` function is intended only for implementing debuggers, " "profilers, coverage tools and the like. Its behavior is part of the " @@ -2111,13 +2145,13 @@ msgid "" "thus may not be available in all Python implementations." msgstr "" -#: library/sys.rst:1647 +#: library/sys.rst:1676 msgid "" "``'opcode'`` event type added; :attr:`~frame.f_trace_lines` and :attr:" "`~frame.f_trace_opcodes` attributes added to frames" msgstr "" -#: library/sys.rst:1650 +#: library/sys.rst:1679 msgid "" "``'opcode'`` event will only be emitted if :attr:`~frame.f_trace_opcodes` of " "at least one frame has been set to :const:`True` before :func:`settrace` is " @@ -2125,7 +2159,7 @@ msgid "" "previous versions." msgstr "" -#: library/sys.rst:1658 +#: library/sys.rst:1687 msgid "" "Accepts two optional keyword arguments which are callables that accept an :" "term:`asynchronous generator iterator` as an argument. The *firstiter* " @@ -2134,32 +2168,32 @@ msgid "" "about to be garbage collected." msgstr "" -#: library/sys.rst:1664 +#: library/sys.rst:1693 msgid "" "Raises an :ref:`auditing event ` ``sys." "set_asyncgen_hooks_firstiter`` with no arguments." msgstr "" -#: library/sys.rst:1666 +#: library/sys.rst:1695 msgid "" "Raises an :ref:`auditing event ` ``sys." "set_asyncgen_hooks_finalizer`` with no arguments." msgstr "" -#: library/sys.rst:1668 +#: library/sys.rst:1697 msgid "" "Two auditing events are raised because the underlying API consists of two " "calls, each of which must raise its own event." msgstr "" -#: library/sys.rst:1671 +#: library/sys.rst:1700 msgid "" "See :pep:`525` for more details, and for a reference example of a " "*finalizer* method see the implementation of ``asyncio.Loop." "shutdown_asyncgens`` in :source:`Lib/asyncio/base_events.py`" msgstr "" -#: library/sys.rst:1683 +#: library/sys.rst:1712 msgid "" "Allows enabling or disabling coroutine origin tracking. When enabled, the " "``cr_origin`` attribute on coroutine objects will contain a tuple of " @@ -2168,100 +2202,100 @@ msgid "" "disabled, ``cr_origin`` will be ``None``." msgstr "" -#: library/sys.rst:1690 +#: library/sys.rst:1719 msgid "" "To enable, pass a *depth* value greater than zero; this sets the number of " "frames whose information will be captured. To disable, pass set *depth* to " "zero." msgstr "" -#: library/sys.rst:1694 +#: library/sys.rst:1723 msgid "This setting is thread-specific." msgstr "" -#: library/sys.rst:1704 +#: library/sys.rst:1733 msgid "" "Activate the stack profiler trampoline *backend*. The only supported backend " "is ``\"perf\"``." msgstr "" -#: library/sys.rst:1713 +#: library/sys.rst:1742 msgid ":ref:`perf_profiling`" msgstr "" -#: library/sys.rst:1714 +#: library/sys.rst:1743 msgid "https://perf.wiki.kernel.org" msgstr "" -#: library/sys.rst:1718 +#: library/sys.rst:1747 msgid "Deactivate the current stack profiler trampoline backend." msgstr "" -#: library/sys.rst:1720 +#: library/sys.rst:1749 msgid "If no stack profiler is activated, this function has no effect." msgstr "" -#: library/sys.rst:1728 +#: library/sys.rst:1757 msgid "Return ``True`` if a stack profiler trampoline is active." msgstr "" -#: library/sys.rst:1736 +#: library/sys.rst:1765 msgid "" "Changes the :term:`filesystem encoding and error handler` to 'mbcs' and " "'replace' respectively, for consistency with versions of Python prior to 3.6." msgstr "" -#: library/sys.rst:1740 +#: library/sys.rst:1769 msgid "" "This is equivalent to defining the :envvar:`PYTHONLEGACYWINDOWSFSENCODING` " "environment variable before launching Python." msgstr "" -#: library/sys.rst:1743 +#: library/sys.rst:1772 msgid "" "See also :func:`sys.getfilesystemencoding` and :func:`sys." "getfilesystemencodeerrors`." msgstr "" -#: library/sys.rst:1748 +#: library/sys.rst:1777 msgid "See :pep:`529` for more details." msgstr "" -#: library/sys.rst:1755 +#: library/sys.rst:1784 msgid "" ":term:`File objects ` used by the interpreter for standard " "input, output and errors:" msgstr "" -#: library/sys.rst:1758 +#: library/sys.rst:1787 msgid "" "``stdin`` is used for all interactive input (including calls to :func:" "`input`);" msgstr "" -#: library/sys.rst:1760 +#: library/sys.rst:1789 msgid "" "``stdout`` is used for the output of :func:`print` and :term:`expression` " "statements and for the prompts of :func:`input`;" msgstr "" -#: library/sys.rst:1762 +#: library/sys.rst:1791 msgid "The interpreter's own prompts and its error messages go to ``stderr``." msgstr "" -#: library/sys.rst:1764 +#: library/sys.rst:1793 msgid "" "These streams are regular :term:`text files ` like those returned " "by the :func:`open` function. Their parameters are chosen as follows:" msgstr "" -#: library/sys.rst:1768 +#: library/sys.rst:1797 msgid "" "The encoding and error handling are is initialized from :c:member:`PyConfig." "stdio_encoding` and :c:member:`PyConfig.stdio_errors`." msgstr "" -#: library/sys.rst:1771 +#: library/sys.rst:1800 msgid "" "On Windows, UTF-8 is used for the console device. Non-character devices " "such as disk files and pipes use the system locale encoding (i.e. the ANSI " @@ -2272,14 +2306,14 @@ msgid "" "initially attached to a console." msgstr "" -#: library/sys.rst:1780 +#: library/sys.rst:1809 msgid "" "The special behaviour of the console can be overridden by setting the " "environment variable PYTHONLEGACYWINDOWSSTDIO before starting Python. In " "that case, the console codepages are used as for any other character device." msgstr "" -#: library/sys.rst:1785 +#: library/sys.rst:1814 msgid "" "Under all platforms, you can override the character encoding by setting the :" "envvar:`PYTHONIOENCODING` environment variable before starting Python or by " @@ -2288,7 +2322,7 @@ msgid "" "only applies when :envvar:`PYTHONLEGACYWINDOWSSTDIO` is also set." msgstr "" -#: library/sys.rst:1792 +#: library/sys.rst:1821 msgid "" "When interactive, the ``stdout`` stream is line-buffered. Otherwise, it is " "block-buffered like regular text files. The ``stderr`` stream is line-" @@ -2297,19 +2331,19 @@ msgid "" "`PYTHONUNBUFFERED` environment variable." msgstr "" -#: library/sys.rst:1798 +#: library/sys.rst:1827 msgid "" "Non-interactive ``stderr`` is now line-buffered instead of fully buffered." msgstr "" -#: library/sys.rst:1804 +#: library/sys.rst:1833 msgid "" "To write or read binary data from/to the standard streams, use the " "underlying binary :data:`~io.TextIOBase.buffer` object. For example, to " "write bytes to :data:`stdout`, use ``sys.stdout.buffer.write(b'abc')``." msgstr "" -#: library/sys.rst:1808 +#: library/sys.rst:1837 msgid "" "However, if you are writing a library (and do not control in which context " "its code will be executed), be aware that the standard streams may be " @@ -2317,7 +2351,7 @@ msgid "" "support the :attr:`!buffer` attribute." msgstr "" -#: library/sys.rst:1818 +#: library/sys.rst:1847 msgid "" "These objects contain the original values of ``stdin``, ``stderr`` and " "``stdout`` at the start of the program. They are used during finalization, " @@ -2325,7 +2359,7 @@ msgid "" "``sys.std*`` object has been redirected." msgstr "" -#: library/sys.rst:1823 +#: library/sys.rst:1852 msgid "" "It can also be used to restore the actual files to known working file " "objects in case they have been overwritten with a broken object. However, " @@ -2333,7 +2367,7 @@ msgid "" "before replacing it, and restore the saved object." msgstr "" -#: library/sys.rst:1829 +#: library/sys.rst:1858 msgid "" "Under some conditions ``stdin``, ``stdout`` and ``stderr`` as well as the " "original values ``__stdin__``, ``__stdout__`` and ``__stderr__`` can be " @@ -2341,12 +2375,12 @@ msgid "" "to a console and Python apps started with :program:`pythonw`." msgstr "" -#: library/sys.rst:1837 +#: library/sys.rst:1866 msgid "" "A frozenset of strings containing the names of standard library modules." msgstr "" -#: library/sys.rst:1839 +#: library/sys.rst:1868 msgid "" "It is the same on all platforms. Modules which are not available on some " "platforms and modules disabled at Python build are also listed. All module " @@ -2354,7 +2388,7 @@ msgid "" "modules are excluded." msgstr "" -#: library/sys.rst:1844 +#: library/sys.rst:1873 msgid "" "For packages, only the main package is listed: sub-packages and sub-modules " "are not listed. For example, the ``email`` package is listed, but the " @@ -2362,60 +2396,60 @@ msgid "" "listed." msgstr "" -#: library/sys.rst:1849 +#: library/sys.rst:1878 msgid "See also the :data:`sys.builtin_module_names` list." msgstr "" -#: library/sys.rst:1856 +#: library/sys.rst:1885 msgid "" "A :term:`named tuple` holding information about the thread implementation." msgstr "" -#: library/sys.rst:1861 +#: library/sys.rst:1890 msgid "The name of the thread implementation:" msgstr "" -#: library/sys.rst:1863 +#: library/sys.rst:1892 msgid "``\"nt\"``: Windows threads" msgstr "" -#: library/sys.rst:1864 +#: library/sys.rst:1893 msgid "``\"pthread\"``: POSIX threads" msgstr "" -#: library/sys.rst:1865 +#: library/sys.rst:1894 msgid "" "``\"pthread-stubs\"``: stub POSIX threads (on WebAssembly platforms without " "threading support)" msgstr "" -#: library/sys.rst:1867 +#: library/sys.rst:1896 msgid "``\"solaris\"``: Solaris threads" msgstr "" -#: library/sys.rst:1871 +#: library/sys.rst:1900 msgid "The name of the lock implementation:" msgstr "" -#: library/sys.rst:1873 +#: library/sys.rst:1902 msgid "``\"semaphore\"``: a lock uses a semaphore" msgstr "" -#: library/sys.rst:1874 +#: library/sys.rst:1903 msgid "``\"mutex+cond\"``: a lock uses a mutex and a condition variable" msgstr "" -#: library/sys.rst:1875 +#: library/sys.rst:1904 msgid "``None`` if this information is unknown" msgstr "" -#: library/sys.rst:1879 +#: library/sys.rst:1908 msgid "" "The name and version of the thread library. It is a string, or ``None`` if " "this information is unknown." msgstr "" -#: library/sys.rst:1887 +#: library/sys.rst:1916 msgid "" "When this variable is set to an integer value, it determines the maximum " "number of levels of traceback information printed when an unhandled " @@ -2424,73 +2458,73 @@ msgid "" "are printed." msgstr "" -#: library/sys.rst:1895 +#: library/sys.rst:1924 msgid "Handle an unraisable exception." msgstr "" -#: library/sys.rst:1897 +#: library/sys.rst:1926 msgid "" "Called when an exception has occurred but there is no way for Python to " "handle it. For example, when a destructor raises an exception or during " "garbage collection (:func:`gc.collect`)." msgstr "" -#: library/sys.rst:1901 +#: library/sys.rst:1930 msgid "The *unraisable* argument has the following attributes:" msgstr "" -#: library/sys.rst:1903 +#: library/sys.rst:1932 msgid ":attr:`!exc_type`: Exception type." msgstr "" -#: library/sys.rst:1904 +#: library/sys.rst:1933 msgid ":attr:`!exc_value`: Exception value, can be ``None``." msgstr "" -#: library/sys.rst:1905 +#: library/sys.rst:1934 msgid ":attr:`!exc_traceback`: Exception traceback, can be ``None``." msgstr "" -#: library/sys.rst:1906 +#: library/sys.rst:1935 msgid ":attr:`!err_msg`: Error message, can be ``None``." msgstr "" -#: library/sys.rst:1907 +#: library/sys.rst:1936 msgid ":attr:`!object`: Object causing the exception, can be ``None``." msgstr "" -#: library/sys.rst:1909 +#: library/sys.rst:1938 msgid "" "The default hook formats :attr:`!err_msg` and :attr:`!object` as: " "``f'{err_msg}: {object!r}'``; use \"Exception ignored in\" error message if :" "attr:`!err_msg` is ``None``." msgstr "" -#: library/sys.rst:1913 +#: library/sys.rst:1942 msgid "" ":func:`sys.unraisablehook` can be overridden to control how unraisable " "exceptions are handled." msgstr "" -#: library/sys.rst:1918 +#: library/sys.rst:1947 msgid ":func:`excepthook` which handles uncaught exceptions." msgstr "" -#: library/sys.rst:1922 +#: library/sys.rst:1951 msgid "" "Storing :attr:`!exc_value` using a custom hook can create a reference cycle. " "It should be cleared explicitly to break the reference cycle when the " "exception is no longer needed." msgstr "" -#: library/sys.rst:1926 +#: library/sys.rst:1955 msgid "" "Storing :attr:`!object` using a custom hook can resurrect it if it is set to " "an object which is being finalized. Avoid storing :attr:`!object` after the " "custom hook completes to avoid resurrecting objects." msgstr "" -#: library/sys.rst:1932 +#: library/sys.rst:1961 msgid "" "Raise an auditing event ``sys.unraisablehook`` with arguments *hook*, " "*unraisable* when an exception that cannot be handled occurs. The " @@ -2498,7 +2532,7 @@ msgid "" "hook has been set, *hook* may be ``None``." msgstr "" -#: library/sys.rst:1941 +#: library/sys.rst:1970 msgid "" "A string containing the version number of the Python interpreter plus " "additional information on the build number and compiler used. This string " @@ -2507,13 +2541,13 @@ msgid "" "functions provided by the :mod:`platform` module." msgstr "" -#: library/sys.rst:1950 +#: library/sys.rst:1979 msgid "" "The C API version for this interpreter. Programmers may find this useful " "when debugging version conflicts between Python and extension modules." msgstr "" -#: library/sys.rst:1956 +#: library/sys.rst:1985 msgid "" "A tuple containing the five components of the version number: *major*, " "*minor*, *micro*, *releaselevel*, and *serial*. All values except " @@ -2524,18 +2558,18 @@ msgid "" "version_info.major`` and so on." msgstr "" -#: library/sys.rst:1964 +#: library/sys.rst:1993 msgid "Added named component attributes." msgstr "" -#: library/sys.rst:1969 +#: library/sys.rst:1998 msgid "" "This is an implementation detail of the warnings framework; do not modify " "this value. Refer to the :mod:`warnings` module for more information on the " "warnings framework." msgstr "" -#: library/sys.rst:1976 +#: library/sys.rst:2005 msgid "" "The version number used to form registry keys on Windows platforms. This is " "stored as string resource 1000 in the Python DLL. The value is normally the " @@ -2544,20 +2578,20 @@ msgid "" "has no effect on the registry keys used by Python." msgstr "" -#: library/sys.rst:1988 +#: library/sys.rst:2017 msgid "" "Namespace containing functions and constants for register callbacks and " "controlling monitoring events. See :mod:`sys.monitoring` for details." msgstr "" -#: library/sys.rst:1994 +#: library/sys.rst:2023 msgid "" "A dictionary of the various implementation-specific flags passed through " "the :option:`-X` command-line option. Option names are either mapped to " "their values, if given explicitly, or to :const:`True`. Example:" msgstr "" -#: library/sys.rst:1998 +#: library/sys.rst:2027 msgid "" "$ ./python -Xa=b -Xc\n" "Python 3.2a3+ (py3k, Oct 16 2010, 20:14:50)\n" @@ -2569,18 +2603,18 @@ msgid "" "{'a': 'b', 'c': True}" msgstr "" -#: library/sys.rst:2010 +#: library/sys.rst:2039 msgid "" "This is a CPython-specific way of accessing options passed through :option:`-" "X`. Other implementations may export them through other means, or not at " "all." msgstr "" -#: library/sys.rst:2018 +#: library/sys.rst:2047 msgid "Citations" msgstr "" -#: library/sys.rst:2019 +#: library/sys.rst:2048 msgid "" "ISO/IEC 9899:1999. \"Programming languages -- C.\" A public draft of this " "standard is available at https://www.open-std.org/jtc1/sc22/wg14/www/docs/" @@ -2599,50 +2633,50 @@ msgstr "" msgid "traceback" msgstr "" -#: library/sys.rst:1472 +#: library/sys.rst:1501 msgid "profile function" msgstr "" -#: library/sys.rst:1472 +#: library/sys.rst:1501 msgid "profiler" msgstr "" -#: library/sys.rst:1555 +#: library/sys.rst:1584 msgid "trace function" msgstr "" -#: library/sys.rst:1555 +#: library/sys.rst:1584 msgid "debugger" msgstr "" -#: library/sys.rst:1295 +#: library/sys.rst:1324 msgid "module" msgstr "" -#: library/sys.rst:1295 +#: library/sys.rst:1324 msgid "search" msgstr "" -#: library/sys.rst:1295 +#: library/sys.rst:1324 msgid "path" msgstr "" -#: library/sys.rst:1436 +#: library/sys.rst:1465 msgid "interpreter prompts" msgstr "" -#: library/sys.rst:1436 +#: library/sys.rst:1465 msgid "prompts, interpreter" msgstr "" -#: library/sys.rst:1436 +#: library/sys.rst:1465 msgid ">>>" msgstr "" -#: library/sys.rst:1436 +#: library/sys.rst:1465 msgid "interpreter prompt" msgstr "" -#: library/sys.rst:1436 +#: library/sys.rst:1465 msgid "..." msgstr "" diff --git a/library/sysconfig.po b/library/sysconfig.po index 0c7aeffe7..eb4731677 100644 --- a/library/sysconfig.po +++ b/library/sysconfig.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -642,78 +642,82 @@ msgid "Windows will return one of:" msgstr "" #: library/sysconfig.rst:391 -msgid "win-amd64 (64bit Windows on AMD64, aka x86_64, Intel64, and EM64T)" +msgid "win-amd64 (64-bit Windows on AMD64, aka x86_64, Intel64, and EM64T)" msgstr "" #: library/sysconfig.rst:392 +msgid "win-arm64 (64-bit Windows on ARM64, aka AArch64)" +msgstr "" + +#: library/sysconfig.rst:393 msgid "win32 (all others - specifically, sys.platform is returned)" msgstr "" -#: library/sysconfig.rst:394 +#: library/sysconfig.rst:395 msgid "macOS can return:" msgstr "" -#: library/sysconfig.rst:396 +#: library/sysconfig.rst:397 msgid "macosx-10.6-ppc" msgstr "" -#: library/sysconfig.rst:397 +#: library/sysconfig.rst:398 msgid "macosx-10.4-ppc64" msgstr "" -#: library/sysconfig.rst:398 +#: library/sysconfig.rst:399 msgid "macosx-10.3-i386" msgstr "" -#: library/sysconfig.rst:399 +#: library/sysconfig.rst:400 msgid "macosx-10.4-fat" msgstr "" -#: library/sysconfig.rst:401 +#: library/sysconfig.rst:402 msgid "" "For other non-POSIX platforms, currently just returns :data:`sys.platform`." msgstr "" -#: library/sysconfig.rst:406 +#: library/sysconfig.rst:407 msgid "" "Return ``True`` if the running Python interpreter was built from source and " "is being run from its built location, and not from a location resulting from " "e.g. running ``make install`` or installing via a binary installer." msgstr "" -#: library/sysconfig.rst:413 +#: library/sysconfig.rst:414 msgid "Parse a :file:`config.h`\\-style file." msgstr "" -#: library/sysconfig.rst:415 +#: library/sysconfig.rst:416 msgid "" "*fp* is a file-like object pointing to the :file:`config.h`\\-like file." msgstr "" -#: library/sysconfig.rst:417 +#: library/sysconfig.rst:418 msgid "" "A dictionary containing name/value pairs is returned. If an optional " "dictionary is passed in as the second argument, it is used instead of a new " "dictionary, and updated with the values read in the file." msgstr "" -#: library/sysconfig.rst:424 +#: library/sysconfig.rst:425 msgid "Return the path of :file:`pyconfig.h`." msgstr "" -#: library/sysconfig.rst:428 +#: library/sysconfig.rst:429 msgid "Return the path of :file:`Makefile`." msgstr "" -#: library/sysconfig.rst:433 +#: library/sysconfig.rst:434 msgid "Using :mod:`sysconfig` as a script" msgstr "" -#: library/sysconfig.rst:435 +#: library/sysconfig.rst:436 msgid "You can use :mod:`sysconfig` as a script with Python's *-m* option:" msgstr "" -#: library/sysconfig.rst:437 +#: library/sysconfig.rst:438 msgid "" "$ python -m sysconfig\n" "Platform: \"macosx-10.4-i386\"\n" @@ -738,7 +742,7 @@ msgid "" " ..." msgstr "" -#: library/sysconfig.rst:461 +#: library/sysconfig.rst:462 msgid "" "This call will print in the standard output the information returned by :" "func:`get_platform`, :func:`get_python_version`, :func:`get_path` and :func:" diff --git a/library/time.po b/library/time.po index 739e19225..d8389a7b1 100644 --- a/library/time.po +++ b/library/time.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2023-03-01 11:44+0300\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -90,15 +90,13 @@ msgstr "" #: library/time.rst:55 msgid "" -"UTC is Coordinated Universal Time (formerly known as Greenwich Mean Time, or " -"GMT). The acronym UTC is not a mistake but a compromise between English and " -"French." +"UTC is `Coordinated Universal Time`_ and superseded `Greenwich Mean Time`_ " +"or GMT as the basis of international timekeeping. The acronym UTC is not a " +"mistake but conforms to an earlier, language-agnostic naming scheme for time " +"standards such as UT0, UT1, and UT2." msgstr "" -"UTC, Koordineli Evrensel Zaman (eski haliyle Greenwich Ortalama Zamanı, ya " -"da GMT) anlamına gelir. UTC kısaltması bir hata değil, İngilizce ve " -"Fransızca arasında bir uzlaşmadır." -#: library/time.rst:61 +#: library/time.rst:65 msgid "" "DST is Daylight Saving Time, an adjustment of the timezone by (usually) one " "hour during part of the year. DST rules are magic (determined by local law) " @@ -112,7 +110,7 @@ msgstr "" "kuralları (genellikle esneklik için bir sistem dosyasından okunur) içeren " "bir tabloya sahiptir ve Gerçek Bilgeliğin tek kaynağıdır." -#: library/time.rst:67 +#: library/time.rst:71 msgid "" "The precision of the various real-time functions may be less than suggested " "by the units in which their value or argument is expressed. E.g. on most " @@ -122,7 +120,7 @@ msgstr "" "veya argümanlarının ifade edildiği önerilerden daha az olabilir. Örneği çoğu " "Unix sistemlerinde, saat yalnızca 50 veya 100 defa \"çalışır\"." -#: library/time.rst:71 +#: library/time.rst:75 #, fuzzy msgid "" "On the other hand, the precision of :func:`.time` and :func:`sleep` is " @@ -139,7 +137,7 @@ msgstr "" "`sleep` sıfıra eşit olmayan kesirli zamanı kabul eder (Unix :c:func:" "`select`, mümkün olduğunda bunu uygulamak için kullanılır)." -#: library/time.rst:78 +#: library/time.rst:82 msgid "" "The time value as returned by :func:`gmtime`, :func:`localtime`, and :func:" "`strptime`, and accepted by :func:`asctime`, :func:`mktime` and :func:" @@ -153,12 +151,12 @@ msgstr "" "`gmtime`, :func:`localtime`, ve :func:`strptime` tarafından döndürülen " "değerler ayrıca ayrı alanlar için ayrı öznitelik isimleri sunar." -#: library/time.rst:84 +#: library/time.rst:88 msgid "See :class:`struct_time` for a description of these objects." msgstr "" "Bu nesnelerin açıklamalarını görmek için :class:`struct_time`'a göz at." -#: library/time.rst:86 +#: library/time.rst:90 #, fuzzy msgid "" "The :class:`struct_time` type was extended to provide the :attr:" @@ -169,7 +167,7 @@ msgstr "" "özniteliklerini platform ``struct tm``'e ilişkin üyeleri desteklediğinde " "sağlayabilmek için genişletilmiştir." -#: library/time.rst:92 +#: library/time.rst:96 #, fuzzy msgid "" "The :class:`struct_time` attributes :attr:`~struct_time.tm_gmtoff` and :attr:" @@ -178,57 +176,57 @@ msgstr "" ":class:`struct_time` öznitelikleri :attr:`tm_gmtoff` ve :attr:`tm_zone` " "artık bütün platformlarda mevcut." -#: library/time.rst:97 +#: library/time.rst:101 msgid "Use the following functions to convert between time representations:" msgstr "" "Zaman temsilleri arasında dönüşüm yapmak için belirtilen fonksiyonları " "kullanın:" -#: library/time.rst:100 +#: library/time.rst:104 msgid "From" msgstr "Den" -#: library/time.rst:100 +#: library/time.rst:104 msgid "To" msgstr "Karşı" -#: library/time.rst:100 +#: library/time.rst:104 msgid "Use" msgstr "Kullan" -#: library/time.rst:102 library/time.rst:108 library/time.rst:111 +#: library/time.rst:106 library/time.rst:112 library/time.rst:115 msgid "seconds since the epoch" msgstr "zamanın başlangıcından beri geçen saniye" -#: library/time.rst:108 +#: library/time.rst:112 msgid ":class:`struct_time` in UTC" msgstr "UTC içinde :class:`struct_time`" -#: library/time.rst:102 +#: library/time.rst:106 msgid ":func:`gmtime`" msgstr ":func:`gmtime`" -#: library/time.rst:111 +#: library/time.rst:115 msgid ":class:`struct_time` in local time" msgstr "yerel zaman içinde :class:`struct_time`" -#: library/time.rst:105 +#: library/time.rst:109 msgid ":func:`localtime`" msgstr ":func:`localtime`" -#: library/time.rst:108 +#: library/time.rst:112 msgid ":func:`calendar.timegm`" msgstr ":func:`calendar.timegm`" -#: library/time.rst:111 +#: library/time.rst:115 msgid ":func:`mktime`" msgstr ":func:`mktime`" -#: library/time.rst:119 +#: library/time.rst:123 msgid "Functions" msgstr "Fonksiyonlar" -#: library/time.rst:123 +#: library/time.rst:127 msgid "" "Convert a tuple or :class:`struct_time` representing a time as returned by :" "func:`gmtime` or :func:`localtime` to a string of the following form: ``'Sun " @@ -241,7 +239,7 @@ msgstr "" "uzunluğundadır ve gün tek harfliyse boşluk karakteriyle doldurulur, örnek: " "``'Wed Jun 9 04:26:40 1993'``." -#: library/time.rst:129 +#: library/time.rst:133 msgid "" "If *t* is not provided, the current time as returned by :func:`localtime` is " "used. Locale information is not used by :func:`asctime`." @@ -249,14 +247,14 @@ msgstr "" "Eğer *t* sağlanmamışsa, :func:`localtime` tarafından döndürülen şimdiki " "zaman kullanılır. Yerel bilgi :func:`asctime` tarafından kullanılmaz." -#: library/time.rst:134 +#: library/time.rst:138 msgid "" "Unlike the C function of the same name, :func:`asctime` does not add a " "trailing newline." msgstr "" "Aynı isimli C fonksiyonunun aksine, :func:`asctime` sona yeni satır eklemez." -#: library/time.rst:139 +#: library/time.rst:143 msgid "" "Return the *clk_id* of the thread-specific CPU-time clock for the specified " "*thread_id*." @@ -264,7 +262,7 @@ msgstr "" "Belirtilen *thread_id* için iş parçacığına özgü CPU-zaman saatinin *clk_id* " "değerini döndürür." -#: library/time.rst:141 +#: library/time.rst:145 msgid "" "Use :func:`threading.get_ident` or the :attr:`~threading.Thread.ident` " "attribute of :class:`threading.Thread` objects to get a suitable value for " @@ -274,7 +272,7 @@ msgstr "" "veya :class:`threading.Thread` nesnelerinin :attr:`~threading.Thread.ident` " "özniteliğini kullanın." -#: library/time.rst:146 +#: library/time.rst:150 msgid "" "Passing an invalid or expired *thread_id* may result in undefined behavior, " "such as segmentation fault." @@ -282,14 +280,14 @@ msgstr "" "Geçersiz veya süresi geçmiş bir *thread_id* girişi yapmak, bölümleme hatası " "gibi, tanımlanmamış bir davranış ortaya koyabilir." -#: library/time.rst:161 library/time.rst:183 library/time.rst:205 -#: library/time.rst:729 library/time.rst:836 library/time.rst:856 -#: library/time.rst:874 library/time.rst:893 library/time.rst:915 -#: library/time.rst:928 +#: library/time.rst:165 library/time.rst:187 library/time.rst:209 +#: library/time.rst:742 library/time.rst:849 library/time.rst:869 +#: library/time.rst:887 library/time.rst:906 library/time.rst:928 +#: library/time.rst:941 msgid "Availability" msgstr "" -#: library/time.rst:151 +#: library/time.rst:155 msgid "" "See the man page for :manpage:`pthread_getcpuclockid(3)` for further " "information." @@ -297,7 +295,7 @@ msgstr "" "Daha fazla bilgi için :manpage:`pthread_getcpuclockid(3)` el kitabına göz " "atın." -#: library/time.rst:158 +#: library/time.rst:162 msgid "" "Return the resolution (precision) of the specified clock *clk_id*. Refer " "to :ref:`time-clock-id-constants` for a list of accepted values for *clk_id*." @@ -305,7 +303,7 @@ msgstr "" "Belirtilen *clk_id* saatinin netliğini (kesinliğini) döndür. *clk_id*'e " "uygun değerlerin bir listesi için :ref:`time-clock-id-constants`'a bakınız." -#: library/time.rst:168 +#: library/time.rst:172 msgid "" "Return the time of the specified clock *clk_id*. Refer to :ref:`time-clock-" "id-constants` for a list of accepted values for *clk_id*." @@ -313,7 +311,7 @@ msgstr "" "Belirtilen *clk_id* saatinin zamanını döndür. *clk_id*'e uygun değerlerin " "bir listesi için :ref:`time-clock-id-constants`'a bakınız." -#: library/time.rst:171 +#: library/time.rst:175 msgid "" "Use :func:`clock_gettime_ns` to avoid the precision loss caused by the :" "class:`float` type." @@ -321,13 +319,13 @@ msgstr "" ":class:`float` türü sebebiyle oluşan kesinlik kaybından kaçınmak için :func:" "`clock_gettime_ns` kullanın." -#: library/time.rst:181 +#: library/time.rst:185 msgid "Similar to :func:`clock_gettime` but return time as nanoseconds." msgstr "" ":func:`clock_gettime`'a benzer şekilde ama zamanı nanosaniyeler şeklinde " "döndürür." -#: library/time.rst:190 +#: library/time.rst:194 msgid "" "Set the time of the specified clock *clk_id*. Currently, :data:" "`CLOCK_REALTIME` is the only accepted value for *clk_id*." @@ -335,7 +333,7 @@ msgstr "" "Belirtilen *clk_id* saatinin zamanını ayarla. Şu anda, *clk_id* için kabul " "edilen tek değer :data:`CLOCK_REALTIME`'dır." -#: library/time.rst:193 +#: library/time.rst:197 msgid "" "Use :func:`clock_settime_ns` to avoid the precision loss caused by the :" "class:`float` type." @@ -343,12 +341,12 @@ msgstr "" ":class:`float` türü sebebiyle oluşan kesinlik kaybından kaçınmak için :func:" "`clock_settime_ns` kullanın." -#: library/time.rst:203 +#: library/time.rst:207 msgid "Similar to :func:`clock_settime` but set time with nanoseconds." msgstr "" ":func:`clock_settime`'a benzer şekilde ama zamanı nanosaniyeler ile ayarlar." -#: library/time.rst:212 +#: library/time.rst:216 msgid "" "Convert a time expressed in seconds since the epoch_ to a string of a form: " "``'Sun Jun 20 23:21:05 1993'`` representing local time. The day field is two " @@ -360,7 +358,7 @@ msgstr "" "1993'``. Gün alanı iki karakter uzunluğundadır ve gün tek basamaklıysa " "boşluk bırakılır, örneğin: ``'Wed Jun 9 04:26:40 1993'``." -#: library/time.rst:217 +#: library/time.rst:221 msgid "" "If *secs* is not provided or :const:`None`, the current time as returned by :" "func:`.time` is used. ``ctime(secs)`` is equivalent to " @@ -371,7 +369,7 @@ msgstr "" "mevcut zaman kullanılır. ``ctime(secs)`` ``asctime(localtime(secs))``'e " "karşılıktır. Yerel ayar bilgisi :func:`ctime` tarafından kullanılmaz." -#: library/time.rst:225 +#: library/time.rst:229 msgid "" "Get information on the specified clock as a namespace object. Supported " "clock names and the corresponding functions to read their value are:" @@ -379,31 +377,31 @@ msgstr "" "Belirtilen saat için namespace nesnesi şeklinde bilgi edinin. Desteklenen " "saat isimleri ve onların değerlerini okumaya ilişkin fonksiyonlar şunlardır:" -#: library/time.rst:229 +#: library/time.rst:233 msgid "``'monotonic'``: :func:`time.monotonic`" msgstr "``'monotonic'``: :func:`time.monotonic`" -#: library/time.rst:230 +#: library/time.rst:234 msgid "``'perf_counter'``: :func:`time.perf_counter`" msgstr "``'perf_counter'``: :func:`time.perf_counter`" -#: library/time.rst:231 +#: library/time.rst:235 msgid "``'process_time'``: :func:`time.process_time`" msgstr "``'process_time'``: :func:`time.process_time`" -#: library/time.rst:232 +#: library/time.rst:236 msgid "``'thread_time'``: :func:`time.thread_time`" msgstr "``'thread_time'``: :func:`time.thread_time`" -#: library/time.rst:233 +#: library/time.rst:237 msgid "``'time'``: :func:`time.time`" msgstr "``'time'``: :func:`time.time`" -#: library/time.rst:235 +#: library/time.rst:239 msgid "The result has the following attributes:" msgstr "Sonuç şu özniteliklere sahiptir:" -#: library/time.rst:237 +#: library/time.rst:241 msgid "" "*adjustable*: ``True`` if the clock can be changed automatically (e.g. by a " "NTP daemon) or manually by the system administrator, ``False`` otherwise" @@ -412,7 +410,7 @@ msgstr "" "yöneticisi tarafından değiştirilebiliyorsa *adjustable*: ``True``, tersi " "için ``False``" -#: library/time.rst:239 +#: library/time.rst:243 msgid "" "*implementation*: The name of the underlying C function used to get the " "clock value. Refer to :ref:`time-clock-id-constants` for possible values." @@ -421,17 +419,17 @@ msgstr "" "fonksiyonunun ismidir. Muhtemel değerler için :ref:`time-clock-id-" "constants`'a bakınız." -#: library/time.rst:241 +#: library/time.rst:245 msgid "" "*monotonic*: ``True`` if the clock cannot go backward, ``False`` otherwise" msgstr "" "*monotonic*: Saat geriye doğru gidemiyorsa ``True``, aksi halde ``False``" -#: library/time.rst:243 +#: library/time.rst:247 msgid "*resolution*: The resolution of the clock in seconds (:class:`float`)" msgstr "*resolution*: Saatin saniyeler halindeki netliği (:class:`float`)" -#: library/time.rst:250 +#: library/time.rst:254 msgid "" "Convert a time expressed in seconds since the epoch_ to a :class:" "`struct_time` in UTC in which the dst flag is always zero. If *secs* is not " @@ -447,7 +445,7 @@ msgstr "" "`struct_time` nesnesinin açıklaması için yukarıya bakın. Bu fonksiyonun " "tersi için :func:`calendar.timegm` konusuna bakın." -#: library/time.rst:260 +#: library/time.rst:264 msgid "" "Like :func:`gmtime` but converts to local time. If *secs* is not provided " "or :const:`None`, the current time as returned by :func:`.time` is used. " @@ -458,7 +456,7 @@ msgstr "" "kullanılır. Belirli bir süre için DST uygulandığında dst bayrağı ``1`` " "olarak ayarlanır." -#: library/time.rst:264 +#: library/time.rst:268 msgid "" ":func:`localtime` may raise :exc:`OverflowError`, if the timestamp is " "outside the range of values supported by the platform C :c:func:`localtime` " @@ -472,7 +470,7 @@ msgstr "" "`OSError` veya :c:func:`gmtime` hatasını. Bunun 1970 ile 2038 arasındaki " "yıllarla sınırlı olması yaygın bir durumdur." -#: library/time.rst:273 +#: library/time.rst:277 #, fuzzy msgid "" "This is the inverse function of :func:`localtime`. Its argument is the :" @@ -494,7 +492,7 @@ msgstr "" "kitaplıkları tarafından yakalanıp yakalanmadığına bağlıdır). Bir zaman " "oluşturabileceği en erken tarih, platforma bağlıdır." -#: library/time.rst:285 +#: library/time.rst:289 msgid "" "Return the value (in fractional seconds) of a monotonic clock, i.e. a clock " "that cannot go backwards. The clock is not affected by system clock " @@ -506,7 +504,7 @@ msgstr "" "Döndürülen değerin referans noktası tanımlanmamıştır, böylece sadece iki " "aramanın sonuçları arasındaki fark geçerlidir." -#: library/time.rst:290 +#: library/time.rst:294 msgid "" "Use :func:`monotonic_ns` to avoid the precision loss caused by the :class:" "`float` type." @@ -514,21 +512,21 @@ msgstr "" ":class:`float` türünün sebep olduğu kesinlik kaybından kaçınmak için :func:" "`monotonic_ns` kullanın." -#: library/time.rst:295 +#: library/time.rst:299 msgid "The function is now always available and always system-wide." msgstr "Fonksiyon artık her zaman mevcut ve her zaman sistem çapında." -#: library/time.rst:298 +#: library/time.rst:302 msgid "On macOS, the function is now system-wide." msgstr "macOS için, fonksiyon artık sistem çapında." -#: library/time.rst:304 +#: library/time.rst:308 msgid "Similar to :func:`monotonic`, but return time as nanoseconds." msgstr "" ":func:`monotonic`'e benzer şekilde, ama zamanı nanosaniyeler şeklinde " "döndürür." -#: library/time.rst:313 +#: library/time.rst:317 msgid "" "Return the value (in fractional seconds) of a performance counter, i.e. a " "clock with the highest available resolution to measure a short duration. It " @@ -542,7 +540,7 @@ msgstr "" "değerin referans noktası tanımsızdır, yani sadece iki çağrının sonuçları " "arasındaki fark geçerlidir." -#: library/time.rst:319 +#: library/time.rst:323 msgid "" "Use :func:`perf_counter_ns` to avoid the precision loss caused by the :class:" "`float` type." @@ -550,17 +548,17 @@ msgstr "" ":class:`float` türü sebebiyle oluşan kesinlik kaybından kaçınmak için :func:" "`perf_counter_ns` kullanın." -#: library/time.rst:324 +#: library/time.rst:328 msgid "On Windows, the function is now system-wide." msgstr "Windows için, fonksiyon artık sistem çapında." -#: library/time.rst:329 +#: library/time.rst:333 msgid "Similar to :func:`perf_counter`, but return time as nanoseconds." msgstr "" ":func:`perf_counter`'a benzer şekilde, ama zamanı nanosaniyeler şeklinde " "döndürür." -#: library/time.rst:341 +#: library/time.rst:345 msgid "" "Return the value (in fractional seconds) of the sum of the system and user " "CPU time of the current process. It does not include time elapsed during " @@ -573,7 +571,7 @@ msgstr "" "Tanım gereği işlem çapındadır. Döndürülen değerin referans noktası " "tanımsızdır, yani sadece iki çağrının sonuçları arasındaki fark geçerlidir." -#: library/time.rst:347 +#: library/time.rst:351 msgid "" "Use :func:`process_time_ns` to avoid the precision loss caused by the :class:" "`float` type." @@ -581,13 +579,13 @@ msgstr "" ":class:`float` türü sebebiyle oluşan kesinlik kaybından kaçınmak için :func:" "`process_time_ns` kullanın." -#: library/time.rst:354 +#: library/time.rst:358 msgid "Similar to :func:`process_time` but return time as nanoseconds." msgstr "" ":func:`process_time`'a benzer şekilde, ama zamanı nanosaniyeler şeklinde " "döndürür." -#: library/time.rst:360 +#: library/time.rst:364 #, fuzzy msgid "" "Suspend execution of the calling thread for the given number of seconds. The " @@ -598,7 +596,7 @@ msgstr "" "alın. Argüman, daha kesin bir uyku zamanını belirtmek için kayan noktalı bir " "sayı olabilir." -#: library/time.rst:364 +#: library/time.rst:368 msgid "" "If the sleep is interrupted by a signal and no exception is raised by the " "signal handler, the sleep is restarted with a recomputed timeout." @@ -607,7 +605,7 @@ msgstr "" "tarafından herhangi bir istisna yükseltilmezse, uyku yeniden hesaplanmış bir " "zaman aşımıyla tekrar başlar." -#: library/time.rst:367 +#: library/time.rst:371 msgid "" "The suspension time may be longer than requested by an arbitrary amount, " "because of the scheduling of other activity in the system." @@ -616,14 +614,20 @@ msgstr "" "tutulabilir, sebebiyse diğer aktivitelerin sistem içerisindeki " "planlanmasıdır." -#: library/time.rst:370 +#: library/time.rst:375 +#, fuzzy +msgid "Windows implementation" +msgstr "Unix uyarlaması:" + +#: library/time.rst:376 +#, fuzzy msgid "" "On Windows, if *secs* is zero, the thread relinquishes the remainder of its " "time slice to any other thread that is ready to run. If there are no other " "threads ready to run, the function returns immediately, and the thread " "continues execution. On Windows 8.1 and newer the implementation uses a " -"`high-resolution timer `_ which provides resolution of 100 " +"`high-resolution timer `_ which provides resolution of 100 " "nanoseconds. If *secs* is zero, ``Sleep(0)`` is used." msgstr "" "Windows'ta *secs* sıfırsa, iş parçacığı zaman diliminin geri kalanını " @@ -634,25 +638,37 @@ msgstr "" "en-us/windows-hardware/drivers/kernel/high-Definition-timers>`_ kullanır. " "*secs* sıfırsa, ``Sleep(0)`` kullanılır." -#: library/time.rst:378 -msgid "Unix implementation:" +#: library/time.rst:385 +#, fuzzy +msgid "Unix implementation" msgstr "Unix uyarlaması:" -#: library/time.rst:380 +#: library/time.rst:386 msgid "Use ``clock_nanosleep()`` if available (resolution: 1 nanosecond);" msgstr "" "Kullanılabilirse ``clock_nanosleep()`` kullanın (netlik: 1 nanosaniye);" -#: library/time.rst:381 +#: library/time.rst:387 msgid "Or use ``nanosleep()`` if available (resolution: 1 nanosecond);" msgstr "" "Ya da kullanılabiliyorsa ``nanosleep()`` kullanın (netlik: 1 nanosaniye);" -#: library/time.rst:382 +#: library/time.rst:388 msgid "Or use ``select()`` (resolution: 1 microsecond)." msgstr "Ya da ``select()`` kullanın (netlik: 1 mikrosaniye)." -#: library/time.rst:384 +#: library/time.rst:392 +msgid "" +"To emulate a \"no-op\", use :keyword:`pass` instead of ``time.sleep(0)``." +msgstr "" + +#: library/time.rst:394 +msgid "" +"To voluntarily relinquish the CPU, specify a real-time :ref:`scheduling " +"policy ` and use :func:`os.sched_yield` instead." +msgstr "" + +#: library/time.rst:397 msgid "" "The function now sleeps at least *secs* even if the sleep is interrupted by " "a signal, except if the signal handler raises an exception (see :pep:`475` " @@ -662,7 +678,7 @@ msgstr "" "sinyal işleyicisi tarafından bir istisna yükseltilmesi durumu hariç " "(açıklaması için :pep:`475`'e göz atın)." -#: library/time.rst:389 +#: library/time.rst:402 msgid "" "On Unix, the ``clock_nanosleep()`` and ``nanosleep()`` functions are now " "used if available. On Windows, a waitable timer is now used." @@ -671,7 +687,7 @@ msgstr "" "kullanılabiliyor. Windows'da, artık beklenebilir bir zamanlayıcı " "kullanılıyor." -#: library/time.rst:398 +#: library/time.rst:411 msgid "" "Convert a tuple or :class:`struct_time` representing a time as returned by :" "func:`gmtime` or :func:`localtime` to a string as specified by the *format* " @@ -686,7 +702,7 @@ msgstr "" "bir dize olmalıdır. :exc:`ValueError`, *t* içindeki herhangi bir alan izin " "verilen aralığın dışındaysa yükseltilir." -#: library/time.rst:404 +#: library/time.rst:417 msgid "" "0 is a legal argument for any position in the time tuple; if it is normally " "illegal the value is forced to a correct one." @@ -694,7 +710,7 @@ msgstr "" "0 zaman demeti içerisindeki herhangi bir pozisyon için geçerli bir " "argümandır; normalde geçersiz ise, değer doğru bir değere zorlanır." -#: library/time.rst:407 +#: library/time.rst:420 msgid "" "The following directives can be embedded in the *format* string. They are " "shown without the optional field width and precision specification, and are " @@ -704,152 +720,152 @@ msgstr "" "genişliği ve kesinlik belirtimi olmadan gösterilirler ve :func:`strftime` " "sonucunda belirtilen karakterlerle değiştirilirler:" -#: library/time.rst:412 +#: library/time.rst:425 msgid "Directive" msgstr "Yönerge" -#: library/time.rst:412 +#: library/time.rst:425 msgid "Meaning" msgstr "Anlamı" -#: library/time.rst:412 +#: library/time.rst:425 msgid "Notes" msgstr "Notlar" -#: library/time.rst:414 +#: library/time.rst:427 msgid "``%a``" msgstr "``%a``" -#: library/time.rst:414 +#: library/time.rst:427 msgid "Locale's abbreviated weekday name." msgstr "Yerel ayarın kısaltılmış hafta içi ismi." -#: library/time.rst:417 +#: library/time.rst:430 msgid "``%A``" msgstr "``%A``" -#: library/time.rst:417 +#: library/time.rst:430 msgid "Locale's full weekday name." msgstr "Yerel ayarın tam hafta içi ismi." -#: library/time.rst:419 +#: library/time.rst:432 msgid "``%b``" msgstr "``%b``" -#: library/time.rst:419 +#: library/time.rst:432 msgid "Locale's abbreviated month name." msgstr "Yerel ayarın kısaltılmış ay ismi." -#: library/time.rst:422 +#: library/time.rst:435 msgid "``%B``" msgstr "``%B``" -#: library/time.rst:422 +#: library/time.rst:435 msgid "Locale's full month name." msgstr "Yerel ayarın tam ay ismi." -#: library/time.rst:424 +#: library/time.rst:437 msgid "``%c``" msgstr "``%c``" -#: library/time.rst:424 +#: library/time.rst:437 msgid "Locale's appropriate date and time representation." msgstr "Yerel ayarın uygun tarih ve zaman gösterimi." -#: library/time.rst:427 +#: library/time.rst:440 msgid "``%d``" msgstr "``%d``" -#: library/time.rst:427 +#: library/time.rst:440 msgid "Day of the month as a decimal number [01,31]." msgstr "Onluk sayı şeklinde ayın günü [01,31]." -#: library/time.rst:430 +#: library/time.rst:443 msgid "``%f``" msgstr "" -#: library/time.rst:430 +#: library/time.rst:443 #, fuzzy msgid "Microseconds as a decimal number" msgstr "Onluk sayı şeklinde saniye [00,61]." -#: library/time.rst:431 +#: library/time.rst:444 msgid "[000000,999999]." msgstr "" -#: library/time.rst:430 +#: library/time.rst:443 msgid "\\(1)" msgstr "\\(1)" -#: library/time.rst:434 +#: library/time.rst:447 msgid "``%H``" msgstr "``%H``" -#: library/time.rst:434 +#: library/time.rst:447 msgid "Hour (24-hour clock) as a decimal number [00,23]." msgstr "Onluk sayı şeklinde saat (24-saatlik sistem) [00,23]." -#: library/time.rst:437 +#: library/time.rst:450 msgid "``%I``" msgstr "``%I``" -#: library/time.rst:437 +#: library/time.rst:450 msgid "Hour (12-hour clock) as a decimal number [01,12]." msgstr "Onluk sayı şeklinde saat (12-saatlik sistem) [01,12]." -#: library/time.rst:440 +#: library/time.rst:453 msgid "``%j``" msgstr "``%j``" -#: library/time.rst:440 +#: library/time.rst:453 msgid "Day of the year as a decimal number [001,366]." msgstr "Onluk sayı şeklinde yılın günü [001,366]." -#: library/time.rst:443 +#: library/time.rst:456 msgid "``%m``" msgstr "``%m``" -#: library/time.rst:443 +#: library/time.rst:456 msgid "Month as a decimal number [01,12]." msgstr "Onluk sayı şeklinde ay [01,12]." -#: library/time.rst:446 +#: library/time.rst:459 msgid "``%M``" msgstr "``%M``" -#: library/time.rst:446 +#: library/time.rst:459 msgid "Minute as a decimal number [00,59]." msgstr "Onluk sayı şeklinde dakika [00,59]." -#: library/time.rst:449 +#: library/time.rst:462 msgid "``%p``" msgstr "``%p``" -#: library/time.rst:449 +#: library/time.rst:462 msgid "Locale's equivalent of either AM or PM." msgstr "Yerel ayarın AM veya PM'e göre karşılığı." -#: library/time.rst:449 +#: library/time.rst:462 msgid "\\(2)" msgstr "\\(2)" -#: library/time.rst:452 +#: library/time.rst:465 msgid "``%S``" msgstr "``%S``" -#: library/time.rst:452 +#: library/time.rst:465 msgid "Second as a decimal number [00,61]." msgstr "Onluk sayı şeklinde saniye [00,61]." -#: library/time.rst:452 +#: library/time.rst:465 msgid "\\(3)" msgstr "\\(3)" -#: library/time.rst:455 +#: library/time.rst:468 msgid "``%U``" msgstr "``%U``" -#: library/time.rst:455 +#: library/time.rst:468 msgid "" "Week number of the year (Sunday as the first day of the week) as a decimal " "number [00,53]. All days in a new year preceding the first Sunday are " @@ -859,32 +875,32 @@ msgstr "" "numarası [00,53]. Yeni bir yılın ilk Pazar gününden önceki tüm günleri 0. " "hafta olarak kabul edilir." -#: library/time.rst:469 +#: library/time.rst:482 msgid "\\(4)" msgstr "" -#: library/time.rst:463 +#: library/time.rst:476 msgid "``%u``" msgstr "" -#: library/time.rst:463 +#: library/time.rst:476 #, fuzzy msgid "Day of the week (Monday is 1; Sunday is 7) as a decimal number [1, 7]." msgstr "Onluk sayı şeklinde ayın günü [01,31]." -#: library/time.rst:466 +#: library/time.rst:479 msgid "``%w``" msgstr "``%w``" -#: library/time.rst:466 +#: library/time.rst:479 msgid "Weekday as a decimal number [0(Sunday),6]." msgstr "Onluk sayı şeklinde hafta içi [0(Sunday),6]." -#: library/time.rst:469 +#: library/time.rst:482 msgid "``%W``" msgstr "``%W``" -#: library/time.rst:469 +#: library/time.rst:482 msgid "" "Week number of the year (Monday as the first day of the week) as a decimal " "number [00,53]. All days in a new year preceding the first Monday are " @@ -894,43 +910,43 @@ msgstr "" "numarası [00,53]. Yeni bir yılın ilk Pazartesi gününden önceki tüm günleri " "0. hafta olarak kabul edilir." -#: library/time.rst:477 +#: library/time.rst:490 msgid "``%x``" msgstr "``%x``" -#: library/time.rst:477 +#: library/time.rst:490 msgid "Locale's appropriate date representation." msgstr "Yerel ayarın uygun tarih gösterimi." -#: library/time.rst:480 +#: library/time.rst:493 msgid "``%X``" msgstr "``%X``" -#: library/time.rst:480 +#: library/time.rst:493 msgid "Locale's appropriate time representation." msgstr "Yerel ayarın uygun zaman gösterimi." -#: library/time.rst:483 +#: library/time.rst:496 msgid "``%y``" msgstr "``%y``" -#: library/time.rst:483 +#: library/time.rst:496 msgid "Year without century as a decimal number [00,99]." msgstr "Onluk sayı şeklinde yüzyıl olmadan yıl [00,99]." -#: library/time.rst:486 +#: library/time.rst:499 msgid "``%Y``" msgstr "``%Y``" -#: library/time.rst:486 +#: library/time.rst:499 msgid "Year with century as a decimal number." msgstr "Onluk sayı şeklinde yüzyıl ile birlikte yıl." -#: library/time.rst:489 +#: library/time.rst:502 msgid "``%z``" msgstr "``%z``" -#: library/time.rst:489 +#: library/time.rst:502 msgid "" "Time zone offset indicating a positive or negative time difference from UTC/" "GMT of the form +HHMM or -HHMM, where H represents decimal hour digits and M " @@ -940,51 +956,51 @@ msgstr "" "farkını gösteren saat dilimi farkı, burada H ondalık saat hanelerini ve M " "ondalık dakika hanelerini temsil eder [-23:59, +23:59]. [1]_" -#: library/time.rst:495 +#: library/time.rst:508 msgid "``%Z``" msgstr "``%Z``" -#: library/time.rst:495 +#: library/time.rst:508 msgid "Time zone name (no characters if no time zone exists). Deprecated. [1]_" msgstr "" "Yerel zaman ismi (yerel zaman bulunmuyorsa karakter girmeyin). Kullanımdan " "kaldırıldı. [1]_" -#: library/time.rst:498 +#: library/time.rst:511 msgid "``%G``" msgstr "" -#: library/time.rst:498 +#: library/time.rst:511 msgid "" "ISO 8601 year (similar to ``%Y`` but follows the rules for the ISO 8601 " "calendar year). The year starts with the week that contains the first " "Thursday of the calendar year." msgstr "" -#: library/time.rst:503 +#: library/time.rst:516 msgid "``%V``" msgstr "" -#: library/time.rst:503 +#: library/time.rst:516 msgid "" "ISO 8601 week number (as a decimal number [01,53]). The first week of the " "year is the one that contains the first Thursday of the year. Weeks start on " "Monday." msgstr "" -#: library/time.rst:508 +#: library/time.rst:521 msgid "``%%``" msgstr "``%%``" -#: library/time.rst:508 +#: library/time.rst:521 msgid "A literal ``'%'`` character." msgstr "Gerçek bir ``'%'`` karakteri." -#: library/time.rst:511 +#: library/time.rst:524 msgid "Notes:" msgstr "Notlar:" -#: library/time.rst:514 +#: library/time.rst:527 msgid "" "The ``%f`` format directive only applies to :func:`strptime`, not to :func:" "`strftime`. However, see also :meth:`datetime.datetime.strptime` and :meth:" @@ -992,7 +1008,7 @@ msgid "" "to microseconds `." msgstr "" -#: library/time.rst:520 +#: library/time.rst:533 msgid "" "When used with the :func:`strptime` function, the ``%p`` directive only " "affects the output hour field if the ``%I`` directive is used to parse the " @@ -1002,7 +1018,7 @@ msgstr "" "ayrıştırmak için ``%I`` yönergesi kullanılıyorsa, çıkış saati alanını " "etkiler." -#: library/time.rst:526 +#: library/time.rst:539 msgid "" "The range really is ``0`` to ``61``; value ``60`` is valid in timestamps " "representing `leap seconds`_ and value ``61`` is supported for historical " @@ -1012,7 +1028,7 @@ msgstr "" "seconds`_ 'u temsil eden zaman damgalarında geçerlidir ve ``61`` değeriyse " "tarihsel nedenlerden ötürü desteklenmektedir." -#: library/time.rst:531 +#: library/time.rst:544 msgid "" "When used with the :func:`strptime` function, ``%U`` and ``%W`` are only " "used in calculations when the day of the week and the year are specified." @@ -1020,7 +1036,7 @@ msgstr "" "``%U`` ve ``%W`` ifadeleri, :func:`strptime` fonksiyonu ile kullanıldığında, " "yalnızca haftanın günü ve yıl belirtilmişse hesaplamalarda kullanılır." -#: library/time.rst:534 +#: library/time.rst:547 msgid "" "Here is an example, a format for dates compatible with that specified in " "the :rfc:`2822` Internet email standard. [1]_ ::" @@ -1028,14 +1044,14 @@ msgstr "" "İşte bir örnek, :rfc:`2822` İnternet e-posta standardında belirtilenle " "uyumlu tarih biçimi. [1]_ ::" -#: library/time.rst:537 +#: library/time.rst:550 msgid "" ">>> from time import gmtime, strftime\n" ">>> strftime(\"%a, %d %b %Y %H:%M:%S +0000\", gmtime())\n" "'Thu, 28 Jun 2001 14:17:15 +0000'" msgstr "" -#: library/time.rst:541 +#: library/time.rst:554 msgid "" "Additional directives may be supported on certain platforms, but only the " "ones listed here have a meaning standardized by ANSI C. To see the full set " @@ -1047,7 +1063,7 @@ msgstr "" "Platformunuzda desteklenen tüm biçim kodlarını görmek için :manpage:" "`strftime(3)` belgelerine bakın." -#: library/time.rst:546 +#: library/time.rst:559 msgid "" "On some platforms, an optional field width and precision specification can " "immediately follow the initial ``'%'`` of a directive in the following " @@ -1059,7 +1075,7 @@ msgstr "" "bu da taşınabilir değil. Alan genişliği, 3 olduğu ``%j`` dışında normalde " "2'dir." -#: library/time.rst:557 +#: library/time.rst:570 msgid "" "Parse a string representing a time according to a format. The return value " "is a :class:`struct_time` as returned by :func:`gmtime` or :func:`localtime`." @@ -1068,7 +1084,7 @@ msgstr "" "değeri, :func:`gmtime` veya :func:`localtime` tarafından döndürülen bir :" "class:`struct_time` şeklindedir." -#: library/time.rst:561 +#: library/time.rst:574 msgid "" "The *format* parameter uses the same directives as those used by :func:" "`strftime`; it defaults to ``\"%a %b %d %H:%M:%S %Y\"`` which matches the " @@ -1087,11 +1103,11 @@ msgstr "" "0, 0, 0, 0, 1, -1)`` şeklindedir. Hem *string* hem de *format* dize " "olmalıdır." -#: library/time.rst:569 +#: library/time.rst:582 msgid "For example:" msgstr "Örnek olarak:" -#: library/time.rst:576 +#: library/time.rst:589 msgid "" "Support for the ``%Z`` directive is based on the values contained in " "``tzname`` and whether ``daylight`` is true. Because of this, it is " @@ -1103,7 +1119,7 @@ msgstr "" "zaman bilinen (ve gün ışığından yararlanma saat dilimleri olarak kabul " "edilen) UTC ve GMT'yi tanımak dışında platforma özgüdür." -#: library/time.rst:581 +#: library/time.rst:594 msgid "" "Only the directives specified in the documentation are supported. Because " "``strftime()`` is implemented per platform it can sometimes offer more " @@ -1116,7 +1132,7 @@ msgstr "" "sunabilir. Ancak ``strptime()`` herhangi bir platformdan bağımsızdır ve bu " "nedenle desteklendiği belgelenmeyen mevcut tüm yönergeleri desteklemeyebilir." -#: library/time.rst:590 +#: library/time.rst:603 msgid "" "The type of the time value sequence returned by :func:`gmtime`, :func:" "`localtime`, and :func:`strptime`. It is an object with a :term:`named " @@ -1128,105 +1144,105 @@ msgstr "" "nesnedir: değerlere dizin ve öznitelik adıyla erişilebilir. Aşağıdaki " "değerler mevcuttur:" -#: library/time.rst:597 +#: library/time.rst:610 msgid "Index" msgstr "Dizin" -#: library/time.rst:598 +#: library/time.rst:611 msgid "Attribute" msgstr "Öznitelik" -#: library/time.rst:599 +#: library/time.rst:612 msgid "Values" msgstr "Değerler" -#: library/time.rst:601 +#: library/time.rst:614 msgid "0" msgstr "0" -#: library/time.rst:603 +#: library/time.rst:616 msgid "(for example, 1993)" msgstr "(örnek olarak, 1993)" -#: library/time.rst:605 +#: library/time.rst:618 msgid "1" msgstr "1" -#: library/time.rst:607 +#: library/time.rst:620 msgid "range [1, 12]" msgstr "[1, 12] aralığı" -#: library/time.rst:609 +#: library/time.rst:622 msgid "2" msgstr "2" -#: library/time.rst:611 +#: library/time.rst:624 msgid "range [1, 31]" msgstr "[1, 31] aralığı" -#: library/time.rst:613 +#: library/time.rst:626 msgid "3" msgstr "3" -#: library/time.rst:615 +#: library/time.rst:628 msgid "range [0, 23]" msgstr "[0, 23] aralığı" -#: library/time.rst:617 +#: library/time.rst:630 msgid "4" msgstr "4" -#: library/time.rst:619 +#: library/time.rst:632 msgid "range [0, 59]" msgstr "[0, 59] aralığa" -#: library/time.rst:621 +#: library/time.rst:634 msgid "5" msgstr "5" -#: library/time.rst:623 +#: library/time.rst:636 #, fuzzy msgid "range [0, 61]; see :ref:`Note (2) ` in :func:`strftime`" msgstr "[0, 61] aralığı; :func:`strftime` içinde **(2)** açıklamasına göz atın" -#: library/time.rst:625 +#: library/time.rst:638 msgid "6" msgstr "6" -#: library/time.rst:627 +#: library/time.rst:640 #, fuzzy msgid "range [0, 6]; Monday is 0" msgstr "[0, 6] aralığı, Pazartesi 0'dır" -#: library/time.rst:629 +#: library/time.rst:642 msgid "7" msgstr "7" -#: library/time.rst:631 +#: library/time.rst:644 msgid "range [1, 366]" msgstr "[1, 366] aralığı" -#: library/time.rst:633 +#: library/time.rst:646 msgid "8" msgstr "8" -#: library/time.rst:635 +#: library/time.rst:648 msgid "0, 1 or -1; see below" msgstr "0, 1 veya -1; aşağıya bakınız" -#: library/time.rst:641 +#: library/time.rst:654 msgid "N/A" msgstr "N/A" -#: library/time.rst:639 +#: library/time.rst:652 msgid "abbreviation of timezone name" msgstr "saat diliminin adının kısaltması" -#: library/time.rst:643 +#: library/time.rst:656 msgid "offset east of UTC in seconds" msgstr "UTC'nin doğusundaki saniye farkı" -#: library/time.rst:645 +#: library/time.rst:658 msgid "" "Note that unlike the C structure, the month value is a range of [1, 12], not " "[0, 11]." @@ -1234,7 +1250,7 @@ msgstr "" "C yapısından farklı olarak, ay değerinin menzili [1, 12] arasındadır, [0, " "11] değil." -#: library/time.rst:648 +#: library/time.rst:661 msgid "" "In calls to :func:`mktime`, :attr:`tm_isdst` may be set to 1 when daylight " "savings time is in effect, and 0 when it is not. A value of -1 indicates " @@ -1245,7 +1261,7 @@ msgstr "" "1, etkin değilken 0 olarak ayarlanabilir. -1 değeri bunun bilinmediğini " "gösterir ve genellikle doğru durumun doldurulmasıyla sonuçlanır." -#: library/time.rst:652 +#: library/time.rst:665 msgid "" "When a tuple with an incorrect length is passed to a function expecting a :" "class:`struct_time`, or having elements of the wrong type, a :exc:" @@ -1255,7 +1271,7 @@ msgstr "" "iletildiğinde, veya yanlış türde elemanlara sahip olmak, bir :exc:" "`TypeError` yükseltir." -#: library/time.rst:658 +#: library/time.rst:671 #, fuzzy msgid "" "Return the time in seconds since the epoch_ as a floating-point number. The " @@ -1270,7 +1286,7 @@ msgstr "" "saniye cinsinden süreye dahil edilmez. Bu genellikle `Unix time `_ olarak anılır." -#: library/time.rst:664 +#: library/time.rst:677 #, fuzzy msgid "" "Note that even though the time is always returned as a floating-point " @@ -1284,7 +1300,7 @@ msgstr "" "Bu fonksiyon normalde azalmayan değerler döndürürken, sistem saati iki çağrı " "arasında geri ayarlanmışsa önceki çağrıdan daha düşük bir değer döndürebilir." -#: library/time.rst:670 +#: library/time.rst:683 msgid "" "The number returned by :func:`.time` may be converted into a more common " "time format (i.e. year, month, day, hour, etc...) in UTC by passing it to :" @@ -1299,7 +1315,7 @@ msgstr "" "iki durumda da, takvim tarihinin bileşenlerine nitelikler olarak " "erişilebilen bir :class:`struct_time` nesnesi döndürülür." -#: library/time.rst:677 +#: library/time.rst:690 msgid "" "Use :func:`time_ns` to avoid the precision loss caused by the :class:`float` " "type." @@ -1307,7 +1323,7 @@ msgstr "" ":class:`float` türünden kaynaklanan kesinlik kaybından kaçınmak için :func:" "`time_ns` kullanınız." -#: library/time.rst:683 +#: library/time.rst:696 msgid "" "Similar to :func:`~time.time` but returns time as an integer number of " "nanoseconds since the epoch_." @@ -1315,7 +1331,7 @@ msgstr "" ":func:`~time.time`'ye benzer, ancak zamanı, epoch_ 'den bu yana geçen " "nanosaniyelerin tamsayısı olarak döndürür." -#: library/time.rst:696 +#: library/time.rst:709 msgid "" "Return the value (in fractional seconds) of the sum of the system and user " "CPU time of the current thread. It does not include time elapsed during " @@ -1329,7 +1345,7 @@ msgstr "" "noktası tanımsızdır, böylece sadece aynı iş parçacığındaki iki çağrının " "sonuçları arasındaki fark geçerlidir." -#: library/time.rst:702 +#: library/time.rst:715 msgid "" "Use :func:`thread_time_ns` to avoid the precision loss caused by the :class:" "`float` type." @@ -1337,17 +1353,17 @@ msgstr "" ":class:`float` türünün neden olduğu kesinlik kaybını önlemek için :func:" "`thread_time_ns` kullanın." -#: library/time.rst:707 +#: library/time.rst:720 msgid "Unix systems supporting ``CLOCK_THREAD_CPUTIME_ID``." msgstr "Unix sistemler ``CLOCK_THREAD_CPUTIME_ID`` destekliyor." -#: library/time.rst:714 +#: library/time.rst:727 msgid "Similar to :func:`thread_time` but return time as nanoseconds." msgstr "" ":func:`thread_time` ile benzer şekilde ama zamanı nanosaniyeler şeklinde " "döndürür." -#: library/time.rst:721 +#: library/time.rst:734 msgid "" "Reset the time conversion rules used by the library routines. The " "environment variable :envvar:`TZ` specifies how this is done. It will also " @@ -1366,7 +1382,7 @@ msgstr "" "ışığından yararlanma saatinin uygulandığı geçmiş, şimdi veya gelecek bir " "zaman varsa sıfırdan farklı)." -#: library/time.rst:733 +#: library/time.rst:746 msgid "" "Although in many cases, changing the :envvar:`TZ` environment variable may " "affect the output of functions like :func:`localtime` without calling :func:" @@ -1376,11 +1392,11 @@ msgstr "" "gibi işlevlerin çıktısını :func:`tzset` çağırmadan etkileyebilirse de, bu " "davranışa güvenilmemelidir." -#: library/time.rst:737 +#: library/time.rst:750 msgid "The :envvar:`TZ` environment variable should contain no whitespace." msgstr ":envvar:`TZ` çevre değişkeni boşluk karakteri içermemelidir." -#: library/time.rst:739 +#: library/time.rst:752 msgid "" "The standard format of the :envvar:`TZ` environment variable is (whitespace " "added for clarity)::" @@ -1388,19 +1404,19 @@ msgstr "" ":envvar:`TZ` çevre değişkeninin standart biçimi (boşluk karakteri açıklık " "için eklenmiştir)::" -#: library/time.rst:742 +#: library/time.rst:755 msgid "std offset [dst [offset [,start[/time], end[/time]]]]" msgstr "" -#: library/time.rst:744 +#: library/time.rst:757 msgid "Where the components are:" msgstr "Bileşenlerin olduğu yerde:" -#: library/time.rst:746 +#: library/time.rst:759 msgid "``std`` and ``dst``" msgstr "``std`` ve ``dst``" -#: library/time.rst:747 +#: library/time.rst:760 msgid "" "Three or more alphanumerics giving the timezone abbreviations. These will be " "propagated into time.tzname" @@ -1408,11 +1424,11 @@ msgstr "" "Üç veya daha fazla harfler ve sayılar saat dilimi kısaltmalarını veriyor. " "Bunlar time.tzname içine yayılacaktır" -#: library/time.rst:750 +#: library/time.rst:763 msgid "``offset``" msgstr "``offset``" -#: library/time.rst:751 +#: library/time.rst:764 msgid "" "The offset has the form: ``± hh[:mm[:ss]]``. This indicates the value added " "the local time to arrive at UTC. If preceded by a '-', the timezone is east " @@ -1425,11 +1441,11 @@ msgstr "" "bir sapma yoksa, yaz saatinin standart saatten bir saat ileri olduğu " "varsayılır." -#: library/time.rst:756 +#: library/time.rst:769 msgid "``start[/time], end[/time]``" msgstr "``start[/time], end[/time]``" -#: library/time.rst:757 +#: library/time.rst:770 msgid "" "Indicates when to change to and back from DST. The format of the start and " "end dates are one of the following:" @@ -1437,11 +1453,11 @@ msgstr "" "DST'ye ne zaman geçileceğini ve DST'den geri dönüleceğini gösterir. " "Başlangıç ve bitiş tarihlerinin biçimi aşağıdakilerden biridir:" -#: library/time.rst:760 +#: library/time.rst:773 msgid ":samp:`J{n}`" msgstr ":samp:`J{n}`" -#: library/time.rst:761 +#: library/time.rst:774 msgid "" "The Julian day *n* (1 <= *n* <= 365). Leap days are not counted, so in all " "years February 28 is day 59 and March 1 is day 60." @@ -1449,11 +1465,11 @@ msgstr "" "Jülyen günü *n* (1 <= *n* <= 365). Artık günler sayılmaz, yani bütün " "yıllarda 28 Şubat 59. gün ve 1 Mart 60. gündür." -#: library/time.rst:764 +#: library/time.rst:777 msgid ":samp:`{n}`" msgstr ":samp:`{n}`" -#: library/time.rst:765 +#: library/time.rst:778 msgid "" "The zero-based Julian day (0 <= *n* <= 365). Leap days are counted, and it " "is possible to refer to February 29." @@ -1461,11 +1477,11 @@ msgstr "" "Sıfır tabanlı Jülyen günü (0 <= *n* <= 365). Artık günler dahil edilmiştir, " "ve 29 Şubat'tan bahsetmek mümkündür." -#: library/time.rst:768 +#: library/time.rst:781 msgid ":samp:`M{m}.{n}.{d}`" msgstr ":samp:`M{m}.{n}.{d}`" -#: library/time.rst:769 +#: library/time.rst:782 msgid "" "The *d*'th day (0 <= *d* <= 6) of week *n* of month *m* of the year (1 <= " "*n* <= 5, 1 <= *m* <= 12, where week 5 means \"the last *d* day in month " @@ -1476,7 +1492,7 @@ msgstr "" "5, 1 <= *m* <= 12, burada 5. hafta \"the last *d* day in month *m*\" " "anlamına gelir ve dördüncü veya beşinci haftada olabilir)." -#: library/time.rst:775 +#: library/time.rst:788 msgid "" "``time`` has the same format as ``offset`` except that no leading sign ('-' " "or '+') is allowed. The default, if time is not given, is 02:00:00." @@ -1485,7 +1501,7 @@ msgstr "" "haricinde aynı biçime sahiptir. Zaman verilmemişse, varsayılan olarak " "02:00:00'dır." -#: library/time.rst:780 +#: library/time.rst:793 msgid "" ">>> os.environ['TZ'] = 'EST+05EDT,M4.1.0,M10.5.0'\n" ">>> time.tzset()\n" @@ -1497,7 +1513,7 @@ msgid "" "'16:08:12 05/08/03 AEST'" msgstr "" -#: library/time.rst:789 +#: library/time.rst:802 msgid "" "On many Unix systems (including \\*BSD, Linux, Solaris, and Darwin), it is " "more convenient to use the system's zoneinfo (:manpage:`tzfile(5)`) " @@ -1516,7 +1532,7 @@ msgstr "" "Eastern'``, ``'Australia/Melbourne'``, ``'Egypt'`` veya ``'Europe/" "Amsterdam'``. ::" -#: library/time.rst:797 +#: library/time.rst:810 msgid "" ">>> os.environ['TZ'] = 'US/Eastern'\n" ">>> time.tzset()\n" @@ -1528,11 +1544,11 @@ msgid "" "('EET', 'EEST')" msgstr "" -#: library/time.rst:810 +#: library/time.rst:823 msgid "Clock ID Constants" msgstr "Saat Kimliği Sabitleri" -#: library/time.rst:812 +#: library/time.rst:825 msgid "" "These constants are used as parameters for :func:`clock_getres` and :func:" "`clock_gettime`." @@ -1540,7 +1556,7 @@ msgstr "" "Şu sabitler :func:`clock_getres` ve :func:`clock_gettime` için parametre " "olarak kullanılırlar." -#: library/time.rst:817 +#: library/time.rst:830 msgid "" "Identical to :data:`CLOCK_MONOTONIC`, except it also includes any time that " "the system is suspended." @@ -1548,7 +1564,7 @@ msgstr "" ":data:`CLOCK_MONOTONIC` ile aynı şekilde, ancak o sistemin askıya alındığı " "herhangi bir zamanı da içerir." -#: library/time.rst:820 +#: library/time.rst:833 msgid "" "This allows applications to get a suspend-aware monotonic clock without " "having to deal with the complications of :data:`CLOCK_REALTIME`, which may " @@ -1560,7 +1576,7 @@ msgstr "" "değiştirildiğinde süreksizliklere sahip olabilecek, askıya alma farkında " "monoton bir saat elde etmelerini sağlar." -#: library/time.rst:832 +#: library/time.rst:845 msgid "" "The Solaris OS has a ``CLOCK_HIGHRES`` timer that attempts to use an optimal " "hardware source, and may give close to nanosecond resolution. " @@ -1570,7 +1586,7 @@ msgstr "" "yakın kesinlik sağlayabilen bir ``CLOCK_HIGHRES`` zamanlayıcıya sahiptir. " "``CLOCK_HIGHRES`` ayarlanamaz, yüksek kesinlikli saattir." -#: library/time.rst:843 +#: library/time.rst:856 msgid "" "Clock that cannot be set and represents monotonic time since some " "unspecified starting point." @@ -1578,7 +1594,7 @@ msgstr "" "Belirsiz başlangıç noktasından beri ayarlanamayan ve monoton zamanı temsil " "eden saat." -#: library/time.rst:853 +#: library/time.rst:866 msgid "" "Similar to :data:`CLOCK_MONOTONIC`, but provides access to a raw hardware-" "based time that is not subject to NTP adjustments." @@ -1586,11 +1602,11 @@ msgstr "" ":data:`CLOCK_MONOTONIC` ile benzer, ama NTP ayarlamalarına tabii olmayan " "donanım bazlı ham zamana erişim sağlar." -#: library/time.rst:872 +#: library/time.rst:885 msgid "High-resolution per-process timer from the CPU." msgstr "CPU'dan yüksek kesinlikli işlem başına zamanlayıcısı." -#: library/time.rst:880 +#: library/time.rst:893 msgid "" "`International Atomic Time `_" @@ -1598,7 +1614,7 @@ msgstr "" "`International Atomic Time `_" -#: library/time.rst:882 +#: library/time.rst:895 msgid "" "The system must have a current leap second table in order for this to give " "the correct answer. PTP or NTP software can maintain a leap second table." @@ -1607,11 +1623,11 @@ msgstr "" "tablosuna sahip olması gerekir. PTP veya NTP yazılımı artık saniye " "tablosunu sürdürebilir." -#: library/time.rst:891 +#: library/time.rst:904 msgid "Thread-specific CPU-time clock." msgstr "İş parçacığına özgü CPU zamanlayıcı saati." -#: library/time.rst:900 +#: library/time.rst:913 msgid "" "Time whose absolute value is the time the system has been running and not " "suspended, providing accurate uptime measurement, both absolute and interval." @@ -1619,7 +1635,7 @@ msgstr "" "Mutlak değeri sistemin çalıştığı ve askıya alınmadığı süre olan süre, hem " "mutlak hem de aralıklı olarak doğru çalışma süresi ölçümü sağlar." -#: library/time.rst:911 +#: library/time.rst:924 msgid "" "Clock that increments monotonically, tracking the time since an arbitrary " "point, unaffected by frequency or time adjustments and not incremented while " @@ -1629,14 +1645,14 @@ msgstr "" "ediyor, sıklıktan ve zaman ayarlamalarından etkilenmiyor ve sistem " "uykudayken artmıyor." -#: library/time.rst:919 +#: library/time.rst:932 msgid "" "The following constant is the only parameter that can be sent to :func:" "`clock_settime`." msgstr "" "Aşağıdaki sabit :func:`clock_settime`'a gönderilebilecek tek parametredir." -#: library/time.rst:925 +#: library/time.rst:938 msgid "" "System-wide real-time clock. Setting this clock requires appropriate " "privileges." @@ -1644,11 +1660,11 @@ msgstr "" "Sistem çapında gerçek zamanlı saat. Bu saati ayarlamak uygun izinleri " "gerektirir." -#: library/time.rst:936 +#: library/time.rst:949 msgid "Timezone Constants" msgstr "Saat dilimi Sabitleri" -#: library/time.rst:940 +#: library/time.rst:953 msgid "" "The offset of the local DST timezone, in seconds west of UTC, if one is " "defined. This is negative if the local DST timezone is east of UTC (as in " @@ -1660,13 +1676,13 @@ msgstr "" "Avrupa'da olduğu gibi) bu negatiftir. Bunu yalnızca ``daylight`` sıfır " "değilse kullanın. Aşağıdaki nota bakın." -#: library/time.rst:946 +#: library/time.rst:959 msgid "Nonzero if a DST timezone is defined. See note below." msgstr "" "Sıfırdan farklı, eğer bir DST saat dilimi tanımlanmışsa. Aşağıdaki nota göz " "atın." -#: library/time.rst:950 +#: library/time.rst:963 msgid "" "The offset of the local (non-DST) timezone, in seconds west of UTC (negative " "in most of Western Europe, positive in the US, zero in the UK). See note " @@ -1676,7 +1692,7 @@ msgstr "" "farkı (Batı Avrupa'nın çoğunda negatif, ABD'de pozitif, Birleşik Krallık'ta " "sıfır). Aşağıdaki nota bakın." -#: library/time.rst:955 +#: library/time.rst:968 msgid "" "A tuple of two strings: the first is the name of the local non-DST timezone, " "the second is the name of the local DST timezone. If no DST timezone is " @@ -1686,7 +1702,7 @@ msgstr "" "ikincisi yerel DST saat diliminin ismi. DST saat dilimi tanımlanmamışsa, " "ikinci dize kullanılmamalı. Aşağıdaki nota bakın." -#: library/time.rst:961 +#: library/time.rst:974 #, fuzzy msgid "" "For the above Timezone constants (:data:`altzone`, :data:`daylight`, :data:" @@ -1703,19 +1719,19 @@ msgstr "" "almak için :func:`localtime`'den :attr:`tm_gmtoff` ve :attr:`tm_zone` " "sonuçlarının kullanılması önerilir." -#: library/time.rst:970 +#: library/time.rst:983 msgid "Module :mod:`datetime`" msgstr ":mod:`datetime` modülü" -#: library/time.rst:971 +#: library/time.rst:984 msgid "More object-oriented interface to dates and times." msgstr "Tarihler ve zamanlar için daha fazla nesne tabanlı arayüz." -#: library/time.rst:973 +#: library/time.rst:986 msgid "Module :mod:`locale`" msgstr ":mod:`locale` modülü" -#: library/time.rst:974 +#: library/time.rst:987 msgid "" "Internationalization services. The locale setting affects the " "interpretation of many format specifiers in :func:`strftime` and :func:" @@ -1724,11 +1740,11 @@ msgstr "" "Uluslararasılaştırma servisleri. Yerel ayar, :func:`strftime` ve :func:" "`strptime` içindeki birçok biçim belirticisinin yorumlanmasını etkiler." -#: library/time.rst:977 +#: library/time.rst:990 msgid "Module :mod:`calendar`" msgstr ":mod:`calendar` modülü" -#: library/time.rst:978 +#: library/time.rst:991 msgid "" "General calendar-related functions. :func:`~calendar.timegm` is the " "inverse of :func:`gmtime` from this module." @@ -1736,11 +1752,11 @@ msgstr "" "Genel takvim ile alakalı fonksiyonlar. :func:`~calendar.timegm` bu " "modüldeki :func:`gmtime`'in tersidir." -#: library/time.rst:982 +#: library/time.rst:995 msgid "Footnotes" msgstr "Dipnotlar" -#: library/time.rst:983 +#: library/time.rst:996 msgid "" "The use of ``%Z`` is now deprecated, but the ``%z`` escape that expands to " "the preferred hour/minute offset is not supported by all ANSI C libraries. " @@ -1782,30 +1798,39 @@ msgstr "" msgid "Greenwich Mean Time" msgstr "" -#: library/time.rst:59 +#: library/time.rst:63 msgid "Daylight Saving Time" msgstr "" -#: library/time.rst:336 library/time.rst:691 +#: library/time.rst:340 library/time.rst:704 msgid "benchmarking" msgstr "" -#: library/time.rst:691 +#: library/time.rst:704 msgid "CPU time" msgstr "" -#: library/time.rst:691 +#: library/time.rst:704 msgid "processor time" msgstr "" -#: library/time.rst:552 +#: library/time.rst:565 msgid "% (percent)" msgstr "" -#: library/time.rst:552 +#: library/time.rst:565 msgid "datetime format" msgstr "" +#~ msgid "" +#~ "UTC is Coordinated Universal Time (formerly known as Greenwich Mean Time, " +#~ "or GMT). The acronym UTC is not a mistake but a compromise between " +#~ "English and French." +#~ msgstr "" +#~ "UTC, Koordineli Evrensel Zaman (eski haliyle Greenwich Ortalama Zamanı, " +#~ "ya da GMT) anlamına gelir. UTC kısaltması bir hata değil, İngilizce ve " +#~ "Fransızca arasında bir uzlaşmadır." + #~ msgid ":ref:`Availability `: Unix" #~ msgstr ":ref:`Availability `: Unix" diff --git a/library/token.po b/library/token.po index 096fe9525..78c0c5fef 100644 --- a/library/token.po +++ b/library/token.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -285,21 +285,27 @@ msgid "" "only produced when :func:`ast.parse` is invoked with ``type_comments=True``." msgstr "" -#: library/token.rst:82 +#: library/token.rst:84 +msgid "" +"A dictionary mapping the string representation of a token to its numeric " +"code." +msgstr "" + +#: library/token.rst:89 msgid "Added :data:`AWAIT` and :data:`ASYNC` tokens." msgstr "" -#: library/token.rst:85 +#: library/token.rst:92 msgid "Added :data:`COMMENT`, :data:`NL` and :data:`ENCODING` tokens." msgstr "" -#: library/token.rst:88 +#: library/token.rst:95 msgid "" "Removed :data:`AWAIT` and :data:`ASYNC` tokens. \"async\" and \"await\" are " "now tokenized as :data:`NAME` tokens." msgstr "" -#: library/token.rst:92 +#: library/token.rst:99 msgid "" "Added :data:`TYPE_COMMENT`, :data:`TYPE_IGNORE`, :data:`COLONEQUAL`. Added :" "data:`AWAIT` and :data:`ASYNC` tokens back (they're needed to support " diff --git a/library/tokenize.po b/library/tokenize.po index 2e9fb4594..a55b67e35 100644 --- a/library/tokenize.po +++ b/library/tokenize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -138,40 +138,39 @@ msgstr "" #: library/tokenize.rst:94 msgid "" -"The reconstructed script is returned as a single string. The result is " -"guaranteed to tokenize back to match the input so that the conversion is " -"lossless and round-trips are assured. The guarantee applies only to the " -"token type and token string as the spacing between tokens (column positions) " -"may change." +"The result is guaranteed to tokenize back to match the input so that the " +"conversion is lossless and round-trips are assured. The guarantee applies " +"only to the token type and token string as the spacing between tokens " +"(column positions) may change." msgstr "" -#: library/tokenize.rst:100 +#: library/tokenize.rst:99 msgid "" "It returns bytes, encoded using the :data:`~token.ENCODING` token, which is " "the first token sequence output by :func:`.tokenize`. If there is no " "encoding token in the input, it returns a str instead." msgstr "" -#: library/tokenize.rst:105 +#: library/tokenize.rst:104 msgid "" ":func:`.tokenize` needs to detect the encoding of source files it tokenizes. " "The function it uses to do this is available:" msgstr "" -#: library/tokenize.rst:110 +#: library/tokenize.rst:109 msgid "" "The :func:`detect_encoding` function is used to detect the encoding that " "should be used to decode a Python source file. It requires one argument, " "readline, in the same way as the :func:`.tokenize` generator." msgstr "" -#: library/tokenize.rst:114 +#: library/tokenize.rst:113 msgid "" "It will call readline a maximum of twice, and return the encoding used (as a " "string) and a list of any lines (not decoded from bytes) it has read in." msgstr "" -#: library/tokenize.rst:118 +#: library/tokenize.rst:117 msgid "" "It detects the encoding from the presence of a UTF-8 BOM or an encoding " "cookie as specified in :pep:`263`. If both a BOM and a cookie are present, " @@ -179,90 +178,90 @@ msgid "" "found, ``'utf-8-sig'`` will be returned as an encoding." msgstr "" -#: library/tokenize.rst:123 +#: library/tokenize.rst:122 msgid "" "If no encoding is specified, then the default of ``'utf-8'`` will be " "returned." msgstr "" -#: library/tokenize.rst:126 +#: library/tokenize.rst:125 msgid "" "Use :func:`.open` to open Python source files: it uses :func:" "`detect_encoding` to detect the file encoding." msgstr "" -#: library/tokenize.rst:132 +#: library/tokenize.rst:131 msgid "" "Open a file in read only mode using the encoding detected by :func:" "`detect_encoding`." msgstr "" -#: library/tokenize.rst:139 +#: library/tokenize.rst:138 msgid "" "Raised when either a docstring or expression that may be split over several " "lines is not completed anywhere in the file, for example::" msgstr "" -#: library/tokenize.rst:142 +#: library/tokenize.rst:141 msgid "" "\"\"\"Beginning of\n" "docstring" msgstr "" -#: library/tokenize.rst:145 +#: library/tokenize.rst:144 msgid "or::" msgstr "" -#: library/tokenize.rst:147 +#: library/tokenize.rst:146 msgid "" "[1,\n" " 2,\n" " 3" msgstr "" -#: library/tokenize.rst:154 +#: library/tokenize.rst:153 msgid "Command-Line Usage" msgstr "" -#: library/tokenize.rst:158 +#: library/tokenize.rst:157 msgid "" "The :mod:`tokenize` module can be executed as a script from the command " "line. It is as simple as:" msgstr "" -#: library/tokenize.rst:161 +#: library/tokenize.rst:160 msgid "python -m tokenize [-e] [filename.py]" msgstr "" -#: library/tokenize.rst:165 +#: library/tokenize.rst:164 msgid "The following options are accepted:" msgstr "" -#: library/tokenize.rst:171 +#: library/tokenize.rst:170 msgid "show this help message and exit" msgstr "" -#: library/tokenize.rst:175 +#: library/tokenize.rst:174 msgid "display token names using the exact type" msgstr "" -#: library/tokenize.rst:177 +#: library/tokenize.rst:176 msgid "" "If :file:`filename.py` is specified its contents are tokenized to stdout. " "Otherwise, tokenization is performed on stdin." msgstr "" -#: library/tokenize.rst:181 +#: library/tokenize.rst:180 msgid "Examples" msgstr "" -#: library/tokenize.rst:183 +#: library/tokenize.rst:182 msgid "" "Example of a script rewriter that transforms float literals into Decimal " "objects::" msgstr "" -#: library/tokenize.rst:186 +#: library/tokenize.rst:185 msgid "" "from tokenize import tokenize, untokenize, NUMBER, STRING, NAME, OP\n" "from io import BytesIO\n" @@ -305,11 +304,11 @@ msgid "" " return untokenize(result).decode('utf-8')" msgstr "" -#: library/tokenize.rst:225 +#: library/tokenize.rst:224 msgid "Example of tokenizing from the command line. The script::" msgstr "" -#: library/tokenize.rst:227 +#: library/tokenize.rst:226 msgid "" "def say_hello():\n" " print(\"Hello, World!\")\n" @@ -317,7 +316,7 @@ msgid "" "say_hello()" msgstr "" -#: library/tokenize.rst:232 +#: library/tokenize.rst:231 msgid "" "will be tokenized to the following output where the first column is the " "range of the line/column coordinates where the token is found, the second " @@ -325,7 +324,7 @@ msgid "" "token (if any)" msgstr "" -#: library/tokenize.rst:236 +#: library/tokenize.rst:235 msgid "" "$ python -m tokenize hello.py\n" "0,0-0,0: ENCODING 'utf-8'\n" @@ -350,12 +349,12 @@ msgid "" "5,0-5,0: ENDMARKER ''" msgstr "" -#: library/tokenize.rst:260 +#: library/tokenize.rst:259 msgid "" "The exact token type names can be displayed using the :option:`-e` option:" msgstr "" -#: library/tokenize.rst:262 +#: library/tokenize.rst:261 msgid "" "$ python -m tokenize -e hello.py\n" "0,0-0,0: ENCODING 'utf-8'\n" @@ -380,13 +379,13 @@ msgid "" "5,0-5,0: ENDMARKER ''" msgstr "" -#: library/tokenize.rst:286 +#: library/tokenize.rst:285 msgid "" "Example of tokenizing a file programmatically, reading unicode strings " "instead of bytes with :func:`generate_tokens`::" msgstr "" -#: library/tokenize.rst:289 +#: library/tokenize.rst:288 msgid "" "import tokenize\n" "\n" @@ -396,11 +395,11 @@ msgid "" " print(token)" msgstr "" -#: library/tokenize.rst:296 +#: library/tokenize.rst:295 msgid "Or reading bytes directly with :func:`.tokenize`::" msgstr "" -#: library/tokenize.rst:298 +#: library/tokenize.rst:297 msgid "" "import tokenize\n" "\n" diff --git a/library/traceback.po b/library/traceback.po index c580d326e..0d35f604f 100644 --- a/library/traceback.po +++ b/library/traceback.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -148,26 +148,26 @@ msgid "" "when printing an unhandled exception." msgstr "" -#: library/traceback.rst:201 +#: library/traceback.rst:208 msgid "The *etype* argument is ignored and inferred from the type of *value*." msgstr "" -#: library/traceback.rst:184 +#: library/traceback.rst:191 msgid "" "The *etype* parameter has been renamed to *exc* and is now positional-only." msgstr "" #: library/traceback.rst:114 msgid "" -"This is a shorthand for ``print_exception(sys.exception(), limit, file, " -"chain)``." +"This is a shorthand for ``print_exception(sys.exception(), limit=limit, " +"file=file, chain=chain)``." msgstr "" #: library/traceback.rst:120 msgid "" -"This is a shorthand for ``print_exception(sys.last_exc, limit, file, " -"chain)``. In general it will work only after an exception has reached an " -"interactive prompt (see :data:`sys.last_exc`)." +"This is a shorthand for ``print_exception(sys.last_exc, limit=limit, " +"file=file, chain=chain)``. In general it will work only after an exception " +"has reached an interactive prompt (see :data:`sys.last_exc`)." msgstr "" #: library/traceback.rst:127 @@ -203,6 +203,13 @@ msgstr "" #: library/traceback.rst:162 msgid "" +"Print the list of tuples as returned by :func:`extract_tb` or :func:" +"`extract_stack` as a formatted stack trace to the given file. If *file* is " +"``None``, the output is written to :data:`sys.stderr`." +msgstr "" + +#: library/traceback.rst:169 +msgid "" "Given a list of tuples or :class:`FrameSummary` objects as returned by :func:" "`extract_tb` or :func:`extract_stack`, return a list of strings ready for " "printing. Each string in the resulting list corresponds to the item with " @@ -211,7 +218,7 @@ msgid "" "text line is not ``None``." msgstr "" -#: library/traceback.rst:172 +#: library/traceback.rst:179 msgid "" "Format the exception part of a traceback using an exception value such as " "given by :data:`sys.last_value`. The return value is a list of strings, " @@ -222,20 +229,20 @@ msgid "" "contains the exception's :attr:`notes `." msgstr "" -#: library/traceback.rst:180 +#: library/traceback.rst:187 msgid "" "Since Python 3.10, instead of passing *value*, an exception object can be " "passed as the first argument. If *value* is provided, the first argument is " "ignored in order to provide backwards compatibility." msgstr "" -#: library/traceback.rst:188 +#: library/traceback.rst:195 msgid "" "The returned list now includes any :attr:`notes ` " "attached to the exception." msgstr "" -#: library/traceback.rst:195 +#: library/traceback.rst:202 msgid "" "Format a stack trace and the exception information. The arguments have the " "same meaning as the corresponding arguments to :func:`print_exception`. The " @@ -244,69 +251,69 @@ msgid "" "printed, exactly the same text is printed as does :func:`print_exception`." msgstr "" -#: library/traceback.rst:204 +#: library/traceback.rst:211 msgid "" "This function's behavior and signature were modified to match :func:" "`print_exception`." msgstr "" -#: library/traceback.rst:211 +#: library/traceback.rst:218 msgid "" "This is like ``print_exc(limit)`` but returns a string instead of printing " "to a file." msgstr "" -#: library/traceback.rst:217 +#: library/traceback.rst:224 msgid "A shorthand for ``format_list(extract_tb(tb, limit))``." msgstr "" -#: library/traceback.rst:222 +#: library/traceback.rst:229 msgid "A shorthand for ``format_list(extract_stack(f, limit))``." msgstr "" -#: library/traceback.rst:226 +#: library/traceback.rst:233 msgid "" "Clears the local variables of all the stack frames in a :ref:`traceback " "` *tb* by calling the :meth:`~frame.clear` method of " "each :ref:`frame object `." msgstr "" -#: library/traceback.rst:235 +#: library/traceback.rst:242 msgid "" "Walk a stack following :attr:`f.f_back ` from the given frame, " "yielding the frame and line number for each frame. If *f* is ``None``, the " "current stack is used. This helper is used with :meth:`StackSummary.extract`." msgstr "" -#: library/traceback.rst:244 +#: library/traceback.rst:251 msgid "" "Walk a traceback following :attr:`~traceback.tb_next` yielding the frame and " "line number for each frame. This helper is used with :meth:`StackSummary." "extract`." msgstr "" -#: library/traceback.rst:252 +#: library/traceback.rst:259 msgid ":class:`!TracebackException` Objects" msgstr "" -#: library/traceback.rst:256 +#: library/traceback.rst:263 msgid "" ":class:`!TracebackException` objects are created from actual exceptions to " "capture data for later printing. They offer a more lightweight method of " "storing this information by avoiding holding references to :ref:" -"`traceback` and :ref:`frame` objects In " +"`traceback` and :ref:`frame` objects. In " "addition, they expose more options to configure the output compared to the " "module-level functions described above." msgstr "" -#: library/traceback.rst:265 +#: library/traceback.rst:272 msgid "" "Capture an exception for later rendering. The meaning of *limit*, " "*lookup_lines* and *capture_locals* are as for the :class:`StackSummary` " "class." msgstr "" -#: library/traceback.rst:269 +#: library/traceback.rst:276 msgid "" "If *compact* is true, only data that is required by :class:`!" "TracebackException`'s :meth:`format` method is saved in the class " @@ -314,12 +321,12 @@ msgid "" "if :attr:`__cause__` is ``None`` and :attr:`__suppress_context__` is false." msgstr "" -#: library/traceback.rst:368 +#: library/traceback.rst:375 msgid "" "Note that when locals are captured, they are also shown in the traceback." msgstr "" -#: library/traceback.rst:277 +#: library/traceback.rst:284 msgid "" "*max_group_width* and *max_group_depth* control the formatting of exception " "groups (see :exc:`BaseExceptionGroup`). The depth refers to the nesting " @@ -328,124 +335,124 @@ msgid "" "limit is exceeded." msgstr "" -#: library/traceback.rst:283 +#: library/traceback.rst:290 msgid "Added the *compact* parameter." msgstr "" -#: library/traceback.rst:286 +#: library/traceback.rst:293 msgid "Added the *max_group_width* and *max_group_depth* parameters." msgstr "" -#: library/traceback.rst:291 +#: library/traceback.rst:298 msgid "" "A :class:`!TracebackException` of the original :attr:`~BaseException." "__cause__`." msgstr "" -#: library/traceback.rst:296 +#: library/traceback.rst:303 msgid "" "A :class:`!TracebackException` of the original :attr:`~BaseException." "__context__`." msgstr "" -#: library/traceback.rst:301 +#: library/traceback.rst:308 msgid "" "If ``self`` represents an :exc:`ExceptionGroup`, this field holds a list of :" "class:`!TracebackException` instances representing the nested exceptions. " "Otherwise it is ``None``." msgstr "" -#: library/traceback.rst:309 +#: library/traceback.rst:316 msgid "" "The :attr:`~BaseException.__suppress_context__` value from the original " "exception." msgstr "" -#: library/traceback.rst:314 +#: library/traceback.rst:321 msgid "" "The :attr:`~BaseException.__notes__` value from the original exception, or " "``None`` if the exception does not have any notes. If it is not ``None`` is " "it formatted in the traceback after the exception string." msgstr "" -#: library/traceback.rst:323 +#: library/traceback.rst:330 msgid "A :class:`StackSummary` representing the traceback." msgstr "" -#: library/traceback.rst:327 +#: library/traceback.rst:334 msgid "The class of the original traceback." msgstr "" -#: library/traceback.rst:331 +#: library/traceback.rst:338 msgid "For syntax errors - the file name where the error occurred." msgstr "" -#: library/traceback.rst:335 +#: library/traceback.rst:342 msgid "For syntax errors - the line number where the error occurred." msgstr "" -#: library/traceback.rst:339 +#: library/traceback.rst:346 msgid "" "For syntax errors - the end line number where the error occurred. Can be " "``None`` if not present." msgstr "" -#: library/traceback.rst:346 +#: library/traceback.rst:353 msgid "For syntax errors - the text where the error occurred." msgstr "" -#: library/traceback.rst:350 +#: library/traceback.rst:357 msgid "For syntax errors - the offset into the text where the error occurred." msgstr "" -#: library/traceback.rst:354 +#: library/traceback.rst:361 msgid "" "For syntax errors - the end offset into the text where the error occurred. " "Can be ``None`` if not present." msgstr "" -#: library/traceback.rst:361 +#: library/traceback.rst:368 msgid "For syntax errors - the compiler error message." msgstr "" -#: library/traceback.rst:365 +#: library/traceback.rst:372 msgid "" "Capture an exception for later rendering. *limit*, *lookup_lines* and " "*capture_locals* are as for the :class:`StackSummary` class." msgstr "" -#: library/traceback.rst:372 +#: library/traceback.rst:379 msgid "" "Print to *file* (default ``sys.stderr``) the exception information returned " "by :meth:`format`." msgstr "" -#: library/traceback.rst:379 +#: library/traceback.rst:386 msgid "Format the exception." msgstr "" -#: library/traceback.rst:381 +#: library/traceback.rst:388 msgid "" "If *chain* is not ``True``, :attr:`__cause__` and :attr:`__context__` will " "not be formatted." msgstr "" -#: library/traceback.rst:384 +#: library/traceback.rst:391 msgid "" "The return value is a generator of strings, each ending in a newline and " "some containing internal newlines. :func:`~traceback.print_exception` is a " "wrapper around this method which just prints the lines to a file." msgstr "" -#: library/traceback.rst:390 +#: library/traceback.rst:397 msgid "Format the exception part of the traceback." msgstr "" -#: library/traceback.rst:392 +#: library/traceback.rst:399 msgid "The return value is a generator of strings, each ending in a newline." msgstr "" -#: library/traceback.rst:394 +#: library/traceback.rst:401 msgid "" "The generator emits the exception's message followed by its notes (if it has " "any). The exception message is normally a single string; however, for :exc:" @@ -453,28 +460,28 @@ msgid "" "display detailed information about where the syntax error occurred." msgstr "" -#: library/traceback.rst:400 +#: library/traceback.rst:407 msgid "" "The exception's :attr:`notes ` are now included in " "the output." msgstr "" -#: library/traceback.rst:407 +#: library/traceback.rst:414 msgid ":class:`!StackSummary` Objects" msgstr "" -#: library/traceback.rst:411 +#: library/traceback.rst:418 msgid "" ":class:`!StackSummary` objects represent a call stack ready for formatting." msgstr "" -#: library/traceback.rst:417 +#: library/traceback.rst:424 msgid "" "Construct a :class:`!StackSummary` object from a frame generator (such as is " "returned by :func:`~traceback.walk_stack` or :func:`~traceback.walk_tb`)." msgstr "" -#: library/traceback.rst:421 +#: library/traceback.rst:428 msgid "" "If *limit* is supplied, only this many frames are taken from *frame_gen*. If " "*lookup_lines* is ``False``, the returned :class:`FrameSummary` objects will " @@ -484,20 +491,20 @@ msgid "" "class:`!FrameSummary` are captured as object representations." msgstr "" -#: library/traceback.rst:429 +#: library/traceback.rst:436 msgid "" "Exceptions raised from :func:`repr` on a local variable (when " "*capture_locals* is ``True``) are no longer propagated to the caller." msgstr "" -#: library/traceback.rst:435 +#: library/traceback.rst:442 msgid "" "Construct a :class:`!StackSummary` object from a supplied list of :class:" "`FrameSummary` objects or old-style list of tuples. Each tuple should be a " "4-tuple with *filename*, *lineno*, *name*, *line* as the elements." msgstr "" -#: library/traceback.rst:442 +#: library/traceback.rst:449 msgid "" "Returns a list of strings ready for printing. Each string in the resulting " "list corresponds to a single :ref:`frame ` from the stack. " @@ -505,18 +512,18 @@ msgid "" "well, for those items with source text lines." msgstr "" -#: library/traceback.rst:448 +#: library/traceback.rst:455 msgid "" "For long sequences of the same frame and line, the first few repetitions are " "shown, followed by a summary line stating the exact number of further " "repetitions." msgstr "" -#: library/traceback.rst:452 +#: library/traceback.rst:459 msgid "Long sequences of repeated frames are now abbreviated." msgstr "" -#: library/traceback.rst:457 +#: library/traceback.rst:464 msgid "" "Returns a string for printing one of the :ref:`frames ` " "involved in the stack. This method is called for each :class:`FrameSummary` " @@ -524,17 +531,17 @@ msgid "" "the frame is omitted from the output." msgstr "" -#: library/traceback.rst:467 +#: library/traceback.rst:474 msgid ":class:`!FrameSummary` Objects" msgstr "" -#: library/traceback.rst:471 +#: library/traceback.rst:478 msgid "" "A :class:`!FrameSummary` object represents a single :ref:`frame ` in a :ref:`traceback `." msgstr "" -#: library/traceback.rst:476 +#: library/traceback.rst:485 msgid "" "Represents a single :ref:`frame ` in the :ref:`traceback " "` or stack that is being formatted or printed. It may " @@ -548,38 +555,56 @@ msgid "" "display." msgstr "" -#: library/traceback.rst:487 +#: library/traceback.rst:496 msgid ":class:`!FrameSummary` instances have the following attributes:" msgstr "" -#: library/traceback.rst:491 +#: library/traceback.rst:500 msgid "" "The filename of the source code for this frame. Equivalent to accessing :" "attr:`f.f_code.co_filename ` on a :ref:`frame object " "` *f*." msgstr "" -#: library/traceback.rst:497 +#: library/traceback.rst:506 msgid "The line number of the source code for this frame." msgstr "" -#: library/traceback.rst:501 +#: library/traceback.rst:510 msgid "" "Equivalent to accessing :attr:`f.f_code.co_name ` on a :" "ref:`frame object ` *f*." msgstr "" -#: library/traceback.rst:506 +#: library/traceback.rst:515 msgid "" "A string representing the source code for this frame, with leading and " "trailing whitespace stripped. If the source is not available, it is ``None``." msgstr "" -#: library/traceback.rst:513 +#: library/traceback.rst:521 +msgid "" +"The last line number of the source code for this frame. By default, it is " +"set to ``None`` and indexation starts from 1." +msgstr "" + +#: library/traceback.rst:526 +msgid "" +"The column number of the source code for this frame. By default, it is " +"``None`` and indexation starts from 0." +msgstr "" + +#: library/traceback.rst:531 +msgid "" +"The last column number of the source code for this frame. By default, it is " +"``None`` and indexation starts from 0." +msgstr "" + +#: library/traceback.rst:538 msgid "Examples of Using the Module-Level Functions" msgstr "" -#: library/traceback.rst:515 +#: library/traceback.rst:540 msgid "" "This simple example implements a basic read-eval-print loop, similar to (but " "less useful than) the standard Python interactive interpreter loop. For a " @@ -587,7 +612,7 @@ msgid "" "`code` module. ::" msgstr "" -#: library/traceback.rst:520 +#: library/traceback.rst:545 msgid "" "import sys, traceback\n" "\n" @@ -606,13 +631,13 @@ msgid "" " run_user_code(envdir)" msgstr "" -#: library/traceback.rst:537 +#: library/traceback.rst:562 msgid "" "The following example demonstrates the different ways to print and format " "the exception and traceback:" msgstr "" -#: library/traceback.rst:540 +#: library/traceback.rst:565 msgid "" "import sys, traceback\n" "\n" @@ -644,11 +669,11 @@ msgid "" " print(\"*** tb_lineno:\", exc.__traceback__.tb_lineno)" msgstr "" -#: library/traceback.rst:571 +#: library/traceback.rst:596 msgid "The output for the example would look similar to this:" msgstr "" -#: library/traceback.rst:573 +#: library/traceback.rst:598 msgid "" "*** print_tb:\n" " File \"\", line 10, in \n" @@ -693,13 +718,13 @@ msgid "" "*** tb_lineno: 10" msgstr "" -#: library/traceback.rst:613 +#: library/traceback.rst:638 msgid "" "The following example shows the different ways to print and format the " "stack::" msgstr "" -#: library/traceback.rst:615 +#: library/traceback.rst:640 msgid "" ">>> import traceback\n" ">>> def another_function():\n" @@ -727,11 +752,11 @@ msgid "" "format_stack()))\\n']" msgstr "" -#: library/traceback.rst:639 +#: library/traceback.rst:664 msgid "This last example demonstrates the final few formatting functions:" msgstr "" -#: library/traceback.rst:641 +#: library/traceback.rst:666 msgid "" ">>> import traceback\n" ">>> traceback.format_list([('spam.py', 3, '', 'spam.eggs()'),\n" @@ -743,15 +768,15 @@ msgid "" "['IndexError: tuple index out of range\\n']" msgstr "" -#: library/traceback.rst:655 +#: library/traceback.rst:680 msgid "Examples of Using :class:`TracebackException`" msgstr "" -#: library/traceback.rst:657 +#: library/traceback.rst:682 msgid "With the helper class, we have more options::" msgstr "" -#: library/traceback.rst:659 +#: library/traceback.rst:684 msgid "" ">>> import sys\n" ">>> from traceback import TracebackException\n" diff --git a/library/turtle.po b/library/turtle.po index 47d623b67..d748fb2c5 100644 --- a/library/turtle.po +++ b/library/turtle.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -1451,8 +1451,8 @@ msgid "" ">>> turtle.heading()\n" "90.0\n" "\n" -"Change angle measurement unit to grad (also known as gon,\n" -"grade, or gradian and equals 1/100-th of the right angle.)\n" +">>> # Change angle measurement unit to grad (also known as gon,\n" +">>> # grade, or gradian and equals 1/100-th of the right angle.)\n" ">>> turtle.degrees(400.0)\n" ">>> turtle.heading()\n" "100.0\n" diff --git a/library/typing.po b/library/typing.po index 96237b95c..692caa01a 100644 --- a/library/typing.po +++ b/library/typing.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -91,8 +91,7 @@ msgid "" msgstr "" #: library/typing.rst:56 -msgid "" -"`\"Static Typing with Python\" `_" +msgid "`\"Static Typing with Python\" `_" msgstr "" #: library/typing.rst:57 @@ -109,7 +108,7 @@ msgstr "" msgid "" "The canonical, up-to-date specification of the Python type system can be " "found at `\"Specification for the Python type system\" `_." +"python.org/en/latest/spec/index.html>`_." msgstr "" #: library/typing.rst:72 @@ -326,7 +325,7 @@ msgid "" "of type :class:`int` and returns a :class:`str`." msgstr "" -#: library/typing.rst:2916 library/typing.rst:3064 +#: library/typing.rst:2907 library/typing.rst:3055 msgid "For example:" msgstr "" @@ -415,7 +414,7 @@ msgid "" "ReturnType]`` respectively." msgstr "" -#: library/typing.rst:3543 +#: library/typing.rst:3534 msgid "" "``Callable`` now supports :class:`ParamSpec` and :data:`Concatenate`. See :" "pep:`612` for more details." @@ -1244,8 +1243,8 @@ msgid "" "or :class:`bytes` arguments but cannot allow the two to mix." msgstr "" -#: library/typing.rst:961 library/typing.rst:1184 library/typing.rst:1467 -#: library/typing.rst:2856 +#: library/typing.rst:961 library/typing.rst:1184 library/typing.rst:1453 +#: library/typing.rst:2847 msgid "For example::" msgstr "" @@ -1291,7 +1290,7 @@ msgid "" "``LiteralString``." msgstr "" -#: library/typing.rst:1982 +#: library/typing.rst:1968 msgid "Example:" msgstr "" @@ -1681,7 +1680,7 @@ msgid "" "sum_threadsafe([1.1, 2.2, 3.3])" msgstr "" -#: library/typing.rst:1950 +#: library/typing.rst:1936 msgid "" ":pep:`612` -- Parameter Specification Variables (the PEP which introduced " "``ParamSpec`` and ``Concatenate``)" @@ -1691,7 +1690,7 @@ msgstr "" msgid ":class:`ParamSpec`" msgstr "" -#: library/typing.rst:1953 +#: library/typing.rst:1939 msgid ":ref:`annotating-callables`" msgstr "" @@ -1792,7 +1791,7 @@ msgid "" " TIMEOUT = 1 # Error reported by type checker" msgstr "" -#: library/typing.rst:2872 +#: library/typing.rst:2863 msgid "" "There is no runtime checking of these properties. See :pep:`591` for more " "details." @@ -1875,26 +1874,22 @@ msgid "" msgstr "" #: library/typing.rst:1318 -msgid "Details of the syntax:" -msgstr "" - -#: library/typing.rst:1320 -msgid "The first argument to ``Annotated`` must be a valid type" -msgstr "" - -#: library/typing.rst:1322 msgid "" -"Multiple metadata elements can be supplied (``Annotated`` supports variadic " -"arguments)::" +"The first argument to ``Annotated`` must be a valid type. Multiple metadata " +"elements can be supplied as ``Annotated`` supports variadic arguments. The " +"order of the metadata elements is preserved and matters for equality checks::" msgstr "" -#: library/typing.rst:1325 +#: library/typing.rst:1322 msgid "" "@dataclass\n" "class ctype:\n" -" kind: str\n" +" kind: str\n" +"\n" +"a1 = Annotated[int, ValueRange(3, 10), ctype(\"char\")]\n" +"a2 = Annotated[int, ctype(\"char\"), ValueRange(3, 10)]\n" "\n" -"Annotated[int, ValueRange(3, 10), ctype(\"char\")]" +"assert a1 != a2 # Order matters" msgstr "" #: library/typing.rst:1331 @@ -1906,30 +1901,11 @@ msgstr "" #: library/typing.rst:1335 msgid "" -"``Annotated`` must be subscripted with at least two arguments " -"( ``Annotated[int]`` is not valid)" -msgstr "" - -#: library/typing.rst:1338 -msgid "" -"The order of the metadata elements is preserved and matters for equality " -"checks::" -msgstr "" - -#: library/typing.rst:1341 -msgid "" -"assert Annotated[int, ValueRange(3, 10), ctype(\"char\")] != Annotated[\n" -" int, ctype(\"char\"), ValueRange(3, 10)\n" -"]" -msgstr "" - -#: library/typing.rst:1345 -msgid "" "Nested ``Annotated`` types are flattened. The order of the metadata elements " "starts with the innermost annotation::" msgstr "" -#: library/typing.rst:1348 +#: library/typing.rst:1338 msgid "" "assert Annotated[Annotated[int, ValueRange(3, 10)], ctype(\"char\")] == " "Annotated[\n" @@ -1937,22 +1913,22 @@ msgid "" "]" msgstr "" -#: library/typing.rst:1352 +#: library/typing.rst:1342 msgid "Duplicated metadata elements are not removed::" msgstr "" -#: library/typing.rst:1354 +#: library/typing.rst:1344 msgid "" "assert Annotated[int, ValueRange(3, 10)] != Annotated[\n" " int, ValueRange(3, 10), ValueRange(3, 10)\n" "]" msgstr "" -#: library/typing.rst:1358 +#: library/typing.rst:1348 msgid "``Annotated`` can be used with nested and generic aliases:" msgstr "" -#: library/typing.rst:1360 +#: library/typing.rst:1350 msgid "" "@dataclass\n" "class MaxLen:\n" @@ -1966,35 +1942,29 @@ msgid "" "type V = Vec[int]" msgstr "" -#: library/typing.rst:1372 +#: library/typing.rst:1362 msgid "``Annotated`` cannot be used with an unpacked :class:`TypeVarTuple`::" msgstr "" -#: library/typing.rst:1374 -msgid "type Variadic[*Ts] = Annotated[*Ts, Ann1] # NOT valid" -msgstr "" - -#: library/typing.rst:1376 -msgid "This would be equivalent to::" -msgstr "" - -#: library/typing.rst:1378 -msgid "Annotated[T1, T2, T3, ..., Ann1]" +#: library/typing.rst:1364 +msgid "" +"type Variadic[*Ts] = Annotated[*Ts, Ann1] = Annotated[T1, T2, T3, ..., " +"Ann1] # NOT valid" msgstr "" -#: library/typing.rst:1380 +#: library/typing.rst:1366 msgid "" -"where ``T1``, ``T2``, etc. are :class:`TypeVars `. This would be " -"invalid: only one type should be passed to Annotated." +"where ``T1``, ``T2``, ... are :class:`TypeVars `. This is invalid " +"as only one type should be passed to Annotated." msgstr "" -#: library/typing.rst:1383 +#: library/typing.rst:1369 msgid "" "By default, :func:`get_type_hints` strips the metadata from annotations. " "Pass ``include_extras=True`` to have the metadata preserved:" msgstr "" -#: library/typing.rst:1386 +#: library/typing.rst:1372 msgid "" ">>> from typing import Annotated, get_type_hints\n" ">>> def func(x: Annotated[int, \"metadata\"]) -> None: pass\n" @@ -2005,13 +1975,13 @@ msgid "" "{'x': typing.Annotated[int, 'metadata'], 'return': }" msgstr "" -#: library/typing.rst:1396 +#: library/typing.rst:1382 msgid "" "At runtime, the metadata associated with an ``Annotated`` type can be " "retrieved via the :attr:`!__metadata__` attribute:" msgstr "" -#: library/typing.rst:1399 +#: library/typing.rst:1385 msgid "" ">>> from typing import Annotated\n" ">>> X = Annotated[int, \"very\", \"important\", \"metadata\"]\n" @@ -2021,13 +1991,13 @@ msgid "" "('very', 'important', 'metadata')" msgstr "" -#: library/typing.rst:1408 +#: library/typing.rst:1394 msgid "" -"At runtime, if you want to retrieve the original type wrapped by " -"``Annotated``, use the :attr:`!__origin__` attribute:" +"If you want to retrieve the original type wrapped by ``Annotated``, use the :" +"attr:`!__origin__` attribute:" msgstr "" -#: library/typing.rst:1411 +#: library/typing.rst:1397 msgid "" ">>> from typing import Annotated, get_origin\n" ">>> Password = Annotated[str, \"secret\"]\n" @@ -2035,36 +2005,36 @@ msgid "" "" msgstr "" -#: library/typing.rst:1418 +#: library/typing.rst:1404 msgid "Note that using :func:`get_origin` will return ``Annotated`` itself:" msgstr "" -#: library/typing.rst:1420 +#: library/typing.rst:1406 msgid "" ">>> get_origin(Password)\n" "" msgstr "" -#: library/typing.rst:1427 +#: library/typing.rst:1413 msgid ":pep:`593` - Flexible function and variable annotations" msgstr "" -#: library/typing.rst:1428 +#: library/typing.rst:1414 msgid "The PEP introducing ``Annotated`` to the standard library." msgstr "" -#: library/typing.rst:1435 +#: library/typing.rst:1421 msgid "Special typing construct for marking user-defined type guard functions." msgstr "" -#: library/typing.rst:1437 +#: library/typing.rst:1423 msgid "" "``TypeGuard`` can be used to annotate the return type of a user-defined type " "guard function. ``TypeGuard`` only accepts a single type argument. At " "runtime, functions marked this way should return a boolean." msgstr "" -#: library/typing.rst:1441 +#: library/typing.rst:1427 msgid "" "``TypeGuard`` aims to benefit *type narrowing* -- a technique used by static " "type checkers to determine a more precise type of an expression within a " @@ -2073,7 +2043,7 @@ msgid "" "conditional expression here is sometimes referred to as a \"type guard\"::" msgstr "" -#: library/typing.rst:1447 +#: library/typing.rst:1433 msgid "" "def is_str(val: str | float):\n" " # \"isinstance\" type guard\n" @@ -2085,30 +2055,30 @@ msgid "" " ..." msgstr "" -#: library/typing.rst:1456 +#: library/typing.rst:1442 msgid "" "Sometimes it would be convenient to use a user-defined boolean function as a " "type guard. Such a function should use ``TypeGuard[...]`` as its return " "type to alert static type checkers to this intention." msgstr "" -#: library/typing.rst:1460 +#: library/typing.rst:1446 msgid "" "Using ``-> TypeGuard`` tells the static type checker that for a given " "function:" msgstr "" -#: library/typing.rst:1463 +#: library/typing.rst:1449 msgid "The return value is a boolean." msgstr "" -#: library/typing.rst:1464 +#: library/typing.rst:1450 msgid "" "If the return value is ``True``, the type of its argument is the type inside " "``TypeGuard``." msgstr "" -#: library/typing.rst:1469 +#: library/typing.rst:1455 msgid "" "def is_str_list(val: list[object]) -> TypeGuard[list[str]]:\n" " '''Determines whether all objects in the list are strings'''\n" @@ -2123,21 +2093,21 @@ msgid "" " print(\"Not a list of strings!\")" msgstr "" -#: library/typing.rst:1481 +#: library/typing.rst:1467 msgid "" "If ``is_str_list`` is a class or instance method, then the type in " "``TypeGuard`` maps to the type of the second parameter (after ``cls`` or " "``self``)." msgstr "" -#: library/typing.rst:1485 +#: library/typing.rst:1471 msgid "" "In short, the form ``def foo(arg: TypeA) -> TypeGuard[TypeB]: ...``, means " "that if ``foo(arg)`` returns ``True``, then ``arg`` narrows from ``TypeA`` " "to ``TypeB``." msgstr "" -#: library/typing.rst:1491 +#: library/typing.rst:1477 msgid "" "``TypeB`` need not be a narrower form of ``TypeA`` -- it can even be a wider " "form. The main reason is to allow for things like narrowing ``list[object]`` " @@ -2146,24 +2116,24 @@ msgid "" "guards is left to the user." msgstr "" -#: library/typing.rst:1497 +#: library/typing.rst:1483 msgid "" "``TypeGuard`` also works with type variables. See :pep:`647` for more " "details." msgstr "" -#: library/typing.rst:1504 +#: library/typing.rst:1490 msgid "Typing operator to conceptually mark an object as having been unpacked." msgstr "" -#: library/typing.rst:1506 +#: library/typing.rst:1492 msgid "" "For example, using the unpack operator ``*`` on a :ref:`type variable tuple " "` is equivalent to using ``Unpack`` to mark the type variable " "tuple as having been unpacked::" msgstr "" -#: library/typing.rst:1510 +#: library/typing.rst:1496 msgid "" "Ts = TypeVarTuple('Ts')\n" "tup: tuple[*Ts]\n" @@ -2171,7 +2141,7 @@ msgid "" "tup: tuple[Unpack[Ts]]" msgstr "" -#: library/typing.rst:1515 +#: library/typing.rst:1501 msgid "" "In fact, ``Unpack`` can be used interchangeably with ``*`` in the context " "of :class:`typing.TypeVarTuple ` and :class:`builtins.tuple " @@ -2179,7 +2149,7 @@ msgid "" "versions of Python, where ``*`` couldn't be used in certain places::" msgstr "" -#: library/typing.rst:1521 +#: library/typing.rst:1507 msgid "" "# In older versions of Python, TypeVarTuple and Unpack\n" "# are located in the `typing_extensions` backports package.\n" @@ -2190,13 +2160,13 @@ msgid "" "tup: tuple[Unpack[Ts]] # Semantically equivalent, and backwards-compatible" msgstr "" -#: library/typing.rst:1529 +#: library/typing.rst:1515 msgid "" "``Unpack`` can also be used along with :class:`typing.TypedDict` for typing " "``**kwargs`` in a function signature::" msgstr "" -#: library/typing.rst:1532 +#: library/typing.rst:1518 msgid "" "from typing import TypedDict, Unpack\n" "\n" @@ -2209,23 +2179,23 @@ msgid "" "def foo(**kwargs: Unpack[Movie]): ..." msgstr "" -#: library/typing.rst:1542 +#: library/typing.rst:1528 msgid "" "See :pep:`692` for more details on using ``Unpack`` for ``**kwargs`` typing." msgstr "" -#: library/typing.rst:1547 +#: library/typing.rst:1533 msgid "Building generic types and type aliases" msgstr "" -#: library/typing.rst:1549 +#: library/typing.rst:1535 msgid "" "The following classes should not be used directly as annotations. Their " "intended purpose is to be building blocks for creating generic types and " "type aliases." msgstr "" -#: library/typing.rst:1553 +#: library/typing.rst:1539 msgid "" "These objects can be created through special syntax (:ref:`type parameter " "lists ` and the :keyword:`type` statement). For compatibility " @@ -2233,17 +2203,17 @@ msgid "" "syntax, as documented below." msgstr "" -#: library/typing.rst:1560 +#: library/typing.rst:1546 msgid "Abstract base class for generic types." msgstr "" -#: library/typing.rst:1562 +#: library/typing.rst:1548 msgid "" "A generic type is typically declared by adding a list of type parameters " "after the class name::" msgstr "" -#: library/typing.rst:1565 +#: library/typing.rst:1551 msgid "" "class Mapping[KT, VT]:\n" " def __getitem__(self, key: KT) -> VT:\n" @@ -2251,17 +2221,17 @@ msgid "" " # Etc." msgstr "" -#: library/typing.rst:1570 +#: library/typing.rst:1556 msgid "" "Such a class implicitly inherits from ``Generic``. The runtime semantics of " "this syntax are discussed in the :ref:`Language Reference `." msgstr "" -#: library/typing.rst:1574 +#: library/typing.rst:1560 msgid "This class can then be used as follows::" msgstr "" -#: library/typing.rst:1576 +#: library/typing.rst:1562 msgid "" "def lookup_name[X, Y](mapping: Mapping[X, Y], key: X, default: Y) -> Y:\n" " try:\n" @@ -2270,20 +2240,20 @@ msgid "" " return default" msgstr "" -#: library/typing.rst:1582 +#: library/typing.rst:1568 msgid "" "Here the brackets after the function name indicate a :ref:`generic function " "`." msgstr "" -#: library/typing.rst:1585 +#: library/typing.rst:1571 msgid "" "For backwards compatibility, generic classes can also be declared by " "explicitly inheriting from ``Generic``. In this case, the type parameters " "must be declared separately::" msgstr "" -#: library/typing.rst:1590 +#: library/typing.rst:1576 msgid "" "KT = TypeVar('KT')\n" "VT = TypeVar('VT')\n" @@ -2294,32 +2264,33 @@ msgid "" " # Etc." msgstr "" -#: library/typing.rst:1602 +#: library/typing.rst:1588 msgid "Type variable." msgstr "" -#: library/typing.rst:1604 +#: library/typing.rst:1590 msgid "" "The preferred way to construct a type variable is via the dedicated syntax " "for :ref:`generic functions `, :ref:`generic classes " "`, and :ref:`generic type aliases `::" msgstr "" -#: library/typing.rst:1609 +#: library/typing.rst:1595 msgid "" "class Sequence[T]: # T is a TypeVar\n" " ..." msgstr "" -#: library/typing.rst:1612 +#: library/typing.rst:1598 msgid "" -"This syntax can also be used to create bound and constrained type variables::" +"This syntax can also be used to create bounded and constrained type " +"variables::" msgstr "" -#: library/typing.rst:1615 +#: library/typing.rst:1601 msgid "" -"class StrSequence[S: str]: # S is a TypeVar bound to str\n" -" ...\n" +"class StrSequence[S: str]: # S is a TypeVar with a `str` upper bound;\n" +" ... # we can say that S is \"bounded by `str`\"\n" "\n" "\n" "class StrOrBytesSequence[A: (str, bytes)]: # A is a TypeVar constrained to " @@ -2327,20 +2298,20 @@ msgid "" " ..." msgstr "" -#: library/typing.rst:1622 +#: library/typing.rst:1608 msgid "" "However, if desired, reusable type variables can also be constructed " "manually, like so::" msgstr "" -#: library/typing.rst:1624 +#: library/typing.rst:1610 msgid "" "T = TypeVar('T') # Can be anything\n" "S = TypeVar('S', bound=str) # Can be any subtype of str\n" "A = TypeVar('A', str, bytes) # Must be exactly str or bytes" msgstr "" -#: library/typing.rst:1628 +#: library/typing.rst:1614 msgid "" "Type variables exist primarily for the benefit of static type checkers. " "They serve as the parameters for generic types as well as for generic " @@ -2348,7 +2319,7 @@ msgid "" "information on generic types. Generic functions work as follows::" msgstr "" -#: library/typing.rst:1634 +#: library/typing.rst:1620 msgid "" "def repeat[T](x: T, n: int) -> Sequence[T]:\n" " \"\"\"Return a list containing n references to x.\"\"\"\n" @@ -2366,13 +2337,13 @@ msgid "" " return x + y" msgstr "" -#: library/typing.rst:1649 +#: library/typing.rst:1635 msgid "" -"Note that type variables can be *bound*, *constrained*, or neither, but " -"cannot be both bound *and* constrained." +"Note that type variables can be *bounded*, *constrained*, or neither, but " +"cannot be both bounded *and* constrained." msgstr "" -#: library/typing.rst:1652 +#: library/typing.rst:1638 msgid "" "The variance of type variables is inferred by type checkers when they are " "created through the :ref:`type parameter syntax ` or when " @@ -2382,14 +2353,14 @@ msgid "" "invariant. See :pep:`484` and :pep:`695` for more details." msgstr "" -#: library/typing.rst:1660 +#: library/typing.rst:1646 msgid "" -"Bound type variables and constrained type variables have different semantics " -"in several important ways. Using a *bound* type variable means that the " -"``TypeVar`` will be solved using the most specific type possible::" +"Bounded type variables and constrained type variables have different " +"semantics in several important ways. Using a *bounded* type variable means " +"that the ``TypeVar`` will be solved using the most specific type possible::" msgstr "" -#: library/typing.rst:1664 +#: library/typing.rst:1650 msgid "" "x = print_capitalized('a string')\n" "reveal_type(x) # revealed type is str\n" @@ -2403,13 +2374,13 @@ msgid "" "z = print_capitalized(45) # error: int is not a subtype of str" msgstr "" -#: library/typing.rst:1675 +#: library/typing.rst:1661 msgid "" -"Type variables can be bound to concrete types, abstract types (ABCs or " -"protocols), and even unions of types::" +"The upper bound of a type variable can be a concrete type, abstract type " +"(ABC or Protocol), or even a union of types::" msgstr "" -#: library/typing.rst:1678 +#: library/typing.rst:1664 msgid "" "# Can be anything with an __abs__ method\n" "def print_abs[T: SupportsAbs](arg: T) -> None:\n" @@ -2420,13 +2391,13 @@ msgid "" "V = TypeVar('V', bound=SupportsAbs) # Can be anything with an __abs__ method" msgstr "" -#: library/typing.rst:1687 +#: library/typing.rst:1673 msgid "" "Using a *constrained* type variable, however, means that the ``TypeVar`` can " "only ever be solved as being exactly one of the constraints given::" msgstr "" -#: library/typing.rst:1690 +#: library/typing.rst:1676 msgid "" "a = concatenate('one', 'two')\n" "reveal_type(a) # revealed type is str\n" @@ -2439,80 +2410,80 @@ msgid "" "or bytes in a function call, but not both" msgstr "" -#: library/typing.rst:1698 +#: library/typing.rst:1684 msgid "At runtime, ``isinstance(x, T)`` will raise :exc:`TypeError`." msgstr "" -#: library/typing.rst:1702 +#: library/typing.rst:1688 msgid "The name of the type variable." msgstr "" -#: library/typing.rst:1706 +#: library/typing.rst:1692 msgid "Whether the type var has been explicitly marked as covariant." msgstr "" -#: library/typing.rst:1710 +#: library/typing.rst:1696 msgid "Whether the type var has been explicitly marked as contravariant." msgstr "" -#: library/typing.rst:1714 +#: library/typing.rst:1700 msgid "" "Whether the type variable's variance should be inferred by type checkers." msgstr "" -#: library/typing.rst:1720 -msgid "The bound of the type variable, if any." +#: library/typing.rst:1706 +msgid "The upper bound of the type variable, if any." msgstr "" -#: library/typing.rst:1724 +#: library/typing.rst:1710 msgid "" "For type variables created through :ref:`type parameter syntax `, the bound is evaluated only when the attribute is accessed, not " "when the type variable is created (see :ref:`lazy-evaluation`)." msgstr "" -#: library/typing.rst:1730 +#: library/typing.rst:1716 msgid "A tuple containing the constraints of the type variable, if any." msgstr "" -#: library/typing.rst:1734 +#: library/typing.rst:1720 msgid "" "For type variables created through :ref:`type parameter syntax `, the constraints are evaluated only when the attribute is accessed, " "not when the type variable is created (see :ref:`lazy-evaluation`)." msgstr "" -#: library/typing.rst:1740 +#: library/typing.rst:1726 msgid "" "Type variables can now be declared using the :ref:`type parameter ` syntax introduced by :pep:`695`. The ``infer_variance`` parameter " "was added." msgstr "" -#: library/typing.rst:1748 +#: library/typing.rst:1734 msgid "" "Type variable tuple. A specialized form of :ref:`type variable ` " "that enables *variadic* generics." msgstr "" -#: library/typing.rst:1751 +#: library/typing.rst:1737 msgid "" "Type variable tuples can be declared in :ref:`type parameter lists ` using a single asterisk (``*``) before the name::" msgstr "" -#: library/typing.rst:1754 +#: library/typing.rst:1740 msgid "" "def move_first_element_to_last[T, *Ts](tup: tuple[T, *Ts]) -> tuple[*Ts, " "T]:\n" " return (*tup[1:], tup[0])" msgstr "" -#: library/typing.rst:1757 +#: library/typing.rst:1743 msgid "Or by explicitly invoking the ``TypeVarTuple`` constructor::" msgstr "" -#: library/typing.rst:1759 +#: library/typing.rst:1745 msgid "" "T = TypeVar(\"T\")\n" "Ts = TypeVarTuple(\"Ts\")\n" @@ -2521,7 +2492,7 @@ msgid "" " return (*tup[1:], tup[0])" msgstr "" -#: library/typing.rst:1765 +#: library/typing.rst:1751 msgid "" "A normal type variable enables parameterization with a single type. A type " "variable tuple, in contrast, allows parameterization with an *arbitrary* " @@ -2529,7 +2500,7 @@ msgid "" "wrapped in a tuple. For example::" msgstr "" -#: library/typing.rst:1770 +#: library/typing.rst:1756 msgid "" "# T is bound to int, Ts is bound to ()\n" "# Return value is (1,), which has type tuple[int]\n" @@ -2549,7 +2520,7 @@ msgid "" "move_first_element_to_last(tup=())" msgstr "" -#: library/typing.rst:1787 +#: library/typing.rst:1773 msgid "" "Note the use of the unpacking operator ``*`` in ``tuple[T, *Ts]``. " "Conceptually, you can think of ``Ts`` as a tuple of type variables ``(T1, " @@ -2559,26 +2530,26 @@ msgid "" "` instead, as ``Unpack[Ts]``.)" msgstr "" -#: library/typing.rst:1795 +#: library/typing.rst:1781 msgid "" "Type variable tuples must *always* be unpacked. This helps distinguish type " "variable tuples from normal type variables::" msgstr "" -#: library/typing.rst:1798 +#: library/typing.rst:1784 msgid "" "x: Ts # Not valid\n" "x: tuple[Ts] # Not valid\n" "x: tuple[*Ts] # The correct way to do it" msgstr "" -#: library/typing.rst:1802 +#: library/typing.rst:1788 msgid "" "Type variable tuples can be used in the same contexts as normal type " "variables. For example, in class definitions, arguments, and return types::" msgstr "" -#: library/typing.rst:1805 +#: library/typing.rst:1791 msgid "" "class Array[*Shape]:\n" " def __getitem__(self, key: tuple[*Shape]) -> float: ...\n" @@ -2586,12 +2557,12 @@ msgid "" " def get_shape(self) -> tuple[*Shape]: ..." msgstr "" -#: library/typing.rst:1810 +#: library/typing.rst:1796 msgid "" "Type variable tuples can be happily combined with normal type variables:" msgstr "" -#: library/typing.rst:1812 +#: library/typing.rst:1798 msgid "" "class Array[DType, *Shape]: # This is fine\n" " pass\n" @@ -2606,26 +2577,26 @@ msgid "" "int_array_2d: Array[int, Height, Width] = Array() # Yup, fine too" msgstr "" -#: library/typing.rst:1826 +#: library/typing.rst:1812 msgid "" "However, note that at most one type variable tuple may appear in a single " "list of type arguments or type parameters::" msgstr "" -#: library/typing.rst:1829 +#: library/typing.rst:1815 msgid "" "x: tuple[*Ts, *Ts] # Not valid\n" "class Array[*Shape, *Shape]: # Not valid\n" " pass" msgstr "" -#: library/typing.rst:1833 +#: library/typing.rst:1819 msgid "" "Finally, an unpacked type variable tuple can be used as the type annotation " "of ``*args``::" msgstr "" -#: library/typing.rst:1836 +#: library/typing.rst:1822 msgid "" "def call_soon[*Ts](\n" " callback: Callable[[*Ts], None],\n" @@ -2635,7 +2606,7 @@ msgid "" " callback(*args)" msgstr "" -#: library/typing.rst:1843 +#: library/typing.rst:1829 msgid "" "In contrast to non-unpacked annotations of ``*args`` - e.g. ``*args: int``, " "which would specify that *all* arguments are ``int`` - ``*args: *Ts`` " @@ -2644,47 +2615,47 @@ msgid "" "``call_soon`` match the types of the (positional) arguments of ``callback``." msgstr "" -#: library/typing.rst:1850 +#: library/typing.rst:1836 msgid "See :pep:`646` for more details on type variable tuples." msgstr "" -#: library/typing.rst:1854 +#: library/typing.rst:1840 msgid "The name of the type variable tuple." msgstr "" -#: library/typing.rst:1860 +#: library/typing.rst:1846 msgid "" "Type variable tuples can now be declared using the :ref:`type parameter " "` syntax introduced by :pep:`695`." msgstr "" -#: library/typing.rst:1865 +#: library/typing.rst:1851 msgid "" "Parameter specification variable. A specialized version of :ref:`type " "variables `." msgstr "" -#: library/typing.rst:1868 +#: library/typing.rst:1854 msgid "" "In :ref:`type parameter lists `, parameter specifications can " "be declared with two asterisks (``**``)::" msgstr "" -#: library/typing.rst:1871 +#: library/typing.rst:1857 msgid "type IntFunc[**P] = Callable[P, int]" msgstr "" -#: library/typing.rst:1873 +#: library/typing.rst:1859 msgid "" "For compatibility with Python 3.11 and earlier, ``ParamSpec`` objects can " "also be created as follows::" msgstr "" -#: library/typing.rst:1876 +#: library/typing.rst:1862 msgid "P = ParamSpec('P')" msgstr "" -#: library/typing.rst:1878 +#: library/typing.rst:1864 msgid "" "Parameter specification variables exist primarily for the benefit of static " "type checkers. They are used to forward the parameter types of one callable " @@ -2694,7 +2665,7 @@ msgid "" "See :class:`Generic` for more information on generic types." msgstr "" -#: library/typing.rst:1885 +#: library/typing.rst:1871 msgid "" "For example, to add basic logging to a function, one can create a decorator " "``add_logging`` to log function calls. The parameter specification variable " @@ -2702,7 +2673,7 @@ msgid "" "new callable returned by it have inter-dependent type parameters::" msgstr "" -#: library/typing.rst:1890 +#: library/typing.rst:1876 msgid "" "from collections.abc import Callable\n" "import logging\n" @@ -2720,27 +2691,27 @@ msgid "" " return x + y" msgstr "" -#: library/typing.rst:1905 +#: library/typing.rst:1891 msgid "" "Without ``ParamSpec``, the simplest way to annotate this previously was to " -"use a :class:`TypeVar` with bound ``Callable[..., Any]``. However this " -"causes two problems:" +"use a :class:`TypeVar` with upper bound ``Callable[..., Any]``. However " +"this causes two problems:" msgstr "" -#: library/typing.rst:1909 +#: library/typing.rst:1895 msgid "" "The type checker can't type check the ``inner`` function because ``*args`` " "and ``**kwargs`` have to be typed :data:`Any`." msgstr "" -#: library/typing.rst:1911 +#: library/typing.rst:1897 msgid "" ":func:`~cast` may be required in the body of the ``add_logging`` decorator " "when returning the ``inner`` function, or the static type checker must be " "told to ignore the ``return inner``." msgstr "" -#: library/typing.rst:1918 +#: library/typing.rst:1904 msgid "" "Since ``ParamSpec`` captures both positional and keyword parameters, ``P." "args`` and ``P.kwargs`` can be used to split a ``ParamSpec`` into its " @@ -2753,11 +2724,11 @@ msgid "" "`ParamSpecKwargs`." msgstr "" -#: library/typing.rst:1930 +#: library/typing.rst:1916 msgid "The name of the parameter specification." msgstr "" -#: library/typing.rst:1932 +#: library/typing.rst:1918 msgid "" "Parameter specification variables created with ``covariant=True`` or " "``contravariant=True`` can be used to declare covariant or contravariant " @@ -2766,23 +2737,23 @@ msgid "" "decided." msgstr "" -#: library/typing.rst:1942 +#: library/typing.rst:1928 msgid "" "Parameter specifications can now be declared using the :ref:`type parameter " "` syntax introduced by :pep:`695`." msgstr "" -#: library/typing.rst:1946 +#: library/typing.rst:1932 msgid "" "Only parameter specification variables defined in global scope can be " "pickled." msgstr "" -#: library/typing.rst:1952 +#: library/typing.rst:1938 msgid ":data:`Concatenate`" msgstr "" -#: library/typing.rst:1958 +#: library/typing.rst:1944 msgid "" "Arguments and keyword arguments attributes of a :class:`ParamSpec`. The ``P." "args`` attribute of a ``ParamSpec`` is an instance of ``ParamSpecArgs``, and " @@ -2790,13 +2761,13 @@ msgid "" "runtime introspection and have no special meaning to static type checkers." msgstr "" -#: library/typing.rst:1963 +#: library/typing.rst:1949 msgid "" "Calling :func:`get_origin` on either of these objects will return the " "original ``ParamSpec``:" msgstr "" -#: library/typing.rst:1966 +#: library/typing.rst:1952 msgid "" ">>> from typing import ParamSpec, get_origin\n" ">>> P = ParamSpec(\"P\")\n" @@ -2806,46 +2777,46 @@ msgid "" "True" msgstr "" -#: library/typing.rst:1980 +#: library/typing.rst:1966 msgid "The type of type aliases created through the :keyword:`type` statement." msgstr "" -#: library/typing.rst:1984 +#: library/typing.rst:1970 msgid "" ">>> type Alias = int\n" ">>> type(Alias)\n" "" msgstr "" -#: library/typing.rst:1994 +#: library/typing.rst:1980 msgid "The name of the type alias:" msgstr "" -#: library/typing.rst:1996 +#: library/typing.rst:1982 msgid "" ">>> type Alias = int\n" ">>> Alias.__name__\n" "'Alias'" msgstr "" -#: library/typing.rst:2004 +#: library/typing.rst:1990 msgid "The module in which the type alias was defined::" msgstr "" -#: library/typing.rst:2006 +#: library/typing.rst:1992 msgid "" ">>> type Alias = int\n" ">>> Alias.__module__\n" "'__main__'" msgstr "" -#: library/typing.rst:2012 +#: library/typing.rst:1998 msgid "" "The type parameters of the type alias, or an empty tuple if the alias is not " "generic:" msgstr "" -#: library/typing.rst:2015 +#: library/typing.rst:2001 msgid "" ">>> type ListOrSet[T] = list[T] | set[T]\n" ">>> ListOrSet.__type_params__\n" @@ -2855,14 +2826,14 @@ msgid "" "()" msgstr "" -#: library/typing.rst:2026 +#: library/typing.rst:2012 msgid "" "The type alias's value. This is :ref:`lazily evaluated `, " "so names used in the definition of the alias are not resolved until the " "``__value__`` attribute is accessed:" msgstr "" -#: library/typing.rst:2030 +#: library/typing.rst:2016 msgid "" ">>> type Mutually = Recursive\n" ">>> type Recursive = Mutually\n" @@ -2876,46 +2847,46 @@ msgid "" "Mutually" msgstr "" -#: library/typing.rst:2044 +#: library/typing.rst:2030 msgid "Other special directives" msgstr "" -#: library/typing.rst:2046 +#: library/typing.rst:2032 msgid "" "These functions and classes should not be used directly as annotations. " "Their intended purpose is to be building blocks for creating and declaring " "types." msgstr "" -#: library/typing.rst:2052 +#: library/typing.rst:2038 msgid "Typed version of :func:`collections.namedtuple`." msgstr "" -#: library/typing.rst:2133 library/typing.rst:3104 +#: library/typing.rst:2119 library/typing.rst:3095 msgid "Usage::" msgstr "" -#: library/typing.rst:2056 +#: library/typing.rst:2042 msgid "" "class Employee(NamedTuple):\n" " name: str\n" " id: int" msgstr "" -#: library/typing.rst:2060 +#: library/typing.rst:2046 msgid "This is equivalent to::" msgstr "" -#: library/typing.rst:2062 +#: library/typing.rst:2048 msgid "Employee = collections.namedtuple('Employee', ['name', 'id'])" msgstr "" -#: library/typing.rst:2064 +#: library/typing.rst:2050 msgid "" "To give a field a default value, you can assign to it in the class body::" msgstr "" -#: library/typing.rst:2066 +#: library/typing.rst:2052 msgid "" "class Employee(NamedTuple):\n" " name: str\n" @@ -2925,12 +2896,12 @@ msgid "" "assert employee.id == 3" msgstr "" -#: library/typing.rst:2073 +#: library/typing.rst:2059 msgid "" "Fields with a default value must come after any fields without a default." msgstr "" -#: library/typing.rst:2075 +#: library/typing.rst:2061 msgid "" "The resulting class has an extra attribute ``__annotations__`` giving a dict " "that maps the field names to the field types. (The field names are in the " @@ -2939,11 +2910,11 @@ msgid "" "API.)" msgstr "" -#: library/typing.rst:2081 +#: library/typing.rst:2067 msgid "``NamedTuple`` subclasses can also have docstrings and methods::" msgstr "" -#: library/typing.rst:2083 +#: library/typing.rst:2069 msgid "" "class Employee(NamedTuple):\n" " \"\"\"Represents an employee.\"\"\"\n" @@ -2954,22 +2925,22 @@ msgid "" " return f''" msgstr "" -#: library/typing.rst:2091 +#: library/typing.rst:2077 msgid "``NamedTuple`` subclasses can be generic::" msgstr "" -#: library/typing.rst:2093 +#: library/typing.rst:2079 msgid "" "class Group[T](NamedTuple):\n" " key: T\n" " group: list[T]" msgstr "" -#: library/typing.rst:2097 +#: library/typing.rst:2083 msgid "Backward-compatible usage::" msgstr "" -#: library/typing.rst:2099 +#: library/typing.rst:2085 msgid "" "# For creating a generic NamedTuple on Python 3.11\n" "T = TypeVar(\"T\")\n" @@ -2982,85 +2953,85 @@ msgid "" "Employee = NamedTuple('Employee', [('name', str), ('id', int)])" msgstr "" -#: library/typing.rst:2109 +#: library/typing.rst:2095 msgid "Added support for :pep:`526` variable annotation syntax." msgstr "" -#: library/typing.rst:2112 +#: library/typing.rst:2098 msgid "Added support for default values, methods, and docstrings." msgstr "" -#: library/typing.rst:2115 +#: library/typing.rst:2101 msgid "" "The ``_field_types`` and ``__annotations__`` attributes are now regular " "dictionaries instead of instances of ``OrderedDict``." msgstr "" -#: library/typing.rst:2119 +#: library/typing.rst:2105 msgid "" "Removed the ``_field_types`` attribute in favor of the more standard " "``__annotations__`` attribute which has the same information." msgstr "" -#: library/typing.rst:2123 +#: library/typing.rst:2109 msgid "Added support for generic namedtuples." msgstr "" -#: library/typing.rst:2128 +#: library/typing.rst:2114 msgid "Helper class to create low-overhead :ref:`distinct types `." msgstr "" -#: library/typing.rst:2130 +#: library/typing.rst:2116 msgid "" "A ``NewType`` is considered a distinct type by a typechecker. At runtime, " "however, calling a ``NewType`` returns its argument unchanged." msgstr "" -#: library/typing.rst:2135 +#: library/typing.rst:2121 msgid "" "UserId = NewType('UserId', int) # Declare the NewType \"UserId\"\n" "first_user = UserId(1) # \"UserId\" returns the argument unchanged at " "runtime" msgstr "" -#: library/typing.rst:2140 +#: library/typing.rst:2126 msgid "The module in which the new type is defined." msgstr "" -#: library/typing.rst:2144 +#: library/typing.rst:2130 msgid "The name of the new type." msgstr "" -#: library/typing.rst:2148 +#: library/typing.rst:2134 msgid "The type that the new type is based on." msgstr "" -#: library/typing.rst:2152 +#: library/typing.rst:2138 msgid "``NewType`` is now a class rather than a function." msgstr "" -#: library/typing.rst:2157 +#: library/typing.rst:2143 msgid "Base class for protocol classes." msgstr "" -#: library/typing.rst:2159 +#: library/typing.rst:2145 msgid "Protocol classes are defined like this::" msgstr "" -#: library/typing.rst:2161 +#: library/typing.rst:2147 msgid "" "class Proto(Protocol):\n" " def meth(self) -> int:\n" " ..." msgstr "" -#: library/typing.rst:2165 +#: library/typing.rst:2151 msgid "" "Such classes are primarily used with static type checkers that recognize " "structural subtyping (static duck-typing), for example::" msgstr "" -#: library/typing.rst:2168 +#: library/typing.rst:2154 msgid "" "class C:\n" " def meth(self) -> int:\n" @@ -3072,7 +3043,7 @@ msgid "" "func(C()) # Passes static type check" msgstr "" -#: library/typing.rst:2177 +#: library/typing.rst:2163 msgid "" "See :pep:`544` for more details. Protocol classes decorated with :func:" "`runtime_checkable` (described later) act as simple-minded runtime protocols " @@ -3080,24 +3051,24 @@ msgid "" "signatures." msgstr "" -#: library/typing.rst:2182 +#: library/typing.rst:2168 msgid "Protocol classes can be generic, for example::" msgstr "" -#: library/typing.rst:2184 +#: library/typing.rst:2170 msgid "" "class GenProto[T](Protocol):\n" " def meth(self) -> T:\n" " ..." msgstr "" -#: library/typing.rst:2188 +#: library/typing.rst:2174 msgid "" "In code that needs to be compatible with Python 3.11 or older, generic " "Protocols can be written as follows::" msgstr "" -#: library/typing.rst:2191 +#: library/typing.rst:2177 msgid "" "T = TypeVar(\"T\")\n" "\n" @@ -3106,11 +3077,11 @@ msgid "" " ..." msgstr "" -#: library/typing.rst:2201 +#: library/typing.rst:2187 msgid "Mark a protocol class as a runtime protocol." msgstr "" -#: library/typing.rst:2203 +#: library/typing.rst:2189 msgid "" "Such a protocol can be used with :func:`isinstance` and :func:`issubclass`. " "This raises :exc:`TypeError` when applied to a non-protocol class. This " @@ -3119,7 +3090,7 @@ msgid "" "Iterable`. For example::" msgstr "" -#: library/typing.rst:2208 +#: library/typing.rst:2194 msgid "" "@runtime_checkable\n" "class Closable(Protocol):\n" @@ -3135,7 +3106,7 @@ msgid "" "assert isinstance(threading.Thread(name='Bob'), Named)" msgstr "" -#: library/typing.rst:2223 +#: library/typing.rst:2209 msgid "" ":func:`!runtime_checkable` will check only the presence of the required " "methods or attributes, not their type signatures or types. For example, :" @@ -3146,7 +3117,7 @@ msgid "" "(instantiate) :class:`ssl.SSLObject`." msgstr "" -#: library/typing.rst:2234 +#: library/typing.rst:2220 msgid "" "An :func:`isinstance` check against a runtime-checkable protocol can be " "surprisingly slow compared to an ``isinstance()`` check against a non-" @@ -3154,7 +3125,7 @@ msgid "" "calls for structural checks in performance-sensitive code." msgstr "" -#: library/typing.rst:2242 +#: library/typing.rst:2228 msgid "" "The internal implementation of :func:`isinstance` checks against runtime-" "checkable protocols now uses :func:`inspect.getattr_static` to look up " @@ -3164,7 +3135,7 @@ msgid "" "versa. Most users are unlikely to be affected by this change." msgstr "" -#: library/typing.rst:2251 +#: library/typing.rst:2237 msgid "" "The members of a runtime-checkable protocol are now considered \"frozen\" at " "runtime as soon as the class has been created. Monkey-patching attributes " @@ -3173,13 +3144,13 @@ msgid "" "`\"What's new in Python 3.12\" ` for more details." msgstr "" -#: library/typing.rst:2262 +#: library/typing.rst:2248 msgid "" "Special construct to add type hints to a dictionary. At runtime it is a " "plain :class:`dict`." msgstr "" -#: library/typing.rst:2265 +#: library/typing.rst:2251 msgid "" "``TypedDict`` declares a dictionary type that expects all of its instances " "to have a certain set of keys, where each key is associated with a value of " @@ -3187,7 +3158,7 @@ msgid "" "enforced by type checkers. Usage::" msgstr "" -#: library/typing.rst:2271 +#: library/typing.rst:2257 msgid "" "class Point2D(TypedDict):\n" " x: int\n" @@ -3200,60 +3171,65 @@ msgid "" "assert Point2D(x=1, y=2, label='first') == dict(x=1, y=2, label='first')" msgstr "" -#: library/typing.rst:2281 +#: library/typing.rst:2267 msgid "" "To allow using this feature with older versions of Python that do not " "support :pep:`526`, ``TypedDict`` supports two additional equivalent " "syntactic forms:" msgstr "" -#: library/typing.rst:2285 +#: library/typing.rst:2271 msgid "Using a literal :class:`dict` as the second argument::" msgstr "" -#: library/typing.rst:2287 +#: library/typing.rst:2273 msgid "Point2D = TypedDict('Point2D', {'x': int, 'y': int, 'label': str})" msgstr "" -#: library/typing.rst:2289 +#: library/typing.rst:2275 msgid "Using keyword arguments::" msgstr "" -#: library/typing.rst:2291 +#: library/typing.rst:2277 msgid "Point2D = TypedDict('Point2D', x=int, y=int, label=str)" msgstr "" -#: library/typing.rst:2293 +#: library/typing.rst:2279 msgid "" "The keyword-argument syntax is deprecated in 3.11 and will be removed in " "3.13. It may also be unsupported by static type checkers." msgstr "" -#: library/typing.rst:2297 +#: library/typing.rst:2283 msgid "" -"The functional syntax should also be used when any of the keys are not " -"valid :ref:`identifiers `, for example because they are " -"keywords or contain hyphens. Example::" +"This functional syntax allows defining keys which are not valid :ref:" +"`identifiers `, for example because they are keywords or " +"contain hyphens, or when key names must not be :ref:`mangled ` like regular private names::" msgstr "" -#: library/typing.rst:2301 +#: library/typing.rst:2288 msgid "" "# raises SyntaxError\n" "class Point2D(TypedDict):\n" " in: int # 'in' is a keyword\n" " x-y: int # name with hyphens\n" "\n" +"class Definition(TypedDict):\n" +" __schema: str # mangled to `_Definition__schema`\n" +"\n" "# OK, functional syntax\n" -"Point2D = TypedDict('Point2D', {'in': int, 'x-y': int})" +"Point2D = TypedDict('Point2D', {'in': int, 'x-y': int})\n" +"Definition = TypedDict('Definition', {'__schema': str}) # not mangled" msgstr "" -#: library/typing.rst:2309 +#: library/typing.rst:2300 msgid "" "By default, all keys must be present in a ``TypedDict``. It is possible to " "mark individual keys as non-required using :data:`NotRequired`::" msgstr "" -#: library/typing.rst:2312 +#: library/typing.rst:2303 msgid "" "class Point2D(TypedDict):\n" " x: int\n" @@ -3265,19 +3241,19 @@ msgid "" "NotRequired[str]})" msgstr "" -#: library/typing.rst:2320 +#: library/typing.rst:2311 msgid "" "This means that a ``Point2D`` ``TypedDict`` can have the ``label`` key " "omitted." msgstr "" -#: library/typing.rst:2323 +#: library/typing.rst:2314 msgid "" "It is also possible to mark all keys as non-required by default by " "specifying a totality of ``False``::" msgstr "" -#: library/typing.rst:2326 +#: library/typing.rst:2317 msgid "" "class Point2D(TypedDict, total=False):\n" " x: int\n" @@ -3287,7 +3263,7 @@ msgid "" "Point2D = TypedDict('Point2D', {'x': int, 'y': int}, total=False)" msgstr "" -#: library/typing.rst:2333 +#: library/typing.rst:2324 msgid "" "This means that a ``Point2D`` ``TypedDict`` can have any of the keys " "omitted. A type checker is only expected to support a literal ``False`` or " @@ -3295,13 +3271,13 @@ msgid "" "and makes all items defined in the class body required." msgstr "" -#: library/typing.rst:2338 +#: library/typing.rst:2329 msgid "" "Individual keys of a ``total=False`` ``TypedDict`` can be marked as required " "using :data:`Required`::" msgstr "" -#: library/typing.rst:2341 +#: library/typing.rst:2332 msgid "" "class Point2D(TypedDict, total=False):\n" " x: Required[int]\n" @@ -3316,25 +3292,25 @@ msgid "" "}, total=False)" msgstr "" -#: library/typing.rst:2353 +#: library/typing.rst:2344 msgid "" "It is possible for a ``TypedDict`` type to inherit from one or more other " "``TypedDict`` types using the class-based syntax. Usage::" msgstr "" -#: library/typing.rst:2357 +#: library/typing.rst:2348 msgid "" "class Point3D(Point2D):\n" " z: int" msgstr "" -#: library/typing.rst:2360 +#: library/typing.rst:2351 msgid "" "``Point3D`` has three items: ``x``, ``y`` and ``z``. It is equivalent to " "this definition::" msgstr "" -#: library/typing.rst:2363 +#: library/typing.rst:2354 msgid "" "class Point3D(TypedDict):\n" " x: int\n" @@ -3342,13 +3318,13 @@ msgid "" " z: int" msgstr "" -#: library/typing.rst:2368 +#: library/typing.rst:2359 msgid "" "A ``TypedDict`` cannot inherit from a non-\\ ``TypedDict`` class, except " "for :class:`Generic`. For example::" msgstr "" -#: library/typing.rst:2371 +#: library/typing.rst:2362 msgid "" "class X(TypedDict):\n" " x: int\n" @@ -3363,24 +3339,24 @@ msgid "" "class XZ(X, Z): pass # raises TypeError" msgstr "" -#: library/typing.rst:2383 +#: library/typing.rst:2374 msgid "A ``TypedDict`` can be generic::" msgstr "" -#: library/typing.rst:2385 +#: library/typing.rst:2376 msgid "" "class Group[T](TypedDict):\n" " key: T\n" " group: list[T]" msgstr "" -#: library/typing.rst:2389 +#: library/typing.rst:2380 msgid "" "To create a generic ``TypedDict`` that is compatible with Python 3.11 or " "lower, inherit from :class:`Generic` explicitly:" msgstr "" -#: library/typing.rst:2392 +#: library/typing.rst:2383 msgid "" "T = TypeVar(\"T\")\n" "\n" @@ -3389,19 +3365,19 @@ msgid "" " group: list[T]" msgstr "" -#: library/typing.rst:2400 +#: library/typing.rst:2391 msgid "" "A ``TypedDict`` can be introspected via annotations dicts (see :ref:" "`annotations-howto` for more information on annotations best practices), :" "attr:`__total__`, :attr:`__required_keys__`, and :attr:`__optional_keys__`." msgstr "" -#: library/typing.rst:2406 +#: library/typing.rst:2397 msgid "" "``Point2D.__total__`` gives the value of the ``total`` argument. Example:" msgstr "" -#: library/typing.rst:2409 +#: library/typing.rst:2400 msgid "" ">>> from typing import TypedDict\n" ">>> class Point2D(TypedDict): pass\n" @@ -3415,7 +3391,7 @@ msgid "" "True" msgstr "" -#: library/typing.rst:2422 +#: library/typing.rst:2413 msgid "" "This attribute reflects *only* the value of the ``total`` argument to the " "current ``TypedDict`` class, not whether the class is semantically total. " @@ -3426,21 +3402,21 @@ msgid "" "introspection." msgstr "" -#: library/typing.rst:2435 +#: library/typing.rst:2426 msgid "" "``Point2D.__required_keys__`` and ``Point2D.__optional_keys__`` return :" "class:`frozenset` objects containing required and non-required keys, " "respectively." msgstr "" -#: library/typing.rst:2438 +#: library/typing.rst:2429 msgid "" "Keys marked with :data:`Required` will always appear in " "``__required_keys__`` and keys marked with :data:`NotRequired` will always " "appear in ``__optional_keys__``." msgstr "" -#: library/typing.rst:2441 +#: library/typing.rst:2432 msgid "" "For backwards compatibility with Python 3.10 and below, it is also possible " "to use inheritance to declare both required and non-required keys in the " @@ -3449,7 +3425,7 @@ msgid "" "``TypedDict`` with a different value for ``total``:" msgstr "" -#: library/typing.rst:2448 +#: library/typing.rst:2439 msgid "" ">>> class Point2D(TypedDict, total=False):\n" "... x: int\n" @@ -3464,7 +3440,7 @@ msgid "" "True" msgstr "" -#: library/typing.rst:2466 +#: library/typing.rst:2457 msgid "" "If ``from __future__ import annotations`` is used or if annotations are " "given as strings, annotations are not evaluated when the ``TypedDict`` is " @@ -3473,121 +3449,121 @@ msgid "" "attributes may be incorrect." msgstr "" -#: library/typing.rst:2472 +#: library/typing.rst:2463 msgid "" "See :pep:`589` for more examples and detailed rules of using ``TypedDict``." msgstr "" -#: library/typing.rst:2476 +#: library/typing.rst:2467 msgid "" "Added support for marking individual keys as :data:`Required` or :data:" "`NotRequired`. See :pep:`655`." msgstr "" -#: library/typing.rst:2480 +#: library/typing.rst:2471 msgid "Added support for generic ``TypedDict``\\ s." msgstr "" -#: library/typing.rst:2484 +#: library/typing.rst:2475 msgid "Protocols" msgstr "" -#: library/typing.rst:2486 +#: library/typing.rst:2477 msgid "" "The following protocols are provided by the typing module. All are decorated " "with :func:`@runtime_checkable `." msgstr "" -#: library/typing.rst:2491 +#: library/typing.rst:2482 msgid "" "An ABC with one abstract method ``__abs__`` that is covariant in its return " "type." msgstr "" -#: library/typing.rst:2496 +#: library/typing.rst:2487 msgid "An ABC with one abstract method ``__bytes__``." msgstr "" -#: library/typing.rst:2500 +#: library/typing.rst:2491 msgid "An ABC with one abstract method ``__complex__``." msgstr "" -#: library/typing.rst:2504 +#: library/typing.rst:2495 msgid "An ABC with one abstract method ``__float__``." msgstr "" -#: library/typing.rst:2508 +#: library/typing.rst:2499 msgid "An ABC with one abstract method ``__index__``." msgstr "" -#: library/typing.rst:2514 +#: library/typing.rst:2505 msgid "An ABC with one abstract method ``__int__``." msgstr "" -#: library/typing.rst:2518 +#: library/typing.rst:2509 msgid "" "An ABC with one abstract method ``__round__`` that is covariant in its " "return type." msgstr "" -#: library/typing.rst:2522 +#: library/typing.rst:2513 msgid "ABCs for working with IO" msgstr "" -#: library/typing.rst:2528 +#: library/typing.rst:2519 msgid "" "Generic type ``IO[AnyStr]`` and its subclasses ``TextIO(IO[str])`` and " "``BinaryIO(IO[bytes])`` represent the types of I/O streams such as returned " "by :func:`open`." msgstr "" -#: library/typing.rst:2534 +#: library/typing.rst:2525 msgid "Functions and decorators" msgstr "" -#: library/typing.rst:2538 +#: library/typing.rst:2529 msgid "Cast a value to a type." msgstr "" -#: library/typing.rst:2540 +#: library/typing.rst:2531 msgid "" "This returns the value unchanged. To the type checker this signals that the " "return value has the designated type, but at runtime we intentionally don't " "check anything (we want this to be as fast as possible)." msgstr "" -#: library/typing.rst:2547 +#: library/typing.rst:2538 msgid "" "Ask a static type checker to confirm that *val* has an inferred type of " "*typ*." msgstr "" -#: library/typing.rst:2549 +#: library/typing.rst:2540 msgid "" "At runtime this does nothing: it returns the first argument unchanged with " "no checks or side effects, no matter the actual type of the argument." msgstr "" -#: library/typing.rst:2552 +#: library/typing.rst:2543 msgid "" "When a static type checker encounters a call to ``assert_type()``, it emits " "an error if the value is not of the specified type::" msgstr "" -#: library/typing.rst:2555 +#: library/typing.rst:2546 msgid "" "def greet(name: str) -> None:\n" " assert_type(name, str) # OK, inferred type of `name` is `str`\n" " assert_type(name, int) # type checker error" msgstr "" -#: library/typing.rst:2559 +#: library/typing.rst:2550 msgid "" "This function is useful for ensuring the type checker's understanding of a " "script is in line with the developer's intentions::" msgstr "" -#: library/typing.rst:2562 +#: library/typing.rst:2553 msgid "" "def complex_function(arg: object):\n" " # Do some complex type-narrowing logic,\n" @@ -3597,16 +3573,16 @@ msgid "" " assert_type(arg, int)" msgstr "" -#: library/typing.rst:2573 +#: library/typing.rst:2564 msgid "" "Ask a static type checker to confirm that a line of code is unreachable." msgstr "" -#: library/typing.rst:2575 +#: library/typing.rst:2566 msgid "Example::" msgstr "" -#: library/typing.rst:2577 +#: library/typing.rst:2568 msgid "" "def int_or_str(arg: int | str) -> None:\n" " match arg:\n" @@ -3618,14 +3594,14 @@ msgid "" " assert_never(unreachable)" msgstr "" -#: library/typing.rst:2586 +#: library/typing.rst:2577 msgid "" "Here, the annotations allow the type checker to infer that the last case can " "never execute, because ``arg`` is either an :class:`int` or a :class:`str`, " "and both options are covered by earlier cases." msgstr "" -#: library/typing.rst:2591 +#: library/typing.rst:2582 msgid "" "If a type checker finds that a call to ``assert_never()`` is reachable, it " "will emit an error. For example, if the type annotation for ``arg`` was " @@ -3635,59 +3611,59 @@ msgid "" "passed in must be the bottom type, :data:`Never`, and nothing else." msgstr "" -#: library/typing.rst:2599 +#: library/typing.rst:2590 msgid "At runtime, this throws an exception when called." msgstr "" -#: library/typing.rst:2602 +#: library/typing.rst:2593 msgid "" -"`Unreachable Code and Exhaustiveness Checking `__ has more information about " -"exhaustiveness checking with static typing." +"`Unreachable Code and Exhaustiveness Checking `__ has more information about exhaustiveness " +"checking with static typing." msgstr "" -#: library/typing.rst:2610 +#: library/typing.rst:2601 msgid "Ask a static type checker to reveal the inferred type of an expression." msgstr "" -#: library/typing.rst:2612 +#: library/typing.rst:2603 msgid "" "When a static type checker encounters a call to this function, it emits a " "diagnostic with the inferred type of the argument. For example::" msgstr "" -#: library/typing.rst:2615 +#: library/typing.rst:2606 msgid "" "x: int = 1\n" "reveal_type(x) # Revealed type is \"builtins.int\"" msgstr "" -#: library/typing.rst:2618 +#: library/typing.rst:2609 msgid "" "This can be useful when you want to debug how your type checker handles a " "particular piece of code." msgstr "" -#: library/typing.rst:2621 +#: library/typing.rst:2612 msgid "" "At runtime, this function prints the runtime type of its argument to :data:" "`sys.stderr` and returns the argument unchanged (allowing the call to be " "used within an expression)::" msgstr "" -#: library/typing.rst:2625 +#: library/typing.rst:2616 msgid "" "x = reveal_type(1) # prints \"Runtime type is int\"\n" "print(x) # prints \"1\"" msgstr "" -#: library/typing.rst:2628 +#: library/typing.rst:2619 msgid "" "Note that the runtime type may be different from (more or less specific " "than) the type statically inferred by a type checker." msgstr "" -#: library/typing.rst:2631 +#: library/typing.rst:2622 msgid "" "Most type checkers support ``reveal_type()`` anywhere, even if the name is " "not imported from ``typing``. Importing the name from ``typing``, however, " @@ -3695,13 +3671,13 @@ msgid "" "clearly." msgstr "" -#: library/typing.rst:2642 +#: library/typing.rst:2633 msgid "" "Decorator to mark an object as providing :func:`dataclass `-like behavior." msgstr "" -#: library/typing.rst:2645 +#: library/typing.rst:2636 msgid "" "``dataclass_transform`` may be used to decorate a class, metaclass, or a " "function that is itself a decorator. The presence of " @@ -3710,11 +3686,11 @@ msgid "" "to :func:`@dataclasses.dataclass `." msgstr "" -#: library/typing.rst:2652 +#: library/typing.rst:2643 msgid "Example usage with a decorator function:" msgstr "" -#: library/typing.rst:2654 +#: library/typing.rst:2645 msgid "" "@dataclass_transform()\n" "def create_model[T](cls: type[T]) -> type[T]:\n" @@ -3727,11 +3703,11 @@ msgid "" " name: str" msgstr "" -#: library/typing.rst:2666 +#: library/typing.rst:2657 msgid "On a base class::" msgstr "" -#: library/typing.rst:2668 +#: library/typing.rst:2659 msgid "" "@dataclass_transform()\n" "class ModelBase: ...\n" @@ -3741,11 +3717,11 @@ msgid "" " name: str" msgstr "" -#: library/typing.rst:2675 +#: library/typing.rst:2666 msgid "On a metaclass::" msgstr "" -#: library/typing.rst:2677 +#: library/typing.rst:2668 msgid "" "@dataclass_transform()\n" "class ModelMeta(type): ...\n" @@ -3757,7 +3733,7 @@ msgid "" " name: str" msgstr "" -#: library/typing.rst:2686 +#: library/typing.rst:2677 msgid "" "The ``CustomerModel`` classes defined above will be treated by type checkers " "similarly to classes created with :func:`@dataclasses.dataclass None:\n" @@ -3963,24 +3939,24 @@ msgid "" " ... # actual implementation goes here" msgstr "" -#: library/typing.rst:2814 +#: library/typing.rst:2805 msgid "" "See :pep:`484` for more details and comparison with other typing semantics." msgstr "" -#: library/typing.rst:2816 +#: library/typing.rst:2807 msgid "" "Overloaded functions can now be introspected at runtime using :func:" "`get_overloads`." msgstr "" -#: library/typing.rst:2823 +#: library/typing.rst:2814 msgid "" "Return a sequence of :func:`@overload `-decorated definitions for " "*func*." msgstr "" -#: library/typing.rst:2826 +#: library/typing.rst:2817 msgid "" "*func* is the function object for the implementation of the overloaded " "function. For example, given the definition of ``process`` in the " @@ -3990,32 +3966,32 @@ msgid "" "returns an empty sequence." msgstr "" -#: library/typing.rst:2833 +#: library/typing.rst:2824 msgid "" "``get_overloads()`` can be used for introspecting an overloaded function at " "runtime." msgstr "" -#: library/typing.rst:2841 +#: library/typing.rst:2832 msgid "Clear all registered overloads in the internal registry." msgstr "" -#: library/typing.rst:2843 +#: library/typing.rst:2834 msgid "This can be used to reclaim the memory used by the registry." msgstr "" -#: library/typing.rst:2850 +#: library/typing.rst:2841 msgid "Decorator to indicate final methods and final classes." msgstr "" -#: library/typing.rst:2852 +#: library/typing.rst:2843 msgid "" "Decorating a method with ``@final`` indicates to a type checker that the " "method cannot be overridden in a subclass. Decorating a class with " "``@final`` indicates that it cannot be subclassed." msgstr "" -#: library/typing.rst:2858 +#: library/typing.rst:2849 msgid "" "class Base:\n" " @final\n" @@ -4032,7 +4008,7 @@ msgid "" " ..." msgstr "" -#: library/typing.rst:2877 +#: library/typing.rst:2868 msgid "" "The decorator will now attempt to set a ``__final__`` attribute to ``True`` " "on the decorated object. Thus, a check like ``if getattr(obj, \"__final__\", " @@ -4042,11 +4018,11 @@ msgid "" "exception." msgstr "" -#: library/typing.rst:2888 +#: library/typing.rst:2879 msgid "Decorator to indicate that annotations are not type hints." msgstr "" -#: library/typing.rst:2890 +#: library/typing.rst:2881 msgid "" "This works as a class or function :term:`decorator`. With a class, it " "applies recursively to all methods and classes defined in that class (but " @@ -4054,34 +4030,34 @@ msgid "" "will ignore all annotations in a function or class with this decorator." msgstr "" -#: library/typing.rst:2896 +#: library/typing.rst:2887 msgid "``@no_type_check`` mutates the decorated object in place." msgstr "" -#: library/typing.rst:2900 +#: library/typing.rst:2891 msgid "Decorator to give another decorator the :func:`no_type_check` effect." msgstr "" -#: library/typing.rst:2902 +#: library/typing.rst:2893 msgid "" "This wraps the decorator with something that wraps the decorated function " "in :func:`no_type_check`." msgstr "" -#: library/typing.rst:2908 +#: library/typing.rst:2899 msgid "" "Decorator to indicate that a method in a subclass is intended to override a " "method or attribute in a superclass." msgstr "" -#: library/typing.rst:2911 +#: library/typing.rst:2902 msgid "" "Type checkers should emit an error if a method decorated with ``@override`` " "does not, in fact, override anything. This helps prevent bugs that may occur " "when a base class is changed without an equivalent change to a child class." msgstr "" -#: library/typing.rst:2918 +#: library/typing.rst:2909 msgid "" "class Base:\n" " def log_status(self) -> None:\n" @@ -4097,11 +4073,11 @@ msgid "" " ..." msgstr "" -#: library/typing.rst:2933 +#: library/typing.rst:2924 msgid "There is no runtime checking of this property." msgstr "" -#: library/typing.rst:2935 +#: library/typing.rst:2926 msgid "" "The decorator will attempt to set an ``__override__`` attribute to ``True`` " "on the decorated object. Thus, a check like ``if getattr(obj, " @@ -4111,22 +4087,22 @@ msgid "" "without raising an exception." msgstr "" -#: library/typing.rst:2942 +#: library/typing.rst:2933 msgid "See :pep:`698` for more details." msgstr "" -#: library/typing.rst:2949 +#: library/typing.rst:2940 msgid "Decorator to mark a class or function as unavailable at runtime." msgstr "" -#: library/typing.rst:2951 +#: library/typing.rst:2942 msgid "" "This decorator is itself not available at runtime. It is mainly intended to " "mark classes that are defined in type stub files if an implementation " "returns an instance of a private class::" msgstr "" -#: library/typing.rst:2955 +#: library/typing.rst:2946 msgid "" "@type_check_only\n" "class Response: # private or not available at runtime\n" @@ -4136,29 +4112,29 @@ msgid "" "def fetch_response() -> Response: ..." msgstr "" -#: library/typing.rst:2962 +#: library/typing.rst:2953 msgid "" "Note that returning instances of private classes is not recommended. It is " "usually preferable to make such classes public." msgstr "" -#: library/typing.rst:2966 +#: library/typing.rst:2957 msgid "Introspection helpers" msgstr "" -#: library/typing.rst:2970 +#: library/typing.rst:2961 msgid "" "Return a dictionary containing type hints for a function, method, module or " "class object." msgstr "" -#: library/typing.rst:2973 +#: library/typing.rst:2964 msgid "" "This is often the same as ``obj.__annotations__``, but this function makes " "the following changes to the annotations dictionary:" msgstr "" -#: library/typing.rst:2976 +#: library/typing.rst:2967 msgid "" "Forward references encoded as string literals or :class:`ForwardRef` objects " "are handled by evaluating them in *globalns*, *localns*, and (where " @@ -4167,17 +4143,17 @@ msgid "" "inferred from *obj*." msgstr "" -#: library/typing.rst:2981 +#: library/typing.rst:2972 msgid "``None`` is replaced with :class:`types.NoneType`." msgstr "" -#: library/typing.rst:2982 +#: library/typing.rst:2973 msgid "" "If :func:`@no_type_check ` has been applied to *obj*, an " "empty dictionary is returned." msgstr "" -#: library/typing.rst:2984 +#: library/typing.rst:2975 msgid "" "If *obj* is a class ``C``, the function returns a dictionary that merges " "annotations from ``C``'s base classes with those on ``C`` directly. This is " @@ -4187,20 +4163,20 @@ msgid "" "annotations on classes appearing later in the method resolution order." msgstr "" -#: library/typing.rst:2991 +#: library/typing.rst:2982 msgid "" "The function recursively replaces all occurrences of ``Annotated[T, ...]`` " "with ``T``, unless *include_extras* is set to ``True`` (see :class:" "`Annotated` for more information)." msgstr "" -#: library/typing.rst:2995 +#: library/typing.rst:2986 msgid "" "See also :func:`inspect.get_annotations`, a lower-level function that " "returns annotations more directly." msgstr "" -#: library/typing.rst:3000 +#: library/typing.rst:2991 msgid "" "If any forward references in the annotations of *obj* are not resolvable or " "are not valid Python code, this function will raise an exception such as :" @@ -4209,26 +4185,26 @@ msgid "" "imported under :data:`if TYPE_CHECKING `." msgstr "" -#: library/typing.rst:3006 +#: library/typing.rst:2997 msgid "" "Added ``include_extras`` parameter as part of :pep:`593`. See the " "documentation on :data:`Annotated` for more information." msgstr "" -#: library/typing.rst:3010 +#: library/typing.rst:3001 msgid "" "Previously, ``Optional[t]`` was added for function and method annotations if " "a default value equal to ``None`` was set. Now the annotation is returned " "unchanged." msgstr "" -#: library/typing.rst:3017 +#: library/typing.rst:3008 msgid "" "Get the unsubscripted version of a type: for a typing object of the form " "``X[Y, Z, ...]`` return ``X``." msgstr "" -#: library/typing.rst:3020 +#: library/typing.rst:3011 msgid "" "If ``X`` is a typing-module alias for a builtin or :mod:`collections` class, " "it will be normalized to the original class. If ``X`` is an instance of :" @@ -4236,11 +4212,11 @@ msgid "" "class:`ParamSpec`. Return ``None`` for unsupported objects." msgstr "" -#: library/typing.rst:3050 +#: library/typing.rst:3041 msgid "Examples:" msgstr "" -#: library/typing.rst:3028 +#: library/typing.rst:3019 msgid "" "assert get_origin(str) is None\n" "assert get_origin(Dict[str, int]) is dict\n" @@ -4251,13 +4227,13 @@ msgid "" "assert get_origin(P.kwargs) is P" msgstr "" -#: library/typing.rst:3042 +#: library/typing.rst:3033 msgid "" "Get type arguments with all substitutions performed: for a typing object of " "the form ``X[Y, Z, ...]`` return ``(Y, Z, ...)``." msgstr "" -#: library/typing.rst:3045 +#: library/typing.rst:3036 msgid "" "If ``X`` is a union or :class:`Literal` contained in another generic type, " "the order of ``(Y, Z, ...)`` may be different from the order of the original " @@ -4265,18 +4241,18 @@ msgid "" "objects." msgstr "" -#: library/typing.rst:3052 +#: library/typing.rst:3043 msgid "" "assert get_args(int) == ()\n" "assert get_args(Dict[int, str]) == (int, str)\n" "assert get_args(Union[int, str]) == (int, str)" msgstr "" -#: library/typing.rst:3062 +#: library/typing.rst:3053 msgid "Check if a type is a :class:`TypedDict`." msgstr "" -#: library/typing.rst:3066 +#: library/typing.rst:3057 msgid "" "class Film(TypedDict):\n" " title: str\n" @@ -4290,36 +4266,36 @@ msgid "" "assert not is_typeddict(TypedDict)" msgstr "" -#: library/typing.rst:3083 +#: library/typing.rst:3074 msgid "" "Class used for internal typing representation of string forward references." msgstr "" -#: library/typing.rst:3085 +#: library/typing.rst:3076 msgid "" "For example, ``List[\"SomeClass\"]`` is implicitly transformed into " "``List[ForwardRef(\"SomeClass\")]``. ``ForwardRef`` should not be " "instantiated by a user, but may be used by introspection tools." msgstr "" -#: library/typing.rst:3090 +#: library/typing.rst:3081 msgid "" ":pep:`585` generic types such as ``list[\"SomeClass\"]`` will not be " "implicitly transformed into ``list[ForwardRef(\"SomeClass\")]`` and thus " "will not automatically resolve to ``list[SomeClass]``." msgstr "" -#: library/typing.rst:3097 +#: library/typing.rst:3088 msgid "Constant" msgstr "" -#: library/typing.rst:3101 +#: library/typing.rst:3092 msgid "" "A special constant that is assumed to be ``True`` by 3rd party static type " "checkers. It is ``False`` at runtime." msgstr "" -#: library/typing.rst:3106 +#: library/typing.rst:3097 msgid "" "if TYPE_CHECKING:\n" " import expensive_mod\n" @@ -4328,7 +4304,7 @@ msgid "" " local_var: expensive_mod.AnotherType = other_fun()" msgstr "" -#: library/typing.rst:3112 +#: library/typing.rst:3103 msgid "" "The first type annotation must be enclosed in quotes, making it a \"forward " "reference\", to hide the ``expensive_mod`` reference from the interpreter " @@ -4336,7 +4312,7 @@ msgid "" "second annotation does not need to be enclosed in quotes." msgstr "" -#: library/typing.rst:3119 +#: library/typing.rst:3110 msgid "" "If ``from __future__ import annotations`` is used, annotations are not " "evaluated at function definition time. Instead, they are stored as strings " @@ -4344,11 +4320,11 @@ msgid "" "annotation (see :pep:`563`)." msgstr "" -#: library/typing.rst:3131 +#: library/typing.rst:3122 msgid "Deprecated aliases" msgstr "" -#: library/typing.rst:3133 +#: library/typing.rst:3124 msgid "" "This module defines several deprecated aliases to pre-existing standard " "library classes. These were originally included in the typing module in " @@ -4357,7 +4333,7 @@ msgid "" "existing classes were enhanced to support ``[]`` (see :pep:`585`)." msgstr "" -#: library/typing.rst:3140 +#: library/typing.rst:3131 msgid "" "The redundant types are deprecated as of Python 3.9. However, while the " "aliases may be removed at some point, removal of these aliases is not " @@ -4365,7 +4341,7 @@ msgid "" "the interpreter for these aliases." msgstr "" -#: library/typing.rst:3145 +#: library/typing.rst:3136 msgid "" "If at some point it is decided to remove these deprecated aliases, a " "deprecation warning will be issued by the interpreter for at least two " @@ -4373,38 +4349,38 @@ msgid "" "typing module without deprecation warnings until at least Python 3.14." msgstr "" -#: library/typing.rst:3150 +#: library/typing.rst:3141 msgid "" "Type checkers are encouraged to flag uses of the deprecated types if the " "program they are checking targets a minimum Python version of 3.9 or newer." msgstr "" -#: library/typing.rst:3156 +#: library/typing.rst:3147 msgid "Aliases to built-in types" msgstr "" -#: library/typing.rst:3160 +#: library/typing.rst:3151 msgid "Deprecated alias to :class:`dict`." msgstr "" -#: library/typing.rst:3162 +#: library/typing.rst:3153 msgid "" "Note that to annotate arguments, it is preferred to use an abstract " "collection type such as :class:`~collections.abc.Mapping` rather than to " "use :class:`dict` or :class:`!typing.Dict`." msgstr "" -#: library/typing.rst:3166 +#: library/typing.rst:3157 msgid "" ":class:`builtins.dict ` now supports subscripting (``[]``). See :pep:" "`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3172 +#: library/typing.rst:3163 msgid "Deprecated alias to :class:`list`." msgstr "" -#: library/typing.rst:3174 +#: library/typing.rst:3165 msgid "" "Note that to annotate arguments, it is preferred to use an abstract " "collection type such as :class:`~collections.abc.Sequence` or :class:" @@ -4412,142 +4388,142 @@ msgid "" "typing.List`." msgstr "" -#: library/typing.rst:3179 +#: library/typing.rst:3170 msgid "" ":class:`builtins.list ` now supports subscripting (``[]``). See :pep:" "`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3185 +#: library/typing.rst:3176 msgid "Deprecated alias to :class:`builtins.set `." msgstr "" -#: library/typing.rst:3187 +#: library/typing.rst:3178 msgid "" "Note that to annotate arguments, it is preferred to use an abstract " "collection type such as :class:`collections.abc.Set` rather than to use :" "class:`set` or :class:`typing.Set`." msgstr "" -#: library/typing.rst:3191 +#: library/typing.rst:3182 msgid "" ":class:`builtins.set ` now supports subscripting (``[]``). See :pep:" "`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3197 +#: library/typing.rst:3188 msgid "Deprecated alias to :class:`builtins.frozenset `." msgstr "" -#: library/typing.rst:3199 +#: library/typing.rst:3190 msgid "" ":class:`builtins.frozenset ` now supports subscripting (``[]``). " "See :pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3206 +#: library/typing.rst:3197 msgid "Deprecated alias for :class:`tuple`." msgstr "" -#: library/typing.rst:3208 +#: library/typing.rst:3199 msgid "" ":class:`tuple` and ``Tuple`` are special-cased in the type system; see :ref:" "`annotating-tuples` for more details." msgstr "" -#: library/typing.rst:3211 +#: library/typing.rst:3202 msgid "" ":class:`builtins.tuple ` now supports subscripting (``[]``). See :pep:" "`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3217 +#: library/typing.rst:3208 msgid "Deprecated alias to :class:`type`." msgstr "" -#: library/typing.rst:3219 +#: library/typing.rst:3210 msgid "" "See :ref:`type-of-class-objects` for details on using :class:`type` or " "``typing.Type`` in type annotations." msgstr "" -#: library/typing.rst:3224 +#: library/typing.rst:3215 msgid "" ":class:`builtins.type ` now supports subscripting (``[]``). See :pep:" "`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3231 +#: library/typing.rst:3222 msgid "Aliases to types in :mod:`collections`" msgstr "" -#: library/typing.rst:3235 +#: library/typing.rst:3226 msgid "Deprecated alias to :class:`collections.defaultdict`." msgstr "" -#: library/typing.rst:3239 +#: library/typing.rst:3230 msgid "" ":class:`collections.defaultdict` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3245 +#: library/typing.rst:3236 msgid "Deprecated alias to :class:`collections.OrderedDict`." msgstr "" -#: library/typing.rst:3249 +#: library/typing.rst:3240 msgid "" ":class:`collections.OrderedDict` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3255 +#: library/typing.rst:3246 msgid "Deprecated alias to :class:`collections.ChainMap`." msgstr "" -#: library/typing.rst:3259 +#: library/typing.rst:3250 msgid "" ":class:`collections.ChainMap` now supports subscripting (``[]``). See :pep:" "`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3265 +#: library/typing.rst:3256 msgid "Deprecated alias to :class:`collections.Counter`." msgstr "" -#: library/typing.rst:3269 +#: library/typing.rst:3260 msgid "" ":class:`collections.Counter` now supports subscripting (``[]``). See :pep:" "`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3275 +#: library/typing.rst:3266 msgid "Deprecated alias to :class:`collections.deque`." msgstr "" -#: library/typing.rst:3279 +#: library/typing.rst:3270 msgid "" ":class:`collections.deque` now supports subscripting (``[]``). See :pep:" "`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3286 +#: library/typing.rst:3277 msgid "Aliases to other concrete types" msgstr "" -#: library/typing.rst:3288 +#: library/typing.rst:3279 msgid "" "The ``typing.io`` namespace is deprecated and will be removed. These types " "should be directly imported from ``typing`` instead." msgstr "" -#: library/typing.rst:3295 +#: library/typing.rst:3286 msgid "" "Deprecated aliases corresponding to the return types from :func:`re.compile` " "and :func:`re.match`." msgstr "" -#: library/typing.rst:3298 +#: library/typing.rst:3289 msgid "" "These types (and the corresponding functions) are generic over :data:" "`AnyStr`. ``Pattern`` can be specialised as ``Pattern[str]`` or " @@ -4555,361 +4531,361 @@ msgid "" "``Match[bytes]``." msgstr "" -#: library/typing.rst:3303 +#: library/typing.rst:3294 msgid "" "The ``typing.re`` namespace is deprecated and will be removed. These types " "should be directly imported from ``typing`` instead." msgstr "" -#: library/typing.rst:3307 +#: library/typing.rst:3298 msgid "" "Classes ``Pattern`` and ``Match`` from :mod:`re` now support ``[]``. See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3313 +#: library/typing.rst:3304 msgid "Deprecated alias for :class:`str`." msgstr "" -#: library/typing.rst:3315 +#: library/typing.rst:3306 msgid "" "``Text`` is provided to supply a forward compatible path for Python 2 code: " "in Python 2, ``Text`` is an alias for ``unicode``." msgstr "" -#: library/typing.rst:3319 +#: library/typing.rst:3310 msgid "" "Use ``Text`` to indicate that a value must contain a unicode string in a " "manner that is compatible with both Python 2 and Python 3::" msgstr "" -#: library/typing.rst:3322 +#: library/typing.rst:3313 msgid "" "def add_unicode_checkmark(text: Text) -> Text:\n" " return text + u' \\u2713'" msgstr "" -#: library/typing.rst:3327 +#: library/typing.rst:3318 msgid "" "Python 2 is no longer supported, and most type checkers also no longer " "support type checking Python 2 code. Removal of the alias is not currently " "planned, but users are encouraged to use :class:`str` instead of ``Text``." msgstr "" -#: library/typing.rst:3337 +#: library/typing.rst:3328 msgid "Aliases to container ABCs in :mod:`collections.abc`" msgstr "" -#: library/typing.rst:3341 +#: library/typing.rst:3332 msgid "Deprecated alias to :class:`collections.abc.Set`." msgstr "" -#: library/typing.rst:3343 +#: library/typing.rst:3334 msgid "" ":class:`collections.abc.Set` now supports subscripting (``[]``). See :pep:" "`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3349 +#: library/typing.rst:3340 msgid "" "This type represents the types :class:`bytes`, :class:`bytearray`, and :" "class:`memoryview` of byte sequences." msgstr "" -#: library/typing.rst:3352 +#: library/typing.rst:3343 msgid "" "Prefer :class:`collections.abc.Buffer`, or a union like ``bytes | bytearray " "| memoryview``." msgstr "" -#: library/typing.rst:3357 +#: library/typing.rst:3348 msgid "Deprecated alias to :class:`collections.abc.Collection`." msgstr "" -#: library/typing.rst:3361 +#: library/typing.rst:3352 msgid "" ":class:`collections.abc.Collection` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3367 +#: library/typing.rst:3358 msgid "Deprecated alias to :class:`collections.abc.Container`." msgstr "" -#: library/typing.rst:3369 +#: library/typing.rst:3360 msgid "" ":class:`collections.abc.Container` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3375 +#: library/typing.rst:3366 msgid "Deprecated alias to :class:`collections.abc.ItemsView`." msgstr "" -#: library/typing.rst:3377 +#: library/typing.rst:3368 msgid "" ":class:`collections.abc.ItemsView` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3383 +#: library/typing.rst:3374 msgid "Deprecated alias to :class:`collections.abc.KeysView`." msgstr "" -#: library/typing.rst:3385 +#: library/typing.rst:3376 msgid "" ":class:`collections.abc.KeysView` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3391 +#: library/typing.rst:3382 msgid "Deprecated alias to :class:`collections.abc.Mapping`." msgstr "" -#: library/typing.rst:3393 +#: library/typing.rst:3384 msgid "" ":class:`collections.abc.Mapping` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3399 +#: library/typing.rst:3390 msgid "Deprecated alias to :class:`collections.abc.MappingView`." msgstr "" -#: library/typing.rst:3401 +#: library/typing.rst:3392 msgid "" ":class:`collections.abc.MappingView` now supports subscripting (``[]``). " "See :pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3407 +#: library/typing.rst:3398 msgid "Deprecated alias to :class:`collections.abc.MutableMapping`." msgstr "" -#: library/typing.rst:3409 +#: library/typing.rst:3400 msgid "" ":class:`collections.abc.MutableMapping` now supports subscripting (``[]``). " "See :pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3416 +#: library/typing.rst:3407 msgid "Deprecated alias to :class:`collections.abc.MutableSequence`." msgstr "" -#: library/typing.rst:3418 +#: library/typing.rst:3409 msgid "" ":class:`collections.abc.MutableSequence` now supports subscripting (``[]``). " "See :pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3425 +#: library/typing.rst:3416 msgid "Deprecated alias to :class:`collections.abc.MutableSet`." msgstr "" -#: library/typing.rst:3427 +#: library/typing.rst:3418 msgid "" ":class:`collections.abc.MutableSet` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3433 +#: library/typing.rst:3424 msgid "Deprecated alias to :class:`collections.abc.Sequence`." msgstr "" -#: library/typing.rst:3435 +#: library/typing.rst:3426 msgid "" ":class:`collections.abc.Sequence` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3441 +#: library/typing.rst:3432 msgid "Deprecated alias to :class:`collections.abc.ValuesView`." msgstr "" -#: library/typing.rst:3443 +#: library/typing.rst:3434 msgid "" ":class:`collections.abc.ValuesView` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3450 +#: library/typing.rst:3441 msgid "Aliases to asynchronous ABCs in :mod:`collections.abc`" msgstr "" -#: library/typing.rst:3454 +#: library/typing.rst:3445 msgid "Deprecated alias to :class:`collections.abc.Coroutine`." msgstr "" -#: library/typing.rst:3456 +#: library/typing.rst:3447 msgid "" "See :ref:`annotating-generators-and-coroutines` for details on using :class:" "`collections.abc.Coroutine` and ``typing.Coroutine`` in type annotations." msgstr "" -#: library/typing.rst:3462 +#: library/typing.rst:3453 msgid "" ":class:`collections.abc.Coroutine` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3468 +#: library/typing.rst:3459 msgid "Deprecated alias to :class:`collections.abc.AsyncGenerator`." msgstr "" -#: library/typing.rst:3470 +#: library/typing.rst:3461 msgid "" "See :ref:`annotating-generators-and-coroutines` for details on using :class:" "`collections.abc.AsyncGenerator` and ``typing.AsyncGenerator`` in type " "annotations." msgstr "" -#: library/typing.rst:3476 +#: library/typing.rst:3467 msgid "" ":class:`collections.abc.AsyncGenerator` now supports subscripting (``[]``). " "See :pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3483 +#: library/typing.rst:3474 msgid "Deprecated alias to :class:`collections.abc.AsyncIterable`." msgstr "" -#: library/typing.rst:3487 +#: library/typing.rst:3478 msgid "" ":class:`collections.abc.AsyncIterable` now supports subscripting (``[]``). " "See :pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3493 +#: library/typing.rst:3484 msgid "Deprecated alias to :class:`collections.abc.AsyncIterator`." msgstr "" -#: library/typing.rst:3497 +#: library/typing.rst:3488 msgid "" ":class:`collections.abc.AsyncIterator` now supports subscripting (``[]``). " "See :pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3503 +#: library/typing.rst:3494 msgid "Deprecated alias to :class:`collections.abc.Awaitable`." msgstr "" -#: library/typing.rst:3507 +#: library/typing.rst:3498 msgid "" ":class:`collections.abc.Awaitable` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3514 +#: library/typing.rst:3505 msgid "Aliases to other ABCs in :mod:`collections.abc`" msgstr "" -#: library/typing.rst:3518 +#: library/typing.rst:3509 msgid "Deprecated alias to :class:`collections.abc.Iterable`." msgstr "" -#: library/typing.rst:3520 +#: library/typing.rst:3511 msgid "" ":class:`collections.abc.Iterable` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3526 +#: library/typing.rst:3517 msgid "Deprecated alias to :class:`collections.abc.Iterator`." msgstr "" -#: library/typing.rst:3528 +#: library/typing.rst:3519 msgid "" ":class:`collections.abc.Iterator` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3534 +#: library/typing.rst:3525 msgid "Deprecated alias to :class:`collections.abc.Callable`." msgstr "" -#: library/typing.rst:3536 +#: library/typing.rst:3527 msgid "" "See :ref:`annotating-callables` for details on how to use :class:" "`collections.abc.Callable` and ``typing.Callable`` in type annotations." msgstr "" -#: library/typing.rst:3539 +#: library/typing.rst:3530 msgid "" ":class:`collections.abc.Callable` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3549 +#: library/typing.rst:3540 msgid "Deprecated alias to :class:`collections.abc.Generator`." msgstr "" -#: library/typing.rst:3551 +#: library/typing.rst:3542 msgid "" "See :ref:`annotating-generators-and-coroutines` for details on using :class:" "`collections.abc.Generator` and ``typing.Generator`` in type annotations." msgstr "" -#: library/typing.rst:3555 +#: library/typing.rst:3546 msgid "" ":class:`collections.abc.Generator` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3561 +#: library/typing.rst:3552 msgid "Deprecated alias to :class:`collections.abc.Hashable`." msgstr "" -#: library/typing.rst:3563 +#: library/typing.rst:3554 msgid "Use :class:`collections.abc.Hashable` directly instead." msgstr "" -#: library/typing.rst:3568 +#: library/typing.rst:3559 msgid "Deprecated alias to :class:`collections.abc.Reversible`." msgstr "" -#: library/typing.rst:3570 +#: library/typing.rst:3561 msgid "" ":class:`collections.abc.Reversible` now supports subscripting (``[]``). See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3576 +#: library/typing.rst:3567 msgid "Deprecated alias to :class:`collections.abc.Sized`." msgstr "" -#: library/typing.rst:3578 +#: library/typing.rst:3569 msgid "Use :class:`collections.abc.Sized` directly instead." msgstr "" -#: library/typing.rst:3584 +#: library/typing.rst:3575 msgid "Aliases to :mod:`contextlib` ABCs" msgstr "" -#: library/typing.rst:3588 +#: library/typing.rst:3579 msgid "Deprecated alias to :class:`contextlib.AbstractContextManager`." msgstr "" -#: library/typing.rst:3592 +#: library/typing.rst:3583 msgid "" ":class:`contextlib.AbstractContextManager` now supports subscripting " "(``[]``). See :pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3599 +#: library/typing.rst:3590 msgid "Deprecated alias to :class:`contextlib.AbstractAsyncContextManager`." msgstr "" -#: library/typing.rst:3603 +#: library/typing.rst:3594 msgid "" ":class:`contextlib.AbstractAsyncContextManager` now supports subscripting " "(``[]``). See :pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:3609 +#: library/typing.rst:3600 msgid "Deprecation Timeline of Major Features" msgstr "" -#: library/typing.rst:3611 +#: library/typing.rst:3602 msgid "" "Certain features in ``typing`` are deprecated and may be removed in a future " "version of Python. The following table summarizes major deprecations for " @@ -4917,98 +4893,98 @@ msgid "" "listed." msgstr "" -#: library/typing.rst:3618 +#: library/typing.rst:3609 msgid "Feature" msgstr "" -#: library/typing.rst:3619 +#: library/typing.rst:3610 msgid "Deprecated in" msgstr "" -#: library/typing.rst:3620 +#: library/typing.rst:3611 msgid "Projected removal" msgstr "" -#: library/typing.rst:3621 +#: library/typing.rst:3612 msgid "PEP/issue" msgstr "" -#: library/typing.rst:3622 +#: library/typing.rst:3613 msgid "``typing.io`` and ``typing.re`` submodules" msgstr "" -#: library/typing.rst:3623 +#: library/typing.rst:3614 msgid "3.8" msgstr "" -#: library/typing.rst:3624 +#: library/typing.rst:3615 msgid "3.13" msgstr "" -#: library/typing.rst:3625 +#: library/typing.rst:3616 msgid ":issue:`38291`" msgstr "" -#: library/typing.rst:3626 +#: library/typing.rst:3617 msgid "``typing`` versions of standard collections" msgstr "" -#: library/typing.rst:3631 +#: library/typing.rst:3622 msgid "3.9" msgstr "" -#: library/typing.rst:3628 +#: library/typing.rst:3619 msgid "Undecided (see :ref:`deprecated-aliases` for more information)" msgstr "" -#: library/typing.rst:3629 +#: library/typing.rst:3620 msgid ":pep:`585`" msgstr "" -#: library/typing.rst:3630 +#: library/typing.rst:3621 msgid ":class:`typing.ByteString`" msgstr "" -#: library/typing.rst:3632 +#: library/typing.rst:3623 msgid "3.14" msgstr "" -#: library/typing.rst:3633 +#: library/typing.rst:3624 msgid ":gh:`91896`" msgstr "" -#: library/typing.rst:3634 +#: library/typing.rst:3625 msgid ":data:`typing.Text`" msgstr "" -#: library/typing.rst:3635 +#: library/typing.rst:3626 msgid "3.11" msgstr "" -#: library/typing.rst:3640 library/typing.rst:3644 +#: library/typing.rst:3631 library/typing.rst:3635 msgid "Undecided" msgstr "" -#: library/typing.rst:3637 +#: library/typing.rst:3628 msgid ":gh:`92332`" msgstr "" -#: library/typing.rst:3638 +#: library/typing.rst:3629 msgid ":class:`typing.Hashable` and :class:`typing.Sized`" msgstr "" -#: library/typing.rst:3643 +#: library/typing.rst:3634 msgid "3.12" msgstr "" -#: library/typing.rst:3641 +#: library/typing.rst:3632 msgid ":gh:`94309`" msgstr "" -#: library/typing.rst:3642 +#: library/typing.rst:3633 msgid ":data:`typing.TypeAlias`" msgstr "" -#: library/typing.rst:3645 +#: library/typing.rst:3636 msgid ":pep:`695`" msgstr "" diff --git a/library/unittest.mock.po b/library/unittest.mock.po index 73e548262..6ad9708c5 100644 --- a/library/unittest.mock.po +++ b/library/unittest.mock.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -398,7 +398,7 @@ msgid "" ">>> mock('hello')\n" "5\n" ">>> mock.reset_mock(return_value=True)\n" -">>> mock('hello') \n" +">>> mock('hello')\n" "" msgstr "" @@ -415,7 +415,7 @@ msgid "" " ...\n" "ValueError\n" ">>> mock.reset_mock(side_effect=True)\n" -">>> mock('hello') \n" +">>> mock('hello')\n" "" msgstr "" @@ -1879,7 +1879,7 @@ msgstr "" msgid "" "Now we want to test ``some_function`` but we want to mock out ``SomeClass`` " "using :func:`patch`. The problem is that when we import module b, which we " -"will have to do then it imports ``SomeClass`` from module a. If we use :func:" +"will have to do when it imports ``SomeClass`` from module a. If we use :func:" "`patch` to mock out ``a.SomeClass`` then it will have no effect on our test; " "module b already has a reference to the *real* ``SomeClass`` and it looks " "like our patching had no effect." diff --git a/library/unittest.po b/library/unittest.po index 9e8fcbe8f..b9fced301 100644 --- a/library/unittest.po +++ b/library/unittest.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -2186,7 +2186,7 @@ msgid "" "coroutines as test functions." msgstr "" -#: library/unittest.rst:1576 +#: library/unittest.rst:1577 msgid "" "Method called to prepare the test fixture. This is called after :meth:" "`setUp`. This is called immediately before calling the test method; other " @@ -2195,7 +2195,7 @@ msgid "" "implementation does nothing." msgstr "" -#: library/unittest.rst:1584 +#: library/unittest.rst:1586 msgid "" "Method called immediately after the test method has been called and the " "result recorded. This is called before :meth:`tearDown`. This is called " @@ -2208,11 +2208,11 @@ msgid "" "the outcome of the test method. The default implementation does nothing." msgstr "" -#: library/unittest.rst:1596 +#: library/unittest.rst:1598 msgid "This method accepts a coroutine that can be used as a cleanup function." msgstr "" -#: library/unittest.rst:1600 +#: library/unittest.rst:1603 msgid "" "Enter the supplied :term:`asynchronous context manager`. If successful, " "also add its :meth:`~object.__aexit__` method as a cleanup function by :meth:" @@ -2220,7 +2220,7 @@ msgid "" "method." msgstr "" -#: library/unittest.rst:1610 +#: library/unittest.rst:1613 msgid "" "Sets up a new event loop to run the test, collecting the result into the :" "class:`TestResult` object passed as *result*. If *result* is omitted or " @@ -2230,11 +2230,11 @@ msgid "" "cancelled." msgstr "" -#: library/unittest.rst:1618 +#: library/unittest.rst:1621 msgid "An example illustrating the order::" msgstr "" -#: library/unittest.rst:1620 +#: library/unittest.rst:1623 msgid "" "from unittest import IsolatedAsyncioTestCase\n" "\n" @@ -2272,14 +2272,14 @@ msgid "" " unittest.main()" msgstr "" -#: library/unittest.rst:1654 +#: library/unittest.rst:1657 msgid "" "After running the test, ``events`` would contain ``[\"setUp\", " "\"asyncSetUp\", \"test_response\", \"asyncTearDown\", \"tearDown\", " "\"cleanup\"]``." msgstr "" -#: library/unittest.rst:1659 +#: library/unittest.rst:1662 msgid "" "This class implements the portion of the :class:`TestCase` interface which " "allows the test runner to drive the test, but does not provide the methods " @@ -2288,11 +2288,11 @@ msgid "" "`unittest`-based test framework." msgstr "" -#: library/unittest.rst:1669 +#: library/unittest.rst:1672 msgid "Grouping tests" msgstr "" -#: library/unittest.rst:1673 +#: library/unittest.rst:1676 msgid "" "This class represents an aggregation of individual test cases and test " "suites. The class presents the interface needed by the test runner to allow " @@ -2300,14 +2300,14 @@ msgid "" "is the same as iterating over the suite, running each test individually." msgstr "" -#: library/unittest.rst:1678 +#: library/unittest.rst:1681 msgid "" "If *tests* is given, it must be an iterable of individual test cases or " "other test suites that will be used to build the suite initially. Additional " "methods are provided to add test cases and suites to the collection later on." msgstr "" -#: library/unittest.rst:1682 +#: library/unittest.rst:1685 msgid "" ":class:`TestSuite` objects behave much like :class:`TestCase` objects, " "except they do not actually implement a test. Instead, they are used to " @@ -2316,47 +2316,47 @@ msgid "" "instances:" msgstr "" -#: library/unittest.rst:1690 +#: library/unittest.rst:1693 msgid "Add a :class:`TestCase` or :class:`TestSuite` to the suite." msgstr "" -#: library/unittest.rst:1695 +#: library/unittest.rst:1698 msgid "" "Add all the tests from an iterable of :class:`TestCase` and :class:" "`TestSuite` instances to this test suite." msgstr "" -#: library/unittest.rst:1698 +#: library/unittest.rst:1701 msgid "" "This is equivalent to iterating over *tests*, calling :meth:`addTest` for " "each element." msgstr "" -#: library/unittest.rst:1701 +#: library/unittest.rst:1704 msgid ":class:`TestSuite` shares the following methods with :class:`TestCase`:" msgstr "" -#: library/unittest.rst:1706 +#: library/unittest.rst:1709 msgid "" "Run the tests associated with this suite, collecting the result into the " "test result object passed as *result*. Note that unlike :meth:`TestCase." "run`, :meth:`TestSuite.run` requires the result object to be passed in." msgstr "" -#: library/unittest.rst:1714 +#: library/unittest.rst:1717 msgid "" "Run the tests associated with this suite without collecting the result. This " "allows exceptions raised by the test to be propagated to the caller and can " "be used to support running tests under a debugger." msgstr "" -#: library/unittest.rst:1721 +#: library/unittest.rst:1724 msgid "" "Return the number of tests represented by this test object, including all " "individual tests and sub-suites." msgstr "" -#: library/unittest.rst:1727 +#: library/unittest.rst:1730 msgid "" "Tests grouped by a :class:`TestSuite` are always accessed by iteration. " "Subclasses can lazily provide tests by overriding :meth:`!__iter__`. Note " @@ -2368,31 +2368,31 @@ msgid "" "overrides :meth:`TestSuite._removeTestAtIndex` to preserve test references." msgstr "" -#: library/unittest.rst:1737 +#: library/unittest.rst:1740 msgid "" "In earlier versions the :class:`TestSuite` accessed tests directly rather " "than through iteration, so overriding :meth:`!__iter__` wasn't sufficient " "for providing tests." msgstr "" -#: library/unittest.rst:1742 +#: library/unittest.rst:1745 msgid "" "In earlier versions the :class:`TestSuite` held references to each :class:" "`TestCase` after :meth:`TestSuite.run`. Subclasses can restore that behavior " "by overriding :meth:`TestSuite._removeTestAtIndex`." msgstr "" -#: library/unittest.rst:1747 +#: library/unittest.rst:1750 msgid "" "In the typical usage of a :class:`TestSuite` object, the :meth:`run` method " "is invoked by a :class:`TestRunner` rather than by the end-user test harness." msgstr "" -#: library/unittest.rst:1752 +#: library/unittest.rst:1755 msgid "Loading and running tests" msgstr "" -#: library/unittest.rst:1756 +#: library/unittest.rst:1759 msgid "" "The :class:`TestLoader` class is used to create test suites from classes and " "modules. Normally, there is no need to create an instance of this class; " @@ -2401,11 +2401,11 @@ msgid "" "customization of some configurable properties." msgstr "" -#: library/unittest.rst:1762 +#: library/unittest.rst:1765 msgid ":class:`TestLoader` objects have the following attributes:" msgstr "" -#: library/unittest.rst:1767 +#: library/unittest.rst:1770 msgid "" "A list of the non-fatal errors encountered while loading tests. Not reset by " "the loader at any point. Fatal errors are signalled by the relevant method " @@ -2413,17 +2413,17 @@ msgid "" "synthetic test that will raise the original error when run." msgstr "" -#: library/unittest.rst:1776 +#: library/unittest.rst:1779 msgid ":class:`TestLoader` objects have the following methods:" msgstr "" -#: library/unittest.rst:1781 +#: library/unittest.rst:1784 msgid "" "Return a suite of all test cases contained in the :class:`TestCase`\\ -" "derived :class:`testCaseClass`." msgstr "" -#: library/unittest.rst:1784 +#: library/unittest.rst:1787 msgid "" "A test case instance is created for each method named by :meth:" "`getTestCaseNames`. By default these are the method names beginning with " @@ -2432,14 +2432,14 @@ msgid "" "method instead." msgstr "" -#: library/unittest.rst:1793 +#: library/unittest.rst:1796 msgid "" "Return a suite of all test cases contained in the given module. This method " "searches *module* for classes derived from :class:`TestCase` and creates an " "instance of the class for each test method defined for the class." msgstr "" -#: library/unittest.rst:1800 +#: library/unittest.rst:1803 msgid "" "While using a hierarchy of :class:`TestCase`\\ -derived classes can be " "convenient in sharing fixtures and helper functions, defining test methods " @@ -2448,7 +2448,7 @@ msgid "" "fixtures are different and defined in subclasses." msgstr "" -#: library/unittest.rst:1806 +#: library/unittest.rst:1809 msgid "" "If a module provides a ``load_tests`` function it will be called to load the " "tests. This allows modules to customize test loading. This is the " @@ -2456,24 +2456,24 @@ msgid "" "argument to ``load_tests``." msgstr "" -#: library/unittest.rst:1811 +#: library/unittest.rst:1814 msgid "Support for ``load_tests`` added." msgstr "" -#: library/unittest.rst:1814 +#: library/unittest.rst:1817 msgid "Support for a keyword-only argument *pattern* has been added." msgstr "" -#: library/unittest.rst:1817 +#: library/unittest.rst:1820 msgid "" "The undocumented and unofficial *use_load_tests* parameter has been removed." msgstr "" -#: library/unittest.rst:1824 +#: library/unittest.rst:1827 msgid "Return a suite of all test cases given a string specifier." msgstr "" -#: library/unittest.rst:1826 +#: library/unittest.rst:1829 msgid "" "The specifier *name* is a \"dotted name\" that may resolve either to a " "module, a test case class, a test method within a test case class, a :class:" @@ -2484,7 +2484,7 @@ msgid "" "object\"." msgstr "" -#: library/unittest.rst:1834 +#: library/unittest.rst:1837 msgid "" "For example, if you have a module :mod:`SampleTests` containing a :class:" "`TestCase`\\ -derived class :class:`SampleTestCase` with three test methods " @@ -2497,31 +2497,31 @@ msgid "" "a side-effect." msgstr "" -#: library/unittest.rst:1844 +#: library/unittest.rst:1847 msgid "The method optionally resolves *name* relative to the given *module*." msgstr "" -#: library/unittest.rst:1846 +#: library/unittest.rst:1849 msgid "" "If an :exc:`ImportError` or :exc:`AttributeError` occurs while traversing " "*name* then a synthetic test that raises that error when run will be " "returned. These errors are included in the errors accumulated by self.errors." msgstr "" -#: library/unittest.rst:1855 +#: library/unittest.rst:1858 msgid "" "Similar to :meth:`loadTestsFromName`, but takes a sequence of names rather " "than a single name. The return value is a test suite which supports all the " "tests defined for each name." msgstr "" -#: library/unittest.rst:1862 +#: library/unittest.rst:1865 msgid "" "Return a sorted sequence of method names found within *testCaseClass*; this " "should be a subclass of :class:`TestCase`." msgstr "" -#: library/unittest.rst:1868 +#: library/unittest.rst:1871 msgid "" "Find all the test modules by recursing into subdirectories from the " "specified start directory, and return a TestSuite object containing them. " @@ -2530,14 +2530,14 @@ msgid "" "Python identifiers) will be loaded." msgstr "" -#: library/unittest.rst:1874 +#: library/unittest.rst:1877 msgid "" "All test modules must be importable from the top level of the project. If " "the start directory is not the top level directory then *top_level_dir* must " "be specified separately." msgstr "" -#: library/unittest.rst:1878 +#: library/unittest.rst:1881 msgid "" "If importing a module fails, for example due to a syntax error, then this " "will be recorded as a single error and discovery will continue. If the " @@ -2545,7 +2545,7 @@ msgid "" "as a skip instead of an error." msgstr "" -#: library/unittest.rst:1883 +#: library/unittest.rst:1886 msgid "" "If a package (a directory containing a file named :file:`__init__.py`) is " "found, the package will be checked for a ``load_tests`` function. If this " @@ -2555,103 +2555,103 @@ msgid "" "itself calls ``loader.discover``." msgstr "" -#: library/unittest.rst:1891 +#: library/unittest.rst:1894 msgid "" "If ``load_tests`` exists then discovery does *not* recurse into the package, " "``load_tests`` is responsible for loading all tests in the package." msgstr "" -#: library/unittest.rst:1895 +#: library/unittest.rst:1898 msgid "" "The pattern is deliberately not stored as a loader attribute so that " "packages can continue discovery themselves." msgstr "" -#: library/unittest.rst:1898 +#: library/unittest.rst:1901 msgid "" "*top_level_dir* is stored internally, and used as a default to any nested " "calls to ``discover()``. That is, if a package's ``load_tests`` calls " "``loader.discover()``, it does not need to pass this argument." msgstr "" -#: library/unittest.rst:1902 +#: library/unittest.rst:1905 msgid "*start_dir* can be a dotted module name as well as a directory." msgstr "" -#: library/unittest.rst:1906 +#: library/unittest.rst:1909 msgid "" "Modules that raise :exc:`SkipTest` on import are recorded as skips, not " "errors." msgstr "" -#: library/unittest.rst:1910 +#: library/unittest.rst:1913 msgid "*start_dir* can be a :term:`namespace packages `." msgstr "" -#: library/unittest.rst:1913 +#: library/unittest.rst:1916 msgid "" "Paths are sorted before being imported so that execution order is the same " "even if the underlying file system's ordering is not dependent on file name." msgstr "" -#: library/unittest.rst:1918 +#: library/unittest.rst:1921 msgid "" "Found packages are now checked for ``load_tests`` regardless of whether " "their path matches *pattern*, because it is impossible for a package name to " "match the default pattern." msgstr "" -#: library/unittest.rst:1923 +#: library/unittest.rst:1926 msgid "" "*start_dir* can not be a :term:`namespace packages `. It " "has been broken since Python 3.7 and Python 3.11 officially remove it." msgstr "" -#: library/unittest.rst:1927 +#: library/unittest.rst:1930 msgid "*top_level_dir* is only stored for the duration of *discover* call." msgstr "" -#: library/unittest.rst:1931 +#: library/unittest.rst:1934 msgid "" "The following attributes of a :class:`TestLoader` can be configured either " "by subclassing or assignment on an instance:" msgstr "" -#: library/unittest.rst:1937 +#: library/unittest.rst:1940 msgid "" "String giving the prefix of method names which will be interpreted as test " "methods. The default value is ``'test'``." msgstr "" -#: library/unittest.rst:1940 +#: library/unittest.rst:1943 msgid "" "This affects :meth:`getTestCaseNames` and all the ``loadTestsFrom*`` methods." msgstr "" -#: library/unittest.rst:1946 +#: library/unittest.rst:1949 msgid "" "Function to be used to compare method names when sorting them in :meth:" "`getTestCaseNames` and all the ``loadTestsFrom*`` methods." msgstr "" -#: library/unittest.rst:1952 +#: library/unittest.rst:1955 msgid "" "Callable object that constructs a test suite from a list of tests. No " "methods on the resulting object are needed. The default value is the :class:" "`TestSuite` class." msgstr "" -#: library/unittest.rst:1969 +#: library/unittest.rst:1972 msgid "This affects all the ``loadTestsFrom*`` methods." msgstr "" -#: library/unittest.rst:1960 +#: library/unittest.rst:1963 msgid "" "List of Unix shell-style wildcard test name patterns that test methods have " "to match to be included in test suites (see ``-k`` option)." msgstr "" -#: library/unittest.rst:1963 +#: library/unittest.rst:1966 msgid "" "If this attribute is not ``None`` (the default), all test methods to be " "included in test suites must match one of the patterns in this list. Note " @@ -2660,13 +2660,13 @@ msgid "" "have to be converted using ``*`` wildcards." msgstr "" -#: library/unittest.rst:1976 +#: library/unittest.rst:1979 msgid "" "This class is used to compile information about which tests have succeeded " "and which have failed." msgstr "" -#: library/unittest.rst:1979 +#: library/unittest.rst:1982 msgid "" "A :class:`TestResult` object stores the results of a set of tests. The :" "class:`TestCase` and :class:`TestSuite` classes ensure that results are " @@ -2674,7 +2674,7 @@ msgid "" "outcome of tests." msgstr "" -#: library/unittest.rst:1984 +#: library/unittest.rst:1987 msgid "" "Testing frameworks built on top of :mod:`unittest` may want access to the :" "class:`TestResult` object generated by running a set of tests for reporting " @@ -2682,61 +2682,61 @@ msgid "" "`TestRunner.run` method for this purpose." msgstr "" -#: library/unittest.rst:1989 +#: library/unittest.rst:1992 msgid "" ":class:`TestResult` instances have the following attributes that will be of " "interest when inspecting the results of running a set of tests:" msgstr "" -#: library/unittest.rst:1995 +#: library/unittest.rst:1998 msgid "" "A list containing 2-tuples of :class:`TestCase` instances and strings " "holding formatted tracebacks. Each tuple represents a test which raised an " "unexpected exception." msgstr "" -#: library/unittest.rst:2001 +#: library/unittest.rst:2004 msgid "" "A list containing 2-tuples of :class:`TestCase` instances and strings " "holding formatted tracebacks. Each tuple represents a test where a failure " "was explicitly signalled using the :ref:`assert\\* methods `." msgstr "" -#: library/unittest.rst:2007 +#: library/unittest.rst:2010 msgid "" "A list containing 2-tuples of :class:`TestCase` instances and strings " "holding the reason for skipping the test." msgstr "" -#: library/unittest.rst:2014 +#: library/unittest.rst:2017 msgid "" "A list containing 2-tuples of :class:`TestCase` instances and strings " "holding formatted tracebacks. Each tuple represents an expected failure or " "error of the test case." msgstr "" -#: library/unittest.rst:2020 +#: library/unittest.rst:2023 msgid "" "A list containing :class:`TestCase` instances that were marked as expected " "failures, but succeeded." msgstr "" -#: library/unittest.rst:2025 +#: library/unittest.rst:2028 msgid "" "A list containing 2-tuples of test case names and floats representing the " "elapsed time of each test which was run." msgstr "" -#: library/unittest.rst:2032 +#: library/unittest.rst:2035 msgid "" "Set to ``True`` when the execution of tests should stop by :meth:`stop`." msgstr "" -#: library/unittest.rst:2036 +#: library/unittest.rst:2039 msgid "The total number of tests run so far." msgstr "" -#: library/unittest.rst:2040 +#: library/unittest.rst:2043 msgid "" "If set to true, ``sys.stdout`` and ``sys.stderr`` will be buffered in " "between :meth:`startTest` and :meth:`stopTest` being called. Collected " @@ -2745,29 +2745,29 @@ msgid "" "error message." msgstr "" -#: library/unittest.rst:2049 +#: library/unittest.rst:2052 msgid "" "If set to true :meth:`stop` will be called on the first failure or error, " "halting the test run." msgstr "" -#: library/unittest.rst:2056 +#: library/unittest.rst:2059 msgid "If set to true then local variables will be shown in tracebacks." msgstr "" -#: library/unittest.rst:2062 +#: library/unittest.rst:2065 msgid "" "Return ``True`` if all tests run so far have passed, otherwise returns " "``False``." msgstr "" -#: library/unittest.rst:2065 +#: library/unittest.rst:2068 msgid "" "Returns ``False`` if there were any :attr:`unexpectedSuccesses` from tests " "marked with the :func:`expectedFailure` decorator." msgstr "" -#: library/unittest.rst:2071 +#: library/unittest.rst:2074 msgid "" "This method can be called to signal that the set of tests being run should " "be aborted by setting the :attr:`shouldStop` attribute to ``True``. :class:" @@ -2775,7 +2775,7 @@ msgid "" "additional tests." msgstr "" -#: library/unittest.rst:2076 +#: library/unittest.rst:2079 msgid "" "For example, this feature is used by the :class:`TextTestRunner` class to " "stop the test framework when the user signals an interrupt from the " @@ -2783,7 +2783,7 @@ msgid "" "implementations can use this in a similar manner." msgstr "" -#: library/unittest.rst:2081 +#: library/unittest.rst:2084 msgid "" "The following methods of the :class:`TestResult` class are used to maintain " "the internal data structures, and may be extended in subclasses to support " @@ -2791,141 +2791,141 @@ msgid "" "tools which support interactive reporting while tests are being run." msgstr "" -#: library/unittest.rst:2089 +#: library/unittest.rst:2092 msgid "Called when the test case *test* is about to be run." msgstr "" -#: library/unittest.rst:2093 +#: library/unittest.rst:2096 msgid "" "Called after the test case *test* has been executed, regardless of the " "outcome." msgstr "" -#: library/unittest.rst:2098 +#: library/unittest.rst:2101 msgid "Called once before any tests are executed." msgstr "" -#: library/unittest.rst:2105 +#: library/unittest.rst:2108 msgid "Called once after all tests are executed." msgstr "" -#: library/unittest.rst:2112 +#: library/unittest.rst:2115 msgid "" "Called when the test case *test* raises an unexpected exception. *err* is a " "tuple of the form returned by :func:`sys.exc_info`: ``(type, value, " "traceback)``." msgstr "" -#: library/unittest.rst:2116 +#: library/unittest.rst:2119 msgid "" "The default implementation appends a tuple ``(test, formatted_err)`` to the " "instance's :attr:`errors` attribute, where *formatted_err* is a formatted " "traceback derived from *err*." msgstr "" -#: library/unittest.rst:2123 +#: library/unittest.rst:2126 msgid "" "Called when the test case *test* signals a failure. *err* is a tuple of the " "form returned by :func:`sys.exc_info`: ``(type, value, traceback)``." msgstr "" -#: library/unittest.rst:2126 +#: library/unittest.rst:2129 msgid "" "The default implementation appends a tuple ``(test, formatted_err)`` to the " "instance's :attr:`failures` attribute, where *formatted_err* is a formatted " "traceback derived from *err*." msgstr "" -#: library/unittest.rst:2133 +#: library/unittest.rst:2136 msgid "Called when the test case *test* succeeds." msgstr "" -#: library/unittest.rst:2135 +#: library/unittest.rst:2138 msgid "The default implementation does nothing." msgstr "" -#: library/unittest.rst:2140 +#: library/unittest.rst:2143 msgid "" "Called when the test case *test* is skipped. *reason* is the reason the " "test gave for skipping." msgstr "" -#: library/unittest.rst:2143 +#: library/unittest.rst:2146 msgid "" "The default implementation appends a tuple ``(test, reason)`` to the " "instance's :attr:`skipped` attribute." msgstr "" -#: library/unittest.rst:2149 +#: library/unittest.rst:2152 msgid "" "Called when the test case *test* fails or errors, but was marked with the :" "func:`expectedFailure` decorator." msgstr "" -#: library/unittest.rst:2152 +#: library/unittest.rst:2155 msgid "" "The default implementation appends a tuple ``(test, formatted_err)`` to the " "instance's :attr:`expectedFailures` attribute, where *formatted_err* is a " "formatted traceback derived from *err*." msgstr "" -#: library/unittest.rst:2159 +#: library/unittest.rst:2162 msgid "" "Called when the test case *test* was marked with the :func:`expectedFailure` " "decorator, but succeeded." msgstr "" -#: library/unittest.rst:2162 +#: library/unittest.rst:2165 msgid "" "The default implementation appends the test to the instance's :attr:" "`unexpectedSuccesses` attribute." msgstr "" -#: library/unittest.rst:2168 +#: library/unittest.rst:2171 msgid "" "Called when a subtest finishes. *test* is the test case corresponding to " "the test method. *subtest* is a custom :class:`TestCase` instance " "describing the subtest." msgstr "" -#: library/unittest.rst:2172 +#: library/unittest.rst:2175 msgid "" "If *outcome* is :const:`None`, the subtest succeeded. Otherwise, it failed " "with an exception where *outcome* is a tuple of the form returned by :func:" "`sys.exc_info`: ``(type, value, traceback)``." msgstr "" -#: library/unittest.rst:2176 +#: library/unittest.rst:2179 msgid "" "The default implementation does nothing when the outcome is a success, and " "records subtest failures as normal failures." msgstr "" -#: library/unittest.rst:2183 +#: library/unittest.rst:2186 msgid "" "Called when the test case finishes. *elapsed* is the time represented in " "seconds, and it includes the execution of cleanup functions." msgstr "" -#: library/unittest.rst:2190 +#: library/unittest.rst:2193 msgid "" "A concrete implementation of :class:`TestResult` used by the :class:" "`TextTestRunner`. Subclasses should accept ``**kwargs`` to ensure " "compatibility as the interface changes." msgstr "" -#: library/unittest.rst:2196 +#: library/unittest.rst:2199 msgid "Added the *durations* keyword parameter." msgstr "" -#: library/unittest.rst:2201 +#: library/unittest.rst:2204 msgid "" "Instance of the :class:`TestLoader` class intended to be shared. If no " "customization of the :class:`TestLoader` is needed, this instance can be " "used instead of repeatedly creating new instances." msgstr "" -#: library/unittest.rst:2210 +#: library/unittest.rst:2213 msgid "" "A basic test runner implementation that outputs results to a stream. If " "*stream* is ``None``, the default, :data:`sys.stderr` is used as the output " @@ -2936,7 +2936,7 @@ msgid "" "unittest." msgstr "" -#: library/unittest.rst:2217 +#: library/unittest.rst:2220 msgid "" "By default this runner shows :exc:`DeprecationWarning`, :exc:" "`PendingDeprecationWarning`, :exc:`ResourceWarning` and :exc:`ImportWarning` " @@ -2946,32 +2946,32 @@ msgid "" "``None``." msgstr "" -#: library/unittest.rst:2225 +#: library/unittest.rst:2228 msgid "Added the *warnings* parameter." msgstr "" -#: library/unittest.rst:2228 +#: library/unittest.rst:2231 msgid "" "The default stream is set to :data:`sys.stderr` at instantiation time rather " "than import time." msgstr "" -#: library/unittest.rst:2232 +#: library/unittest.rst:2235 msgid "Added the *tb_locals* parameter." msgstr "" -#: library/unittest.rst:2235 +#: library/unittest.rst:2238 msgid "Added the *durations* parameter." msgstr "" -#: library/unittest.rst:2240 +#: library/unittest.rst:2243 msgid "" "This method returns the instance of ``TestResult`` used by :meth:`run`. It " "is not intended to be called directly, but can be overridden in subclasses " "to provide a custom ``TestResult``." msgstr "" -#: library/unittest.rst:2244 +#: library/unittest.rst:2247 msgid "" "``_makeResult()`` instantiates the class or callable passed in the " "``TextTestRunner`` constructor as the ``resultclass`` argument. It defaults " @@ -2979,11 +2979,11 @@ msgid "" "class is instantiated with the following arguments::" msgstr "" -#: library/unittest.rst:2249 +#: library/unittest.rst:2252 msgid "stream, descriptions, verbosity" msgstr "" -#: library/unittest.rst:2253 +#: library/unittest.rst:2256 msgid "" "This method is the main public interface to the ``TextTestRunner``. This " "method takes a :class:`TestSuite` or :class:`TestCase` instance. A :class:" @@ -2991,7 +2991,7 @@ msgid "" "run and the results printed to stdout." msgstr "" -#: library/unittest.rst:2264 +#: library/unittest.rst:2267 msgid "" "A command-line program that loads a set of tests from *module* and runs " "them; this is primarily for making test modules conveniently executable. The " @@ -2999,25 +2999,25 @@ msgid "" "of a test script::" msgstr "" -#: library/unittest.rst:2269 +#: library/unittest.rst:2272 msgid "" "if __name__ == '__main__':\n" " unittest.main()" msgstr "" -#: library/unittest.rst:2272 +#: library/unittest.rst:2275 msgid "" "You can run tests with more detailed information by passing in the verbosity " "argument::" msgstr "" -#: library/unittest.rst:2275 +#: library/unittest.rst:2278 msgid "" "if __name__ == '__main__':\n" " unittest.main(verbosity=2)" msgstr "" -#: library/unittest.rst:2278 +#: library/unittest.rst:2281 msgid "" "The *defaultTest* argument is either the name of a single test or an " "iterable of test names to run if no test names are specified via *argv*. If " @@ -3025,14 +3025,14 @@ msgid "" "tests found in *module* are run." msgstr "" -#: library/unittest.rst:2283 +#: library/unittest.rst:2286 msgid "" "The *argv* argument can be a list of options passed to the program, with the " "first element being the program name. If not specified or ``None``, the " "values of :data:`sys.argv` are used." msgstr "" -#: library/unittest.rst:2287 +#: library/unittest.rst:2290 msgid "" "The *testRunner* argument can either be a test runner class or an already " "created instance of it. By default ``main`` calls :func:`sys.exit` with an " @@ -3040,32 +3040,32 @@ msgid "" "code of 5 indicates that no tests were run or skipped." msgstr "" -#: library/unittest.rst:2292 +#: library/unittest.rst:2295 msgid "" "The *testLoader* argument has to be a :class:`TestLoader` instance, and " "defaults to :data:`defaultTestLoader`." msgstr "" -#: library/unittest.rst:2295 +#: library/unittest.rst:2298 msgid "" "``main`` supports being used from the interactive interpreter by passing in " "the argument ``exit=False``. This displays the result on standard output " "without calling :func:`sys.exit`::" msgstr "" -#: library/unittest.rst:2299 +#: library/unittest.rst:2302 msgid "" ">>> from unittest import main\n" ">>> main(module='test_module', exit=False)" msgstr "" -#: library/unittest.rst:2302 +#: library/unittest.rst:2305 msgid "" "The *failfast*, *catchbreak* and *buffer* parameters have the same effect as " "the same-name `command-line options`_." msgstr "" -#: library/unittest.rst:2305 +#: library/unittest.rst:2308 msgid "" "The *warnings* argument specifies the :ref:`warning filter ` " "that should be used while running the tests. If it's not specified, it will " @@ -3074,60 +3074,60 @@ msgid "" "to ``'default'``." msgstr "" -#: library/unittest.rst:2311 +#: library/unittest.rst:2314 msgid "" "Calling ``main`` returns an object with the ``result`` attribute that " "contains the result of the tests run as a :class:`unittest.TestResult`." msgstr "" -#: library/unittest.rst:2314 +#: library/unittest.rst:2317 msgid "The *exit* parameter was added." msgstr "" -#: library/unittest.rst:2317 +#: library/unittest.rst:2320 msgid "" "The *verbosity*, *failfast*, *catchbreak*, *buffer* and *warnings* " "parameters were added." msgstr "" -#: library/unittest.rst:2321 +#: library/unittest.rst:2324 msgid "" "The *defaultTest* parameter was changed to also accept an iterable of test " "names." msgstr "" -#: library/unittest.rst:2329 +#: library/unittest.rst:2332 msgid "load_tests Protocol" msgstr "" -#: library/unittest.rst:2333 +#: library/unittest.rst:2336 msgid "" "Modules or packages can customize how tests are loaded from them during " "normal test runs or test discovery by implementing a function called " "``load_tests``." msgstr "" -#: library/unittest.rst:2336 +#: library/unittest.rst:2339 msgid "" "If a test module defines ``load_tests`` it will be called by :meth:" "`TestLoader.loadTestsFromModule` with the following arguments::" msgstr "" -#: library/unittest.rst:2371 +#: library/unittest.rst:2374 msgid "load_tests(loader, standard_tests, pattern)" msgstr "" -#: library/unittest.rst:2341 +#: library/unittest.rst:2344 msgid "" "where *pattern* is passed straight through from ``loadTestsFromModule``. It " "defaults to ``None``." msgstr "" -#: library/unittest.rst:2344 +#: library/unittest.rst:2347 msgid "It should return a :class:`TestSuite`." msgstr "" -#: library/unittest.rst:2346 +#: library/unittest.rst:2349 msgid "" "*loader* is the instance of :class:`TestLoader` doing the loading. " "*standard_tests* are the tests that would be loaded by default from the " @@ -3136,13 +3136,13 @@ msgid "" "packages as part of test discovery." msgstr "" -#: library/unittest.rst:2352 +#: library/unittest.rst:2355 msgid "" "A typical ``load_tests`` function that loads tests from a specific set of :" "class:`TestCase` classes may look like::" msgstr "" -#: library/unittest.rst:2355 +#: library/unittest.rst:2358 msgid "" "test_cases = (TestCase1, TestCase2, TestCase3)\n" "\n" @@ -3154,7 +3154,7 @@ msgid "" " return suite" msgstr "" -#: library/unittest.rst:2364 +#: library/unittest.rst:2367 msgid "" "If discovery is started in a directory containing a package, either from the " "command line or by calling :meth:`TestLoader.discover`, then the package :" @@ -3164,21 +3164,21 @@ msgid "" "left up to ``load_tests`` which is called with the following arguments::" msgstr "" -#: library/unittest.rst:2373 +#: library/unittest.rst:2376 msgid "" "This should return a :class:`TestSuite` representing all the tests from the " "package. (``standard_tests`` will only contain tests collected from :file:" "`__init__.py`.)" msgstr "" -#: library/unittest.rst:2377 +#: library/unittest.rst:2380 msgid "" "Because the pattern is passed into ``load_tests`` the package is free to " "continue (and potentially modify) test discovery. A 'do nothing' " "``load_tests`` function for a test package would look like::" msgstr "" -#: library/unittest.rst:2381 +#: library/unittest.rst:2384 msgid "" "def load_tests(loader, standard_tests, pattern):\n" " # top level directory cached on loader instance\n" @@ -3188,17 +3188,17 @@ msgid "" " return standard_tests" msgstr "" -#: library/unittest.rst:2388 +#: library/unittest.rst:2391 msgid "" "Discovery no longer checks package names for matching *pattern* due to the " "impossibility of package names matching the default pattern." msgstr "" -#: library/unittest.rst:2395 +#: library/unittest.rst:2398 msgid "Class and Module Fixtures" msgstr "" -#: library/unittest.rst:2397 +#: library/unittest.rst:2400 msgid "" "Class and module level fixtures are implemented in :class:`TestSuite`. When " "the test suite encounters a test from a new class then :meth:`tearDownClass` " @@ -3206,27 +3206,27 @@ msgid "" "`setUpClass` from the new class." msgstr "" -#: library/unittest.rst:2402 +#: library/unittest.rst:2405 msgid "" "Similarly if a test is from a different module from the previous test then " "``tearDownModule`` from the previous module is run, followed by " "``setUpModule`` from the new module." msgstr "" -#: library/unittest.rst:2406 +#: library/unittest.rst:2409 msgid "" "After all the tests have run the final ``tearDownClass`` and " "``tearDownModule`` are run." msgstr "" -#: library/unittest.rst:2409 +#: library/unittest.rst:2412 msgid "" "Note that shared fixtures do not play well with [potential] features like " "test parallelization and they break test isolation. They should be used with " "care." msgstr "" -#: library/unittest.rst:2412 +#: library/unittest.rst:2415 msgid "" "The default ordering of tests created by the unittest test loaders is to " "group all tests from the same modules and classes together. This will lead " @@ -3236,14 +3236,14 @@ msgid "" "functions may be called multiple times in a single test run." msgstr "" -#: library/unittest.rst:2419 +#: library/unittest.rst:2422 msgid "" "Shared fixtures are not intended to work with suites with non-standard " "ordering. A ``BaseTestSuite`` still exists for frameworks that don't want to " "support shared fixtures." msgstr "" -#: library/unittest.rst:2423 +#: library/unittest.rst:2426 msgid "" "If there are any exceptions raised during one of the shared fixture " "functions the test is reported as an error. Because there is no " @@ -3253,15 +3253,15 @@ msgid "" "matter, but if you are a framework author it may be relevant." msgstr "" -#: library/unittest.rst:2432 +#: library/unittest.rst:2435 msgid "setUpClass and tearDownClass" msgstr "" -#: library/unittest.rst:2434 +#: library/unittest.rst:2437 msgid "These must be implemented as class methods::" msgstr "" -#: library/unittest.rst:2436 +#: library/unittest.rst:2439 msgid "" "import unittest\n" "\n" @@ -3275,14 +3275,14 @@ msgid "" " cls._connection.destroy()" msgstr "" -#: library/unittest.rst:2447 +#: library/unittest.rst:2450 msgid "" "If you want the ``setUpClass`` and ``tearDownClass`` on base classes called " "then you must call up to them yourself. The implementations in :class:" "`TestCase` are empty." msgstr "" -#: library/unittest.rst:2451 +#: library/unittest.rst:2454 msgid "" "If an exception is raised during a ``setUpClass`` then the tests in the " "class are not run and the ``tearDownClass`` is not run. Skipped classes will " @@ -3291,15 +3291,15 @@ msgid "" "instead of as an error." msgstr "" -#: library/unittest.rst:2459 +#: library/unittest.rst:2462 msgid "setUpModule and tearDownModule" msgstr "" -#: library/unittest.rst:2461 +#: library/unittest.rst:2464 msgid "These should be implemented as functions::" msgstr "" -#: library/unittest.rst:2463 +#: library/unittest.rst:2466 msgid "" "def setUpModule():\n" " createConnection()\n" @@ -3308,7 +3308,7 @@ msgid "" " closeConnection()" msgstr "" -#: library/unittest.rst:2469 +#: library/unittest.rst:2472 msgid "" "If an exception is raised in a ``setUpModule`` then none of the tests in the " "module will be run and the ``tearDownModule`` will not be run. If the " @@ -3316,13 +3316,13 @@ msgid "" "having been skipped instead of as an error." msgstr "" -#: library/unittest.rst:2474 +#: library/unittest.rst:2477 msgid "" "To add cleanup code that must be run even in the case of an exception, use " "``addModuleCleanup``:" msgstr "" -#: library/unittest.rst:2480 +#: library/unittest.rst:2483 msgid "" "Add a function to be called after :func:`tearDownModule` to cleanup " "resources used during the test class. Functions will be called in reverse " @@ -3331,13 +3331,13 @@ msgid "" "`addModuleCleanup` when they are added." msgstr "" -#: library/unittest.rst:2486 +#: library/unittest.rst:2489 msgid "" "If :meth:`setUpModule` fails, meaning that :func:`tearDownModule` is not " "called, then any cleanup functions added will still be called." msgstr "" -#: library/unittest.rst:2494 +#: library/unittest.rst:2497 msgid "" "Enter the supplied :term:`context manager`. If successful, also add its :" "meth:`~object.__exit__` method as a cleanup function by :func:" @@ -3345,30 +3345,30 @@ msgid "" "method." msgstr "" -#: library/unittest.rst:2504 +#: library/unittest.rst:2507 msgid "" "This function is called unconditionally after :func:`tearDownModule`, or " "after :func:`setUpModule` if :func:`setUpModule` raises an exception." msgstr "" -#: library/unittest.rst:2507 +#: library/unittest.rst:2510 msgid "" "It is responsible for calling all the cleanup functions added by :func:" "`addModuleCleanup`. If you need cleanup functions to be called *prior* to :" "func:`tearDownModule` then you can call :func:`doModuleCleanups` yourself." msgstr "" -#: library/unittest.rst:2512 +#: library/unittest.rst:2515 msgid "" ":func:`doModuleCleanups` pops methods off the stack of cleanup functions one " "at a time, so it can be called at any time." msgstr "" -#: library/unittest.rst:2519 +#: library/unittest.rst:2522 msgid "Signal Handling" msgstr "" -#: library/unittest.rst:2523 +#: library/unittest.rst:2526 msgid "" "The :option:`-c/--catch ` command-line option to unittest, " "along with the ``catchbreak`` parameter to :func:`unittest.main`, provide " @@ -3378,7 +3378,7 @@ msgid "" "A second control-c will raise a :exc:`KeyboardInterrupt` in the usual way." msgstr "" -#: library/unittest.rst:2530 +#: library/unittest.rst:2533 msgid "" "The control-c handling signal handler attempts to remain compatible with " "code or tests that install their own :const:`signal.SIGINT` handler. If the " @@ -3390,48 +3390,48 @@ msgid "" "disabled the :func:`removeHandler` decorator can be used." msgstr "" -#: library/unittest.rst:2539 +#: library/unittest.rst:2542 msgid "" "There are a few utility functions for framework authors to enable control-c " "handling functionality within test frameworks." msgstr "" -#: library/unittest.rst:2544 +#: library/unittest.rst:2547 msgid "" "Install the control-c handler. When a :const:`signal.SIGINT` is received " "(usually in response to the user pressing control-c) all registered results " "have :meth:`~TestResult.stop` called." msgstr "" -#: library/unittest.rst:2551 +#: library/unittest.rst:2554 msgid "" "Register a :class:`TestResult` object for control-c handling. Registering a " "result stores a weak reference to it, so it doesn't prevent the result from " "being garbage collected." msgstr "" -#: library/unittest.rst:2555 +#: library/unittest.rst:2558 msgid "" "Registering a :class:`TestResult` object has no side-effects if control-c " "handling is not enabled, so test frameworks can unconditionally register all " "results they create independently of whether or not handling is enabled." msgstr "" -#: library/unittest.rst:2562 +#: library/unittest.rst:2565 msgid "" "Remove a registered result. Once a result has been removed then :meth:" "`~TestResult.stop` will no longer be called on that result object in " "response to a control-c." msgstr "" -#: library/unittest.rst:2569 +#: library/unittest.rst:2572 msgid "" "When called without arguments this function removes the control-c handler if " "it has been installed. This function can also be used as a test decorator to " "temporarily remove the handler while the test is being executed::" msgstr "" -#: library/unittest.rst:2573 +#: library/unittest.rst:2576 msgid "" "@unittest.removeHandler\n" "def test_signal_handling(self):\n" diff --git a/library/urllib.parse.po b/library/urllib.parse.po index 3dd0601e1..d761277dc 100644 --- a/library/urllib.parse.po +++ b/library/urllib.parse.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -147,19 +147,19 @@ msgid "" "accessed by index or as named attributes, which are:" msgstr "" -#: library/urllib.parse.rst:302 library/urllib.parse.rst:415 +#: library/urllib.parse.rst:302 library/urllib.parse.rst:424 msgid "Attribute" msgstr "" -#: library/urllib.parse.rst:302 library/urllib.parse.rst:415 +#: library/urllib.parse.rst:302 library/urllib.parse.rst:424 msgid "Index" msgstr "" -#: library/urllib.parse.rst:302 library/urllib.parse.rst:415 +#: library/urllib.parse.rst:302 library/urllib.parse.rst:424 msgid "Value" msgstr "" -#: library/urllib.parse.rst:302 library/urllib.parse.rst:415 +#: library/urllib.parse.rst:302 library/urllib.parse.rst:424 msgid "Value if not present" msgstr "" @@ -167,7 +167,7 @@ msgstr "" msgid ":attr:`scheme`" msgstr "" -#: library/urllib.parse.rst:304 library/urllib.parse.rst:417 +#: library/urllib.parse.rst:304 library/urllib.parse.rst:426 msgid "0" msgstr "" @@ -183,7 +183,7 @@ msgstr "" msgid ":attr:`netloc`" msgstr "" -#: library/urllib.parse.rst:306 library/urllib.parse.rst:419 +#: library/urllib.parse.rst:306 library/urllib.parse.rst:428 msgid "1" msgstr "" @@ -193,7 +193,7 @@ msgstr "" #: library/urllib.parse.rst:119 library/urllib.parse.rst:124 #: library/urllib.parse.rst:306 library/urllib.parse.rst:310 -#: library/urllib.parse.rst:417 library/urllib.parse.rst:419 +#: library/urllib.parse.rst:426 library/urllib.parse.rst:428 msgid "empty string" msgstr "" @@ -233,7 +233,7 @@ msgstr "" msgid "Query component" msgstr "" -#: library/urllib.parse.rst:312 library/urllib.parse.rst:419 +#: library/urllib.parse.rst:312 library/urllib.parse.rst:428 msgid ":attr:`fragment`" msgstr "" @@ -241,7 +241,7 @@ msgstr "" msgid "5" msgstr "" -#: library/urllib.parse.rst:312 library/urllib.parse.rst:419 +#: library/urllib.parse.rst:312 library/urllib.parse.rst:428 msgid "Fragment identifier" msgstr "" @@ -457,7 +457,7 @@ msgid "" "(addressing scheme, network location, path, query, fragment identifier)." msgstr "" -#: library/urllib.parse.rst:411 +#: library/urllib.parse.rst:420 msgid "" "The return value is a :term:`named tuple`, its items can be accessed by " "index or as named attributes:" @@ -528,11 +528,20 @@ msgid "" "and :func:`urlunsplit`, removing possible *scheme* and *netloc* parts." msgstr "" -#: library/urllib.parse.rst:401 +#: library/urllib.parse.rst:400 +msgid "" +"Because an absolute URL may be passed as the ``url`` parameter, it is " +"generally **not secure** to use ``urljoin`` with an attacker-controlled " +"``url``. For example in, ``urljoin(\"https://website.com/users/\", " +"username)``, if ``username`` can contain an absolute URL, the result of " +"``urljoin`` will be the absolute URL." +msgstr "" + +#: library/urllib.parse.rst:410 msgid "Behavior updated to match the semantics defined in :rfc:`3986`." msgstr "" -#: library/urllib.parse.rst:406 +#: library/urllib.parse.rst:415 msgid "" "If *url* contains a fragment identifier, return a modified version of *url* " "with no fragment identifier, and the fragment identifier as a separate " @@ -540,25 +549,25 @@ msgid "" "unmodified and an empty string." msgstr "" -#: library/urllib.parse.rst:417 +#: library/urllib.parse.rst:426 msgid ":attr:`url`" msgstr "" -#: library/urllib.parse.rst:417 +#: library/urllib.parse.rst:426 msgid "URL with no fragment" msgstr "" -#: library/urllib.parse.rst:422 +#: library/urllib.parse.rst:431 msgid "" "See section :ref:`urlparse-result-object` for more information on the result " "object." msgstr "" -#: library/urllib.parse.rst:425 +#: library/urllib.parse.rst:434 msgid "Result is a structured object rather than a simple 2-tuple." msgstr "" -#: library/urllib.parse.rst:430 +#: library/urllib.parse.rst:439 msgid "" "Extract the url from a wrapped URL (that is, a string formatted as ````, ````, ``URL:scheme://host/path`` " @@ -566,11 +575,11 @@ msgid "" "without changes." msgstr "" -#: library/urllib.parse.rst:438 +#: library/urllib.parse.rst:447 msgid "URL parsing security" msgstr "" -#: library/urllib.parse.rst:440 +#: library/urllib.parse.rst:449 msgid "" "The :func:`urlsplit` and :func:`urlparse` APIs do not perform **validation** " "of inputs. They may not raise errors on inputs that other applications " @@ -579,14 +588,14 @@ msgid "" "rather than purity." msgstr "" -#: library/urllib.parse.rst:446 +#: library/urllib.parse.rst:455 msgid "" "Instead of raising an exception on unusual input, they may instead return " "some component parts as empty strings. Or components may contain more than " "perhaps they should." msgstr "" -#: library/urllib.parse.rst:450 +#: library/urllib.parse.rst:459 msgid "" "We recommend that users of these APIs where the values may be used anywhere " "with security implications code defensively. Do some verification within " @@ -595,7 +604,7 @@ msgid "" "that ``hostname``? etc." msgstr "" -#: library/urllib.parse.rst:456 +#: library/urllib.parse.rst:465 msgid "" "What constitutes a URL is not universally well defined. Different " "applications have different needs and desired constraints. For instance the " @@ -607,11 +616,11 @@ msgid "" "API behavior changes." msgstr "" -#: library/urllib.parse.rst:467 +#: library/urllib.parse.rst:476 msgid "Parsing ASCII Encoded Bytes" msgstr "" -#: library/urllib.parse.rst:469 +#: library/urllib.parse.rst:478 msgid "" "The URL parsing functions were originally designed to operate on character " "strings only. In practice, it is useful to be able to manipulate properly " @@ -620,14 +629,14 @@ msgid "" "`bytearray` objects in addition to :class:`str` objects." msgstr "" -#: library/urllib.parse.rst:475 +#: library/urllib.parse.rst:484 msgid "" "If :class:`str` data is passed in, the result will also contain only :class:" "`str` data. If :class:`bytes` or :class:`bytearray` data is passed in, the " "result will contain only :class:`bytes` data." msgstr "" -#: library/urllib.parse.rst:479 +#: library/urllib.parse.rst:488 msgid "" "Attempting to mix :class:`str` data with :class:`bytes` or :class:" "`bytearray` in a single function call will result in a :exc:`TypeError` " @@ -635,7 +644,7 @@ msgid "" "trigger :exc:`UnicodeDecodeError`." msgstr "" -#: library/urllib.parse.rst:484 +#: library/urllib.parse.rst:493 msgid "" "To support easier conversion of result objects between :class:`str` and :" "class:`bytes`, all return values from URL parsing functions provide either " @@ -648,14 +657,14 @@ msgid "" "`str` data (for :meth:`decode` methods)." msgstr "" -#: library/urllib.parse.rst:495 +#: library/urllib.parse.rst:504 msgid "" "Applications that need to operate on potentially improperly quoted URLs that " "may contain non-ASCII data will need to do their own decoding from bytes to " "characters before invoking the URL parsing methods." msgstr "" -#: library/urllib.parse.rst:499 +#: library/urllib.parse.rst:508 msgid "" "The behaviour described in this section applies only to the URL parsing " "functions. The URL quoting functions use their own rules when producing or " @@ -663,15 +672,15 @@ msgid "" "URL quoting functions." msgstr "" -#: library/urllib.parse.rst:504 +#: library/urllib.parse.rst:513 msgid "URL parsing functions now accept ASCII encoded byte sequences" msgstr "" -#: library/urllib.parse.rst:511 +#: library/urllib.parse.rst:520 msgid "Structured Parse Results" msgstr "" -#: library/urllib.parse.rst:513 +#: library/urllib.parse.rst:522 msgid "" "The result objects from the :func:`urlparse`, :func:`urlsplit` and :func:" "`urldefrag` functions are subclasses of the :class:`tuple` type. These " @@ -680,7 +689,7 @@ msgid "" "section, as well as an additional method:" msgstr "" -#: library/urllib.parse.rst:521 +#: library/urllib.parse.rst:530 msgid "" "Return the re-combined version of the original URL as a string. This may " "differ from the original URL in that the scheme may be normalized to lower " @@ -688,72 +697,72 @@ msgid "" "queries, and fragment identifiers will be removed." msgstr "" -#: library/urllib.parse.rst:526 +#: library/urllib.parse.rst:535 msgid "" "For :func:`urldefrag` results, only empty fragment identifiers will be " "removed. For :func:`urlsplit` and :func:`urlparse` results, all noted " "changes will be made to the URL returned by this method." msgstr "" -#: library/urllib.parse.rst:530 +#: library/urllib.parse.rst:539 msgid "" "The result of this method remains unchanged if passed back through the " "original parsing function:" msgstr "" -#: library/urllib.parse.rst:543 +#: library/urllib.parse.rst:552 msgid "" "The following classes provide the implementations of the structured parse " "results when operating on :class:`str` objects:" msgstr "" -#: library/urllib.parse.rst:548 +#: library/urllib.parse.rst:557 msgid "" "Concrete class for :func:`urldefrag` results containing :class:`str` data. " "The :meth:`encode` method returns a :class:`DefragResultBytes` instance." msgstr "" -#: library/urllib.parse.rst:556 +#: library/urllib.parse.rst:565 msgid "" "Concrete class for :func:`urlparse` results containing :class:`str` data. " "The :meth:`encode` method returns a :class:`ParseResultBytes` instance." msgstr "" -#: library/urllib.parse.rst:562 +#: library/urllib.parse.rst:571 msgid "" "Concrete class for :func:`urlsplit` results containing :class:`str` data. " "The :meth:`encode` method returns a :class:`SplitResultBytes` instance." msgstr "" -#: library/urllib.parse.rst:567 +#: library/urllib.parse.rst:576 msgid "" "The following classes provide the implementations of the parse results when " "operating on :class:`bytes` or :class:`bytearray` objects:" msgstr "" -#: library/urllib.parse.rst:572 +#: library/urllib.parse.rst:581 msgid "" "Concrete class for :func:`urldefrag` results containing :class:`bytes` data. " "The :meth:`decode` method returns a :class:`DefragResult` instance." msgstr "" -#: library/urllib.parse.rst:580 +#: library/urllib.parse.rst:589 msgid "" "Concrete class for :func:`urlparse` results containing :class:`bytes` data. " "The :meth:`decode` method returns a :class:`ParseResult` instance." msgstr "" -#: library/urllib.parse.rst:588 +#: library/urllib.parse.rst:597 msgid "" "Concrete class for :func:`urlsplit` results containing :class:`bytes` data. " "The :meth:`decode` method returns a :class:`SplitResult` instance." msgstr "" -#: library/urllib.parse.rst:596 +#: library/urllib.parse.rst:605 msgid "URL Quoting" msgstr "" -#: library/urllib.parse.rst:598 +#: library/urllib.parse.rst:607 msgid "" "The URL quoting functions focus on taking program data and making it safe " "for use as URL components by quoting special characters and appropriately " @@ -762,7 +771,7 @@ msgid "" "isn't already covered by the URL parsing functions above." msgstr "" -#: library/urllib.parse.rst:606 +#: library/urllib.parse.rst:615 msgid "" "Replace special characters in *string* using the :samp:`%{xx}` escape. " "Letters, digits, and the characters ``'_.-~'`` are never quoted. By default, " @@ -771,17 +780,17 @@ msgid "" "not be quoted --- its default value is ``'/'``." msgstr "" -#: library/urllib.parse.rst:658 library/urllib.parse.rst:687 +#: library/urllib.parse.rst:667 library/urllib.parse.rst:696 msgid "*string* may be either a :class:`str` or a :class:`bytes` object." msgstr "" -#: library/urllib.parse.rst:614 +#: library/urllib.parse.rst:623 msgid "" "Moved from :rfc:`2396` to :rfc:`3986` for quoting URL strings. \"~\" is now " "included in the set of unreserved characters." msgstr "" -#: library/urllib.parse.rst:618 +#: library/urllib.parse.rst:627 msgid "" "The optional *encoding* and *errors* parameters specify how to deal with non-" "ASCII characters, as accepted by the :meth:`str.encode` method. *encoding* " @@ -791,17 +800,17 @@ msgid "" "`TypeError` is raised." msgstr "" -#: library/urllib.parse.rst:626 +#: library/urllib.parse.rst:635 msgid "" "Note that ``quote(string, safe, encoding, errors)`` is equivalent to " "``quote_from_bytes(string.encode(encoding, errors), safe)``." msgstr "" -#: library/urllib.parse.rst:629 +#: library/urllib.parse.rst:638 msgid "Example: ``quote('/El Niño/')`` yields ``'/El%20Ni%C3%B1o/'``." msgstr "" -#: library/urllib.parse.rst:634 +#: library/urllib.parse.rst:643 msgid "" "Like :func:`quote`, but also replace spaces with plus signs, as required for " "quoting HTML form values when building up a query string to go into a URL. " @@ -809,21 +818,21 @@ msgid "" "*safe*. It also does not have *safe* default to ``'/'``." msgstr "" -#: library/urllib.parse.rst:639 +#: library/urllib.parse.rst:648 msgid "Example: ``quote_plus('/El Niño/')`` yields ``'%2FEl+Ni%C3%B1o%2F'``." msgstr "" -#: library/urllib.parse.rst:644 +#: library/urllib.parse.rst:653 msgid "" "Like :func:`quote`, but accepts a :class:`bytes` object rather than a :class:" "`str`, and does not perform string-to-bytes encoding." msgstr "" -#: library/urllib.parse.rst:647 +#: library/urllib.parse.rst:656 msgid "Example: ``quote_from_bytes(b'a&\\xef')`` yields ``'a%26%EF'``." msgstr "" -#: library/urllib.parse.rst:653 +#: library/urllib.parse.rst:662 msgid "" "Replace :samp:`%{xx}` escapes with their single-character equivalent. The " "optional *encoding* and *errors* parameters specify how to decode percent-" @@ -831,52 +840,52 @@ msgid "" "decode` method." msgstr "" -#: library/urllib.parse.rst:660 +#: library/urllib.parse.rst:669 msgid "" "*encoding* defaults to ``'utf-8'``. *errors* defaults to ``'replace'``, " "meaning invalid sequences are replaced by a placeholder character." msgstr "" -#: library/urllib.parse.rst:664 +#: library/urllib.parse.rst:673 msgid "Example: ``unquote('/El%20Ni%C3%B1o/')`` yields ``'/El Niño/'``." msgstr "" -#: library/urllib.parse.rst:666 +#: library/urllib.parse.rst:675 msgid "" "*string* parameter supports bytes and str objects (previously only str)." msgstr "" -#: library/urllib.parse.rst:674 +#: library/urllib.parse.rst:683 msgid "" "Like :func:`unquote`, but also replace plus signs with spaces, as required " "for unquoting HTML form values." msgstr "" -#: library/urllib.parse.rst:677 +#: library/urllib.parse.rst:686 msgid "*string* must be a :class:`str`." msgstr "" -#: library/urllib.parse.rst:679 +#: library/urllib.parse.rst:688 msgid "Example: ``unquote_plus('/El+Ni%C3%B1o/')`` yields ``'/El Niño/'``." msgstr "" -#: library/urllib.parse.rst:684 +#: library/urllib.parse.rst:693 msgid "" "Replace :samp:`%{xx}` escapes with their single-octet equivalent, and return " "a :class:`bytes` object." msgstr "" -#: library/urllib.parse.rst:689 +#: library/urllib.parse.rst:698 msgid "" "If it is a :class:`str`, unescaped non-ASCII characters in *string* are " "encoded into UTF-8 bytes." msgstr "" -#: library/urllib.parse.rst:692 +#: library/urllib.parse.rst:701 msgid "Example: ``unquote_to_bytes('a%26%EF')`` yields ``b'a&\\xef'``." msgstr "" -#: library/urllib.parse.rst:698 +#: library/urllib.parse.rst:707 msgid "" "Convert a mapping object or a sequence of two-element tuples, which may " "contain :class:`str` or :class:`bytes` objects, to a percent-encoded ASCII " @@ -885,7 +894,7 @@ msgid "" "be encoded to bytes, otherwise it would result in a :exc:`TypeError`." msgstr "" -#: library/urllib.parse.rst:705 +#: library/urllib.parse.rst:714 msgid "" "The resulting string is a series of ``key=value`` pairs separated by ``'&'`` " "characters, where both *key* and *value* are quoted using the *quote_via* " @@ -898,7 +907,7 @@ msgid "" "``quote`` and specify a value for *safe*." msgstr "" -#: library/urllib.parse.rst:715 +#: library/urllib.parse.rst:724 msgid "" "When a sequence of two-element tuples is used as the *query* argument, the " "first element of each tuple is a key and the second is a value. The value " @@ -909,49 +918,49 @@ msgid "" "order of parameter tuples in the sequence." msgstr "" -#: library/urllib.parse.rst:723 +#: library/urllib.parse.rst:732 msgid "" "The *safe*, *encoding*, and *errors* parameters are passed down to " "*quote_via* (the *encoding* and *errors* parameters are only passed when a " "query element is a :class:`str`)." msgstr "" -#: library/urllib.parse.rst:727 +#: library/urllib.parse.rst:736 msgid "" "To reverse this encoding process, :func:`parse_qs` and :func:`parse_qsl` are " "provided in this module to parse query strings into Python data structures." msgstr "" -#: library/urllib.parse.rst:730 +#: library/urllib.parse.rst:739 msgid "" "Refer to :ref:`urllib examples ` to find out how the :func:" "`urllib.parse.urlencode` method can be used for generating the query string " "of a URL or data for a POST request." msgstr "" -#: library/urllib.parse.rst:734 +#: library/urllib.parse.rst:743 msgid "*query* supports bytes and string objects." msgstr "" -#: library/urllib.parse.rst:737 +#: library/urllib.parse.rst:746 msgid "Added the *quote_via* parameter." msgstr "" -#: library/urllib.parse.rst:743 +#: library/urllib.parse.rst:752 msgid "`WHATWG`_ - URL Living standard" msgstr "" -#: library/urllib.parse.rst:744 +#: library/urllib.parse.rst:753 msgid "" "Working Group for the URL Standard that defines URLs, domains, IP addresses, " "the application/x-www-form-urlencoded format, and their API." msgstr "" -#: library/urllib.parse.rst:747 +#: library/urllib.parse.rst:756 msgid ":rfc:`3986` - Uniform Resource Identifiers" msgstr "" -#: library/urllib.parse.rst:748 +#: library/urllib.parse.rst:757 msgid "" "This is the current standard (STD66). Any changes to urllib.parse module " "should conform to this. Certain deviations could be observed, which are " @@ -959,48 +968,48 @@ msgid "" "requirements as commonly observed in major browsers." msgstr "" -#: library/urllib.parse.rst:753 +#: library/urllib.parse.rst:762 msgid ":rfc:`2732` - Format for Literal IPv6 Addresses in URL's." msgstr "" -#: library/urllib.parse.rst:754 +#: library/urllib.parse.rst:763 msgid "This specifies the parsing requirements of IPv6 URLs." msgstr "" -#: library/urllib.parse.rst:756 +#: library/urllib.parse.rst:765 msgid ":rfc:`2396` - Uniform Resource Identifiers (URI): Generic Syntax" msgstr "" -#: library/urllib.parse.rst:757 +#: library/urllib.parse.rst:766 msgid "" "Document describing the generic syntactic requirements for both Uniform " "Resource Names (URNs) and Uniform Resource Locators (URLs)." msgstr "" -#: library/urllib.parse.rst:760 +#: library/urllib.parse.rst:769 msgid ":rfc:`2368` - The mailto URL scheme." msgstr "" -#: library/urllib.parse.rst:761 +#: library/urllib.parse.rst:770 msgid "Parsing requirements for mailto URL schemes." msgstr "" -#: library/urllib.parse.rst:763 +#: library/urllib.parse.rst:772 msgid ":rfc:`1808` - Relative Uniform Resource Locators" msgstr "" -#: library/urllib.parse.rst:764 +#: library/urllib.parse.rst:773 msgid "" "This Request For Comments includes the rules for joining an absolute and a " "relative URL, including a fair number of \"Abnormal Examples\" which govern " "the treatment of border cases." msgstr "" -#: library/urllib.parse.rst:768 +#: library/urllib.parse.rst:777 msgid ":rfc:`1738` - Uniform Resource Locators (URL)" msgstr "" -#: library/urllib.parse.rst:769 +#: library/urllib.parse.rst:778 msgid "This specifies the formal syntax and semantics of absolute URLs." msgstr "" diff --git a/library/urllib.request.po b/library/urllib.request.po index 145b2e9d0..29fa0407c 100644 --- a/library/urllib.request.po +++ b/library/urllib.request.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH \n" @@ -239,21 +239,38 @@ msgstr "" #: library/urllib.request.rst:163 msgid "" -"Convert the pathname *path* from the local syntax for a path to the form " -"used in the path component of a URL. This does not produce a complete URL. " -"The return value will already be quoted using the :func:`~urllib.parse." -"quote` function." +"Convert the given local path to a ``file:`` URL. This function uses :func:" +"`~urllib.parse.quote` function to encode the path. For historical reasons, " +"the return value omits the ``file:`` scheme prefix. This example shows the " +"function being used on Windows::" msgstr "" -#: library/urllib.request.rst:170 +#: library/urllib.request.rst:168 msgid "" -"Convert the path component *path* from a percent-encoded URL to the local " -"syntax for a path. This does not accept a complete URL. This function " -"uses :func:`~urllib.parse.unquote` to decode *path*." +">>> from urllib.request import pathname2url\n" +">>> path = 'C:\\\\Program Files'\n" +">>> 'file:' + pathname2url(path)\n" +"'file:///C:/Program%20Files'" msgstr "" #: library/urllib.request.rst:176 msgid "" +"Convert the given ``file:`` URL to a local path. This function uses :func:" +"`~urllib.parse.unquote` to decode the URL. For historical reasons, the given " +"value *must* omit the ``file:`` scheme prefix. This example shows the " +"function being used on Windows::" +msgstr "" + +#: library/urllib.request.rst:181 +msgid "" +">>> from urllib.request import url2pathname\n" +">>> url = 'file:///C:/Program%20Files'\n" +">>> url2pathname(url.removeprefix('file:'))\n" +"'C:\\\\Program Files'" +msgstr "" + +#: library/urllib.request.rst:188 +msgid "" "This helper function returns a dictionary of scheme to proxy server URL " "mappings. It scans the environment for variables named ``_proxy``, " "in a case insensitive approach, for all operating systems first, and when it " @@ -262,7 +279,7 @@ msgid "" "uppercase environment variables exist (and disagree), lowercase is preferred." msgstr "" -#: library/urllib.request.rst:186 +#: library/urllib.request.rst:198 msgid "" "If the environment variable ``REQUEST_METHOD`` is set, which usually " "indicates your script is running in a CGI environment, the environment " @@ -273,19 +290,19 @@ msgid "" "(or at least the ``_proxy`` suffix)." msgstr "" -#: library/urllib.request.rst:195 +#: library/urllib.request.rst:207 msgid "The following classes are provided:" msgstr "" -#: library/urllib.request.rst:199 +#: library/urllib.request.rst:211 msgid "This class is an abstraction of a URL request." msgstr "" -#: library/urllib.request.rst:201 +#: library/urllib.request.rst:213 msgid "*url* should be a string containing a valid, properly encoded URL." msgstr "" -#: library/urllib.request.rst:203 +#: library/urllib.request.rst:215 msgid "" "*data* must be an object specifying additional data to send to the server, " "or ``None`` if no such data is needed. Currently HTTP requests are the only " @@ -298,7 +315,7 @@ msgid "" "iterables." msgstr "" -#: library/urllib.request.rst:213 +#: library/urllib.request.rst:225 msgid "" "For an HTTP POST request method, *data* should be a buffer in the standard :" "mimetype:`application/x-www-form-urlencoded` format. The :func:`urllib." @@ -307,7 +324,7 @@ msgid "" "being used as the *data* parameter." msgstr "" -#: library/urllib.request.rst:219 +#: library/urllib.request.rst:231 msgid "" "*headers* should be a dictionary, and will be treated as if :meth:" "`add_header` was called with each key and value as arguments. This is often " @@ -320,7 +337,7 @@ msgid "" "case." msgstr "" -#: library/urllib.request.rst:230 +#: library/urllib.request.rst:242 msgid "" "An appropriate ``Content-Type`` header should be included if the *data* " "argument is present. If this header has not been provided and *data* is not " @@ -328,13 +345,13 @@ msgid "" "as a default." msgstr "" -#: library/urllib.request.rst:235 +#: library/urllib.request.rst:247 msgid "" "The next two arguments are only of interest for correct handling of third-" "party HTTP cookies:" msgstr "" -#: library/urllib.request.rst:238 +#: library/urllib.request.rst:250 msgid "" "*origin_req_host* should be the request-host of the origin transaction, as " "defined by :rfc:`2965`. It defaults to ``http.cookiejar." @@ -344,7 +361,7 @@ msgid "" "for the page containing the image." msgstr "" -#: library/urllib.request.rst:246 +#: library/urllib.request.rst:258 msgid "" "*unverifiable* should indicate whether the request is unverifiable, as " "defined by :rfc:`2965`. It defaults to ``False``. An unverifiable request " @@ -353,7 +370,7 @@ msgid "" "option to approve the automatic fetching of the image, this should be true." msgstr "" -#: library/urllib.request.rst:253 +#: library/urllib.request.rst:265 msgid "" "*method* should be a string that indicates the HTTP request method that will " "be used (e.g. ``'HEAD'``). If provided, its value is stored in the :attr:" @@ -363,7 +380,7 @@ msgid "" "attribute in the class itself." msgstr "" -#: library/urllib.request.rst:261 +#: library/urllib.request.rst:273 msgid "" "The request will not work as expected if the data object is unable to " "deliver its content more than once (e.g. a file or an iterable that can " @@ -373,49 +390,49 @@ msgid "" "library." msgstr "" -#: library/urllib.request.rst:268 +#: library/urllib.request.rst:280 msgid ":attr:`Request.method` argument is added to the Request class." msgstr "" -#: library/urllib.request.rst:271 +#: library/urllib.request.rst:283 msgid "Default :attr:`Request.method` may be indicated at the class level." msgstr "" -#: library/urllib.request.rst:274 +#: library/urllib.request.rst:286 msgid "" "Do not raise an error if the ``Content-Length`` has not been provided and " "*data* is neither ``None`` nor a bytes object. Fall back to use chunked " "transfer encoding instead." msgstr "" -#: library/urllib.request.rst:281 +#: library/urllib.request.rst:293 msgid "" "The :class:`OpenerDirector` class opens URLs via :class:`BaseHandler`\\ s " "chained together. It manages the chaining of handlers, and recovery from " "errors." msgstr "" -#: library/urllib.request.rst:287 +#: library/urllib.request.rst:299 msgid "" "This is the base class for all registered handlers --- and handles only the " "simple mechanics of registration." msgstr "" -#: library/urllib.request.rst:293 +#: library/urllib.request.rst:305 msgid "" "A class which defines a default handler for HTTP error responses; all " "responses are turned into :exc:`~urllib.error.HTTPError` exceptions." msgstr "" -#: library/urllib.request.rst:299 +#: library/urllib.request.rst:311 msgid "A class to handle redirections." msgstr "" -#: library/urllib.request.rst:304 +#: library/urllib.request.rst:316 msgid "A class to handle HTTP Cookies." msgstr "" -#: library/urllib.request.rst:309 +#: library/urllib.request.rst:321 msgid "" "Cause requests to go through a proxy. If *proxies* is given, it must be a " "dictionary mapping protocol names to URLs of proxies. The default is to read " @@ -426,11 +443,11 @@ msgid "" "Configuration Framework." msgstr "" -#: library/urllib.request.rst:317 +#: library/urllib.request.rst:329 msgid "To disable autodetected proxy pass an empty dictionary." msgstr "" -#: library/urllib.request.rst:319 +#: library/urllib.request.rst:331 msgid "" "The :envvar:`no_proxy` environment variable can be used to specify hosts " "which shouldn't be reached via proxy; if set, it should be a comma-separated " @@ -438,24 +455,24 @@ msgid "" "``cern.ch,ncsa.uiuc.edu,some.host:8080``." msgstr "" -#: library/urllib.request.rst:326 +#: library/urllib.request.rst:338 msgid "" "``HTTP_PROXY`` will be ignored if a variable ``REQUEST_METHOD`` is set; see " "the documentation on :func:`~urllib.request.getproxies`." msgstr "" -#: library/urllib.request.rst:332 +#: library/urllib.request.rst:344 msgid "Keep a database of ``(realm, uri) -> (user, password)`` mappings." msgstr "" -#: library/urllib.request.rst:337 +#: library/urllib.request.rst:349 msgid "" "Keep a database of ``(realm, uri) -> (user, password)`` mappings. A realm " "of ``None`` is considered a catch-all realm, which is searched if no other " "realm fits." msgstr "" -#: library/urllib.request.rst:344 +#: library/urllib.request.rst:356 msgid "" "A variant of :class:`HTTPPasswordMgrWithDefaultRealm` that also has a " "database of ``uri -> is_authenticated`` mappings. Can be used by a " @@ -463,7 +480,7 @@ msgid "" "immediately instead of waiting for a ``401`` response first." msgstr "" -#: library/urllib.request.rst:354 +#: library/urllib.request.rst:366 msgid "" "This is a mixin class that helps with HTTP authentication, both to the " "remote host and to a proxy. *password_mgr*, if given, should be something " @@ -482,11 +499,11 @@ msgid "" "will automatically include the authentication credentials." msgstr "" -#: library/urllib.request.rst:371 +#: library/urllib.request.rst:383 msgid "Added ``is_authenticated`` support." msgstr "" -#: library/urllib.request.rst:377 +#: library/urllib.request.rst:389 msgid "" "Handle authentication with the remote host. *password_mgr*, if given, should " "be something that is compatible with :class:`HTTPPasswordMgr`; refer to " @@ -495,7 +512,7 @@ msgid "" "presented with a wrong Authentication scheme." msgstr "" -#: library/urllib.request.rst:420 +#: library/urllib.request.rst:432 msgid "" "Handle authentication with the proxy. *password_mgr*, if given, should be " "something that is compatible with :class:`HTTPPasswordMgr`; refer to " @@ -503,7 +520,7 @@ msgid "" "be supported." msgstr "" -#: library/urllib.request.rst:394 +#: library/urllib.request.rst:406 msgid "" "This is a mixin class that helps with HTTP authentication, both to the " "remote host and to a proxy. *password_mgr*, if given, should be something " @@ -511,7 +528,7 @@ msgid "" "`http-password-mgr` for information on the interface that must be supported." msgstr "" -#: library/urllib.request.rst:403 +#: library/urllib.request.rst:415 msgid "" "Handle authentication with the remote host. *password_mgr*, if given, should " "be something that is compatible with :class:`HTTPPasswordMgr`; refer to " @@ -524,108 +541,108 @@ msgid "" "Digest or Basic." msgstr "" -#: library/urllib.request.rst:413 +#: library/urllib.request.rst:425 msgid "Raise :exc:`ValueError` on unsupported Authentication Scheme." msgstr "" -#: library/urllib.request.rst:428 +#: library/urllib.request.rst:440 msgid "A class to handle opening of HTTP URLs." msgstr "" -#: library/urllib.request.rst:433 +#: library/urllib.request.rst:445 msgid "" "A class to handle opening of HTTPS URLs. *context* and *check_hostname* " "have the same meaning as in :class:`http.client.HTTPSConnection`." msgstr "" -#: library/urllib.request.rst:436 +#: library/urllib.request.rst:448 msgid "*context* and *check_hostname* were added." msgstr "" -#: library/urllib.request.rst:442 +#: library/urllib.request.rst:454 msgid "Open local files." msgstr "" -#: library/urllib.request.rst:446 +#: library/urllib.request.rst:458 msgid "Open data URLs." msgstr "" -#: library/urllib.request.rst:452 +#: library/urllib.request.rst:464 msgid "Open FTP URLs." msgstr "" -#: library/urllib.request.rst:457 +#: library/urllib.request.rst:469 msgid "" "Open FTP URLs, keeping a cache of open FTP connections to minimize delays." msgstr "" -#: library/urllib.request.rst:462 +#: library/urllib.request.rst:474 msgid "A catch-all class to handle unknown URLs." msgstr "" -#: library/urllib.request.rst:1173 +#: library/urllib.request.rst:1185 msgid "Process HTTP error responses." msgstr "" -#: library/urllib.request.rst:473 +#: library/urllib.request.rst:485 msgid "Request Objects" msgstr "" -#: library/urllib.request.rst:475 +#: library/urllib.request.rst:487 msgid "" "The following methods describe :class:`Request`'s public interface, and so " "all may be overridden in subclasses. It also defines several public " "attributes that can be used by clients to inspect the parsed request." msgstr "" -#: library/urllib.request.rst:482 +#: library/urllib.request.rst:494 msgid "The original URL passed to the constructor." msgstr "" -#: library/urllib.request.rst:486 +#: library/urllib.request.rst:498 msgid "" "Request.full_url is a property with setter, getter and a deleter. Getting :" "attr:`~Request.full_url` returns the original request URL with the fragment, " "if it was present." msgstr "" -#: library/urllib.request.rst:492 +#: library/urllib.request.rst:504 msgid "The URI scheme." msgstr "" -#: library/urllib.request.rst:496 +#: library/urllib.request.rst:508 msgid "" "The URI authority, typically a host, but may also contain a port separated " "by a colon." msgstr "" -#: library/urllib.request.rst:501 +#: library/urllib.request.rst:513 msgid "The original host for the request, without port." msgstr "" -#: library/urllib.request.rst:505 +#: library/urllib.request.rst:517 msgid "" "The URI path. If the :class:`Request` uses a proxy, then selector will be " "the full URL that is passed to the proxy." msgstr "" -#: library/urllib.request.rst:510 +#: library/urllib.request.rst:522 msgid "The entity body for the request, or ``None`` if not specified." msgstr "" -#: library/urllib.request.rst:512 +#: library/urllib.request.rst:524 msgid "" "Changing value of :attr:`Request.data` now deletes \"Content-Length\" header " "if it was previously set or calculated." msgstr "" -#: library/urllib.request.rst:518 +#: library/urllib.request.rst:530 msgid "" "boolean, indicates whether the request is unverifiable as defined by :rfc:" "`2965`." msgstr "" -#: library/urllib.request.rst:523 +#: library/urllib.request.rst:535 msgid "" "The HTTP request method to use. By default its value is :const:`None`, " "which means that :meth:`~Request.get_method` will do its normal computation " @@ -636,13 +653,13 @@ msgid "" "argument." msgstr "" -#: library/urllib.request.rst:533 +#: library/urllib.request.rst:545 msgid "" "A default value can now be set in subclasses; previously it could only be " "set via the constructor argument." msgstr "" -#: library/urllib.request.rst:540 +#: library/urllib.request.rst:552 msgid "" "Return a string indicating the HTTP request method. If :attr:`Request." "method` is not ``None``, return its value, otherwise return ``'GET'`` if :" @@ -650,11 +667,11 @@ msgid "" "meaningful for HTTP requests." msgstr "" -#: library/urllib.request.rst:545 +#: library/urllib.request.rst:557 msgid "get_method now looks at the value of :attr:`Request.method`." msgstr "" -#: library/urllib.request.rst:551 +#: library/urllib.request.rst:563 msgid "" "Add another header to the request. Headers are currently ignored by all " "handlers except HTTP handlers, where they are added to the list of headers " @@ -666,64 +683,64 @@ msgid "" "headers added using this method are also added to redirected requests." msgstr "" -#: library/urllib.request.rst:563 +#: library/urllib.request.rst:575 msgid "Add a header that will not be added to a redirected request." msgstr "" -#: library/urllib.request.rst:568 +#: library/urllib.request.rst:580 msgid "" "Return whether the instance has the named header (checks both regular and " "unredirected)." msgstr "" -#: library/urllib.request.rst:574 +#: library/urllib.request.rst:586 msgid "" "Remove named header from the request instance (both from regular and " "unredirected headers)." msgstr "" -#: library/urllib.request.rst:582 +#: library/urllib.request.rst:594 msgid "Return the URL given in the constructor." msgstr "" -#: library/urllib.request.rst:586 +#: library/urllib.request.rst:598 msgid "Returns :attr:`Request.full_url`" msgstr "" -#: library/urllib.request.rst:591 +#: library/urllib.request.rst:603 msgid "" "Prepare the request by connecting to a proxy server. The *host* and *type* " "will replace those of the instance, and the instance's selector will be the " "original URL given in the constructor." msgstr "" -#: library/urllib.request.rst:598 +#: library/urllib.request.rst:610 msgid "" "Return the value of the given header. If the header is not present, return " "the default value." msgstr "" -#: library/urllib.request.rst:604 +#: library/urllib.request.rst:616 msgid "" "Return a list of tuples (header_name, header_value) of the Request headers." msgstr "" -#: library/urllib.request.rst:606 +#: library/urllib.request.rst:618 msgid "" "The request methods add_data, has_data, get_data, get_type, get_host, " "get_selector, get_origin_req_host and is_unverifiable that were deprecated " "since 3.3 have been removed." msgstr "" -#: library/urllib.request.rst:615 +#: library/urllib.request.rst:627 msgid "OpenerDirector Objects" msgstr "" -#: library/urllib.request.rst:617 +#: library/urllib.request.rst:629 msgid ":class:`OpenerDirector` instances have the following methods:" msgstr "" -#: library/urllib.request.rst:622 +#: library/urllib.request.rst:634 msgid "" "*handler* should be an instance of :class:`BaseHandler`. The following " "methods are searched, and added to the possible chains (note that HTTP " @@ -734,53 +751,53 @@ msgid "" "`http_error_404` would handle HTTP 404 errors." msgstr "" -#: library/urllib.request.rst:630 +#: library/urllib.request.rst:642 msgid "" ":meth:`!_open` --- signal that the handler knows how to open " "*protocol* URLs." msgstr "" -#: library/urllib.request.rst:633 +#: library/urllib.request.rst:645 msgid "See |protocol_open|_ for more information." msgstr "" -#: library/urllib.request.rst:635 +#: library/urllib.request.rst:647 msgid "" ":meth:`!http_error_\\` --- signal that the handler knows how to " "handle HTTP errors with HTTP error code *type*." msgstr "" -#: library/urllib.request.rst:638 +#: library/urllib.request.rst:650 msgid "See |http_error_nnn|_ for more information." msgstr "" -#: library/urllib.request.rst:640 +#: library/urllib.request.rst:652 msgid "" ":meth:`!_error` --- signal that the handler knows how to handle " "errors from (non-\\ ``http``) *protocol*." msgstr "" -#: library/urllib.request.rst:643 +#: library/urllib.request.rst:655 msgid "" ":meth:`!_request` --- signal that the handler knows how to pre-" "process *protocol* requests." msgstr "" -#: library/urllib.request.rst:646 +#: library/urllib.request.rst:658 msgid "See |protocol_request|_ for more information." msgstr "" -#: library/urllib.request.rst:648 +#: library/urllib.request.rst:660 msgid "" ":meth:`!_response` --- signal that the handler knows how to post-" "process *protocol* responses." msgstr "" -#: library/urllib.request.rst:651 +#: library/urllib.request.rst:663 msgid "See |protocol_response|_ for more information." msgstr "" -#: library/urllib.request.rst:660 +#: library/urllib.request.rst:672 msgid "" "Open the given *url* (which can be a request object or a string), optionally " "passing the given *data*. Arguments, return values and exceptions raised are " @@ -792,7 +809,7 @@ msgid "" "HTTP, HTTPS and FTP connections." msgstr "" -#: library/urllib.request.rst:672 +#: library/urllib.request.rst:684 msgid "" "Handle an error of the given protocol. This will call the registered error " "handlers for the given protocol with the given arguments (which are protocol " @@ -801,28 +818,28 @@ msgid "" "http_error_\\` methods of the handler classes." msgstr "" -#: library/urllib.request.rst:678 +#: library/urllib.request.rst:690 msgid "" "Return values and exceptions raised are the same as those of :func:`urlopen`." msgstr "" -#: library/urllib.request.rst:680 +#: library/urllib.request.rst:692 msgid "OpenerDirector objects open URLs in three stages:" msgstr "" -#: library/urllib.request.rst:682 +#: library/urllib.request.rst:694 msgid "" "The order in which these methods are called within each stage is determined " "by sorting the handler instances." msgstr "" -#: library/urllib.request.rst:685 +#: library/urllib.request.rst:697 msgid "" "Every handler with a method named like :meth:`!_request` has that " "method called to pre-process the request." msgstr "" -#: library/urllib.request.rst:688 +#: library/urllib.request.rst:700 msgid "" "Handlers with a method named like :meth:`!_open` are called to " "handle the request. This stage ends when a handler either returns a non-\\ :" @@ -830,7 +847,7 @@ msgid "" "`~urllib.error.URLError`). Exceptions are allowed to propagate." msgstr "" -#: library/urllib.request.rst:693 +#: library/urllib.request.rst:705 msgid "" "In fact, the above algorithm is first tried for methods named :meth:" "`~BaseHandler.default_open`. If all such methods return :const:`None`, the " @@ -839,64 +856,64 @@ msgid "" "named :meth:`~BaseHandler.unknown_open`." msgstr "" -#: library/urllib.request.rst:699 +#: library/urllib.request.rst:711 msgid "" "Note that the implementation of these methods may involve calls of the " "parent :class:`OpenerDirector` instance's :meth:`~OpenerDirector.open` and :" "meth:`~OpenerDirector.error` methods." msgstr "" -#: library/urllib.request.rst:703 +#: library/urllib.request.rst:715 msgid "" "Every handler with a method named like :meth:`!_response` has that " "method called to post-process the response." msgstr "" -#: library/urllib.request.rst:710 +#: library/urllib.request.rst:722 msgid "BaseHandler Objects" msgstr "" -#: library/urllib.request.rst:712 +#: library/urllib.request.rst:724 msgid "" ":class:`BaseHandler` objects provide a couple of methods that are directly " "useful, and others that are meant to be used by derived classes. These are " "intended for direct use:" msgstr "" -#: library/urllib.request.rst:719 +#: library/urllib.request.rst:731 msgid "Add a director as parent." msgstr "" -#: library/urllib.request.rst:724 +#: library/urllib.request.rst:736 msgid "Remove any parents." msgstr "" -#: library/urllib.request.rst:726 +#: library/urllib.request.rst:738 msgid "" "The following attribute and methods should only be used by classes derived " "from :class:`BaseHandler`." msgstr "" -#: library/urllib.request.rst:731 +#: library/urllib.request.rst:743 msgid "" "The convention has been adopted that subclasses defining :meth:`!" "_request` or :meth:`!_response` methods are named :class:" "`!\\*Processor`; all others are named :class:`!\\*Handler`." msgstr "" -#: library/urllib.request.rst:738 +#: library/urllib.request.rst:750 msgid "" "A valid :class:`OpenerDirector`, which can be used to open using a different " "protocol, or handle errors." msgstr "" -#: library/urllib.request.rst:744 +#: library/urllib.request.rst:756 msgid "" "This method is *not* defined in :class:`BaseHandler`, but subclasses should " "define it if they want to catch all URLs." msgstr "" -#: library/urllib.request.rst:747 +#: library/urllib.request.rst:759 msgid "" "This method, if implemented, will be called by the parent :class:" "`OpenerDirector`. It should return a file-like object as described in the " @@ -906,38 +923,38 @@ msgid "" "`MemoryError` should not be mapped to :exc:`~urllib.error.URLError`)." msgstr "" -#: library/urllib.request.rst:754 +#: library/urllib.request.rst:766 msgid "This method will be called before any protocol-specific open method." msgstr "" -#: library/urllib.request.rst:761 +#: library/urllib.request.rst:773 msgid "" "This method is *not* defined in :class:`BaseHandler`, but subclasses should " "define it if they want to handle URLs with the given protocol." msgstr "" -#: library/urllib.request.rst:764 +#: library/urllib.request.rst:776 msgid "" "This method, if defined, will be called by the parent :class:" "`OpenerDirector`. Return values should be the same as for :meth:" "`~BaseHandler.default_open`." msgstr "" -#: library/urllib.request.rst:770 +#: library/urllib.request.rst:782 msgid "" "This method is *not* defined in :class:`BaseHandler`, but subclasses should " "define it if they want to catch all URLs with no specific registered handler " "to open it." msgstr "" -#: library/urllib.request.rst:774 +#: library/urllib.request.rst:786 msgid "" "This method, if implemented, will be called by the :attr:`parent` :class:" "`OpenerDirector`. Return values should be the same as for :meth:" "`default_open`." msgstr "" -#: library/urllib.request.rst:781 +#: library/urllib.request.rst:793 msgid "" "This method is *not* defined in :class:`BaseHandler`, but subclasses should " "override it if they intend to provide a catch-all for otherwise unhandled " @@ -946,7 +963,7 @@ msgid "" "other circumstances." msgstr "" -#: library/urllib.request.rst:786 +#: library/urllib.request.rst:798 msgid "" "*req* will be a :class:`Request` object, *fp* will be a file-like object " "with the HTTP error body, *code* will be the three-digit code of the error, " @@ -954,49 +971,49 @@ msgid "" "mapping object with the headers of the error." msgstr "" -#: library/urllib.request.rst:791 +#: library/urllib.request.rst:803 msgid "" "Return values and exceptions raised should be the same as those of :func:" "`urlopen`." msgstr "" -#: library/urllib.request.rst:798 +#: library/urllib.request.rst:810 msgid "" "*nnn* should be a three-digit HTTP error code. This method is also not " "defined in :class:`BaseHandler`, but will be called, if it exists, on an " "instance of a subclass, when an HTTP error with code *nnn* occurs." msgstr "" -#: library/urllib.request.rst:802 +#: library/urllib.request.rst:814 msgid "Subclasses should override this method to handle specific HTTP errors." msgstr "" -#: library/urllib.request.rst:804 +#: library/urllib.request.rst:816 msgid "" "Arguments, return values and exceptions raised should be the same as for :" "meth:`~BaseHandler.http_error_default`." msgstr "" -#: library/urllib.request.rst:812 +#: library/urllib.request.rst:824 msgid "" "This method is *not* defined in :class:`BaseHandler`, but subclasses should " "define it if they want to pre-process requests of the given protocol." msgstr "" -#: library/urllib.request.rst:815 +#: library/urllib.request.rst:827 msgid "" "This method, if defined, will be called by the parent :class:" "`OpenerDirector`. *req* will be a :class:`Request` object. The return value " "should be a :class:`Request` object." msgstr "" -#: library/urllib.request.rst:824 +#: library/urllib.request.rst:836 msgid "" "This method is *not* defined in :class:`BaseHandler`, but subclasses should " "define it if they want to post-process responses of the given protocol." msgstr "" -#: library/urllib.request.rst:827 +#: library/urllib.request.rst:839 msgid "" "This method, if defined, will be called by the parent :class:" "`OpenerDirector`. *req* will be a :class:`Request` object. *response* will " @@ -1005,25 +1022,25 @@ msgid "" "return value of :func:`urlopen`." msgstr "" -#: library/urllib.request.rst:837 +#: library/urllib.request.rst:849 msgid "HTTPRedirectHandler Objects" msgstr "" -#: library/urllib.request.rst:841 +#: library/urllib.request.rst:853 msgid "" "Some HTTP redirections require action from this module's client code. If " "this is the case, :exc:`~urllib.error.HTTPError` is raised. See :rfc:`2616` " "for details of the precise meanings of the various redirection codes." msgstr "" -#: library/urllib.request.rst:845 +#: library/urllib.request.rst:857 msgid "" "An :exc:`~urllib.error.HTTPError` exception raised as a security " "consideration if the HTTPRedirectHandler is presented with a redirected URL " "which is not an HTTP, HTTPS or FTP URL." msgstr "" -#: library/urllib.request.rst:852 +#: library/urllib.request.rst:864 msgid "" "Return a :class:`Request` or ``None`` in response to a redirect. This is " "called by the default implementations of the :meth:`!http_error_30\\*` " @@ -1034,7 +1051,7 @@ msgid "" "URL, or return ``None`` if you can't but another handler might." msgstr "" -#: library/urllib.request.rst:862 +#: library/urllib.request.rst:874 msgid "" "The default implementation of this method does not strictly follow :rfc:" "`2616`, which says that 301 and 302 responses to ``POST`` requests must not " @@ -1043,54 +1060,54 @@ msgid "" "POST to a ``GET``, and the default implementation reproduces this behavior." msgstr "" -#: library/urllib.request.rst:871 +#: library/urllib.request.rst:883 msgid "" "Redirect to the ``Location:`` or ``URI:`` URL. This method is called by the " "parent :class:`OpenerDirector` when getting an HTTP 'moved permanently' " "response." msgstr "" -#: library/urllib.request.rst:877 +#: library/urllib.request.rst:889 msgid "" "The same as :meth:`http_error_301`, but called for the 'found' response." msgstr "" -#: library/urllib.request.rst:882 +#: library/urllib.request.rst:894 msgid "" "The same as :meth:`http_error_301`, but called for the 'see other' response." msgstr "" -#: library/urllib.request.rst:887 +#: library/urllib.request.rst:899 msgid "" "The same as :meth:`http_error_301`, but called for the 'temporary redirect' " "response. It does not allow changing the request method from ``POST`` to " "``GET``." msgstr "" -#: library/urllib.request.rst:894 +#: library/urllib.request.rst:906 msgid "" "The same as :meth:`http_error_301`, but called for the 'permanent redirect' " "response. It does not allow changing the request method from ``POST`` to " "``GET``." msgstr "" -#: library/urllib.request.rst:904 +#: library/urllib.request.rst:916 msgid "HTTPCookieProcessor Objects" msgstr "" -#: library/urllib.request.rst:906 +#: library/urllib.request.rst:918 msgid ":class:`HTTPCookieProcessor` instances have one attribute:" msgstr "" -#: library/urllib.request.rst:910 +#: library/urllib.request.rst:922 msgid "The :class:`http.cookiejar.CookieJar` in which cookies are stored." msgstr "" -#: library/urllib.request.rst:916 +#: library/urllib.request.rst:928 msgid "ProxyHandler Objects" msgstr "" -#: library/urllib.request.rst:922 +#: library/urllib.request.rst:934 msgid "" "The :class:`ProxyHandler` will have a method :meth:`!_open` for " "every *protocol* which has a proxy in the *proxies* dictionary given in the " @@ -1099,17 +1116,17 @@ msgid "" "actually execute the protocol." msgstr "" -#: library/urllib.request.rst:932 +#: library/urllib.request.rst:944 msgid "HTTPPasswordMgr Objects" msgstr "" -#: library/urllib.request.rst:934 +#: library/urllib.request.rst:946 msgid "" "These methods are available on :class:`HTTPPasswordMgr` and :class:" "`HTTPPasswordMgrWithDefaultRealm` objects." msgstr "" -#: library/urllib.request.rst:940 +#: library/urllib.request.rst:952 msgid "" "*uri* can be either a single URI, or a sequence of URIs. *realm*, *user* and " "*passwd* must be strings. This causes ``(user, passwd)`` to be used as " @@ -1117,30 +1134,30 @@ msgid "" "of the given URIs is given." msgstr "" -#: library/urllib.request.rst:948 +#: library/urllib.request.rst:960 msgid "" "Get user/password for given realm and URI, if any. This method will return " "``(None, None)`` if there is no matching user/password." msgstr "" -#: library/urllib.request.rst:951 +#: library/urllib.request.rst:963 msgid "" "For :class:`HTTPPasswordMgrWithDefaultRealm` objects, the realm ``None`` " "will be searched if the given *realm* has no matching user/password." msgstr "" -#: library/urllib.request.rst:958 +#: library/urllib.request.rst:970 msgid "HTTPPasswordMgrWithPriorAuth Objects" msgstr "" -#: library/urllib.request.rst:960 +#: library/urllib.request.rst:972 msgid "" "This password manager extends :class:`HTTPPasswordMgrWithDefaultRealm` to " "support tracking URIs for which authentication credentials should always be " "sent." msgstr "" -#: library/urllib.request.rst:967 +#: library/urllib.request.rst:979 msgid "" "*realm*, *uri*, *user*, *passwd* are as for :meth:`HTTPPasswordMgr." "add_password`. *is_authenticated* sets the initial value of the " @@ -1148,25 +1165,25 @@ msgid "" "*is_authenticated* is specified as ``True``, *realm* is ignored." msgstr "" -#: library/urllib.request.rst:975 +#: library/urllib.request.rst:987 msgid "Same as for :class:`HTTPPasswordMgrWithDefaultRealm` objects" msgstr "" -#: library/urllib.request.rst:981 +#: library/urllib.request.rst:993 msgid "" "Update the ``is_authenticated`` flag for the given *uri* or list of URIs." msgstr "" -#: library/urllib.request.rst:987 +#: library/urllib.request.rst:999 msgid "" "Returns the current state of the ``is_authenticated`` flag for the given URI." msgstr "" -#: library/urllib.request.rst:994 +#: library/urllib.request.rst:1006 msgid "AbstractBasicAuthHandler Objects" msgstr "" -#: library/urllib.request.rst:999 +#: library/urllib.request.rst:1011 msgid "" "Handle an authentication request by getting a user/password pair, and re-" "trying the request. *authreq* should be the name of the header where the " @@ -1175,7 +1192,7 @@ msgid "" "`Request` object, and *headers* should be the error headers." msgstr "" -#: library/urllib.request.rst:1005 +#: library/urllib.request.rst:1017 msgid "" "*host* is either an authority (e.g. ``\"python.org\"``) or a URL containing " "an authority component (e.g. ``\"http://python.org/\"``). In either case, " @@ -1183,24 +1200,24 @@ msgid "" "and ``\"python.org:80\"`` are fine, ``\"joe:password@python.org\"`` is not)." msgstr "" -#: library/urllib.request.rst:1014 +#: library/urllib.request.rst:1026 msgid "HTTPBasicAuthHandler Objects" msgstr "" -#: library/urllib.request.rst:1019 library/urllib.request.rst:1030 -#: library/urllib.request.rst:1055 library/urllib.request.rst:1066 +#: library/urllib.request.rst:1031 library/urllib.request.rst:1042 +#: library/urllib.request.rst:1067 library/urllib.request.rst:1078 msgid "Retry the request with authentication information, if available." msgstr "" -#: library/urllib.request.rst:1025 +#: library/urllib.request.rst:1037 msgid "ProxyBasicAuthHandler Objects" msgstr "" -#: library/urllib.request.rst:1036 +#: library/urllib.request.rst:1048 msgid "AbstractDigestAuthHandler Objects" msgstr "" -#: library/urllib.request.rst:1041 +#: library/urllib.request.rst:1053 msgid "" "*authreq* should be the name of the header where the information about the " "realm is included in the request, *host* should be the host to authenticate " @@ -1208,55 +1225,55 @@ msgid "" "should be the error headers." msgstr "" -#: library/urllib.request.rst:1050 +#: library/urllib.request.rst:1062 msgid "HTTPDigestAuthHandler Objects" msgstr "" -#: library/urllib.request.rst:1061 +#: library/urllib.request.rst:1073 msgid "ProxyDigestAuthHandler Objects" msgstr "" -#: library/urllib.request.rst:1072 +#: library/urllib.request.rst:1084 msgid "HTTPHandler Objects" msgstr "" -#: library/urllib.request.rst:1077 +#: library/urllib.request.rst:1089 msgid "" "Send an HTTP request, which can be either GET or POST, depending on ``req." "has_data()``." msgstr "" -#: library/urllib.request.rst:1084 +#: library/urllib.request.rst:1096 msgid "HTTPSHandler Objects" msgstr "" -#: library/urllib.request.rst:1089 +#: library/urllib.request.rst:1101 msgid "" "Send an HTTPS request, which can be either GET or POST, depending on ``req." "has_data()``." msgstr "" -#: library/urllib.request.rst:1096 +#: library/urllib.request.rst:1108 msgid "FileHandler Objects" msgstr "" -#: library/urllib.request.rst:1101 +#: library/urllib.request.rst:1113 msgid "" "Open the file locally, if there is no host name, or the host name is " "``'localhost'``." msgstr "" -#: library/urllib.request.rst:1104 +#: library/urllib.request.rst:1116 msgid "" "This method is applicable only for local hostnames. When a remote hostname " "is given, a :exc:`~urllib.error.URLError` is raised." msgstr "" -#: library/urllib.request.rst:1112 +#: library/urllib.request.rst:1124 msgid "DataHandler Objects" msgstr "" -#: library/urllib.request.rst:1116 +#: library/urllib.request.rst:1128 msgid "" "Read a data URL. This kind of URL contains the content encoded in the URL " "itself. The data URL syntax is specified in :rfc:`2397`. This implementation " @@ -1266,51 +1283,51 @@ msgid "" "implementation will raise a :exc:`ValueError` in that case." msgstr "" -#: library/urllib.request.rst:1127 +#: library/urllib.request.rst:1139 msgid "FTPHandler Objects" msgstr "" -#: library/urllib.request.rst:1132 +#: library/urllib.request.rst:1144 msgid "" "Open the FTP file indicated by *req*. The login is always done with empty " "username and password." msgstr "" -#: library/urllib.request.rst:1139 +#: library/urllib.request.rst:1151 msgid "CacheFTPHandler Objects" msgstr "" -#: library/urllib.request.rst:1141 +#: library/urllib.request.rst:1153 msgid "" ":class:`CacheFTPHandler` objects are :class:`FTPHandler` objects with the " "following additional methods:" msgstr "" -#: library/urllib.request.rst:1147 +#: library/urllib.request.rst:1159 msgid "Set timeout of connections to *t* seconds." msgstr "" -#: library/urllib.request.rst:1152 +#: library/urllib.request.rst:1164 msgid "Set maximum number of cached connections to *m*." msgstr "" -#: library/urllib.request.rst:1158 +#: library/urllib.request.rst:1170 msgid "UnknownHandler Objects" msgstr "" -#: library/urllib.request.rst:1163 +#: library/urllib.request.rst:1175 msgid "Raise a :exc:`~urllib.error.URLError` exception." msgstr "" -#: library/urllib.request.rst:1169 +#: library/urllib.request.rst:1181 msgid "HTTPErrorProcessor Objects" msgstr "" -#: library/urllib.request.rst:1175 +#: library/urllib.request.rst:1187 msgid "For 200 error codes, the response object is returned immediately." msgstr "" -#: library/urllib.request.rst:1177 +#: library/urllib.request.rst:1189 msgid "" "For non-200 error codes, this simply passes the job on to the :meth:`!" "http_error_\\` handler methods, via :meth:`OpenerDirector.error`. " @@ -1318,46 +1335,43 @@ msgid "" "error.HTTPError` if no other handler handles the error." msgstr "" -#: library/urllib.request.rst:1185 +#: library/urllib.request.rst:1197 msgid "Process HTTPS error responses." msgstr "" -#: library/urllib.request.rst:1187 +#: library/urllib.request.rst:1199 msgid "The behavior is same as :meth:`http_response`." msgstr "" -#: library/urllib.request.rst:1193 +#: library/urllib.request.rst:1205 msgid "Examples" msgstr "" -#: library/urllib.request.rst:1195 +#: library/urllib.request.rst:1207 msgid "" "In addition to the examples below, more examples are given in :ref:`urllib-" "howto`." msgstr "" -#: library/urllib.request.rst:1198 +#: library/urllib.request.rst:1210 msgid "" "This example gets the python.org main page and displays the first 300 bytes " -"of it. ::" +"of it::" msgstr "" -#: library/urllib.request.rst:1201 +#: library/urllib.request.rst:1213 msgid "" ">>> import urllib.request\n" ">>> with urllib.request.urlopen('http://www.python.org/') as f:\n" "... print(f.read(300))\n" "...\n" -"b'\\n\\n\\n\\n\\n\\n\n" -"\\n\n" -"Python Programming '" +"b'<!doctype html>\\n<!--[if lt IE 7]> <html class=\"no-js ie6 lt-ie7 lt-" +"ie8 lt-ie9\"> <![endif]-->\\n<!--[if IE 7]> <html class=\"no-js ie7 " +"lt-ie8 lt-ie9\"> <![endif]-->\\n<!--[if IE 8]> <html " +"class=\"no-js ie8 lt-ie9\">" msgstr "" -#: library/urllib.request.rst:1211 +#: library/urllib.request.rst:1219 msgid "" "Note that urlopen returns a bytes object. This is because there is no way " "for urlopen to automatically determine the encoding of the byte stream it " @@ -1366,51 +1380,65 @@ msgid "" "appropriate encoding." msgstr "" -#: library/urllib.request.rst:1217 +#: library/urllib.request.rst:1225 msgid "" -"The following W3C document, https://www.w3.org/International/O-charset\\ , " -"lists the various ways in which an (X)HTML or an XML document could have " +"The following HTML spec document, https://html.spec.whatwg.org/#charset, " +"lists the various ways in which an HTML or an XML document could have " "specified its encoding information." msgstr "" -#: library/urllib.request.rst:1221 +#: library/urllib.request.rst:1229 +msgid "" +"For additional information, see the W3C document: https://www.w3.org/" +"International/questions/qa-html-encoding-declarations." +msgstr "" + +#: library/urllib.request.rst:1231 msgid "" "As the python.org website uses *utf-8* encoding as specified in its meta " -"tag, we will use the same for decoding the bytes object. ::" +"tag, we will use the same for decoding the bytes object::" msgstr "" -#: library/urllib.request.rst:1224 +#: library/urllib.request.rst:1234 msgid "" ">>> with urllib.request.urlopen('http://www.python.org/') as f:\n" "... print(f.read(100).decode('utf-8'))\n" "...\n" -"<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"\n" -"\"http://www.w3.org/TR/xhtml1/DTD/xhtm" +"<!doctype html>\n" +"<!--[if lt IE 7]> <html class=\"no-js ie6 lt-ie7 lt-ie8 lt-ie9\"> <!" +"[endif]-->\n" +"<!-" msgstr "" -#: library/urllib.request.rst:1230 +#: library/urllib.request.rst:1241 msgid "" "It is also possible to achieve the same result without using the :term:" -"`context manager` approach. ::" +"`context manager` approach::" msgstr "" -#: library/urllib.request.rst:1233 +#: library/urllib.request.rst:1244 msgid "" ">>> import urllib.request\n" ">>> f = urllib.request.urlopen('http://www.python.org/')\n" -">>> print(f.read(100).decode('utf-8'))\n" -"<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"\n" -"\"http://www.w3.org/TR/xhtml1/DTD/xhtm" +">>> try:\n" +"... print(f.read(100).decode('utf-8'))\n" +"... finally:\n" +"... f.close()\n" +"...\n" +"<!doctype html>\n" +"<!--[if lt IE 7]> <html class=\"no-js ie6 lt-ie7 lt-ie8 lt-ie9\"> <!" +"[endif]-->\n" +"<!--" msgstr "" -#: library/urllib.request.rst:1239 +#: library/urllib.request.rst:1255 msgid "" "In the following example, we are sending a data-stream to the stdin of a CGI " "and reading the data it returns to us. Note that this example will only work " "when the Python installation supports SSL. ::" msgstr "" -#: library/urllib.request.rst:1243 +#: library/urllib.request.rst:1259 msgid "" ">>> import urllib.request\n" ">>> req = urllib.request.Request(url='https://localhost/cgi-bin/test.cgi',\n" @@ -1421,11 +1449,11 @@ msgid "" "Got Data: \"This data is passed to stdin of the CGI\"" msgstr "" -#: library/urllib.request.rst:1251 +#: library/urllib.request.rst:1267 msgid "The code for the sample CGI used in the above example is::" msgstr "" -#: library/urllib.request.rst:1253 +#: library/urllib.request.rst:1269 msgid "" "#!/usr/bin/env python\n" "import sys\n" @@ -1433,11 +1461,11 @@ msgid "" "print('Content-type: text/plain\\n\\nGot Data: \"%s\"' % data)" msgstr "" -#: library/urllib.request.rst:1258 +#: library/urllib.request.rst:1274 msgid "Here is an example of doing a ``PUT`` request using :class:`Request`::" msgstr "" -#: library/urllib.request.rst:1260 +#: library/urllib.request.rst:1276 msgid "" "import urllib.request\n" "DATA = b'some data'\n" @@ -1449,11 +1477,11 @@ msgid "" "print(f.reason)" msgstr "" -#: library/urllib.request.rst:1268 +#: library/urllib.request.rst:1284 msgid "Use of Basic HTTP Authentication::" msgstr "" -#: library/urllib.request.rst:1270 +#: library/urllib.request.rst:1286 msgid "" "import urllib.request\n" "# Create an OpenerDirector with support for Basic HTTP Authentication...\n" @@ -1465,10 +1493,11 @@ msgid "" "opener = urllib.request.build_opener(auth_handler)\n" "# ...and install it globally so it can be used with urlopen.\n" "urllib.request.install_opener(opener)\n" -"urllib.request.urlopen('http://www.example.com/login.html')" +"with urllib.request.urlopen('http://www.example.com/login.html') as f:\n" +" print(f.read().decode('utf-8'))" msgstr "" -#: library/urllib.request.rst:1282 +#: library/urllib.request.rst:1299 msgid "" ":func:`build_opener` provides many handlers by default, including a :class:" "`ProxyHandler`. By default, :class:`ProxyHandler` uses the environment " @@ -1477,14 +1506,14 @@ msgid "" "read to obtain the HTTP proxy's URL." msgstr "" -#: library/urllib.request.rst:1288 +#: library/urllib.request.rst:1305 msgid "" "This example replaces the default :class:`ProxyHandler` with one that uses " "programmatically supplied proxy URLs, and adds proxy authorization support " "with :class:`ProxyBasicAuthHandler`. ::" msgstr "" -#: library/urllib.request.rst:1292 +#: library/urllib.request.rst:1309 msgid "" "proxy_handler = urllib.request.ProxyHandler({'http': 'http://www.example." "com:3128/'})\n" @@ -1493,55 +1522,58 @@ msgid "" "\n" "opener = urllib.request.build_opener(proxy_handler, proxy_auth_handler)\n" "# This time, rather than install the OpenerDirector, we use it directly:\n" -"opener.open('http://www.example.com/login.html')" +"with opener.open('http://www.example.com/login.html') as f:\n" +" print(f.read().decode('utf-8'))" msgstr "" -#: library/urllib.request.rst:1300 +#: library/urllib.request.rst:1318 msgid "Adding HTTP headers:" msgstr "" -#: library/urllib.request.rst:1302 +#: library/urllib.request.rst:1320 msgid "Use the *headers* argument to the :class:`Request` constructor, or::" msgstr "" -#: library/urllib.request.rst:1304 +#: library/urllib.request.rst:1322 msgid "" "import urllib.request\n" "req = urllib.request.Request('http://www.example.com/')\n" "req.add_header('Referer', 'http://www.python.org/')\n" "# Customize the default User-Agent header value:\n" "req.add_header('User-Agent', 'urllib-example/0.1 (Contact: . . .)')\n" -"r = urllib.request.urlopen(req)" +"with urllib.request.urlopen(req) as f:\n" +" print(f.read().decode('utf-8'))" msgstr "" -#: library/urllib.request.rst:1311 +#: library/urllib.request.rst:1331 msgid "" ":class:`OpenerDirector` automatically adds a :mailheader:`User-Agent` header " "to every :class:`Request`. To change this::" msgstr "" -#: library/urllib.request.rst:1314 +#: library/urllib.request.rst:1334 msgid "" "import urllib.request\n" "opener = urllib.request.build_opener()\n" "opener.addheaders = [('User-agent', 'Mozilla/5.0')]\n" -"opener.open('http://www.example.com/')" +"with opener.open('http://www.example.com/') as f:\n" +" print(f.read().decode('utf-8'))" msgstr "" -#: library/urllib.request.rst:1319 +#: library/urllib.request.rst:1340 msgid "" "Also, remember that a few standard headers (:mailheader:`Content-Length`, :" "mailheader:`Content-Type` and :mailheader:`Host`) are added when the :class:" "`Request` is passed to :func:`urlopen` (or :meth:`OpenerDirector.open`)." msgstr "" -#: library/urllib.request.rst:1326 +#: library/urllib.request.rst:1347 msgid "" "Here is an example session that uses the ``GET`` method to retrieve a URL " "containing parameters::" msgstr "" -#: library/urllib.request.rst:1329 +#: library/urllib.request.rst:1350 msgid "" ">>> import urllib.request\n" ">>> import urllib.parse\n" @@ -1552,14 +1584,14 @@ msgid "" "..." msgstr "" -#: library/urllib.request.rst:1337 +#: library/urllib.request.rst:1358 msgid "" "The following example uses the ``POST`` method instead. Note that params " "output from urlencode is encoded to bytes before it is sent to urlopen as " "data::" msgstr "" -#: library/urllib.request.rst:1340 +#: library/urllib.request.rst:1361 msgid "" ">>> import urllib.request\n" ">>> import urllib.parse\n" @@ -1571,13 +1603,13 @@ msgid "" "..." msgstr "" -#: library/urllib.request.rst:1348 +#: library/urllib.request.rst:1369 msgid "" "The following example uses an explicitly specified HTTP proxy, overriding " "environment settings::" msgstr "" -#: library/urllib.request.rst:1351 +#: library/urllib.request.rst:1372 msgid "" ">>> import urllib.request\n" ">>> proxies = {'http': 'http://proxy.example.com:8080/'}\n" @@ -1587,13 +1619,13 @@ msgid "" "..." msgstr "" -#: library/urllib.request.rst:1358 +#: library/urllib.request.rst:1379 msgid "" "The following example uses no proxies at all, overriding environment " "settings::" msgstr "" -#: library/urllib.request.rst:1360 +#: library/urllib.request.rst:1381 msgid "" ">>> import urllib.request\n" ">>> opener = urllib.request.FancyURLopener({})\n" @@ -1602,18 +1634,18 @@ msgid "" "..." msgstr "" -#: library/urllib.request.rst:1368 +#: library/urllib.request.rst:1389 msgid "Legacy interface" msgstr "" -#: library/urllib.request.rst:1370 +#: library/urllib.request.rst:1391 msgid "" "The following functions and classes are ported from the Python 2 module " "``urllib`` (as opposed to ``urllib2``). They might become deprecated at " "some point in the future." msgstr "" -#: library/urllib.request.rst:1376 +#: library/urllib.request.rst:1397 msgid "" "Copy a network object denoted by a URL to a local file. If the URL points to " "a local file, the object will not be copied unless filename is supplied. " @@ -1623,7 +1655,7 @@ msgid "" "a remote object). Exceptions are the same as for :func:`urlopen`." msgstr "" -#: library/urllib.request.rst:1383 +#: library/urllib.request.rst:1404 msgid "" "The second argument, if present, specifies the file location to copy to (if " "absent, the location will be a tempfile with a generated name). The third " @@ -1635,11 +1667,11 @@ msgid "" "file size in response to a retrieval request." msgstr "" -#: library/urllib.request.rst:1392 +#: library/urllib.request.rst:1413 msgid "The following example illustrates the most common usage scenario::" msgstr "" -#: library/urllib.request.rst:1394 +#: library/urllib.request.rst:1415 msgid "" ">>> import urllib.request\n" ">>> local_filename, headers = urllib.request.urlretrieve('http://python." @@ -1648,7 +1680,7 @@ msgid "" ">>> html.close()" msgstr "" -#: library/urllib.request.rst:1399 +#: library/urllib.request.rst:1420 msgid "" "If the *url* uses the :file:`http:` scheme identifier, the optional *data* " "argument may be given to specify a ``POST`` request (normally the request " @@ -1657,7 +1689,7 @@ msgid "" "parse.urlencode` function." msgstr "" -#: library/urllib.request.rst:1405 +#: library/urllib.request.rst:1426 msgid "" ":func:`urlretrieve` will raise :exc:`~urllib.error.ContentTooShortError` " "when it detects that the amount of data available was less than the " @@ -1665,40 +1697,40 @@ msgid "" "This can occur, for example, when the download is interrupted." msgstr "" -#: library/urllib.request.rst:1410 +#: library/urllib.request.rst:1431 msgid "" "The *Content-Length* is treated as a lower bound: if there's more data to " "read, urlretrieve reads more data, but if less data is available, it raises " "the exception." msgstr "" -#: library/urllib.request.rst:1414 +#: library/urllib.request.rst:1435 msgid "" "You can still retrieve the downloaded data in this case, it is stored in " "the :attr:`!content` attribute of the exception instance." msgstr "" -#: library/urllib.request.rst:1417 +#: library/urllib.request.rst:1438 msgid "" "If no *Content-Length* header was supplied, urlretrieve can not check the " "size of the data it has downloaded, and just returns it. In this case you " "just have to assume that the download was successful." msgstr "" -#: library/urllib.request.rst:1423 +#: library/urllib.request.rst:1444 msgid "" "Cleans up temporary files that may have been left behind by previous calls " "to :func:`urlretrieve`." msgstr "" -#: library/urllib.request.rst:1430 +#: library/urllib.request.rst:1451 msgid "" "Base class for opening and reading URLs. Unless you need to support opening " "objects using schemes other than :file:`http:`, :file:`ftp:`, or :file:`file:" "`, you probably want to use :class:`FancyURLopener`." msgstr "" -#: library/urllib.request.rst:1434 +#: library/urllib.request.rst:1455 msgid "" "By default, the :class:`URLopener` class sends a :mailheader:`User-Agent` " "header of ``urllib/VVV``, where *VVV* is the :mod:`urllib` version number. " @@ -1708,7 +1740,7 @@ msgid "" "subclass definition." msgstr "" -#: library/urllib.request.rst:1440 +#: library/urllib.request.rst:1461 msgid "" "The optional *proxies* parameter should be a dictionary mapping scheme names " "to proxy URLs, where an empty dictionary turns proxies off completely. Its " @@ -1716,7 +1748,7 @@ msgid "" "be used if present, as discussed in the definition of :func:`urlopen`, above." msgstr "" -#: library/urllib.request.rst:1445 +#: library/urllib.request.rst:1466 msgid "" "Additional keyword parameters, collected in *x509*, may be used for " "authentication of the client when using the :file:`https:` scheme. The " @@ -1724,13 +1756,13 @@ msgid "" "certificate; both are needed to support client authentication." msgstr "" -#: library/urllib.request.rst:1450 +#: library/urllib.request.rst:1471 msgid "" ":class:`URLopener` objects will raise an :exc:`OSError` exception if the " "server returns an error code." msgstr "" -#: library/urllib.request.rst:1455 +#: library/urllib.request.rst:1476 msgid "" "Open *fullurl* using the appropriate protocol. This method sets up cache " "and proxy information, then calls the appropriate open method with its input " @@ -1739,15 +1771,15 @@ msgid "" "`urlopen`." msgstr "" -#: library/urllib.request.rst:1461 +#: library/urllib.request.rst:1482 msgid "This method always quotes *fullurl* using :func:`~urllib.parse.quote`." msgstr "" -#: library/urllib.request.rst:1465 +#: library/urllib.request.rst:1486 msgid "Overridable interface to open unknown URL types." msgstr "" -#: library/urllib.request.rst:1470 +#: library/urllib.request.rst:1491 msgid "" "Retrieves the contents of *url* and places it in *filename*. The return " "value is a tuple consisting of a local filename and either an :class:`email." @@ -1764,7 +1796,7 @@ msgid "" "*reporthook* is ignored for local URLs." msgstr "" -#: library/urllib.request.rst:1483 +#: library/urllib.request.rst:1504 msgid "" "If the *url* uses the :file:`http:` scheme identifier, the optional *data* " "argument may be given to specify a ``POST`` request (normally the request " @@ -1773,7 +1805,7 @@ msgid "" "urlencode` function." msgstr "" -#: library/urllib.request.rst:1492 +#: library/urllib.request.rst:1513 msgid "" "Variable that specifies the user agent of the opener object. To get :mod:" "`urllib` to tell servers that it is a particular user agent, set this in a " @@ -1781,7 +1813,7 @@ msgid "" "constructor." msgstr "" -#: library/urllib.request.rst:1502 +#: library/urllib.request.rst:1523 msgid "" ":class:`FancyURLopener` subclasses :class:`URLopener` providing default " "handling for the following HTTP response codes: 301, 302, 303, 307 and 401. " @@ -1792,14 +1824,14 @@ msgid "" "defaults to 10." msgstr "" -#: library/urllib.request.rst:1509 +#: library/urllib.request.rst:1530 msgid "" "For all other response codes, the method :meth:`~BaseHandler." "http_error_default` is called which you can override in subclasses to handle " "the error appropriately." msgstr "" -#: library/urllib.request.rst:1514 +#: library/urllib.request.rst:1535 msgid "" "According to the letter of :rfc:`2616`, 301 and 302 responses to POST " "requests must not be automatically redirected without confirmation by the " @@ -1808,13 +1840,13 @@ msgid "" "behaviour." msgstr "" -#: library/urllib.request.rst:1519 +#: library/urllib.request.rst:1540 msgid "" "The parameters to the constructor are the same as those for :class:" "`URLopener`." msgstr "" -#: library/urllib.request.rst:1523 +#: library/urllib.request.rst:1544 msgid "" "When performing basic authentication, a :class:`FancyURLopener` instance " "calls its :meth:`prompt_user_passwd` method. The default implementation " @@ -1823,59 +1855,59 @@ msgid "" "needed." msgstr "" -#: library/urllib.request.rst:1528 +#: library/urllib.request.rst:1549 msgid "" "The :class:`FancyURLopener` class offers one additional method that should " "be overloaded to provide the appropriate behavior:" msgstr "" -#: library/urllib.request.rst:1533 +#: library/urllib.request.rst:1554 msgid "" "Return information needed to authenticate the user at the given host in the " "specified security realm. The return value should be a tuple, ``(user, " "password)``, which can be used for basic authentication." msgstr "" -#: library/urllib.request.rst:1537 +#: library/urllib.request.rst:1558 msgid "" "The implementation prompts for this information on the terminal; an " "application should override this method to use an appropriate interaction " "model in the local environment." msgstr "" -#: library/urllib.request.rst:1543 +#: library/urllib.request.rst:1564 msgid ":mod:`urllib.request` Restrictions" msgstr "" -#: library/urllib.request.rst:1549 +#: library/urllib.request.rst:1570 msgid "" "Currently, only the following protocols are supported: HTTP (versions 0.9 " "and 1.0), FTP, local files, and data URLs." msgstr "" -#: library/urllib.request.rst:1552 +#: library/urllib.request.rst:1573 msgid "Added support for data URLs." msgstr "" -#: library/urllib.request.rst:1554 +#: library/urllib.request.rst:1575 msgid "" "The caching feature of :func:`urlretrieve` has been disabled until someone " "finds the time to hack proper processing of Expiration time headers." msgstr "" -#: library/urllib.request.rst:1557 +#: library/urllib.request.rst:1578 msgid "" "There should be a function to query whether a particular URL is in the cache." msgstr "" -#: library/urllib.request.rst:1559 +#: library/urllib.request.rst:1580 msgid "" "For backward compatibility, if a URL appears to point to a local file but " "the file can't be opened, the URL is re-interpreted using the FTP protocol. " "This can sometimes cause confusing error messages." msgstr "" -#: library/urllib.request.rst:1563 +#: library/urllib.request.rst:1584 msgid "" "The :func:`urlopen` and :func:`urlretrieve` functions can cause arbitrarily " "long delays while waiting for a network connection to be set up. This means " @@ -1883,7 +1915,7 @@ msgid "" "functions without using threads." msgstr "" -#: library/urllib.request.rst:1572 +#: library/urllib.request.rst:1593 msgid "" "The data returned by :func:`urlopen` or :func:`urlretrieve` is the raw data " "returned by the server. This may be binary data (such as an image), plain " @@ -1893,7 +1925,7 @@ msgid "" "module :mod:`html.parser` to parse it." msgstr "" -#: library/urllib.request.rst:1581 +#: library/urllib.request.rst:1602 msgid "" "The code handling the FTP protocol cannot differentiate between a file and a " "directory. This can lead to unexpected behavior when attempting to read a " @@ -1911,11 +1943,11 @@ msgid "" "meet your needs." msgstr "" -#: library/urllib.request.rst:1598 +#: library/urllib.request.rst:1619 msgid ":mod:`urllib.response` --- Response classes used by urllib" msgstr "" -#: library/urllib.request.rst:1603 +#: library/urllib.request.rst:1624 msgid "" "The :mod:`urllib.response` module defines functions and classes which define " "a minimal file-like interface, including ``read()`` and ``readline()``. " @@ -1924,46 +1956,46 @@ msgid "" "addinfourl` instance:" msgstr "" -#: library/urllib.request.rst:1612 +#: library/urllib.request.rst:1633 msgid "" "URL of the resource retrieved, commonly used to determine if a redirect was " "followed." msgstr "" -#: library/urllib.request.rst:1616 +#: library/urllib.request.rst:1637 msgid "" "Returns the headers of the response in the form of an :class:`~email.message." "EmailMessage` instance." msgstr "" -#: library/urllib.request.rst:1622 +#: library/urllib.request.rst:1643 msgid "Status code returned by server." msgstr "" -#: library/urllib.request.rst:1626 +#: library/urllib.request.rst:1647 msgid "Deprecated in favor of :attr:`~addinfourl.url`." msgstr "" -#: library/urllib.request.rst:1631 +#: library/urllib.request.rst:1652 msgid "Deprecated in favor of :attr:`~addinfourl.headers`." msgstr "" -#: library/urllib.request.rst:1636 library/urllib.request.rst:1641 +#: library/urllib.request.rst:1657 library/urllib.request.rst:1662 msgid "Deprecated in favor of :attr:`~addinfourl.status`." msgstr "" -#: library/urllib.request.rst:1545 library/urllib.request.rst:1568 +#: library/urllib.request.rst:1566 library/urllib.request.rst:1589 msgid "HTTP" msgstr "" -#: library/urllib.request.rst:1545 library/urllib.request.rst:1568 +#: library/urllib.request.rst:1566 library/urllib.request.rst:1589 msgid "protocol" msgstr "" -#: library/urllib.request.rst:1545 library/urllib.request.rst:1579 +#: library/urllib.request.rst:1566 library/urllib.request.rst:1600 msgid "FTP" msgstr "" -#: library/urllib.request.rst:1568 +#: library/urllib.request.rst:1589 msgid "HTML" msgstr "" diff --git a/library/uuid.po b/library/uuid.po index 9561b9be8..056780c5b 100644 --- a/library/uuid.po +++ b/library/uuid.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -219,7 +219,7 @@ msgid "" "unique, while the latter are not." msgstr "" -#: library/uuid.rst:187 +#: library/uuid.rst:185 msgid "" "Generate a UUID from a host ID, sequence number, and the current time. If " "*node* is not given, :func:`getnode` is used to obtain the hardware address. " @@ -227,111 +227,111 @@ msgid "" "random 14-bit sequence number is chosen." msgstr "" -#: library/uuid.rst:197 +#: library/uuid.rst:193 msgid "" "Generate a UUID based on the MD5 hash of a namespace identifier (which is a " "UUID) and a name (which is a :class:`bytes` object or a string that will be " "encoded using UTF-8)." msgstr "" -#: library/uuid.rst:206 +#: library/uuid.rst:200 msgid "Generate a random UUID." msgstr "" -#: library/uuid.rst:213 +#: library/uuid.rst:205 msgid "" "Generate a UUID based on the SHA-1 hash of a namespace identifier (which is " "a UUID) and a name (which is a :class:`bytes` object or a string that will " "be encoded using UTF-8)." msgstr "" -#: library/uuid.rst:219 +#: library/uuid.rst:210 msgid "" "The :mod:`uuid` module defines the following namespace identifiers for use " "with :func:`uuid3` or :func:`uuid5`." msgstr "" -#: library/uuid.rst:225 +#: library/uuid.rst:216 msgid "" "When this namespace is specified, the *name* string is a fully qualified " "domain name." msgstr "" -#: library/uuid.rst:231 +#: library/uuid.rst:222 msgid "When this namespace is specified, the *name* string is a URL." msgstr "" -#: library/uuid.rst:236 +#: library/uuid.rst:227 msgid "When this namespace is specified, the *name* string is an ISO OID." msgstr "" -#: library/uuid.rst:241 +#: library/uuid.rst:232 msgid "" "When this namespace is specified, the *name* string is an X.500 DN in DER or " "a text output format." msgstr "" -#: library/uuid.rst:244 +#: library/uuid.rst:235 msgid "" "The :mod:`uuid` module defines the following constants for the possible " "values of the :attr:`~UUID.variant` attribute:" msgstr "" -#: library/uuid.rst:250 +#: library/uuid.rst:241 msgid "Reserved for NCS compatibility." msgstr "" -#: library/uuid.rst:255 +#: library/uuid.rst:246 msgid "Specifies the UUID layout given in :rfc:`4122`." msgstr "" -#: library/uuid.rst:260 +#: library/uuid.rst:251 msgid "Reserved for Microsoft compatibility." msgstr "" -#: library/uuid.rst:265 +#: library/uuid.rst:256 msgid "Reserved for future definition." msgstr "" -#: library/uuid.rst:270 +#: library/uuid.rst:261 msgid ":rfc:`4122` - A Universally Unique IDentifier (UUID) URN Namespace" msgstr "" -#: library/uuid.rst:271 +#: library/uuid.rst:262 msgid "" "This specification defines a Uniform Resource Name namespace for UUIDs, the " "internal format of UUIDs, and methods of generating UUIDs." msgstr "" -#: library/uuid.rst:278 +#: library/uuid.rst:269 msgid "Command-Line Usage" msgstr "" -#: library/uuid.rst:282 +#: library/uuid.rst:273 msgid "" "The :mod:`uuid` module can be executed as a script from the command line." msgstr "" -#: library/uuid.rst:284 +#: library/uuid.rst:275 msgid "" "python -m uuid [-h] [-u {uuid1,uuid3,uuid4,uuid5}] [-n NAMESPACE] [-N NAME]" msgstr "" -#: library/uuid.rst:288 +#: library/uuid.rst:279 msgid "The following options are accepted:" msgstr "" -#: library/uuid.rst:294 +#: library/uuid.rst:285 msgid "Show the help message and exit." msgstr "" -#: library/uuid.rst:299 +#: library/uuid.rst:290 msgid "" "Specify the function name to use to generate the uuid. By default :func:" "`uuid4` is used." msgstr "" -#: library/uuid.rst:305 +#: library/uuid.rst:296 msgid "" "The namespace is a ``UUID``, or ``@ns`` where ``ns`` is a well-known " "predefined UUID addressed by namespace name. Such as ``@dns``, ``@url``, " @@ -339,21 +339,21 @@ msgid "" "functions." msgstr "" -#: library/uuid.rst:312 +#: library/uuid.rst:303 msgid "" "The name used as part of generating the uuid. Only required for :func:" "`uuid3` / :func:`uuid5` functions." msgstr "" -#: library/uuid.rst:319 +#: library/uuid.rst:310 msgid "Example" msgstr "" -#: library/uuid.rst:321 +#: library/uuid.rst:312 msgid "Here are some examples of typical usage of the :mod:`uuid` module::" msgstr "" -#: library/uuid.rst:323 +#: library/uuid.rst:314 msgid "" ">>> import uuid\n" "\n" @@ -389,17 +389,17 @@ msgid "" "UUID('00010203-0405-0607-0809-0a0b0c0d0e0f')" msgstr "" -#: library/uuid.rst:360 +#: library/uuid.rst:351 msgid "Command-Line Example" msgstr "" -#: library/uuid.rst:362 +#: library/uuid.rst:353 msgid "" "Here are some examples of typical usage of the :mod:`uuid` command line " "interface:" msgstr "" -#: library/uuid.rst:364 +#: library/uuid.rst:355 msgid "" "# generate a random uuid - by default uuid4() is used\n" "$ python -m uuid\n" @@ -410,23 +410,3 @@ msgid "" "# generate a uuid using uuid5\n" "$ python -m uuid -u uuid5 -n @url -N example.com" msgstr "" - -#: library/uuid.rst:182 -msgid "getnode" -msgstr "" - -#: library/uuid.rst:192 -msgid "uuid1" -msgstr "" - -#: library/uuid.rst:201 -msgid "uuid3" -msgstr "" - -#: library/uuid.rst:208 -msgid "uuid4" -msgstr "" - -#: library/uuid.rst:217 -msgid "uuid5" -msgstr "" diff --git a/library/warnings.po b/library/warnings.po index 2932d88ea..7633aee62 100644 --- a/library/warnings.po +++ b/library/warnings.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -352,11 +352,39 @@ msgid "" "\"default\" action is applied (hence its name)." msgstr "" -#: library/warnings.rst:184 +#: library/warnings.rst:185 +msgid "Repeated Warning Suppression Criteria" +msgstr "" + +#: library/warnings.rst:187 +msgid "" +"The filters that suppress repeated warnings apply the following criteria to " +"determine if a warning is considered a repeat:" +msgstr "" + +#: library/warnings.rst:189 +msgid "" +"``\"default\"``: A warning is considered a repeat only if the (*message*, " +"*category*, *module*, *lineno*) are all the same." +msgstr "" + +#: library/warnings.rst:190 +msgid "" +"``\"module\"``: A warning is considered a repeat if the (*message*, " +"*category*, *module*) are the same, ignoring the line number." +msgstr "" + +#: library/warnings.rst:191 +msgid "" +"``\"once\"``: A warning is considered a repeat if the (*message*, " +"*category*) are the same, ignoring the module and line number." +msgstr "" + +#: library/warnings.rst:197 msgid "Describing Warning Filters" msgstr "" -#: library/warnings.rst:186 +#: library/warnings.rst:199 msgid "" "The warnings filter is initialized by :option:`-W` options passed to the " "Python interpreter command line and the :envvar:`PYTHONWARNINGS` environment " @@ -366,17 +394,17 @@ msgid "" "after printing a message to :data:`sys.stderr`)." msgstr "" -#: library/warnings.rst:193 +#: library/warnings.rst:206 msgid "" "Individual warnings filters are specified as a sequence of fields separated " "by colons::" msgstr "" -#: library/warnings.rst:196 +#: library/warnings.rst:209 msgid "action:message:category:module:line" msgstr "" -#: library/warnings.rst:198 +#: library/warnings.rst:211 msgid "" "The meaning of each of these fields is as described in :ref:`warning-" "filter`. When listing multiple filters on a single line (as for :envvar:" @@ -386,14 +414,14 @@ msgid "" "precedence over earlier ones)." msgstr "" -#: library/warnings.rst:205 +#: library/warnings.rst:218 msgid "" "Commonly used warning filters apply to either all warnings, warnings in a " "particular category, or warnings raised by particular modules or packages. " "Some examples::" msgstr "" -#: library/warnings.rst:209 +#: library/warnings.rst:222 msgid "" "default # Show all warnings (even those ignored by " "default)\n" @@ -406,24 +434,24 @@ msgid "" "error:::mymodule # Convert warnings to errors in \"mymodule\"" msgstr "" -#: library/warnings.rst:221 +#: library/warnings.rst:234 msgid "Default Warning Filter" msgstr "" -#: library/warnings.rst:223 +#: library/warnings.rst:236 msgid "" "By default, Python installs several warning filters, which can be overridden " "by the :option:`-W` command-line option, the :envvar:`PYTHONWARNINGS` " "environment variable and calls to :func:`filterwarnings`." msgstr "" -#: library/warnings.rst:227 +#: library/warnings.rst:240 msgid "" "In regular release builds, the default warning filter has the following " "entries (in order of precedence)::" msgstr "" -#: library/warnings.rst:230 +#: library/warnings.rst:243 msgid "" "default::DeprecationWarning:__main__\n" "ignore::DeprecationWarning\n" @@ -432,36 +460,36 @@ msgid "" "ignore::ResourceWarning" msgstr "" -#: library/warnings.rst:236 +#: library/warnings.rst:249 msgid "" "In a :ref:`debug build <debug-build>`, the list of default warning filters " "is empty." msgstr "" -#: library/warnings.rst:238 +#: library/warnings.rst:251 msgid "" ":exc:`DeprecationWarning` is now ignored by default in addition to :exc:" "`PendingDeprecationWarning`." msgstr "" -#: library/warnings.rst:242 +#: library/warnings.rst:255 msgid "" ":exc:`DeprecationWarning` is once again shown by default when triggered " "directly by code in ``__main__``." msgstr "" -#: library/warnings.rst:246 +#: library/warnings.rst:259 msgid "" ":exc:`BytesWarning` no longer appears in the default filter list and is " "instead configured via :data:`sys.warnoptions` when :option:`-b` is " "specified twice." msgstr "" -#: library/warnings.rst:255 +#: library/warnings.rst:268 msgid "Overriding the default filter" msgstr "" -#: library/warnings.rst:257 +#: library/warnings.rst:270 msgid "" "Developers of applications written in Python may wish to hide *all* Python " "level warnings from their users by default, and only display them when " @@ -471,7 +499,7 @@ msgid "" "disabled::" msgstr "" -#: library/warnings.rst:263 +#: library/warnings.rst:276 msgid "" "import sys\n" "\n" @@ -480,14 +508,14 @@ msgid "" " warnings.simplefilter(\"ignore\")" msgstr "" -#: library/warnings.rst:269 +#: library/warnings.rst:282 msgid "" "Developers of test runners for Python code are advised to instead ensure " "that *all* warnings are displayed by default for the code under test, using " "code like::" msgstr "" -#: library/warnings.rst:273 +#: library/warnings.rst:286 msgid "" "import sys\n" "\n" @@ -497,7 +525,7 @@ msgid "" " os.environ[\"PYTHONWARNINGS\"] = \"default\" # Also affect subprocesses" msgstr "" -#: library/warnings.rst:280 +#: library/warnings.rst:293 msgid "" "Finally, developers of interactive shells that run user code in a namespace " "other than ``__main__`` are advised to ensure that :exc:`DeprecationWarning` " @@ -505,18 +533,18 @@ msgid "" "``user_ns`` is the module used to execute code entered interactively)::" msgstr "" -#: library/warnings.rst:285 +#: library/warnings.rst:298 msgid "" "import warnings\n" "warnings.filterwarnings(\"default\", category=DeprecationWarning,\n" " module=user_ns.get(\"__name__\"))" msgstr "" -#: library/warnings.rst:293 +#: library/warnings.rst:306 msgid "Temporarily Suppressing Warnings" msgstr "" -#: library/warnings.rst:295 +#: library/warnings.rst:308 msgid "" "If you are using code that you know will raise a warning, such as a " "deprecated function, but do not want to see the warning (even when warnings " @@ -524,7 +552,7 @@ msgid "" "to suppress the warning using the :class:`catch_warnings` context manager::" msgstr "" -#: library/warnings.rst:300 +#: library/warnings.rst:313 msgid "" "import warnings\n" "\n" @@ -536,7 +564,7 @@ msgid "" " fxn()" msgstr "" -#: library/warnings.rst:309 +#: library/warnings.rst:322 msgid "" "While within the context manager all warnings will simply be ignored. This " "allows you to use known-deprecated code without having to see the warning " @@ -546,11 +574,11 @@ msgid "" "context manager at the same time, the behavior is undefined." msgstr "" -#: library/warnings.rst:321 +#: library/warnings.rst:334 msgid "Testing Warnings" msgstr "" -#: library/warnings.rst:323 +#: library/warnings.rst:336 msgid "" "To test warnings raised by code, use the :class:`catch_warnings` context " "manager. With it you can temporarily mutate the warnings filter to " @@ -558,7 +586,7 @@ msgid "" "raised warnings to check::" msgstr "" -#: library/warnings.rst:328 +#: library/warnings.rst:341 msgid "" "import warnings\n" "\n" @@ -576,7 +604,7 @@ msgid "" " assert \"deprecated\" in str(w[-1].message)" msgstr "" -#: library/warnings.rst:343 +#: library/warnings.rst:356 msgid "" "One can also cause all warnings to be exceptions by using ``error`` instead " "of ``always``. One thing to be aware of is that if a warning has already " @@ -585,7 +613,7 @@ msgid "" "registry related to the warning has been cleared." msgstr "" -#: library/warnings.rst:349 +#: library/warnings.rst:362 msgid "" "Once the context manager exits, the warnings filter is restored to its state " "when the context was entered. This prevents tests from changing the warnings " @@ -596,7 +624,7 @@ msgid "" "manager at the same time, the behavior is undefined." msgstr "" -#: library/warnings.rst:357 +#: library/warnings.rst:370 msgid "" "When testing multiple operations that raise the same kind of warning, it is " "important to test them in a manner that confirms each operation is raising a " @@ -606,18 +634,18 @@ msgid "" "entries from the warnings list before each new operation)." msgstr "" -#: library/warnings.rst:368 +#: library/warnings.rst:381 msgid "Updating Code For New Versions of Dependencies" msgstr "" -#: library/warnings.rst:370 +#: library/warnings.rst:383 msgid "" "Warning categories that are primarily of interest to Python developers " "(rather than end users of applications written in Python) are ignored by " "default." msgstr "" -#: library/warnings.rst:373 +#: library/warnings.rst:386 msgid "" "Notably, this \"ignored by default\" list includes :exc:`DeprecationWarning` " "(for every module except ``__main__``), which means developers should make " @@ -626,14 +654,14 @@ msgid "" "(whether in the standard library or third party packages)." msgstr "" -#: library/warnings.rst:379 +#: library/warnings.rst:392 msgid "" "In the ideal case, the code will have a suitable test suite, and the test " "runner will take care of implicitly enabling all warnings when running tests " "(the test runner provided by the :mod:`unittest` module does this)." msgstr "" -#: library/warnings.rst:383 +#: library/warnings.rst:396 msgid "" "In less ideal cases, applications can be checked for use of deprecated " "interfaces by passing :option:`-Wd <-W>` to the Python interpreter (this is " @@ -645,11 +673,11 @@ msgid "" "what is possible." msgstr "" -#: library/warnings.rst:396 +#: library/warnings.rst:409 msgid "Available Functions" msgstr "" -#: library/warnings.rst:401 +#: library/warnings.rst:414 msgid "" "Issue a warning, or maybe ignore it or raise an exception. The *category* " "argument, if given, must be a :ref:`warning category class <warning-" @@ -662,20 +690,20 @@ msgid "" "functions written in Python, like this::" msgstr "" -#: library/warnings.rst:410 +#: library/warnings.rst:423 msgid "" "def deprecated_api(message):\n" " warnings.warn(message, DeprecationWarning, stacklevel=2)" msgstr "" -#: library/warnings.rst:413 +#: library/warnings.rst:426 msgid "" "This makes the warning refer to ``deprecated_api``'s caller, rather than to " "the source of ``deprecated_api`` itself (since the latter would defeat the " "purpose of the warning message)." msgstr "" -#: library/warnings.rst:417 +#: library/warnings.rst:430 msgid "" "The *skip_file_prefixes* keyword argument can be used to indicate which " "stack frames are ignored when counting stack levels. This can be useful when " @@ -687,7 +715,7 @@ msgid "" "outside of the current package you might write::" msgstr "" -#: library/warnings.rst:426 +#: library/warnings.rst:439 msgid "" "# example/lower.py\n" "_warn_skips = (os.path.dirname(__file__),)\n" @@ -704,28 +732,28 @@ msgid "" " lower.one_way(**kw)" msgstr "" -#: library/warnings.rst:440 +#: library/warnings.rst:453 msgid "" "This makes the warning refer to both the ``example.lower.one_way()`` and " "``package.higher.another_way()`` call sites only from calling code living " "outside of ``example`` package." msgstr "" -#: library/warnings.rst:470 +#: library/warnings.rst:483 msgid "" "*source*, if supplied, is the destroyed object which emitted a :exc:" "`ResourceWarning`." msgstr "" -#: library/warnings.rst:447 +#: library/warnings.rst:460 msgid "Added *source* parameter." msgstr "" -#: library/warnings.rst:450 +#: library/warnings.rst:463 msgid "Added *skip_file_prefixes*." msgstr "" -#: library/warnings.rst:456 +#: library/warnings.rst:469 msgid "" "This is a low-level interface to the functionality of :func:`warn`, passing " "in explicitly the message, category, filename and line number, and " @@ -737,7 +765,7 @@ msgid "" "case *category* will be ignored." msgstr "" -#: library/warnings.rst:465 +#: library/warnings.rst:478 msgid "" "*module_globals*, if supplied, should be the global namespace in use by the " "code for which the warning is issued. (This argument is used to support " @@ -745,11 +773,11 @@ msgid "" "import sources)." msgstr "" -#: library/warnings.rst:473 +#: library/warnings.rst:486 msgid "Add the *source* parameter." msgstr "" -#: library/warnings.rst:479 +#: library/warnings.rst:492 msgid "" "Write a warning to a file. The default implementation calls " "``formatwarning(message, category, filename, lineno, line)`` and writes the " @@ -760,7 +788,7 @@ msgid "" "line specified by *filename* and *lineno*." msgstr "" -#: library/warnings.rst:490 +#: library/warnings.rst:503 msgid "" "Format a warning the standard way. This returns a string which may contain " "embedded newlines and ends in a newline. *line* is a line of source code to " @@ -769,7 +797,7 @@ msgid "" "*lineno*." msgstr "" -#: library/warnings.rst:499 +#: library/warnings.rst:512 msgid "" "Insert an entry into the list of :ref:`warnings filter specifications " "<warning-filter>`. The entry is inserted at the front by default; if " @@ -781,7 +809,7 @@ msgid "" "everything." msgstr "" -#: library/warnings.rst:511 +#: library/warnings.rst:524 msgid "" "Insert a simple entry into the list of :ref:`warnings filter specifications " "<warning-filter>`. The meaning of the function parameters is as for :func:" @@ -790,18 +818,18 @@ msgid "" "and line number match." msgstr "" -#: library/warnings.rst:520 +#: library/warnings.rst:533 msgid "" "Reset the warnings filter. This discards the effect of all previous calls " "to :func:`filterwarnings`, including that of the :option:`-W` command line " "options and calls to :func:`simplefilter`." msgstr "" -#: library/warnings.rst:526 +#: library/warnings.rst:539 msgid "Available Context Managers" msgstr "" -#: library/warnings.rst:530 +#: library/warnings.rst:543 msgid "" "A context manager that copies and, upon exit, restores the warnings filter " "and the :func:`showwarning` function. If the *record* argument is :const:" @@ -812,27 +840,27 @@ msgid "" "has attributes with the same names as the arguments to :func:`showwarning`." msgstr "" -#: library/warnings.rst:539 +#: library/warnings.rst:552 msgid "" "The *module* argument takes a module that will be used instead of the module " "returned when you import :mod:`warnings` whose filter will be protected. " "This argument exists primarily for testing the :mod:`warnings` module itself." msgstr "" -#: library/warnings.rst:544 +#: library/warnings.rst:557 msgid "" "If the *action* argument is not ``None``, the remaining arguments are passed " "to :func:`simplefilter` as if it were called immediately on entering the " "context." msgstr "" -#: library/warnings.rst:548 +#: library/warnings.rst:561 msgid "" "See :ref:`warning-filter` for the meaning of the *category* and *lineno* " "parameters." msgstr "" -#: library/warnings.rst:553 +#: library/warnings.rst:566 msgid "" "The :class:`catch_warnings` manager works by replacing and then later " "restoring the module's :func:`showwarning` function and internal list of " @@ -840,7 +868,7 @@ msgid "" "state and therefore is not thread-safe." msgstr "" -#: library/warnings.rst:561 +#: library/warnings.rst:574 msgid "Added the *action*, *category*, *lineno*, and *append* parameters." msgstr "" diff --git a/library/webbrowser.po b/library/webbrowser.po index a292fe9cd..39184ab9d 100644 --- a/library/webbrowser.po +++ b/library/webbrowser.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -58,16 +58,26 @@ msgid "" "launch a new browser and wait." msgstr "" -#: library/webbrowser.rst:36 +#: library/webbrowser.rst:38 msgid "" "The script :program:`webbrowser` can be used as a command-line interface for " "the module. It accepts a URL as the argument. It accepts the following " -"optional parameters: ``-n`` opens the URL in a new browser window, if " -"possible; ``-t`` opens the URL in a new browser page (\"tab\"). The options " -"are, naturally, mutually exclusive. Usage example::" +"optional parameters:" msgstr "" -#: library/webbrowser.rst:42 +#: library/webbrowser.rst:44 +msgid "Opens the URL in a new browser window, if possible." +msgstr "" + +#: library/webbrowser.rst:48 +msgid "Opens the URL in a new browser tab." +msgstr "" + +#: library/webbrowser.rst:50 +msgid "The options are, naturally, mutually exclusive. Usage example:" +msgstr "" + +#: library/webbrowser.rst:52 msgid "python -m webbrowser -t \"https://www.python.org\"" msgstr "" @@ -82,19 +92,19 @@ msgid "" "more information." msgstr "" -#: library/webbrowser.rst:46 +#: library/webbrowser.rst:58 msgid "The following exception is defined:" msgstr "" -#: library/webbrowser.rst:51 +#: library/webbrowser.rst:63 msgid "Exception raised when a browser control error occurs." msgstr "" -#: library/webbrowser.rst:53 +#: library/webbrowser.rst:65 msgid "The following functions are defined:" msgstr "" -#: library/webbrowser.rst:58 +#: library/webbrowser.rst:70 msgid "" "Display *url* using the default browser. If *new* is 0, the *url* is opened " "in the same browser window if possible. If *new* is 1, a new browser window " @@ -104,44 +114,44 @@ msgid "" "the setting of this variable)." msgstr "" -#: library/webbrowser.rst:79 library/webbrowser.rst:87 +#: library/webbrowser.rst:91 library/webbrowser.rst:99 msgid "" "Returns ``True`` if a browser was successfully launched, ``False`` otherwise." msgstr "" -#: library/webbrowser.rst:67 +#: library/webbrowser.rst:79 msgid "" "Note that on some platforms, trying to open a filename using this function, " "may work and start the operating system's associated program. However, this " "is neither supported nor portable." msgstr "" -#: library/webbrowser.rst:71 +#: library/webbrowser.rst:83 msgid "" "Raises an :ref:`auditing event <auditing>` ``webbrowser.open`` with argument " "``url``." msgstr "" -#: library/webbrowser.rst:76 +#: library/webbrowser.rst:88 msgid "" "Open *url* in a new window of the default browser, if possible, otherwise, " "open *url* in the only browser window." msgstr "" -#: library/webbrowser.rst:84 +#: library/webbrowser.rst:96 msgid "" "Open *url* in a new page (\"tab\") of the default browser, if possible, " "otherwise equivalent to :func:`open_new`." msgstr "" -#: library/webbrowser.rst:92 +#: library/webbrowser.rst:104 msgid "" "Return a controller object for the browser type *using*. If *using* is " "``None``, return a controller for a default browser appropriate to the " "caller's environment." msgstr "" -#: library/webbrowser.rst:99 +#: library/webbrowser.rst:111 msgid "" "Register the browser type *name*. Once a browser type is registered, the :" "func:`get` function can return a controller for that browser type. If " @@ -150,7 +160,7 @@ msgid "" "provided, *constructor* will never be called, and may be ``None``." msgstr "" -#: library/webbrowser.rst:105 +#: library/webbrowser.rst:117 msgid "" "Setting *preferred* to ``True`` makes this browser a preferred result for a :" "func:`get` call with no argument. Otherwise, this entry point is only " @@ -159,178 +169,178 @@ msgid "" "declare." msgstr "" -#: library/webbrowser.rst:111 +#: library/webbrowser.rst:123 msgid "*preferred* keyword-only parameter was added." msgstr "" -#: library/webbrowser.rst:114 +#: library/webbrowser.rst:126 msgid "" "A number of browser types are predefined. This table gives the type names " "that may be passed to the :func:`get` function and the corresponding " "instantiations for the controller classes, all defined in this module." msgstr "" -#: library/webbrowser.rst:119 +#: library/webbrowser.rst:131 msgid "Type Name" msgstr "" -#: library/webbrowser.rst:119 +#: library/webbrowser.rst:131 msgid "Class Name" msgstr "" -#: library/webbrowser.rst:119 +#: library/webbrowser.rst:131 msgid "Notes" msgstr "" -#: library/webbrowser.rst:121 +#: library/webbrowser.rst:133 msgid "``'mozilla'``" msgstr "" -#: library/webbrowser.rst:123 +#: library/webbrowser.rst:135 msgid ":class:`Mozilla('mozilla')`" msgstr "" -#: library/webbrowser.rst:123 +#: library/webbrowser.rst:135 msgid "``'firefox'``" msgstr "" -#: library/webbrowser.rst:125 +#: library/webbrowser.rst:137 msgid "``'epiphany'``" msgstr "" -#: library/webbrowser.rst:125 +#: library/webbrowser.rst:137 msgid ":class:`Epiphany('epiphany')`" msgstr "" -#: library/webbrowser.rst:127 +#: library/webbrowser.rst:139 msgid "``'kfmclient'``" msgstr "" -#: library/webbrowser.rst:129 library/webbrowser.rst:131 +#: library/webbrowser.rst:141 library/webbrowser.rst:143 msgid ":class:`Konqueror()`" msgstr "" -#: library/webbrowser.rst:129 library/webbrowser.rst:131 +#: library/webbrowser.rst:141 library/webbrowser.rst:143 msgid "\\(1)" msgstr "" -#: library/webbrowser.rst:129 +#: library/webbrowser.rst:141 msgid "``'konqueror'``" msgstr "" -#: library/webbrowser.rst:131 +#: library/webbrowser.rst:143 msgid "``'kfm'``" msgstr "" -#: library/webbrowser.rst:133 +#: library/webbrowser.rst:145 msgid "``'opera'``" msgstr "" -#: library/webbrowser.rst:133 +#: library/webbrowser.rst:145 msgid ":class:`Opera()`" msgstr "" -#: library/webbrowser.rst:135 +#: library/webbrowser.rst:147 msgid "``'links'``" msgstr "" -#: library/webbrowser.rst:135 +#: library/webbrowser.rst:147 msgid ":class:`GenericBrowser('links')`" msgstr "" -#: library/webbrowser.rst:137 +#: library/webbrowser.rst:149 msgid "``'elinks'``" msgstr "" -#: library/webbrowser.rst:137 +#: library/webbrowser.rst:149 msgid ":class:`Elinks('elinks')`" msgstr "" -#: library/webbrowser.rst:139 +#: library/webbrowser.rst:151 msgid "``'lynx'``" msgstr "" -#: library/webbrowser.rst:139 +#: library/webbrowser.rst:151 msgid ":class:`GenericBrowser('lynx')`" msgstr "" -#: library/webbrowser.rst:141 +#: library/webbrowser.rst:153 msgid "``'w3m'``" msgstr "" -#: library/webbrowser.rst:141 +#: library/webbrowser.rst:153 msgid ":class:`GenericBrowser('w3m')`" msgstr "" -#: library/webbrowser.rst:143 +#: library/webbrowser.rst:155 msgid "``'windows-default'``" msgstr "" -#: library/webbrowser.rst:143 +#: library/webbrowser.rst:155 msgid ":class:`WindowsDefault`" msgstr "" -#: library/webbrowser.rst:143 +#: library/webbrowser.rst:155 msgid "\\(2)" msgstr "" -#: library/webbrowser.rst:145 +#: library/webbrowser.rst:157 msgid "``'macosx'``" msgstr "" -#: library/webbrowser.rst:145 +#: library/webbrowser.rst:157 msgid ":class:`MacOSXOSAScript('default')`" msgstr "" -#: library/webbrowser.rst:147 +#: library/webbrowser.rst:159 msgid "\\(3)" msgstr "" -#: library/webbrowser.rst:147 +#: library/webbrowser.rst:159 msgid "``'safari'``" msgstr "" -#: library/webbrowser.rst:147 +#: library/webbrowser.rst:159 msgid ":class:`MacOSXOSAScript('safari')`" msgstr "" -#: library/webbrowser.rst:149 +#: library/webbrowser.rst:161 msgid "``'google-chrome'``" msgstr "" -#: library/webbrowser.rst:149 +#: library/webbrowser.rst:161 msgid ":class:`Chrome('google-chrome')`" msgstr "" -#: library/webbrowser.rst:151 +#: library/webbrowser.rst:163 msgid "``'chrome'``" msgstr "" -#: library/webbrowser.rst:151 +#: library/webbrowser.rst:163 msgid ":class:`Chrome('chrome')`" msgstr "" -#: library/webbrowser.rst:153 +#: library/webbrowser.rst:165 msgid "``'chromium'``" msgstr "" -#: library/webbrowser.rst:153 +#: library/webbrowser.rst:165 msgid ":class:`Chromium('chromium')`" msgstr "" -#: library/webbrowser.rst:155 +#: library/webbrowser.rst:167 msgid "``'chromium-browser'``" msgstr "" -#: library/webbrowser.rst:155 +#: library/webbrowser.rst:167 msgid ":class:`Chromium('chromium-browser')`" msgstr "" -#: library/webbrowser.rst:158 +#: library/webbrowser.rst:170 msgid "Notes:" msgstr "" -#: library/webbrowser.rst:161 +#: library/webbrowser.rst:173 msgid "" "\"Konqueror\" is the file manager for the KDE desktop environment for Unix, " "and only makes sense to use if KDE is running. Some way of reliably " @@ -340,34 +350,34 @@ msgid "" "best strategy for running Konqueror." msgstr "" -#: library/webbrowser.rst:168 +#: library/webbrowser.rst:180 msgid "Only on Windows platforms." msgstr "" -#: library/webbrowser.rst:171 +#: library/webbrowser.rst:183 msgid "Only on macOS platform." msgstr "" -#: library/webbrowser.rst:173 +#: library/webbrowser.rst:185 msgid "Support for Chrome/Chromium has been added." msgstr "" -#: library/webbrowser.rst:176 +#: library/webbrowser.rst:188 msgid "" "Support for several obsolete browsers has been removed. Removed browsers " "include Grail, Mosaic, Netscape, Galeon, Skipstone, Iceape, and Firefox " "versions 35 and below." msgstr "" -#: library/webbrowser.rst:181 +#: library/webbrowser.rst:193 msgid ":class:`MacOSX` is deprecated, use :class:`MacOSXOSAScript` instead." msgstr "" -#: library/webbrowser.rst:184 +#: library/webbrowser.rst:196 msgid "Here are some simple examples::" msgstr "" -#: library/webbrowser.rst:186 +#: library/webbrowser.rst:198 msgid "" "url = 'https://docs.python.org/'\n" "\n" @@ -378,45 +388,45 @@ msgid "" "webbrowser.open_new(url)" msgstr "" -#: library/webbrowser.rst:198 +#: library/webbrowser.rst:210 msgid "Browser Controller Objects" msgstr "" -#: library/webbrowser.rst:200 +#: library/webbrowser.rst:212 msgid "" "Browser controllers provide these methods which parallel three of the module-" "level convenience functions:" msgstr "" -#: library/webbrowser.rst:206 +#: library/webbrowser.rst:218 msgid "System-dependent name for the browser." msgstr "" -#: library/webbrowser.rst:211 +#: library/webbrowser.rst:223 msgid "" "Display *url* using the browser handled by this controller. If *new* is 1, a " "new browser window is opened if possible. If *new* is 2, a new browser page " "(\"tab\") is opened if possible." msgstr "" -#: library/webbrowser.rst:218 +#: library/webbrowser.rst:230 msgid "" "Open *url* in a new window of the browser handled by this controller, if " "possible, otherwise, open *url* in the only browser window. Alias :func:" "`open_new`." msgstr "" -#: library/webbrowser.rst:225 +#: library/webbrowser.rst:237 msgid "" "Open *url* in a new page (\"tab\") of the browser handled by this " "controller, if possible, otherwise equivalent to :func:`open_new`." msgstr "" -#: library/webbrowser.rst:230 +#: library/webbrowser.rst:242 msgid "Footnotes" msgstr "" -#: library/webbrowser.rst:231 +#: library/webbrowser.rst:243 msgid "" "Executables named here without a full path will be searched in the " "directories given in the :envvar:`PATH` environment variable." diff --git a/library/winsound.po b/library/winsound.po index a87cee3f0..8bd7c835b 100644 --- a/library/winsound.po +++ b/library/winsound.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -186,18 +186,25 @@ msgstr "" msgid "Return immediately if the sound driver is busy." msgstr "" -#: library/winsound.rst:160 +#: library/winsound.rst:140 +msgid "" +"The *sound* parameter is an application-specific alias in the registry. This " +"flag can be combined with the :const:`SND_ALIAS` flag to specify an " +"application-defined sound alias." +msgstr "" + +#: library/winsound.rst:167 msgid "Play the ``SystemDefault`` sound." msgstr "" -#: library/winsound.rst:145 +#: library/winsound.rst:152 msgid "Play the ``SystemExclamation`` sound." msgstr "" -#: library/winsound.rst:150 +#: library/winsound.rst:157 msgid "Play the ``SystemHand`` sound." msgstr "" -#: library/winsound.rst:155 +#: library/winsound.rst:162 msgid "Play the ``SystemQuestion`` sound." msgstr "" diff --git a/library/wsgiref.po b/library/wsgiref.po index 1a981146b..19a7164dd 100644 --- a/library/wsgiref.po +++ b/library/wsgiref.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -159,11 +159,13 @@ msgid "" "actual WSGI servers or applications, since the data is fake!" msgstr "" -#: library/wsgiref.rst:170 library/wsgiref.rst:426 -msgid "Example usage::" +#: library/wsgiref.rst:122 +msgid "" +"Example usage (see also :func:`~wsgiref.simple_server.demo_app` for another " +"example)::" msgstr "" -#: library/wsgiref.rst:124 +#: library/wsgiref.rst:125 msgid "" "from wsgiref.util import setup_testing_defaults\n" "from wsgiref.simple_server import make_server\n" @@ -187,19 +189,19 @@ msgid "" " httpd.serve_forever()" msgstr "" -#: library/wsgiref.rst:146 +#: library/wsgiref.rst:147 msgid "" "In addition to the environment functions above, the :mod:`wsgiref.util` " "module also provides these miscellaneous utilities:" msgstr "" -#: library/wsgiref.rst:152 +#: library/wsgiref.rst:153 msgid "" "Return ``True`` if 'header_name' is an HTTP/1.1 \"Hop-by-Hop\" header, as " "defined by :rfc:`2616`." msgstr "" -#: library/wsgiref.rst:158 +#: library/wsgiref.rst:159 msgid "" "A concrete implementation of the :class:`wsgiref.types.FileWrapper` protocol " "used to convert a file-like object to an :term:`iterator`. The resulting " @@ -209,14 +211,18 @@ msgid "" "`read` returns an empty bytestring, iteration is ended and is not resumable." msgstr "" -#: library/wsgiref.rst:166 +#: library/wsgiref.rst:167 msgid "" "If *filelike* has a :meth:`close` method, the returned object will also have " "a :meth:`close` method, and it will invoke the *filelike* object's :meth:" "`close` method when called." msgstr "" -#: library/wsgiref.rst:172 +#: library/wsgiref.rst:294 library/wsgiref.rst:429 +msgid "Example usage::" +msgstr "" + +#: library/wsgiref.rst:173 msgid "" "from io import StringIO\n" "from wsgiref.util import FileWrapper\n" @@ -229,28 +235,28 @@ msgid "" " print(chunk)" msgstr "" -#: library/wsgiref.rst:182 +#: library/wsgiref.rst:183 msgid "Support for :meth:`~object.__getitem__` method has been removed." msgstr "" -#: library/wsgiref.rst:187 +#: library/wsgiref.rst:188 msgid ":mod:`wsgiref.headers` -- WSGI response header tools" msgstr "" -#: library/wsgiref.rst:193 +#: library/wsgiref.rst:194 msgid "" "This module provides a single class, :class:`Headers`, for convenient " "manipulation of WSGI response headers using a mapping-like interface." msgstr "" -#: library/wsgiref.rst:199 +#: library/wsgiref.rst:200 msgid "" "Create a mapping-like object wrapping *headers*, which must be a list of " "header name/value tuples as described in :pep:`3333`. The default value of " "*headers* is an empty list." msgstr "" -#: library/wsgiref.rst:203 +#: library/wsgiref.rst:204 msgid "" ":class:`Headers` objects support typical mapping operations including :meth:" "`~object.__getitem__`, :meth:`~dict.get`, :meth:`~object.__setitem__`, :meth:" @@ -263,7 +269,7 @@ msgid "" "the end of the wrapped list." msgstr "" -#: library/wsgiref.rst:213 +#: library/wsgiref.rst:214 msgid "" "Unlike a dictionary, :class:`Headers` objects do not raise an error when you " "try to get or delete a key that isn't in the wrapped header list. Getting a " @@ -271,7 +277,7 @@ msgid "" "does nothing." msgstr "" -#: library/wsgiref.rst:218 +#: library/wsgiref.rst:219 msgid "" ":class:`Headers` objects also support :meth:`keys`, :meth:`values`, and :" "meth:`items` methods. The lists returned by :meth:`keys` and :meth:`items` " @@ -282,7 +288,7 @@ msgid "" "list." msgstr "" -#: library/wsgiref.rst:225 +#: library/wsgiref.rst:226 msgid "" "Calling ``bytes()`` on a :class:`Headers` object returns a formatted " "bytestring suitable for transmission as HTTP response headers. Each header " @@ -291,18 +297,18 @@ msgid "" "terminated with a blank line." msgstr "" -#: library/wsgiref.rst:231 +#: library/wsgiref.rst:232 msgid "" "In addition to their mapping interface and formatting features, :class:" "`Headers` objects also have the following methods for querying and adding " "multi-valued headers, and for adding headers with MIME parameters:" msgstr "" -#: library/wsgiref.rst:238 +#: library/wsgiref.rst:239 msgid "Return a list of all the values for the named header." msgstr "" -#: library/wsgiref.rst:240 +#: library/wsgiref.rst:241 msgid "" "The returned list will be sorted in the order they appeared in the original " "header list or were added to this instance, and may contain duplicates. Any " @@ -310,13 +316,13 @@ msgid "" "no fields exist with the given name, returns an empty list." msgstr "" -#: library/wsgiref.rst:248 +#: library/wsgiref.rst:249 msgid "" "Add a (possibly multi-valued) header, with optional MIME parameters " "specified via keyword arguments." msgstr "" -#: library/wsgiref.rst:251 +#: library/wsgiref.rst:252 msgid "" "*name* is the header field to add. Keyword arguments can be used to set " "MIME parameters for the header field. Each parameter must be a string or " @@ -328,27 +334,27 @@ msgid "" "a value.) Example usage::" msgstr "" -#: library/wsgiref.rst:259 +#: library/wsgiref.rst:260 msgid "h.add_header('content-disposition', 'attachment', filename='bud.gif')" msgstr "" -#: library/wsgiref.rst:261 +#: library/wsgiref.rst:262 msgid "The above will add a header that looks like this::" msgstr "" -#: library/wsgiref.rst:263 +#: library/wsgiref.rst:264 msgid "Content-Disposition: attachment; filename=\"bud.gif\"" msgstr "" -#: library/wsgiref.rst:266 +#: library/wsgiref.rst:267 msgid "*headers* parameter is optional." msgstr "" -#: library/wsgiref.rst:271 +#: library/wsgiref.rst:272 msgid ":mod:`wsgiref.simple_server` -- a simple WSGI HTTP server" msgstr "" -#: library/wsgiref.rst:277 +#: library/wsgiref.rst:278 msgid "" "This module implements a simple HTTP server (based on :mod:`http.server`) " "that serves WSGI applications. Each server instance serves a single WSGI " @@ -359,7 +365,7 @@ msgid "" "`wsgiref.util`.)" msgstr "" -#: library/wsgiref.rst:288 +#: library/wsgiref.rst:289 msgid "" "Create a new WSGI server listening on *host* and *port*, accepting " "connections for *app*. The return value is an instance of the supplied " @@ -368,7 +374,7 @@ msgid "" "pep:`3333`." msgstr "" -#: library/wsgiref.rst:295 +#: library/wsgiref.rst:296 msgid "" "from wsgiref.simple_server import make_server, demo_app\n" "\n" @@ -382,7 +388,7 @@ msgid "" " httpd.handle_request()" msgstr "" -#: library/wsgiref.rst:309 +#: library/wsgiref.rst:310 msgid "" "This function is a small but complete WSGI application that returns a text " "page containing the message \"Hello world!\" and a list of the key/value " @@ -391,51 +397,57 @@ msgid "" "WSGI application correctly." msgstr "" -#: library/wsgiref.rst:318 +#: library/wsgiref.rst:316 +msgid "" +"The *start_response* callable should follow the :class:`.StartResponse` " +"protocol." +msgstr "" + +#: library/wsgiref.rst:321 msgid "" "Create a :class:`WSGIServer` instance. *server_address* should be a ``(host," "port)`` tuple, and *RequestHandlerClass* should be the subclass of :class:" "`http.server.BaseHTTPRequestHandler` that will be used to process requests." msgstr "" -#: library/wsgiref.rst:323 +#: library/wsgiref.rst:326 msgid "" "You do not normally need to call this constructor, as the :func:" "`make_server` function can handle all the details for you." msgstr "" -#: library/wsgiref.rst:326 +#: library/wsgiref.rst:329 msgid "" ":class:`WSGIServer` is a subclass of :class:`http.server.HTTPServer`, so all " "of its methods (such as :meth:`serve_forever` and :meth:`handle_request`) " "are available. :class:`WSGIServer` also provides these WSGI-specific methods:" msgstr "" -#: library/wsgiref.rst:333 +#: library/wsgiref.rst:336 msgid "" "Sets the callable *application* as the WSGI application that will receive " "requests." msgstr "" -#: library/wsgiref.rst:339 +#: library/wsgiref.rst:342 msgid "Returns the currently set application callable." msgstr "" -#: library/wsgiref.rst:341 +#: library/wsgiref.rst:344 msgid "" "Normally, however, you do not need to use these additional methods, as :meth:" "`set_app` is normally called by :func:`make_server`, and the :meth:`get_app` " "exists mainly for the benefit of request handler instances." msgstr "" -#: library/wsgiref.rst:348 +#: library/wsgiref.rst:351 msgid "" "Create an HTTP handler for the given *request* (i.e. a socket), " "*client_address* (a ``(host,port)`` tuple), and *server* (:class:" "`WSGIServer` instance)." msgstr "" -#: library/wsgiref.rst:351 +#: library/wsgiref.rst:354 msgid "" "You do not need to create instances of this class directly; they are " "automatically created as needed by :class:`WSGIServer` objects. You can, " @@ -444,7 +456,7 @@ msgid "" "subclasses:" msgstr "" -#: library/wsgiref.rst:360 +#: library/wsgiref.rst:363 msgid "" "Return a :data:`~wsgiref.types.WSGIEnvironment` dictionary for a request. " "The default implementation copies the contents of the :class:`WSGIServer` " @@ -454,24 +466,24 @@ msgid "" "variables as specified in :pep:`3333`." msgstr "" -#: library/wsgiref.rst:371 +#: library/wsgiref.rst:374 msgid "" "Return the object that should be used as the ``wsgi.errors`` stream. The " "default implementation just returns ``sys.stderr``." msgstr "" -#: library/wsgiref.rst:377 +#: library/wsgiref.rst:380 msgid "" "Process the HTTP request. The default implementation creates a handler " "instance using a :mod:`wsgiref.handlers` class to implement the actual WSGI " "application interface." msgstr "" -#: library/wsgiref.rst:383 +#: library/wsgiref.rst:386 msgid ":mod:`wsgiref.validate` --- WSGI conformance checker" msgstr "" -#: library/wsgiref.rst:389 +#: library/wsgiref.rst:392 msgid "" "When creating new WSGI application objects, frameworks, servers, or " "middleware, it can be useful to validate the new code's conformance using :" @@ -481,7 +493,7 @@ msgid "" "conformance." msgstr "" -#: library/wsgiref.rst:396 +#: library/wsgiref.rst:399 msgid "" "Note that this utility does not guarantee complete :pep:`3333` compliance; " "an absence of errors from this module does not necessarily mean that errors " @@ -490,13 +502,13 @@ msgid "" "compliant." msgstr "" -#: library/wsgiref.rst:401 +#: library/wsgiref.rst:404 msgid "" "This module is based on the :mod:`paste.lint` module from Ian Bicking's " "\"Python Paste\" library." msgstr "" -#: library/wsgiref.rst:407 +#: library/wsgiref.rst:410 msgid "" "Wrap *application* and return a new WSGI application object. The returned " "application will forward all requests to the original *application*, and " @@ -504,7 +516,7 @@ msgid "" "conforming to the WSGI specification and to :rfc:`2616`." msgstr "" -#: library/wsgiref.rst:412 +#: library/wsgiref.rst:415 msgid "" "Any detected nonconformance results in an :exc:`AssertionError` being " "raised; note, however, that how these errors are handled is server-" @@ -515,7 +527,7 @@ msgid "" "stream." msgstr "" -#: library/wsgiref.rst:419 +#: library/wsgiref.rst:422 msgid "" "This wrapper may also generate output using the :mod:`warnings` module to " "indicate behaviors that are questionable but which may not actually be " @@ -525,7 +537,7 @@ msgid "" "object)." msgstr "" -#: library/wsgiref.rst:428 +#: library/wsgiref.rst:431 msgid "" "from wsgiref.validate import validator\n" "from wsgiref.simple_server import make_server\n" @@ -549,11 +561,11 @@ msgid "" " httpd.serve_forever()" msgstr "" -#: library/wsgiref.rst:451 +#: library/wsgiref.rst:454 msgid ":mod:`wsgiref.handlers` -- server/gateway base classes" msgstr "" -#: library/wsgiref.rst:457 +#: library/wsgiref.rst:460 msgid "" "This module provides base handler classes for implementing WSGI servers and " "gateways. These base classes handle most of the work of communicating with " @@ -561,7 +573,7 @@ msgid "" "with input, output, and error streams." msgstr "" -#: library/wsgiref.rst:465 +#: library/wsgiref.rst:468 msgid "" "CGI-based invocation via ``sys.stdin``, ``sys.stdout``, ``sys.stderr`` and " "``os.environ``. This is useful when you have a WSGI application and want to " @@ -569,7 +581,7 @@ msgid "" "``app`` is the WSGI application object you wish to invoke." msgstr "" -#: library/wsgiref.rst:470 +#: library/wsgiref.rst:473 msgid "" "This class is a subclass of :class:`BaseCGIHandler` that sets ``wsgi." "run_once`` to true, ``wsgi.multithread`` to false, and ``wsgi.multiprocess`` " @@ -577,21 +589,21 @@ msgid "" "CGI streams and environment." msgstr "" -#: library/wsgiref.rst:478 +#: library/wsgiref.rst:481 msgid "" "A specialized alternative to :class:`CGIHandler`, for use when deploying on " "Microsoft's IIS web server, without having set the config allowPathInfo " "option (IIS>=7) or metabase allowPathInfoForScriptMappings (IIS<7)." msgstr "" -#: library/wsgiref.rst:482 +#: library/wsgiref.rst:485 msgid "" "By default, IIS gives a ``PATH_INFO`` that duplicates the ``SCRIPT_NAME`` at " "the front, causing problems for WSGI applications that wish to implement " "routing. This handler strips any such duplicated path." msgstr "" -#: library/wsgiref.rst:486 +#: library/wsgiref.rst:489 msgid "" "IIS can be configured to pass the correct ``PATH_INFO``, but this causes " "another bug where ``PATH_TRANSLATED`` is wrong. Luckily this variable is " @@ -602,7 +614,7 @@ msgid "" "because there is still no UI for it.)." msgstr "" -#: library/wsgiref.rst:494 +#: library/wsgiref.rst:497 msgid "" "There is no way for CGI code to tell whether the option was set, so a " "separate handler class is provided. It is used in the same way as :class:" @@ -610,7 +622,7 @@ msgid "" "is the WSGI application object you wish to invoke." msgstr "" -#: library/wsgiref.rst:504 +#: library/wsgiref.rst:507 msgid "" "Similar to :class:`CGIHandler`, but instead of using the :mod:`sys` and :mod:" "`os` modules, the CGI environment and I/O streams are specified explicitly. " @@ -619,7 +631,7 @@ msgid "" "the handler instance." msgstr "" -#: library/wsgiref.rst:510 +#: library/wsgiref.rst:513 msgid "" "This class is a subclass of :class:`SimpleHandler` intended for use with " "software other than HTTP \"origin servers\". If you are writing a gateway " @@ -628,14 +640,14 @@ msgid "" "this instead of :class:`SimpleHandler`." msgstr "" -#: library/wsgiref.rst:519 +#: library/wsgiref.rst:522 msgid "" "Similar to :class:`BaseCGIHandler`, but designed for use with HTTP origin " "servers. If you are writing an HTTP server implementation, you will " "probably want to subclass this instead of :class:`BaseCGIHandler`." msgstr "" -#: library/wsgiref.rst:523 +#: library/wsgiref.rst:526 msgid "" "This class is a subclass of :class:`BaseHandler`. It overrides the :meth:`!" "__init__`, :meth:`~BaseHandler.get_stdin`, :meth:`~BaseHandler.get_stderr`, :" @@ -646,41 +658,41 @@ msgid "" "`environ` attributes." msgstr "" -#: library/wsgiref.rst:532 +#: library/wsgiref.rst:535 msgid "" "The :meth:`~io.BufferedIOBase.write` method of *stdout* should write each " "chunk in full, like :class:`io.BufferedIOBase`." msgstr "" -#: library/wsgiref.rst:538 +#: library/wsgiref.rst:541 msgid "" "This is an abstract base class for running WSGI applications. Each instance " "will handle a single HTTP request, although in principle you could create a " "subclass that was reusable for multiple requests." msgstr "" -#: library/wsgiref.rst:542 +#: library/wsgiref.rst:545 msgid "" ":class:`BaseHandler` instances have only one method intended for external " "use:" msgstr "" -#: library/wsgiref.rst:547 +#: library/wsgiref.rst:550 msgid "Run the specified WSGI application, *app*." msgstr "" -#: library/wsgiref.rst:549 +#: library/wsgiref.rst:552 msgid "" "All of the other :class:`BaseHandler` methods are invoked by this method in " "the process of running the application, and thus exist primarily to allow " "customizing the process." msgstr "" -#: library/wsgiref.rst:553 +#: library/wsgiref.rst:556 msgid "The following methods MUST be overridden in a subclass:" msgstr "" -#: library/wsgiref.rst:558 +#: library/wsgiref.rst:561 msgid "" "Buffer the bytes *data* for transmission to the client. It's okay if this " "method actually transmits the data; :class:`BaseHandler` just separates " @@ -688,33 +700,33 @@ msgid "" "actually has such a distinction." msgstr "" -#: library/wsgiref.rst:566 +#: library/wsgiref.rst:569 msgid "" "Force buffered data to be transmitted to the client. It's okay if this " "method is a no-op (i.e., if :meth:`_write` actually sends the data)." msgstr "" -#: library/wsgiref.rst:572 +#: library/wsgiref.rst:575 msgid "" "Return an object compatible with :class:`~wsgiref.types.InputStream` " "suitable for use as the ``wsgi.input`` of the request currently being " "processed." msgstr "" -#: library/wsgiref.rst:579 +#: library/wsgiref.rst:582 msgid "" "Return an object compatible with :class:`~wsgiref.types.ErrorStream` " "suitable for use as the ``wsgi.errors`` of the request currently being " "processed." msgstr "" -#: library/wsgiref.rst:586 +#: library/wsgiref.rst:589 msgid "" "Insert CGI variables for the current request into the :attr:`environ` " "attribute." msgstr "" -#: library/wsgiref.rst:588 +#: library/wsgiref.rst:591 msgid "" "Here are some other methods and attributes you may wish to override. This " "list is only a summary, however, and does not include every method that can " @@ -723,32 +735,32 @@ msgid "" "`BaseHandler` subclass." msgstr "" -#: library/wsgiref.rst:594 +#: library/wsgiref.rst:597 msgid "Attributes and methods for customizing the WSGI environment:" msgstr "" -#: library/wsgiref.rst:599 +#: library/wsgiref.rst:602 msgid "" "The value to be used for the ``wsgi.multithread`` environment variable. It " "defaults to true in :class:`BaseHandler`, but may have a different default " "(or be set by the constructor) in the other subclasses." msgstr "" -#: library/wsgiref.rst:606 +#: library/wsgiref.rst:609 msgid "" "The value to be used for the ``wsgi.multiprocess`` environment variable. It " "defaults to true in :class:`BaseHandler`, but may have a different default " "(or be set by the constructor) in the other subclasses." msgstr "" -#: library/wsgiref.rst:613 +#: library/wsgiref.rst:616 msgid "" "The value to be used for the ``wsgi.run_once`` environment variable. It " "defaults to false in :class:`BaseHandler`, but :class:`CGIHandler` sets it " "to true by default." msgstr "" -#: library/wsgiref.rst:620 +#: library/wsgiref.rst:623 msgid "" "The default environment variables to be included in every request's WSGI " "environment. By default, this is a copy of ``os.environ`` at the time that :" @@ -758,7 +770,7 @@ msgid "" "classes and instances." msgstr "" -#: library/wsgiref.rst:630 +#: library/wsgiref.rst:633 msgid "" "If the :attr:`origin_server` attribute is set, this attribute's value is " "used to set the default ``SERVER_SOFTWARE`` WSGI environment variable, and " @@ -767,13 +779,13 @@ msgid "" "are not HTTP origin servers." msgstr "" -#: library/wsgiref.rst:636 +#: library/wsgiref.rst:639 msgid "" "The term \"Python\" is replaced with implementation specific term like " "\"CPython\", \"Jython\" etc." msgstr "" -#: library/wsgiref.rst:642 +#: library/wsgiref.rst:645 msgid "" "Return the URL scheme being used for the current request. The default " "implementation uses the :func:`guess_scheme` function from :mod:`wsgiref." @@ -781,7 +793,7 @@ msgid "" "the current request's :attr:`environ` variables." msgstr "" -#: library/wsgiref.rst:650 +#: library/wsgiref.rst:653 msgid "" "Set the :attr:`environ` attribute to a fully populated WSGI environment. " "The default implementation uses all of the above methods and attributes, " @@ -791,11 +803,11 @@ msgid "" "attribute is a true value and the :attr:`server_software` attribute is set." msgstr "" -#: library/wsgiref.rst:657 +#: library/wsgiref.rst:660 msgid "Methods and attributes for customizing exception handling:" msgstr "" -#: library/wsgiref.rst:662 +#: library/wsgiref.rst:665 msgid "" "Log the *exc_info* tuple in the server log. *exc_info* is a ``(type, value, " "traceback)`` tuple. The default implementation simply writes the traceback " @@ -805,33 +817,35 @@ msgid "" "suitable." msgstr "" -#: library/wsgiref.rst:671 +#: library/wsgiref.rst:674 msgid "" "The maximum number of frames to include in tracebacks output by the default :" "meth:`log_exception` method. If ``None``, all frames are included." msgstr "" -#: library/wsgiref.rst:677 +#: library/wsgiref.rst:680 msgid "" "This method is a WSGI application to generate an error page for the user. " "It is only invoked if an error occurs before headers are sent to the client." msgstr "" -#: library/wsgiref.rst:680 +#: library/wsgiref.rst:683 msgid "" "This method can access the current error using ``sys.exception()``, and " "should pass that information to *start_response* when calling it (as " -"described in the \"Error Handling\" section of :pep:`3333`)." +"described in the \"Error Handling\" section of :pep:`3333`). In particular, " +"the *start_response* callable should follow the :class:`.StartResponse` " +"protocol." msgstr "" -#: library/wsgiref.rst:684 +#: library/wsgiref.rst:689 msgid "" "The default implementation just uses the :attr:`error_status`, :attr:" "`error_headers`, and :attr:`error_body` attributes to generate an output " "page. Subclasses can override this to produce more dynamic error output." msgstr "" -#: library/wsgiref.rst:688 +#: library/wsgiref.rst:693 msgid "" "Note, however, that it's not recommended from a security perspective to spit " "out diagnostics to any old user; ideally, you should have to do something " @@ -839,40 +853,40 @@ msgid "" "doesn't include any." msgstr "" -#: library/wsgiref.rst:696 +#: library/wsgiref.rst:701 msgid "" "The HTTP status used for error responses. This should be a status string as " "defined in :pep:`3333`; it defaults to a 500 code and message." msgstr "" -#: library/wsgiref.rst:702 +#: library/wsgiref.rst:707 msgid "" "The HTTP headers used for error responses. This should be a list of WSGI " "response headers (``(name, value)`` tuples), as described in :pep:`3333`. " "The default list just sets the content type to ``text/plain``." msgstr "" -#: library/wsgiref.rst:709 +#: library/wsgiref.rst:714 msgid "" "The error response body. This should be an HTTP response body bytestring. " "It defaults to the plain text, \"A server error occurred. Please contact " "the administrator.\"" msgstr "" -#: library/wsgiref.rst:713 +#: library/wsgiref.rst:718 msgid "" "Methods and attributes for :pep:`3333`'s \"Optional Platform-Specific File " "Handling\" feature:" msgstr "" -#: library/wsgiref.rst:719 +#: library/wsgiref.rst:724 msgid "" "A ``wsgi.file_wrapper`` factory, compatible with :class:`wsgiref.types." "FileWrapper`, or ``None``. The default value of this attribute is the :" "class:`wsgiref.util.FileWrapper` class." msgstr "" -#: library/wsgiref.rst:726 +#: library/wsgiref.rst:731 msgid "" "Override to implement platform-specific file transmission. This method is " "called only if the application's return value is an instance of the class " @@ -882,11 +896,11 @@ msgid "" "of this method just returns a false value." msgstr "" -#: library/wsgiref.rst:733 +#: library/wsgiref.rst:738 msgid "Miscellaneous methods and attributes:" msgstr "" -#: library/wsgiref.rst:738 +#: library/wsgiref.rst:743 msgid "" "This attribute should be set to a true value if the handler's :meth:`_write` " "and :meth:`_flush` are being used to communicate directly to the client, " @@ -894,19 +908,19 @@ msgid "" "special ``Status:`` header." msgstr "" -#: library/wsgiref.rst:743 +#: library/wsgiref.rst:748 msgid "" "This attribute's default value is true in :class:`BaseHandler`, but false " "in :class:`BaseCGIHandler` and :class:`CGIHandler`." msgstr "" -#: library/wsgiref.rst:749 +#: library/wsgiref.rst:754 msgid "" "If :attr:`origin_server` is true, this string attribute is used to set the " "HTTP version of the response set to the client. It defaults to ``\"1.0\"``." msgstr "" -#: library/wsgiref.rst:755 +#: library/wsgiref.rst:760 msgid "" "Transcode CGI variables from ``os.environ`` to :pep:`3333` \"bytes in " "unicode\" strings, returning a new dictionary. This function is used by :" @@ -918,65 +932,68 @@ msgid "" "than ISO-8859-1 (e.g. Unix systems using UTF-8)." msgstr "" -#: library/wsgiref.rst:764 +#: library/wsgiref.rst:769 msgid "" "If you are implementing a CGI-based handler of your own, you probably want " "to use this routine instead of just copying values out of ``os.environ`` " "directly." msgstr "" -#: library/wsgiref.rst:772 +#: library/wsgiref.rst:777 msgid ":mod:`wsgiref.types` -- WSGI types for static type checking" msgstr "" -#: library/wsgiref.rst:778 +#: library/wsgiref.rst:783 msgid "" "This module provides various types for static type checking as described in :" "pep:`3333`." msgstr "" -#: library/wsgiref.rst:786 +#: library/wsgiref.rst:791 msgid "" "A :class:`typing.Protocol` describing :pep:`start_response() <3333#the-start-" "response-callable>` callables (:pep:`3333`)." msgstr "" -#: library/wsgiref.rst:792 +#: library/wsgiref.rst:797 msgid "A type alias describing a WSGI environment dictionary." msgstr "" -#: library/wsgiref.rst:796 +#: library/wsgiref.rst:801 msgid "A type alias describing a WSGI application callable." msgstr "" -#: library/wsgiref.rst:800 +#: library/wsgiref.rst:805 msgid "" "A :class:`typing.Protocol` describing a :pep:`WSGI Input Stream <3333#input-" "and-error-streams>`." msgstr "" -#: library/wsgiref.rst:805 +#: library/wsgiref.rst:810 msgid "" "A :class:`typing.Protocol` describing a :pep:`WSGI Error Stream <3333#input-" "and-error-streams>`." msgstr "" -#: library/wsgiref.rst:810 +#: library/wsgiref.rst:815 msgid "" "A :class:`typing.Protocol` describing a :pep:`file wrapper <3333#optional-" "platform-specific-file-handling>`. See :class:`wsgiref.util.FileWrapper` for " "a concrete implementation of this protocol." msgstr "" -#: library/wsgiref.rst:817 +#: library/wsgiref.rst:822 msgid "Examples" msgstr "" -#: library/wsgiref.rst:819 -msgid "This is a working \"Hello World\" WSGI application::" +#: library/wsgiref.rst:824 +msgid "" +"This is a working \"Hello World\" WSGI application, where the " +"*start_response* callable should follow the :class:`.StartResponse` " +"protocol::" msgstr "" -#: library/wsgiref.rst:821 +#: library/wsgiref.rst:827 msgid "" "\"\"\"\n" "Every WSGI application must have an application object - a callable\n" @@ -1005,13 +1022,13 @@ msgid "" " httpd.serve_forever()" msgstr "" -#: library/wsgiref.rst:848 +#: library/wsgiref.rst:854 msgid "" "Example of a WSGI application serving the current directory, accept optional " "directory and port number (default: 8000) on the command line::" msgstr "" -#: library/wsgiref.rst:851 +#: library/wsgiref.rst:857 msgid "" "\"\"\"\n" "Small wsgiref based web server. Takes a path to serve from and an\n" diff --git a/library/xmlrpc.client.po b/library/xmlrpc.client.po index c18b32be9..c72ddba9f 100644 --- a/library/xmlrpc.client.po +++ b/library/xmlrpc.client.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -84,29 +84,29 @@ msgid "" "class:`bytes` and :class:`bytearray` objects may be passed to calls. The " "*headers* parameter is an optional sequence of HTTP headers to send with " "each request, expressed as a sequence of 2-tuples representing the header " -"name and value. (e.g. ``[('Header-Name', 'value')]``). The obsolete " -"*use_datetime* flag is similar to *use_builtin_types* but it applies only to " -"date/time values." +"name and value. (e.g. ``[('Header-Name', 'value')]``). If an HTTPS URL is " +"provided, *context* may be :class:`ssl.SSLContext` and configures the SSL " +"settings of the underlying HTTPS connection. The obsolete *use_datetime* " +"flag is similar to *use_builtin_types* but it applies only to date/time " +"values." msgstr "" #: library/xmlrpc.client.rst:549 msgid "The *use_builtin_types* flag was added." msgstr "" -#: library/xmlrpc.client.rst:70 +#: library/xmlrpc.client.rst:72 msgid "The *headers* parameter was added." msgstr "" -#: library/xmlrpc.client.rst:73 +#: library/xmlrpc.client.rst:75 msgid "" "Both the HTTP and HTTPS transports support the URL syntax extension for HTTP " "Basic Authentication: ``http://user:pass@host:port/path``. The ``user:" "pass`` portion will be base64-encoded as an HTTP 'Authorization' header, and " "sent to the remote server as part of the connection process when invoking an " "XML-RPC method. You only need to use this if the remote server requires a " -"Basic Authentication user and password. If an HTTPS URL is provided, " -"*context* may be :class:`ssl.SSLContext` and configures the SSL settings of " -"the underlying HTTPS connection." +"Basic Authentication user and password." msgstr "" #: library/xmlrpc.client.rst:82 diff --git a/library/xmlrpc.po b/library/xmlrpc.po index a26b921e8..af48a84ca 100644 --- a/library/xmlrpc.po +++ b/library/xmlrpc.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-09-18 19:05+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -20,23 +20,23 @@ msgstr "" msgid ":mod:`!xmlrpc` --- XMLRPC server and client modules" msgstr "" -#: library/xmlrpc.rst:4 +#: library/xmlrpc.rst:7 msgid "" "XML-RPC is a Remote Procedure Call method that uses XML passed via HTTP as a " "transport. With it, a client can call methods with parameters on a remote " "server (the server is named by a URI) and get back structured data." msgstr "" -#: library/xmlrpc.rst:8 +#: library/xmlrpc.rst:11 msgid "" "``xmlrpc`` is a package that collects server and client modules implementing " "XML-RPC. The modules are:" msgstr "" -#: library/xmlrpc.rst:11 +#: library/xmlrpc.rst:14 msgid ":mod:`xmlrpc.client`" msgstr "" -#: library/xmlrpc.rst:12 +#: library/xmlrpc.rst:15 msgid ":mod:`xmlrpc.server`" msgstr "" diff --git a/library/zipfile.po b/library/zipfile.po index 087613921..7ac0bd97b 100644 --- a/library/zipfile.po +++ b/library/zipfile.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -204,7 +204,7 @@ msgid "" "accepted (see :class:`bz2 <bz2.BZ2File>` for more information)." msgstr "" -#: library/zipfile.rst:735 +#: library/zipfile.rst:743 msgid "" "The *strict_timestamps* argument, when set to ``False``, allows to zip files " "older than 1980-01-01 at the cost of setting the timestamp to 1980-01-01. " @@ -263,7 +263,7 @@ msgstr "" msgid "Added support for :mod:`bzip2 <bz2>` and :mod:`lzma` compression." msgstr "" -#: library/zipfile.rst:648 +#: library/zipfile.rst:656 msgid "ZIP64 extensions are enabled by default." msgstr "" @@ -628,20 +628,31 @@ msgid "" "file.txt', 'dir/', or ''. Defaults to the empty string, indicating the root." msgstr "" -#: library/zipfile.rst:531 +#: library/zipfile.rst:532 +msgid "" +"The :class:`Path` class does not sanitize filenames within the ZIP archive. " +"Unlike the :meth:`ZipFile.extract` and :meth:`ZipFile.extractall` methods, " +"it is the caller's responsibility to validate or sanitize filenames to " +"prevent path traversal vulnerabilities (e.g., filenames containing \"..\" or " +"absolute paths). When handling untrusted archives, consider resolving " +"filenames using :func:`os.path.abspath` and checking against the target " +"directory with :func:`os.path.commonpath`." +msgstr "" + +#: library/zipfile.rst:539 msgid "" "Path objects expose the following features of :mod:`pathlib.Path` objects:" msgstr "" -#: library/zipfile.rst:534 +#: library/zipfile.rst:542 msgid "Path objects are traversable using the ``/`` operator or ``joinpath``." msgstr "" -#: library/zipfile.rst:538 +#: library/zipfile.rst:546 msgid "The final path component." msgstr "" -#: library/zipfile.rst:542 +#: library/zipfile.rst:550 msgid "" "Invoke :meth:`ZipFile.open` on the current path. Allows opening for read or " "write, text or binary through supported modes: 'r', 'w', 'rb', 'wb'. " @@ -650,12 +661,12 @@ msgid "" "``pwd`` parameter to :meth:`ZipFile.open`." msgstr "" -#: library/zipfile.rst:551 +#: library/zipfile.rst:559 msgid "" "Added support for text and binary modes for open. Default mode is now text." msgstr "" -#: library/zipfile.rst:606 +#: library/zipfile.rst:614 msgid "" "The ``encoding`` parameter can be supplied as a positional argument without " "causing a :exc:`TypeError`. As it could in 3.9. Code needing to be " @@ -663,124 +674,124 @@ msgid "" "TextIOWrapper` arguments, ``encoding`` included, as keywords." msgstr "" -#: library/zipfile.rst:563 +#: library/zipfile.rst:571 msgid "Enumerate the children of the current directory." msgstr "" -#: library/zipfile.rst:567 +#: library/zipfile.rst:575 msgid "Return ``True`` if the current context references a directory." msgstr "" -#: library/zipfile.rst:571 +#: library/zipfile.rst:579 msgid "Return ``True`` if the current context references a file." msgstr "" -#: library/zipfile.rst:575 +#: library/zipfile.rst:583 msgid "" "Return ``True`` if the current context references a file or directory in the " "zip file." msgstr "" -#: library/zipfile.rst:580 +#: library/zipfile.rst:588 msgid "The file extension of the final component." msgstr "" -#: library/zipfile.rst:582 +#: library/zipfile.rst:590 msgid "Added :data:`Path.suffix` property." msgstr "" -#: library/zipfile.rst:587 +#: library/zipfile.rst:595 msgid "The final path component, without its suffix." msgstr "" -#: library/zipfile.rst:589 +#: library/zipfile.rst:597 msgid "Added :data:`Path.stem` property." msgstr "" -#: library/zipfile.rst:594 +#: library/zipfile.rst:602 msgid "A list of the path’s file extensions." msgstr "" -#: library/zipfile.rst:596 +#: library/zipfile.rst:604 msgid "Added :data:`Path.suffixes` property." msgstr "" -#: library/zipfile.rst:601 +#: library/zipfile.rst:609 msgid "" "Read the current file as unicode text. Positional and keyword arguments are " "passed through to :class:`io.TextIOWrapper` (except ``buffer``, which is " "implied by the context)." msgstr "" -#: library/zipfile.rst:614 +#: library/zipfile.rst:622 msgid "Read the current file as bytes." msgstr "" -#: library/zipfile.rst:618 +#: library/zipfile.rst:626 msgid "" "Return a new Path object with each of the *other* arguments joined. The " "following are equivalent::" msgstr "" -#: library/zipfile.rst:621 +#: library/zipfile.rst:629 msgid "" ">>> Path(...).joinpath('child').joinpath('grandchild')\n" ">>> Path(...).joinpath('child', 'grandchild')\n" ">>> Path(...) / 'child' / 'grandchild'" msgstr "" -#: library/zipfile.rst:625 +#: library/zipfile.rst:633 msgid "" "Prior to 3.10, ``joinpath`` was undocumented and accepted exactly one " "parameter." msgstr "" -#: library/zipfile.rst:629 +#: library/zipfile.rst:637 msgid "" "The :pypi:`zipp` project provides backports of the latest path object " "functionality to older Pythons. Use ``zipp.Path`` in place of ``zipfile." "Path`` for early access to changes." msgstr "" -#: library/zipfile.rst:637 +#: library/zipfile.rst:645 msgid "PyZipFile Objects" msgstr "" -#: library/zipfile.rst:639 +#: library/zipfile.rst:647 msgid "" "The :class:`PyZipFile` constructor takes the same parameters as the :class:" "`ZipFile` constructor, and one additional parameter, *optimize*." msgstr "" -#: library/zipfile.rst:645 +#: library/zipfile.rst:653 msgid "Added the *optimize* parameter." msgstr "" -#: library/zipfile.rst:651 +#: library/zipfile.rst:659 msgid "" "Instances have one method in addition to those of :class:`ZipFile` objects:" msgstr "" -#: library/zipfile.rst:655 +#: library/zipfile.rst:663 msgid "" "Search for files :file:`\\*.py` and add the corresponding file to the " "archive." msgstr "" -#: library/zipfile.rst:658 +#: library/zipfile.rst:666 msgid "" "If the *optimize* parameter to :class:`PyZipFile` was not given or ``-1``, " "the corresponding file is a :file:`\\*.pyc` file, compiling if necessary." msgstr "" -#: library/zipfile.rst:661 +#: library/zipfile.rst:669 msgid "" "If the *optimize* parameter to :class:`PyZipFile` was ``0``, ``1`` or ``2``, " "only files with that optimization level (see :func:`compile`) are added to " "the archive, compiling if necessary." msgstr "" -#: library/zipfile.rst:665 +#: library/zipfile.rst:673 msgid "" "If *pathname* is a file, the filename must end with :file:`.py`, and just " "the (corresponding :file:`\\*.pyc`) file is added at the top level (no path " @@ -793,11 +804,11 @@ msgid "" "in sorted order." msgstr "" -#: library/zipfile.rst:675 +#: library/zipfile.rst:683 msgid "*basename* is intended for internal use only." msgstr "" -#: library/zipfile.rst:677 +#: library/zipfile.rst:685 msgid "" "*filterfunc*, if given, must be a function taking a single string argument. " "It will be passed each path (including each individual full file path) " @@ -808,7 +819,7 @@ msgid "" "exclude them::" msgstr "" -#: library/zipfile.rst:685 +#: library/zipfile.rst:693 msgid "" ">>> zf = PyZipFile('myprog.zip')\n" ">>> def notests(s):\n" @@ -818,11 +829,11 @@ msgid "" ">>> zf.writepy('myprog', filterfunc=notests)" msgstr "" -#: library/zipfile.rst:692 +#: library/zipfile.rst:700 msgid "The :meth:`writepy` method makes archives with file names like this::" msgstr "" -#: library/zipfile.rst:695 +#: library/zipfile.rst:703 msgid "" "string.pyc # Top level name\n" "test/__init__.pyc # Package directory\n" @@ -831,302 +842,302 @@ msgid "" "test/bogus/myfile.pyc # Submodule test.bogus.myfile" msgstr "" -#: library/zipfile.rst:701 +#: library/zipfile.rst:709 msgid "Added the *filterfunc* parameter." msgstr "" -#: library/zipfile.rst:704 +#: library/zipfile.rst:712 msgid "The *pathname* parameter accepts a :term:`path-like object`." msgstr "" -#: library/zipfile.rst:707 +#: library/zipfile.rst:715 msgid "Recursion sorts directory entries." msgstr "" -#: library/zipfile.rst:714 +#: library/zipfile.rst:722 msgid "ZipInfo Objects" msgstr "" -#: library/zipfile.rst:716 +#: library/zipfile.rst:724 msgid "" "Instances of the :class:`ZipInfo` class are returned by the :meth:`.getinfo` " "and :meth:`.infolist` methods of :class:`ZipFile` objects. Each object " "stores information about a single member of the ZIP archive." msgstr "" -#: library/zipfile.rst:720 +#: library/zipfile.rst:728 msgid "" "There is one classmethod to make a :class:`ZipInfo` instance for a " "filesystem file:" msgstr "" -#: library/zipfile.rst:726 +#: library/zipfile.rst:734 msgid "" "Construct a :class:`ZipInfo` instance for a file on the filesystem, in " "preparation for adding it to a zip file." msgstr "" -#: library/zipfile.rst:729 +#: library/zipfile.rst:737 msgid "*filename* should be the path to a file or directory on the filesystem." msgstr "" -#: library/zipfile.rst:731 +#: library/zipfile.rst:739 msgid "" "If *arcname* is specified, it is used as the name within the archive. If " "*arcname* is not specified, the name will be the same as *filename*, but " "with any drive letter and leading path separators removed." msgstr "" -#: library/zipfile.rst:743 +#: library/zipfile.rst:751 msgid "The *filename* parameter accepts a :term:`path-like object`." msgstr "" -#: library/zipfile.rst:746 +#: library/zipfile.rst:754 msgid "Added the *strict_timestamps* keyword-only parameter." msgstr "" -#: library/zipfile.rst:750 +#: library/zipfile.rst:758 msgid "Instances have the following methods and attributes:" msgstr "" -#: library/zipfile.rst:754 +#: library/zipfile.rst:762 msgid "Return ``True`` if this archive member is a directory." msgstr "" -#: library/zipfile.rst:756 +#: library/zipfile.rst:764 msgid "This uses the entry's name: directories should always end with ``/``." msgstr "" -#: library/zipfile.rst:763 +#: library/zipfile.rst:771 msgid "Name of the file in the archive." msgstr "" -#: library/zipfile.rst:768 +#: library/zipfile.rst:776 msgid "" "The time and date of the last modification to the archive member. This is a " "tuple of six values:" msgstr "" -#: library/zipfile.rst:772 +#: library/zipfile.rst:780 msgid "Index" msgstr "" -#: library/zipfile.rst:772 +#: library/zipfile.rst:780 msgid "Value" msgstr "" -#: library/zipfile.rst:774 +#: library/zipfile.rst:782 msgid "``0``" msgstr "" -#: library/zipfile.rst:774 +#: library/zipfile.rst:782 msgid "Year (>= 1980)" msgstr "" -#: library/zipfile.rst:776 +#: library/zipfile.rst:784 msgid "``1``" msgstr "" -#: library/zipfile.rst:776 +#: library/zipfile.rst:784 msgid "Month (one-based)" msgstr "" -#: library/zipfile.rst:778 +#: library/zipfile.rst:786 msgid "``2``" msgstr "" -#: library/zipfile.rst:778 +#: library/zipfile.rst:786 msgid "Day of month (one-based)" msgstr "" -#: library/zipfile.rst:780 +#: library/zipfile.rst:788 msgid "``3``" msgstr "" -#: library/zipfile.rst:780 +#: library/zipfile.rst:788 msgid "Hours (zero-based)" msgstr "" -#: library/zipfile.rst:782 +#: library/zipfile.rst:790 msgid "``4``" msgstr "" -#: library/zipfile.rst:782 +#: library/zipfile.rst:790 msgid "Minutes (zero-based)" msgstr "" -#: library/zipfile.rst:784 +#: library/zipfile.rst:792 msgid "``5``" msgstr "" -#: library/zipfile.rst:784 +#: library/zipfile.rst:792 msgid "Seconds (zero-based)" msgstr "" -#: library/zipfile.rst:789 +#: library/zipfile.rst:797 msgid "The ZIP file format does not support timestamps before 1980." msgstr "" -#: library/zipfile.rst:794 +#: library/zipfile.rst:802 msgid "Type of compression for the archive member." msgstr "" -#: library/zipfile.rst:799 +#: library/zipfile.rst:807 msgid "Comment for the individual archive member as a :class:`bytes` object." msgstr "" -#: library/zipfile.rst:804 +#: library/zipfile.rst:812 msgid "" "Expansion field data. The `PKZIP Application Note`_ contains some comments " "on the internal structure of the data contained in this :class:`bytes` " "object." msgstr "" -#: library/zipfile.rst:811 +#: library/zipfile.rst:819 msgid "System which created ZIP archive." msgstr "" -#: library/zipfile.rst:816 +#: library/zipfile.rst:824 msgid "PKZIP version which created ZIP archive." msgstr "" -#: library/zipfile.rst:821 +#: library/zipfile.rst:829 msgid "PKZIP version needed to extract archive." msgstr "" -#: library/zipfile.rst:826 +#: library/zipfile.rst:834 msgid "Must be zero." msgstr "" -#: library/zipfile.rst:831 +#: library/zipfile.rst:839 msgid "ZIP flag bits." msgstr "" -#: library/zipfile.rst:836 +#: library/zipfile.rst:844 msgid "Volume number of file header." msgstr "" -#: library/zipfile.rst:841 +#: library/zipfile.rst:849 msgid "Internal attributes." msgstr "" -#: library/zipfile.rst:846 +#: library/zipfile.rst:854 msgid "External file attributes." msgstr "" -#: library/zipfile.rst:851 +#: library/zipfile.rst:859 msgid "Byte offset to the file header." msgstr "" -#: library/zipfile.rst:856 +#: library/zipfile.rst:864 msgid "CRC-32 of the uncompressed file." msgstr "" -#: library/zipfile.rst:861 +#: library/zipfile.rst:869 msgid "Size of the compressed data." msgstr "" -#: library/zipfile.rst:866 +#: library/zipfile.rst:874 msgid "Size of the uncompressed file." msgstr "" -#: library/zipfile.rst:873 +#: library/zipfile.rst:881 msgid "Command-Line Interface" msgstr "" -#: library/zipfile.rst:875 +#: library/zipfile.rst:883 msgid "" "The :mod:`zipfile` module provides a simple command-line interface to " "interact with ZIP archives." msgstr "" -#: library/zipfile.rst:878 +#: library/zipfile.rst:886 msgid "" "If you want to create a new ZIP archive, specify its name after the :option:" "`-c` option and then list the filename(s) that should be included:" msgstr "" -#: library/zipfile.rst:881 +#: library/zipfile.rst:889 msgid "$ python -m zipfile -c monty.zip spam.txt eggs.txt" msgstr "" -#: library/zipfile.rst:885 +#: library/zipfile.rst:893 msgid "Passing a directory is also acceptable:" msgstr "" -#: library/zipfile.rst:887 +#: library/zipfile.rst:895 msgid "$ python -m zipfile -c monty.zip life-of-brian_1979/" msgstr "" -#: library/zipfile.rst:891 +#: library/zipfile.rst:899 msgid "" "If you want to extract a ZIP archive into the specified directory, use the :" "option:`-e` option:" msgstr "" -#: library/zipfile.rst:894 +#: library/zipfile.rst:902 msgid "$ python -m zipfile -e monty.zip target-dir/" msgstr "" -#: library/zipfile.rst:898 +#: library/zipfile.rst:906 msgid "For a list of the files in a ZIP archive, use the :option:`-l` option:" msgstr "" -#: library/zipfile.rst:900 +#: library/zipfile.rst:908 msgid "$ python -m zipfile -l monty.zip" msgstr "" -#: library/zipfile.rst:906 +#: library/zipfile.rst:914 msgid "Command-line options" msgstr "" -#: library/zipfile.rst:911 +#: library/zipfile.rst:919 msgid "List files in a zipfile." msgstr "" -#: library/zipfile.rst:916 +#: library/zipfile.rst:924 msgid "Create zipfile from source files." msgstr "" -#: library/zipfile.rst:921 +#: library/zipfile.rst:929 msgid "Extract zipfile into target directory." msgstr "" -#: library/zipfile.rst:926 +#: library/zipfile.rst:934 msgid "Test whether the zipfile is valid or not." msgstr "" -#: library/zipfile.rst:930 +#: library/zipfile.rst:938 msgid "" "Specify encoding of member names for :option:`-l`, :option:`-e` and :option:" "`-t`." msgstr "" -#: library/zipfile.rst:937 +#: library/zipfile.rst:945 msgid "Decompression pitfalls" msgstr "" -#: library/zipfile.rst:939 +#: library/zipfile.rst:947 msgid "" "The extraction in zipfile module might fail due to some pitfalls listed " "below." msgstr "" -#: library/zipfile.rst:942 +#: library/zipfile.rst:950 msgid "From file itself" msgstr "" -#: library/zipfile.rst:944 +#: library/zipfile.rst:952 msgid "" "Decompression may fail due to incorrect password / CRC checksum / ZIP format " "or unsupported compression method / decryption." msgstr "" -#: library/zipfile.rst:948 +#: library/zipfile.rst:956 msgid "File System limitations" msgstr "" -#: library/zipfile.rst:950 +#: library/zipfile.rst:958 msgid "" "Exceeding limitations on different file systems can cause decompression " "failed. Such as allowable characters in the directory entries, length of the " @@ -1134,33 +1145,33 @@ msgid "" "files, etc." msgstr "" -#: library/zipfile.rst:957 +#: library/zipfile.rst:965 msgid "Resources limitations" msgstr "" -#: library/zipfile.rst:959 +#: library/zipfile.rst:967 msgid "" "The lack of memory or disk volume would lead to decompression failed. For " "example, decompression bombs (aka `ZIP bomb`_) apply to zipfile library that " "can cause disk volume exhaustion." msgstr "" -#: library/zipfile.rst:964 +#: library/zipfile.rst:972 msgid "Interruption" msgstr "" -#: library/zipfile.rst:966 +#: library/zipfile.rst:974 msgid "" "Interruption during the decompression, such as pressing control-C or killing " "the decompression process may result in incomplete decompression of the " "archive." msgstr "" -#: library/zipfile.rst:970 +#: library/zipfile.rst:978 msgid "Default behaviors of extraction" msgstr "" -#: library/zipfile.rst:972 +#: library/zipfile.rst:980 msgid "" "Not knowing the default extraction behaviors can cause unexpected " "decompression results. For example, when extracting the same archive twice, " diff --git a/license.po b/license.po index 2c9ccfa4e..d4d5e9efa 100644 --- a/license.po +++ b/license.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2022-12-28 16:31-0500\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -26,9 +26,10 @@ msgid "History of the software" msgstr "Yazılımın tarihçesi" #: license.rst:13 +#, fuzzy msgid "" "Python was created in the early 1990s by Guido van Rossum at Stichting " -"Mathematisch Centrum (CWI, see https://www.cwi.nl/) in the Netherlands as a " +"Mathematisch Centrum (CWI, see https://www.cwi.nl) in the Netherlands as a " "successor of a language called ABC. Guido remains Python's principal " "author, although it includes many contributions from others." msgstr "" @@ -38,9 +39,10 @@ msgstr "" "rağmen, Python'un ana yazarı olmaya devam ediyor." #: license.rst:18 +#, fuzzy msgid "" "In 1995, Guido continued his work on Python at the Corporation for National " -"Research Initiatives (CNRI, see https://www.cnri.reston.va.us/) in Reston, " +"Research Initiatives (CNRI, see https://www.cnri.reston.va.us) in Reston, " "Virginia where he released several versions of the software." msgstr "" "1995'te Guido, yazılımın çeşitli sürümlerini yayınladığı Virginia, " @@ -48,14 +50,15 @@ msgstr "" "cnri.reston.va.us/) Python üzerindeki çalışmalarına devam etti." #: license.rst:22 +#, fuzzy msgid "" "In May 2000, Guido and the Python core development team moved to BeOpen.com " "to form the BeOpen PythonLabs team. In October of the same year, the " -"PythonLabs team moved to Digital Creations (now Zope Corporation; see " -"https://www.zope.org/). In 2001, the Python Software Foundation (PSF, see " -"https://www.python.org/psf/) was formed, a non-profit organization created " -"specifically to own Python-related Intellectual Property. Zope Corporation " -"is a sponsoring member of the PSF." +"PythonLabs team moved to Digital Creations, which became Zope Corporation. " +"In 2001, the Python Software Foundation (PSF, see https://www.python.org/" +"psf/) was formed, a non-profit organization created specifically to own " +"Python-related Intellectual Property. Zope Corporation was a sponsoring " +"member of the PSF." msgstr "" "Mayıs 2000'de, Guido ve Python çekirdek geliştirme ekibi, BeOpen PythonLabs " "ekibini oluşturmak için BeOpen.com'a taşındı. Aynı yılın Ekim ayında " @@ -66,11 +69,11 @@ msgstr "" "Zope Corporation, PSF'nin sponsor üyesidir." #: license.rst:30 +#, fuzzy msgid "" -"All Python releases are Open Source (see https://opensource.org/ for the " -"Open Source Definition). Historically, most, but not all, Python releases " -"have also been GPL-compatible; the table below summarizes the various " -"releases." +"All Python releases are Open Source (see https://opensource.org for the Open " +"Source Definition). Historically, most, but not all, Python releases have " +"also been GPL-compatible; the table below summarizes the various releases." msgstr "" "Tüm Python sürümleri Açık Kaynaklıdır (Açık Kaynak Tanımı için bkz. https://" "opensource.org/). Tarihsel olarak, tümü olmasa da çoğu Python sürümleri de " @@ -93,7 +96,8 @@ msgid "Owner" msgstr "Sahibi" #: license.rst:35 -msgid "GPL compatible?" +#, fuzzy +msgid "GPL-compatible? (1)" msgstr "GPL uyumlu mu?" #: license.rst:37 @@ -144,7 +148,7 @@ msgstr "1.5.2" msgid "2000" msgstr "2000" -#: license.rst:45 license.rst:47 +#: license.rst:47 msgid "no" msgstr "hayır" @@ -164,6 +168,10 @@ msgstr "1.6.1" msgid "2001" msgstr "2001" +#: license.rst:45 +msgid "yes (2)" +msgstr "" + #: license.rst:47 msgid "2.1" msgstr "2.1" @@ -209,8 +217,9 @@ msgid "2001-now" msgstr "2001-Günümüz" #: license.rst:62 +#, fuzzy msgid "" -"GPL-compatible doesn't mean that we're distributing Python under the GPL. " +"GPL-compatible doesn't mean that we're distributing Python under the GPL. " "All Python licenses, unlike the GPL, let you distribute a modified version " "without making your changes open source. The GPL-compatible licenses make it " "possible to combine Python with other software that is released under the " @@ -224,36 +233,46 @@ msgstr "" #: license.rst:68 msgid "" +"According to Richard Stallman, 1.6.1 is not GPL-compatible, because its " +"license has a choice of law clause. According to CNRI, however, Stallman's " +"lawyer has told CNRI's lawyer that 1.6.1 is \"not incompatible\" with the " +"GPL." +msgstr "" + +#: license.rst:72 +msgid "" "Thanks to the many outside volunteers who have worked under Guido's " "direction to make these releases possible." msgstr "" "Bu yayınları mümkün kılmak için Guido'nun yönetimi altında çalışan birçok " "gönüllüye teşekkürler." -#: license.rst:73 +#: license.rst:77 msgid "Terms and conditions for accessing or otherwise using Python" msgstr "" "Python'a erişmek veya başka bir şekilde kullanmak için şartlar ve koşullar" -#: license.rst:75 +#: license.rst:79 +#, fuzzy msgid "" -"Python software and documentation are licensed under the :ref:`PSF License " -"Agreement <PSF-license>`." +"Python software and documentation are licensed under the Python Software " +"Foundation License Version 2." msgstr "" "Python yazılımı ve belgeleri :ref:`PSF Lisans Anlaşması <PSF-license>` " "kapsamında lisanslanmıştır." -#: license.rst:78 +#: license.rst:82 +#, fuzzy msgid "" "Starting with Python 3.8.6, examples, recipes, and other code in the " -"documentation are dual licensed under the PSF License Agreement and the :ref:" +"documentation are dual licensed under the PSF License Version 2 and the :ref:" "`Zero-Clause BSD license <BSD0>`." msgstr "" "Python 3.8.6'dan başlayarak, belgelerdeki örnekler, tarifler ve diğer " "kodlar, PSF Lisans Sözleşmesi ve :ref:`Zero-Clause BSD license <BSD0>` " "kapsamında çift lisanslıdır." -#: license.rst:82 +#: license.rst:86 msgid "" "Some software incorporated into Python is under different licenses. The " "licenses are listed with code falling under that license. See :ref:" @@ -263,17 +282,17 @@ msgstr "" "Lisanslar, bu lisansa giren kodla listelenir. Bu lisansların eksik listesi " "için bkz. :ref:`OtherLicenses`." -#: license.rst:90 -msgid "PSF LICENSE AGREEMENT FOR PYTHON |release|" -msgstr "PYTHON İÇİN PSF LİSANS ANLAŞMASI |release|" - #: license.rst:94 +msgid "PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2" +msgstr "" + +#: license.rst:98 msgid "" "1. This LICENSE AGREEMENT is between the Python Software Foundation " "(\"PSF\"), and\n" " the Individual or Organization (\"Licensee\") accessing and otherwise " -"using Python\n" -" |release| software in source or binary form and its associated " +"using this\n" +" software (\"Python\") in source or binary form and its associated " "documentation.\n" "\n" "2. Subject to the terms and conditions of this License Agreement, PSF " @@ -282,40 +301,34 @@ msgid "" "reproduce,\n" " analyze, test, perform and/or display publicly, prepare derivative " "works,\n" -" distribute, and otherwise use Python |release| alone or in any " -"derivative\n" +" distribute, and otherwise use Python alone or in any derivative\n" " version, provided, however, that PSF's License Agreement and PSF's notice " "of\n" " copyright, i.e., \"Copyright © 2001-2023 Python Software Foundation; All " "Rights\n" -" Reserved\" are retained in Python |release| alone or in any derivative " -"version\n" +" Reserved\" are retained in Python alone or in any derivative version\n" " prepared by Licensee.\n" "\n" "3. In the event Licensee prepares a derivative work that is based on or\n" -" incorporates Python |release| or any part thereof, and wants to make the\n" +" incorporates Python or any part thereof, and wants to make the\n" " derivative work available to others as provided herein, then Licensee " "hereby\n" " agrees to include in any such work a brief summary of the changes made to " -"Python\n" -" |release|.\n" +"Python.\n" "\n" -"4. PSF is making Python |release| available to Licensee on an \"AS IS\" " -"basis.\n" +"4. PSF is making Python available to Licensee on an \"AS IS\" basis.\n" " PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY " "OF\n" " EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND DISCLAIMS ANY " "REPRESENTATION OR\n" " WARRANTY OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT " "THE\n" -" USE OF PYTHON |release| WILL NOT INFRINGE ANY THIRD PARTY RIGHTS.\n" +" USE OF PYTHON WILL NOT INFRINGE ANY THIRD PARTY RIGHTS.\n" "\n" -"5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON |" -"release|\n" +"5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON\n" " FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT " "OF\n" -" MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON |release|, OR ANY " -"DERIVATIVE\n" +" MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON, OR ANY DERIVATIVE\n" " THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.\n" "\n" "6. This License Agreement will automatically terminate upon a material " @@ -332,20 +345,19 @@ msgid "" "or any\n" " third party.\n" "\n" -"8. By copying, installing or otherwise using Python |release|, Licensee " -"agrees\n" +"8. By copying, installing or otherwise using Python, Licensee agrees\n" " to be bound by the terms and conditions of this License Agreement." msgstr "" -#: license.rst:138 +#: license.rst:141 msgid "BEOPEN.COM LICENSE AGREEMENT FOR PYTHON 2.0" msgstr "PYTHON 2.0 İÇİN BEOPEN.COM LİSANS SÖZLEŞMESİ" -#: license.rst:140 +#: license.rst:143 msgid "BEOPEN PYTHON OPEN SOURCE LICENSE AGREEMENT VERSION 1" msgstr "BEOPEN PYTHON AÇIK KAYNAK LİSANS SÖZLEŞMESİ SÜRÜM 1" -#: license.rst:144 +#: license.rst:147 msgid "" "1. This LICENSE AGREEMENT is between BeOpen.com (\"BeOpen\"), having an " "office at\n" @@ -411,11 +423,11 @@ msgid "" " bound by the terms and conditions of this License Agreement." msgstr "" -#: license.rst:185 +#: license.rst:188 msgid "CNRI LICENSE AGREEMENT FOR PYTHON 1.6.1" msgstr "PYTHON 1.6.1 İÇİN CNRI LİSANS ANLAŞMASI" -#: license.rst:189 +#: license.rst:192 msgid "" "1. This LICENSE AGREEMENT is between the Corporation for National Research\n" " Initiatives, having an office at 1895 Preston White Drive, Reston, VA " @@ -449,7 +461,7 @@ msgid "" "handle):\n" " 1895.22/1013. This Agreement may also be obtained from a proxy server on " "the\n" -" internet using the following URL: http://hdl.handle.net/1895.22/1013.\"\n" +" internet using the following URL: http://hdl.handle.net/1895.22/1013\".\n" "\n" "3. In the event Licensee prepares a derivative work that is based on or\n" " incorporates Python 1.6.1 or any part thereof, and wants to make the " @@ -515,11 +527,11 @@ msgid "" " conditions of this License Agreement." msgstr "" -#: license.rst:250 +#: license.rst:253 msgid "CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2" msgstr "0.9.0 ARASI 1.2 PYTHON İÇİN CWI LİSANS SÖZLEŞMESİ" -#: license.rst:254 +#: license.rst:257 msgid "" "Copyright © 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, The\n" "Netherlands. All rights reserved.\n" @@ -550,11 +562,12 @@ msgid "" "SOFTWARE." msgstr "" -#: license.rst:277 -msgid "ZERO-CLAUSE BSD LICENSE FOR CODE IN THE PYTHON |release| DOCUMENTATION" +#: license.rst:280 +#, fuzzy +msgid "ZERO-CLAUSE BSD LICENSE FOR CODE IN THE PYTHON DOCUMENTATION" msgstr "PYTHON |release| BELGELERİNDEKİ KOD İÇİN SIFIR MADDE BSD LİSANSI" -#: license.rst:281 +#: license.rst:284 msgid "" "Permission to use, copy, modify, and/or distribute this software for any\n" "purpose with or without fee is hereby granted.\n" @@ -571,11 +584,11 @@ msgid "" "PERFORMANCE OF THIS SOFTWARE." msgstr "" -#: license.rst:296 +#: license.rst:299 msgid "Licenses and Acknowledgements for Incorporated Software" msgstr "Tüzel Yazılımlar için Lisanslar ve Onaylar" -#: license.rst:298 +#: license.rst:301 msgid "" "This section is an incomplete, but growing list of licenses and " "acknowledgements for third-party software incorporated in the Python " @@ -584,11 +597,11 @@ msgstr "" "Bu bölüm, Python dağıtımına dahil edilmiş üçüncü taraf yazılımlar için " "tamamlanmamış ancak büyüyen bir lisans ve onay listesidir." -#: license.rst:303 +#: license.rst:306 msgid "Mersenne Twister" msgstr "Mersenne Twister'ı" -#: license.rst:305 +#: license.rst:308 msgid "" "The :mod:`!_random` C extension underlying the :mod:`random` module includes " "code based on a download from http://www.math.sci.hiroshima-u.ac.jp/~m-mat/" @@ -600,7 +613,7 @@ msgstr "" "adresinden indirilen kodu temel alır. Orijinal koddan kelimesi kelimesine " "yorumlar aşağıdadır::" -#: license.rst:310 +#: license.rst:313 msgid "" "A C-program for MT19937, with initialization improved 2002/1/26.\n" "Coded by Takuji Nishimura and Makoto Matsumoto.\n" @@ -645,11 +658,11 @@ msgid "" "email: m-mat @ math.sci.hiroshima-u.ac.jp (remove space)" msgstr "" -#: license.rst:353 +#: license.rst:356 msgid "Sockets" msgstr "Soketler" -#: license.rst:355 +#: license.rst:358 msgid "" "The :mod:`socket` module uses the functions, :c:func:`!getaddrinfo`, and :c:" "func:`!getnameinfo`, which are coded in separate source files from the WIDE " @@ -659,7 +672,7 @@ msgstr "" "ayrı kaynak dosyalarında kodlanan :c:func:`!getaddrinfo` ve :c:func:`!" "getnameinfo` fonksiyonlarını kullanır. ::" -#: license.rst:359 +#: license.rst:362 msgid "" "Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.\n" "All rights reserved.\n" @@ -676,7 +689,7 @@ msgid "" " may be used to endorse or promote products derived from this software\n" " without specific prior written permission.\n" "\n" -"THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND\n" +"THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS \"AS IS\" AND\n" "ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n" "IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n" "ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE\n" @@ -689,11 +702,11 @@ msgid "" "SUCH DAMAGE." msgstr "" -#: license.rst:388 +#: license.rst:391 msgid "Asynchronous socket services" msgstr "Asenkron soket hizmetleri" -#: license.rst:390 +#: license.rst:393 #, fuzzy msgid "" "The :mod:`!test.support.asynchat` and :mod:`!test.support.asyncore` modules " @@ -701,7 +714,7 @@ msgid "" msgstr "" ":mod:`asynchat` ve :mod:`asyncore` modülleri aşağıdaki uyarıyı içerir::" -#: license.rst:393 +#: license.rst:396 msgid "" "Copyright 1996 by Sam Rushing\n" "\n" @@ -725,15 +738,15 @@ msgid "" "CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE." msgstr "" -#: license.rst:416 +#: license.rst:419 msgid "Cookie management" msgstr "Çerez yönetimi" -#: license.rst:418 +#: license.rst:421 msgid "The :mod:`http.cookies` module contains the following notice::" msgstr ":mod:`http.cookies` modülü aşağıdaki uyarıyı içerir::" -#: license.rst:420 +#: license.rst:423 msgid "" "Copyright 2000 by Timothy O'Malley <timo@alum.mit.edu>\n" "\n" @@ -758,15 +771,15 @@ msgid "" "PERFORMANCE OF THIS SOFTWARE." msgstr "" -#: license.rst:444 +#: license.rst:447 msgid "Execution tracing" msgstr "Çalıştırma izleme" -#: license.rst:446 +#: license.rst:449 msgid "The :mod:`trace` module contains the following notice::" msgstr ":mod:`trace` modülü aşağıdaki uyarıyı içerir::" -#: license.rst:448 +#: license.rst:451 msgid "" "portions copyright 2001, Autonomous Zones Industries, Inc., all rights...\n" "err... reserved and offered to the public under the terms of the\n" @@ -796,15 +809,15 @@ msgid "" "distribution of the software without specific, written prior permission." msgstr "" -#: license.rst:477 +#: license.rst:480 msgid "UUencode and UUdecode functions" msgstr "UUencode ve UUdecode fonksiyonları" -#: license.rst:479 +#: license.rst:482 msgid "The :mod:`uu` module contains the following notice::" msgstr ":mod:`uu` modülü aşağıdaki uyarıyı içerir::" -#: license.rst:481 +#: license.rst:484 msgid "" "Copyright 1994 by Lance Ellinghouse\n" "Cathedral City, California Republic, United States of America.\n" @@ -831,15 +844,15 @@ msgid "" "- Arguments more compliant with Python standard" msgstr "" -#: license.rst:507 +#: license.rst:510 msgid "XML Remote Procedure Calls" msgstr "XML Uzaktan Yordam Çağrıları" -#: license.rst:509 +#: license.rst:512 msgid "The :mod:`xmlrpc.client` module contains the following notice::" msgstr ":mod:`xmlrpc.client` modülü aşağıdaki uyarıyı içerir::" -#: license.rst:511 +#: license.rst:514 msgid "" " The XML-RPC client interface is\n" "\n" @@ -869,15 +882,15 @@ msgid "" "OF THIS SOFTWARE." msgstr "" -#: license.rst:540 +#: license.rst:543 msgid "test_epoll" msgstr "test_epoll" -#: license.rst:542 +#: license.rst:545 msgid "The :mod:`!test.test_epoll` module contains the following notice::" msgstr ":mod:`!test.test_epoll` modülü aşağıdaki uyarıyı içerir::" -#: license.rst:544 +#: license.rst:547 msgid "" "Copyright (c) 2001-2006 Twisted Matrix Laboratories.\n" "\n" @@ -901,17 +914,17 @@ msgid "" "WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE." msgstr "" -#: license.rst:566 +#: license.rst:569 msgid "Select kqueue" msgstr "kqueue seçin" -#: license.rst:568 +#: license.rst:571 msgid "" "The :mod:`select` module contains the following notice for the kqueue " "interface::" msgstr ":mod:`select` modülü, kqueue arayüzü için aşağıdaki uyarıyı içerir::" -#: license.rst:571 +#: license.rst:574 msgid "" "Copyright (c) 2000 Doug White, 2006 James Knight, 2007 Christian Heimes\n" "All rights reserved.\n" @@ -925,7 +938,7 @@ msgid "" " notice, this list of conditions and the following disclaimer in the\n" " documentation and/or other materials provided with the distribution.\n" "\n" -"THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND\n" +"THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS \"AS IS\" AND\n" "ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n" "IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n" "ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE\n" @@ -938,11 +951,11 @@ msgid "" "SUCH DAMAGE." msgstr "" -#: license.rst:597 +#: license.rst:600 msgid "SipHash24" msgstr "SipHash24" -#: license.rst:599 +#: license.rst:602 msgid "" "The file :file:`Python/pyhash.c` contains Marek Majkowski' implementation of " "Dan Bernstein's SipHash24 algorithm. It contains the following note::" @@ -950,7 +963,7 @@ msgstr "" ":file:`Python/pyhash.c` dosyası, Dan Bernstein'ın SipHash24 algoritmasının " "Marek Majkowski uygulamasını içerir. Burada aşağıdaki not yer alır::" -#: license.rst:602 +#: license.rst:605 msgid "" "<MIT License>\n" "Copyright (c) 2013 Marek Majkowski <marek@popcount.org>\n" @@ -978,11 +991,11 @@ msgid "" " Jean-Philippe Aumasson (https://131002.net/siphash/siphash24.c)" msgstr "" -#: license.rst:626 +#: license.rst:629 msgid "strtod and dtoa" msgstr "strtod ve dtoa" -#: license.rst:628 +#: license.rst:631 msgid "" "The file :file:`Python/dtoa.c`, which supplies C functions dtoa and strtod " "for conversion of C doubles to and from strings, is derived from the file of " @@ -998,7 +1011,7 @@ msgstr "" "Mart 2009'da alınan orijinal dosya aşağıdaki telif hakkı ve lisans " "bildirimini içerir::" -#: license.rst:635 +#: license.rst:638 msgid "" "/****************************************************************\n" " *\n" @@ -1021,11 +1034,11 @@ msgid "" " ***************************************************************/" msgstr "" -#: license.rst:656 +#: license.rst:659 msgid "OpenSSL" msgstr "OpenSSL" -#: license.rst:658 +#: license.rst:661 #, fuzzy msgid "" "The modules :mod:`hashlib`, :mod:`posix`, :mod:`ssl`, :mod:`crypt` use the " @@ -1041,7 +1054,7 @@ msgstr "" "kütüphanelerinin bir kopyasını içerebilir, bu nedenle buraya OpenSSL " "lisansının bir kopyasını ekliyoruz::" -#: license.rst:666 +#: license.rst:669 msgid "" " Apache License\n" " Version 2.0, January 2004\n" @@ -1221,11 +1234,11 @@ msgid "" "END OF TERMS AND CONDITIONS" msgstr "" -#: license.rst:845 +#: license.rst:848 msgid "expat" msgstr "expat" -#: license.rst:847 +#: license.rst:850 #, fuzzy msgid "" "The :mod:`pyexpat <xml.parsers.expat>` extension is built using an included " @@ -1236,7 +1249,7 @@ msgstr "" "yapılandırılmadığı sürece, expat kaynaklarının dahil edildiği bir kopya " "kullanılarak oluşturulur::" -#: license.rst:850 +#: license.rst:853 msgid "" "Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd\n" " and Clark Cooper\n" @@ -1261,11 +1274,11 @@ msgid "" "SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE." msgstr "" -#: license.rst:874 +#: license.rst:877 msgid "libffi" msgstr "libffi" -#: license.rst:876 +#: license.rst:879 msgid "" "The :mod:`!_ctypes` C extension underlying the :mod:`ctypes` module is built " "using an included copy of the libffi sources unless the build is configured " @@ -1275,13 +1288,13 @@ msgstr "" "with-system-libffi`` olarak yapılandırılmadığı sürece libffi kaynaklarının " "dahil edildiği bir kopya kullanılarak oluşturulur::" -#: license.rst:880 +#: license.rst:883 msgid "" "Copyright (c) 1996-2008 Red Hat, Inc and others.\n" "\n" "Permission is hereby granted, free of charge, to any person obtaining\n" "a copy of this software and associated documentation files (the\n" -"``Software''), to deal in the Software without restriction, including\n" +"\"Software\"), to deal in the Software without restriction, including\n" "without limitation the rights to use, copy, modify, merge, publish,\n" "distribute, sublicense, and/or sell copies of the Software, and to\n" "permit persons to whom the Software is furnished to do so, subject to\n" @@ -1290,7 +1303,7 @@ msgid "" "The above copyright notice and this permission notice shall be included\n" "in all copies or substantial portions of the Software.\n" "\n" -"THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND,\n" +"THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n" "EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n" "MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n" "NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n" @@ -1300,11 +1313,11 @@ msgid "" "DEALINGS IN THE SOFTWARE." msgstr "" -#: license.rst:904 +#: license.rst:907 msgid "zlib" msgstr "zlib" -#: license.rst:906 +#: license.rst:909 msgid "" "The :mod:`zlib` extension is built using an included copy of the zlib " "sources if the zlib version found on the system is too old to be used for " @@ -1314,7 +1327,7 @@ msgstr "" "kullanılamayacak kadar eskiyse, zlib kaynaklarının dahil edildiği bir kopya " "kullanılarak oluşturulur::" -#: license.rst:910 +#: license.rst:913 msgid "" "Copyright (C) 1995-2011 Jean-loup Gailly and Mark Adler\n" "\n" @@ -1340,11 +1353,11 @@ msgid "" "jloup@gzip.org madler@alumni.caltech.edu" msgstr "" -#: license.rst:935 +#: license.rst:938 msgid "cfuhash" msgstr "cfuhash" -#: license.rst:937 +#: license.rst:940 msgid "" "The implementation of the hash table used by the :mod:`tracemalloc` is based " "on the cfuhash project::" @@ -1352,7 +1365,7 @@ msgstr "" ":mod:`tracemalloc` tarafından kullanılan hash tablosunun uygulanması cfuhash " "projesine dayanmaktadır::" -#: license.rst:940 +#: license.rst:943 msgid "" "Copyright (c) 2005 Don Owens\n" "All rights reserved.\n" @@ -1389,11 +1402,11 @@ msgid "" "OF THE POSSIBILITY OF SUCH DAMAGE." msgstr "" -#: license.rst:976 +#: license.rst:979 msgid "libmpdec" msgstr "libmpdec" -#: license.rst:978 +#: license.rst:981 #, fuzzy msgid "" "The :mod:`!_decimal` C extension underlying the :mod:`decimal` module is " @@ -1404,7 +1417,7 @@ msgstr "" "yapılandırılmadığı sürece libmpdec kitaplığının dahil edildiği bir kopya " "kullanılarak oluşturulur::" -#: license.rst:982 +#: license.rst:985 msgid "" "Copyright (c) 2008-2020 Stefan Krah. All rights reserved.\n" "\n" @@ -1432,11 +1445,11 @@ msgid "" "SUCH DAMAGE." msgstr "" -#: license.rst:1009 +#: license.rst:1012 msgid "W3C C14N test suite" msgstr "W3C C14N test paketi" -#: license.rst:1011 +#: license.rst:1014 msgid "" "The C14N 2.0 test suite in the :mod:`test` package (``Lib/test/xmltestdata/" "c14n-20/``) was retrieved from the W3C website at https://www.w3.org/TR/xml-" @@ -1446,7 +1459,7 @@ msgstr "" "``), https://www.w3.org/TR/xml-c14n2-testcases/ adresindeki W3C web " "sitesinden alınmıştır ve 3 maddeli BSD lisansı altında dağıtılmaktadır::" -#: license.rst:1016 +#: license.rst:1019 msgid "" "Copyright (c) 2013 W3C(R) (MIT, ERCIM, Keio, Beihang),\n" "All Rights Reserved.\n" @@ -1477,11 +1490,11 @@ msgid "" "OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." msgstr "" -#: license.rst:1046 +#: license.rst:1049 msgid "Audioop" msgstr "Audioop" -#: license.rst:1048 +#: license.rst:1051 #, fuzzy msgid "" "The audioop module uses the code base in g771.c file of the SoX project. " @@ -1489,57 +1502,57 @@ msgid "" msgstr "" "Audioop modülü, SoX projesinin g771.c dosyasındaki kod tabanını kullanır::" -#: license.rst:1051 +#: license.rst:1054 msgid "" "This source code is a product of Sun Microsystems, Inc. and is provided for " "unrestricted use. Users may copy or modify this source code without charge." msgstr "" -#: license.rst:1055 +#: license.rst:1058 msgid "" "SUN SOURCE CODE IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING " "THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR " "PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE." msgstr "" -#: license.rst:1059 +#: license.rst:1062 msgid "" "Sun source code is provided with no support and without any obligation on " "the part of Sun Microsystems, Inc. to assist in its use, correction, " "modification or enhancement." msgstr "" -#: license.rst:1063 +#: license.rst:1066 msgid "" "SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE " "INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY THIS SOFTWARE OR " "ANY PART THEREOF." msgstr "" -#: license.rst:1067 +#: license.rst:1070 msgid "" "In no event will Sun Microsystems, Inc. be liable for any lost revenue or " "profits or other special, indirect and consequential damages, even if Sun " "has been advised of the possibility of such damages." msgstr "" -#: license.rst:1071 +#: license.rst:1074 msgid "" "Sun Microsystems, Inc. 2550 Garcia Avenue Mountain View, California 94043" msgstr "" -#: license.rst:1077 +#: license.rst:1080 msgid "asyncio" msgstr "" -#: license.rst:1079 +#: license.rst:1082 msgid "" "Parts of the :mod:`asyncio` module are incorporated from `uvloop 0.16 " "<https://github.com/MagicStack/uvloop/tree/v0.16.0>`_, which is distributed " "under the MIT license::" msgstr "" -#: license.rst:1083 +#: license.rst:1086 msgid "" "Copyright (c) 2015-2021 MagicStack Inc. http://magic.io\n" "\n" @@ -1562,3 +1575,6 @@ msgid "" "OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n" "WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE." msgstr "" + +#~ msgid "PSF LICENSE AGREEMENT FOR PYTHON |release|" +#~ msgstr "PYTHON İÇİN PSF LİSANS ANLAŞMASI |release|" diff --git a/reference/compound_stmts.po b/reference/compound_stmts.po index 1d36c7894..bfe77ee8a 100644 --- a/reference/compound_stmts.po +++ b/reference/compound_stmts.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -562,8 +562,8 @@ msgid "" "the normal location for the kind of exit that was taken." msgstr "" -#: reference/compound_stmts.rst:526 reference/compound_stmts.rst:1547 -#: reference/compound_stmts.rst:1588 +#: reference/compound_stmts.rst:526 reference/compound_stmts.rst:1549 +#: reference/compound_stmts.rst:1590 msgid "The following code::" msgstr "" @@ -574,7 +574,7 @@ msgid "" msgstr "" #: reference/compound_stmts.rst:531 reference/compound_stmts.rst:556 -#: reference/compound_stmts.rst:1593 +#: reference/compound_stmts.rst:1595 msgid "is semantically equivalent to::" msgstr "" @@ -1463,7 +1463,7 @@ msgstr "" msgid ":class:`int`" msgstr "" -#: reference/compound_stmts.rst:1160 reference/compound_stmts.rst:1863 +#: reference/compound_stmts.rst:1160 reference/compound_stmts.rst:1865 msgid ":class:`list`" msgstr "" @@ -1475,7 +1475,7 @@ msgstr "" msgid ":class:`str`" msgstr "" -#: reference/compound_stmts.rst:1163 reference/compound_stmts.rst:1866 +#: reference/compound_stmts.rst:1163 reference/compound_stmts.rst:1868 msgid ":class:`tuple`" msgstr "" @@ -1525,7 +1525,7 @@ msgid "" "ref:`types`):" msgstr "" -#: reference/compound_stmts.rst:1228 +#: reference/compound_stmts.rst:1230 msgid "" "A function definition is an executable statement. Its execution binds the " "function name in the current local namespace to a function object (a wrapper " @@ -1534,13 +1534,13 @@ msgid "" "used when the function is called." msgstr "" -#: reference/compound_stmts.rst:1234 +#: reference/compound_stmts.rst:1236 msgid "" "The function definition does not execute the function body; this gets " "executed only when the function is called. [#]_" msgstr "" -#: reference/compound_stmts.rst:1240 +#: reference/compound_stmts.rst:1242 msgid "" "A function definition may be wrapped by one or more :term:`decorator` " "expressions. Decorator expressions are evaluated when the function is " @@ -1551,37 +1551,37 @@ msgid "" "example, the following code ::" msgstr "" -#: reference/compound_stmts.rst:1247 +#: reference/compound_stmts.rst:1249 msgid "" "@f1(arg)\n" "@f2\n" "def func(): pass" msgstr "" -#: reference/compound_stmts.rst:1251 reference/compound_stmts.rst:1446 +#: reference/compound_stmts.rst:1253 reference/compound_stmts.rst:1448 msgid "is roughly equivalent to ::" msgstr "" -#: reference/compound_stmts.rst:1253 +#: reference/compound_stmts.rst:1255 msgid "" "def func(): pass\n" "func = f1(arg)(f2(func))" msgstr "" -#: reference/compound_stmts.rst:1256 +#: reference/compound_stmts.rst:1258 msgid "" "except that the original function is not temporarily bound to the name " "``func``." msgstr "" -#: reference/compound_stmts.rst:1258 +#: reference/compound_stmts.rst:1260 msgid "" "Functions may be decorated with any valid :token:`~python-grammar:" "assignment_expression`. Previously, the grammar was much more restrictive; " "see :pep:`614` for details." msgstr "" -#: reference/compound_stmts.rst:1263 +#: reference/compound_stmts.rst:1265 msgid "" "A list of :ref:`type parameters <type-params>` may be given in square " "brackets between the function's name and the opening parenthesis for its " @@ -1591,11 +1591,11 @@ msgid "" "functions` for more." msgstr "" -#: reference/compound_stmts.rst:1270 reference/compound_stmts.rst:1465 +#: reference/compound_stmts.rst:1272 reference/compound_stmts.rst:1467 msgid "Type parameter lists are new in Python 3.12." msgstr "" -#: reference/compound_stmts.rst:1278 +#: reference/compound_stmts.rst:1280 msgid "" "When one or more :term:`parameters <parameter>` have the form *parameter* " "``=`` *expression*, the function is said to have \"default parameter values." @@ -1606,7 +1606,7 @@ msgid "" "syntactic restriction that is not expressed by the grammar." msgstr "" -#: reference/compound_stmts.rst:1286 +#: reference/compound_stmts.rst:1288 msgid "" "**Default parameter values are evaluated from left to right when the " "function definition is executed.** This means that the expression is " @@ -1619,7 +1619,7 @@ msgid "" "the default, and explicitly test for it in the body of the function, e.g.::" msgstr "" -#: reference/compound_stmts.rst:1296 +#: reference/compound_stmts.rst:1298 msgid "" "def whats_on_the_telly(penguin=None):\n" " if penguin is None:\n" @@ -1628,7 +1628,7 @@ msgid "" " return penguin" msgstr "" -#: reference/compound_stmts.rst:1307 +#: reference/compound_stmts.rst:1309 msgid "" "Function call semantics are described in more detail in section :ref:" "`calls`. A function call always assigns values to all parameters mentioned " @@ -1644,13 +1644,13 @@ msgid "" "positional arguments." msgstr "" -#: reference/compound_stmts.rst:1319 +#: reference/compound_stmts.rst:1321 msgid "" "The ``/`` function parameter syntax may be used to indicate positional-only " "parameters. See :pep:`570` for details." msgstr "" -#: reference/compound_stmts.rst:1328 +#: reference/compound_stmts.rst:1330 msgid "" "Parameters may have an :term:`annotation <function annotation>` of the form " "\"``: expression``\" following the parameter name. Any parameter may have " @@ -1669,13 +1669,13 @@ msgid "" "in the source code." msgstr "" -#: reference/compound_stmts.rst:1342 +#: reference/compound_stmts.rst:1344 msgid "" "Parameters of the form \"``*identifier``\" may have an annotation \"``: " "*expression``\". See :pep:`646`." msgstr "" -#: reference/compound_stmts.rst:1348 +#: reference/compound_stmts.rst:1350 msgid "" "It is also possible to create anonymous functions (functions not bound to a " "name), for immediate use in expressions. This uses lambda expressions, " @@ -1687,7 +1687,7 @@ msgid "" "execution of multiple statements and annotations." msgstr "" -#: reference/compound_stmts.rst:1356 +#: reference/compound_stmts.rst:1358 msgid "" "**Programmer's note:** Functions are first-class objects. A \"``def``\" " "statement executed inside a function definition defines a local function " @@ -1696,61 +1696,61 @@ msgid "" "See section :ref:`naming` for details." msgstr "" -#: reference/compound_stmts.rst:1364 +#: reference/compound_stmts.rst:1366 msgid ":pep:`3107` - Function Annotations" msgstr "" -#: reference/compound_stmts.rst:1365 +#: reference/compound_stmts.rst:1367 msgid "The original specification for function annotations." msgstr "" -#: reference/compound_stmts.rst:1367 +#: reference/compound_stmts.rst:1369 msgid ":pep:`484` - Type Hints" msgstr "" -#: reference/compound_stmts.rst:1368 +#: reference/compound_stmts.rst:1370 msgid "Definition of a standard meaning for annotations: type hints." msgstr "" -#: reference/compound_stmts.rst:1370 +#: reference/compound_stmts.rst:1372 msgid ":pep:`526` - Syntax for Variable Annotations" msgstr "" -#: reference/compound_stmts.rst:1371 +#: reference/compound_stmts.rst:1373 msgid "" "Ability to type hint variable declarations, including class variables and " "instance variables." msgstr "" -#: reference/compound_stmts.rst:1374 +#: reference/compound_stmts.rst:1376 msgid ":pep:`563` - Postponed Evaluation of Annotations" msgstr "" -#: reference/compound_stmts.rst:1375 +#: reference/compound_stmts.rst:1377 msgid "" "Support for forward references within annotations by preserving annotations " "in a string form at runtime instead of eager evaluation." msgstr "" -#: reference/compound_stmts.rst:1378 +#: reference/compound_stmts.rst:1380 msgid ":pep:`318` - Decorators for Functions and Methods" msgstr "" -#: reference/compound_stmts.rst:1379 +#: reference/compound_stmts.rst:1381 msgid "" "Function and method decorators were introduced. Class decorators were " "introduced in :pep:`3129`." msgstr "" -#: reference/compound_stmts.rst:1385 +#: reference/compound_stmts.rst:1387 msgid "Class definitions" msgstr "" -#: reference/compound_stmts.rst:1400 +#: reference/compound_stmts.rst:1402 msgid "A class definition defines a class object (see section :ref:`types`):" msgstr "" -#: reference/compound_stmts.rst:1407 +#: reference/compound_stmts.rst:1409 msgid "" "A class definition is an executable statement. The inheritance list usually " "gives a list of base classes (see :ref:`metaclasses` for more advanced " @@ -1759,23 +1759,23 @@ msgid "" "default, from the base class :class:`object`; hence, ::" msgstr "" -#: reference/compound_stmts.rst:1413 +#: reference/compound_stmts.rst:1415 msgid "" "class Foo:\n" " pass" msgstr "" -#: reference/compound_stmts.rst:1416 +#: reference/compound_stmts.rst:1418 msgid "is equivalent to ::" msgstr "" -#: reference/compound_stmts.rst:1418 +#: reference/compound_stmts.rst:1420 msgid "" "class Foo(object):\n" " pass" msgstr "" -#: reference/compound_stmts.rst:1421 +#: reference/compound_stmts.rst:1423 msgid "" "The class's suite is then executed in a new execution frame (see :ref:" "`naming`), using a newly created local namespace and the original global " @@ -1787,7 +1787,7 @@ msgid "" "original local namespace." msgstr "" -#: reference/compound_stmts.rst:1430 +#: reference/compound_stmts.rst:1432 msgid "" "The order in which attributes are defined in the class body is preserved in " "the new class's :attr:`~type.__dict__`. Note that this is reliable only " @@ -1795,43 +1795,43 @@ msgid "" "using the definition syntax." msgstr "" -#: reference/compound_stmts.rst:1435 +#: reference/compound_stmts.rst:1437 msgid "" "Class creation can be customized heavily using :ref:`metaclasses " "<metaclasses>`." msgstr "" -#: reference/compound_stmts.rst:1440 +#: reference/compound_stmts.rst:1442 msgid "Classes can also be decorated: just like when decorating functions, ::" msgstr "" -#: reference/compound_stmts.rst:1442 +#: reference/compound_stmts.rst:1444 msgid "" "@f1(arg)\n" "@f2\n" "class Foo: pass" msgstr "" -#: reference/compound_stmts.rst:1448 +#: reference/compound_stmts.rst:1450 msgid "" "class Foo: pass\n" "Foo = f1(arg)(f2(Foo))" msgstr "" -#: reference/compound_stmts.rst:1451 +#: reference/compound_stmts.rst:1453 msgid "" "The evaluation rules for the decorator expressions are the same as for " "function decorators. The result is then bound to the class name." msgstr "" -#: reference/compound_stmts.rst:1454 +#: reference/compound_stmts.rst:1456 msgid "" "Classes may be decorated with any valid :token:`~python-grammar:" "assignment_expression`. Previously, the grammar was much more restrictive; " "see :pep:`614` for details." msgstr "" -#: reference/compound_stmts.rst:1459 +#: reference/compound_stmts.rst:1461 msgid "" "A list of :ref:`type parameters <type-params>` may be given in square " "brackets immediately after the class's name. This indicates to static type " @@ -1840,7 +1840,7 @@ msgid "" "`generic-classes` for more." msgstr "" -#: reference/compound_stmts.rst:1468 +#: reference/compound_stmts.rst:1470 msgid "" "**Programmer's note:** Variables defined in the class definition are class " "attributes; they are shared by instances. Instance attributes can be set in " @@ -1853,35 +1853,35 @@ msgid "" "implementation details." msgstr "" -#: reference/compound_stmts.rst:1480 +#: reference/compound_stmts.rst:1482 msgid ":pep:`3115` - Metaclasses in Python 3000" msgstr "" -#: reference/compound_stmts.rst:1481 +#: reference/compound_stmts.rst:1483 msgid "" "The proposal that changed the declaration of metaclasses to the current " "syntax, and the semantics for how classes with metaclasses are constructed." msgstr "" -#: reference/compound_stmts.rst:1485 +#: reference/compound_stmts.rst:1487 msgid ":pep:`3129` - Class Decorators" msgstr "" -#: reference/compound_stmts.rst:1486 +#: reference/compound_stmts.rst:1488 msgid "" "The proposal that added class decorators. Function and method decorators " "were introduced in :pep:`318`." msgstr "" -#: reference/compound_stmts.rst:1493 +#: reference/compound_stmts.rst:1495 msgid "Coroutines" msgstr "" -#: reference/compound_stmts.rst:1501 +#: reference/compound_stmts.rst:1503 msgid "Coroutine function definition" msgstr "" -#: reference/compound_stmts.rst:1511 +#: reference/compound_stmts.rst:1513 msgid "" "Execution of Python coroutines can be suspended and resumed at many points " "(see :term:`coroutine`). :keyword:`await` expressions, :keyword:`async for` " @@ -1889,53 +1889,53 @@ msgid "" "function." msgstr "" -#: reference/compound_stmts.rst:1515 +#: reference/compound_stmts.rst:1517 msgid "" "Functions defined with ``async def`` syntax are always coroutine functions, " "even if they do not contain ``await`` or ``async`` keywords." msgstr "" -#: reference/compound_stmts.rst:1518 +#: reference/compound_stmts.rst:1520 msgid "" "It is a :exc:`SyntaxError` to use a ``yield from`` expression inside the " "body of a coroutine function." msgstr "" -#: reference/compound_stmts.rst:1521 +#: reference/compound_stmts.rst:1523 msgid "An example of a coroutine function::" msgstr "" -#: reference/compound_stmts.rst:1523 +#: reference/compound_stmts.rst:1525 msgid "" "async def func(param1, param2):\n" " do_stuff()\n" " await some_coroutine()" msgstr "" -#: reference/compound_stmts.rst:1527 +#: reference/compound_stmts.rst:1529 msgid "" "``await`` and ``async`` are now keywords; previously they were only treated " "as such inside the body of a coroutine function." msgstr "" -#: reference/compound_stmts.rst:1535 +#: reference/compound_stmts.rst:1537 msgid "The :keyword:`!async for` statement" msgstr "" -#: reference/compound_stmts.rst:1540 +#: reference/compound_stmts.rst:1542 msgid "" "An :term:`asynchronous iterable` provides an ``__aiter__`` method that " "directly returns an :term:`asynchronous iterator`, which can call " "asynchronous code in its ``__anext__`` method." msgstr "" -#: reference/compound_stmts.rst:1544 +#: reference/compound_stmts.rst:1546 msgid "" "The ``async for`` statement allows convenient iteration over asynchronous " "iterables." msgstr "" -#: reference/compound_stmts.rst:1549 +#: reference/compound_stmts.rst:1551 msgid "" "async for TARGET in ITER:\n" " SUITE\n" @@ -1943,11 +1943,11 @@ msgid "" " SUITE2" msgstr "" -#: reference/compound_stmts.rst:1554 +#: reference/compound_stmts.rst:1556 msgid "Is semantically equivalent to::" msgstr "" -#: reference/compound_stmts.rst:1556 +#: reference/compound_stmts.rst:1558 msgid "" "iter = (ITER)\n" "iter = type(iter).__aiter__(iter)\n" @@ -1964,34 +1964,34 @@ msgid "" " SUITE2" msgstr "" -#: reference/compound_stmts.rst:1570 +#: reference/compound_stmts.rst:1572 msgid "" "See also :meth:`~object.__aiter__` and :meth:`~object.__anext__` for details." msgstr "" -#: reference/compound_stmts.rst:1572 +#: reference/compound_stmts.rst:1574 msgid "" "It is a :exc:`SyntaxError` to use an ``async for`` statement outside the " "body of a coroutine function." msgstr "" -#: reference/compound_stmts.rst:1580 +#: reference/compound_stmts.rst:1582 msgid "The :keyword:`!async with` statement" msgstr "" -#: reference/compound_stmts.rst:1585 +#: reference/compound_stmts.rst:1587 msgid "" "An :term:`asynchronous context manager` is a :term:`context manager` that is " "able to suspend execution in its *enter* and *exit* methods." msgstr "" -#: reference/compound_stmts.rst:1590 +#: reference/compound_stmts.rst:1592 msgid "" "async with EXPRESSION as TARGET:\n" " SUITE" msgstr "" -#: reference/compound_stmts.rst:1595 +#: reference/compound_stmts.rst:1597 msgid "" "manager = (EXPRESSION)\n" "aenter = type(manager).__aenter__\n" @@ -2011,40 +2011,40 @@ msgid "" " await aexit(manager, None, None, None)" msgstr "" -#: reference/compound_stmts.rst:1612 +#: reference/compound_stmts.rst:1614 msgid "" "See also :meth:`~object.__aenter__` and :meth:`~object.__aexit__` for " "details." msgstr "" -#: reference/compound_stmts.rst:1614 +#: reference/compound_stmts.rst:1616 msgid "" "It is a :exc:`SyntaxError` to use an ``async with`` statement outside the " "body of a coroutine function." msgstr "" -#: reference/compound_stmts.rst:1619 +#: reference/compound_stmts.rst:1621 msgid ":pep:`492` - Coroutines with async and await syntax" msgstr "" -#: reference/compound_stmts.rst:1620 +#: reference/compound_stmts.rst:1622 msgid "" "The proposal that made coroutines a proper standalone concept in Python, and " "added supporting syntax." msgstr "" -#: reference/compound_stmts.rst:1626 +#: reference/compound_stmts.rst:1628 msgid "Type parameter lists" msgstr "" -#: reference/compound_stmts.rst:1640 +#: reference/compound_stmts.rst:1642 msgid "" ":ref:`Functions <def>` (including :ref:`coroutines <async def>`), :ref:" "`classes <class>` and :ref:`type aliases <type>` may contain a type " "parameter list::" msgstr "" -#: reference/compound_stmts.rst:1644 +#: reference/compound_stmts.rst:1646 msgid "" "def max[T](args: list[T]) -> T:\n" " ...\n" @@ -2062,7 +2062,7 @@ msgid "" "type ListOrSet[T] = list[T] | set[T]" msgstr "" -#: reference/compound_stmts.rst:1659 +#: reference/compound_stmts.rst:1661 msgid "" "Semantically, this indicates that the function, class, or type alias is " "generic over a type variable. This information is primarily used by static " @@ -2070,7 +2070,7 @@ msgid "" "generic counterparts." msgstr "" -#: reference/compound_stmts.rst:1664 +#: reference/compound_stmts.rst:1666 msgid "" "Type parameters are declared in square brackets (``[]``) immediately after " "the name of the function, class, or type alias. The type parameters are " @@ -2082,36 +2082,36 @@ msgid "" "wraps the creation of the generic object." msgstr "" -#: reference/compound_stmts.rst:1673 +#: reference/compound_stmts.rst:1675 msgid "" "Generic functions, classes, and type aliases have a :attr:`~definition." "__type_params__` attribute listing their type parameters." msgstr "" -#: reference/compound_stmts.rst:1676 +#: reference/compound_stmts.rst:1678 msgid "Type parameters come in three kinds:" msgstr "" -#: reference/compound_stmts.rst:1678 +#: reference/compound_stmts.rst:1680 msgid "" ":data:`typing.TypeVar`, introduced by a plain name (e.g., ``T``). " "Semantically, this represents a single type to a type checker." msgstr "" -#: reference/compound_stmts.rst:1680 +#: reference/compound_stmts.rst:1682 msgid "" ":data:`typing.TypeVarTuple`, introduced by a name prefixed with a single " "asterisk (e.g., ``*Ts``). Semantically, this stands for a tuple of any " "number of types." msgstr "" -#: reference/compound_stmts.rst:1683 +#: reference/compound_stmts.rst:1685 msgid "" ":data:`typing.ParamSpec`, introduced by a name prefixed with two asterisks " "(e.g., ``**P``). Semantically, this stands for the parameters of a callable." msgstr "" -#: reference/compound_stmts.rst:1686 +#: reference/compound_stmts.rst:1688 msgid "" ":data:`typing.TypeVar` declarations can define *bounds* and *constraints* " "with a colon (``:``) followed by an expression. A single expression after " @@ -2123,7 +2123,7 @@ msgid "" "variables can only take on one of the types in the list of constraints." msgstr "" -#: reference/compound_stmts.rst:1695 +#: reference/compound_stmts.rst:1697 msgid "" "For :data:`!typing.TypeVar`\\ s declared using the type parameter list " "syntax, the bound and constraints are not evaluated when the generic object " @@ -2133,19 +2133,19 @@ msgid "" "<annotation-scopes>`." msgstr "" -#: reference/compound_stmts.rst:1701 +#: reference/compound_stmts.rst:1703 msgid "" ":data:`typing.TypeVarTuple`\\ s and :data:`typing.ParamSpec`\\ s cannot have " "bounds or constraints." msgstr "" -#: reference/compound_stmts.rst:1704 +#: reference/compound_stmts.rst:1706 msgid "" "The following example indicates the full set of allowed type parameter " "declarations::" msgstr "" -#: reference/compound_stmts.rst:1706 +#: reference/compound_stmts.rst:1708 msgid "" "def overly_generic[\n" " SimpleTypeVar,\n" @@ -2161,23 +2161,23 @@ msgid "" "): ..." msgstr "" -#: reference/compound_stmts.rst:1722 +#: reference/compound_stmts.rst:1724 msgid "Generic functions" msgstr "" -#: reference/compound_stmts.rst:1724 +#: reference/compound_stmts.rst:1726 msgid "Generic functions are declared as follows::" msgstr "" -#: reference/compound_stmts.rst:1726 +#: reference/compound_stmts.rst:1728 msgid "def func[T](arg: T): ..." msgstr "" -#: reference/compound_stmts.rst:1728 reference/compound_stmts.rst:1788 +#: reference/compound_stmts.rst:1730 reference/compound_stmts.rst:1790 msgid "This syntax is equivalent to::" msgstr "" -#: reference/compound_stmts.rst:1730 +#: reference/compound_stmts.rst:1732 msgid "" "annotation-def TYPE_PARAMS_OF_func():\n" " T = typing.TypeVar(\"T\")\n" @@ -2187,7 +2187,7 @@ msgid "" "func = TYPE_PARAMS_OF_func()" msgstr "" -#: reference/compound_stmts.rst:1737 +#: reference/compound_stmts.rst:1739 msgid "" "Here ``annotation-def`` indicates an :ref:`annotation scope <annotation-" "scopes>`, which is not actually bound to any name at runtime. (One other " @@ -2196,33 +2196,33 @@ msgid "" "data:`typing.TypeVar` directly.)" msgstr "" -#: reference/compound_stmts.rst:1743 +#: reference/compound_stmts.rst:1745 msgid "" "The annotations of generic functions are evaluated within the annotation " "scope used for declaring the type parameters, but the function's defaults " "and decorators are not." msgstr "" -#: reference/compound_stmts.rst:1747 +#: reference/compound_stmts.rst:1749 msgid "" "The following example illustrates the scoping rules for these cases, as well " "as for additional flavors of type parameters::" msgstr "" -#: reference/compound_stmts.rst:1750 +#: reference/compound_stmts.rst:1752 msgid "" "@decorator\n" "def func[T: int, *Ts, **P](*args: *Ts, arg: Callable[P, T] = some_default):\n" " ..." msgstr "" -#: reference/compound_stmts.rst:1754 +#: reference/compound_stmts.rst:1756 msgid "" "Except for the :ref:`lazy evaluation <lazy-evaluation>` of the :class:" "`~typing.TypeVar` bound, this is equivalent to::" msgstr "" -#: reference/compound_stmts.rst:1757 +#: reference/compound_stmts.rst:1759 msgid "" "DEFAULT_OF_arg = some_default\n" "\n" @@ -2244,25 +2244,25 @@ msgid "" "func = decorator(TYPE_PARAMS_OF_func())" msgstr "" -#: reference/compound_stmts.rst:1776 +#: reference/compound_stmts.rst:1778 msgid "" "The capitalized names like ``DEFAULT_OF_arg`` are not actually bound at " "runtime." msgstr "" -#: reference/compound_stmts.rst:1782 +#: reference/compound_stmts.rst:1784 msgid "Generic classes" msgstr "" -#: reference/compound_stmts.rst:1784 +#: reference/compound_stmts.rst:1786 msgid "Generic classes are declared as follows::" msgstr "" -#: reference/compound_stmts.rst:1786 +#: reference/compound_stmts.rst:1788 msgid "class Bag[T]: ..." msgstr "" -#: reference/compound_stmts.rst:1790 +#: reference/compound_stmts.rst:1792 msgid "" "annotation-def TYPE_PARAMS_OF_Bag():\n" " T = typing.TypeVar(\"T\")\n" @@ -2273,14 +2273,14 @@ msgid "" "Bag = TYPE_PARAMS_OF_Bag()" msgstr "" -#: reference/compound_stmts.rst:1798 +#: reference/compound_stmts.rst:1800 msgid "" "Here again ``annotation-def`` (not a real keyword) indicates an :ref:" "`annotation scope <annotation-scopes>`, and the name ``TYPE_PARAMS_OF_Bag`` " "is not actually bound at runtime." msgstr "" -#: reference/compound_stmts.rst:1802 +#: reference/compound_stmts.rst:1804 msgid "" "Generic classes implicitly inherit from :data:`typing.Generic`. The base " "classes and keyword arguments of generic classes are evaluated within the " @@ -2288,17 +2288,17 @@ msgid "" "that scope. This is illustrated by this example::" msgstr "" -#: reference/compound_stmts.rst:1808 +#: reference/compound_stmts.rst:1810 msgid "" "@decorator\n" "class Bag(Base[T], arg=T): ..." msgstr "" -#: reference/compound_stmts.rst:1811 +#: reference/compound_stmts.rst:1813 msgid "This is equivalent to::" msgstr "" -#: reference/compound_stmts.rst:1813 +#: reference/compound_stmts.rst:1815 msgid "" "annotation-def TYPE_PARAMS_OF_Bag():\n" " T = typing.TypeVar(\"T\")\n" @@ -2309,27 +2309,27 @@ msgid "" "Bag = decorator(TYPE_PARAMS_OF_Bag())" msgstr "" -#: reference/compound_stmts.rst:1824 +#: reference/compound_stmts.rst:1826 msgid "Generic type aliases" msgstr "" -#: reference/compound_stmts.rst:1826 +#: reference/compound_stmts.rst:1828 msgid "" "The :keyword:`type` statement can also be used to create a generic type " "alias::" msgstr "" -#: reference/compound_stmts.rst:1828 +#: reference/compound_stmts.rst:1830 msgid "type ListOrSet[T] = list[T] | set[T]" msgstr "" -#: reference/compound_stmts.rst:1830 +#: reference/compound_stmts.rst:1832 msgid "" "Except for the :ref:`lazy evaluation <lazy-evaluation>` of the value, this " "is equivalent to::" msgstr "" -#: reference/compound_stmts.rst:1833 +#: reference/compound_stmts.rst:1835 msgid "" "annotation-def TYPE_PARAMS_OF_ListOrSet():\n" " T = typing.TypeVar(\"T\")\n" @@ -2342,104 +2342,104 @@ msgid "" "ListOrSet = TYPE_PARAMS_OF_ListOrSet()" msgstr "" -#: reference/compound_stmts.rst:1842 +#: reference/compound_stmts.rst:1844 msgid "" "Here, ``annotation-def`` (not a real keyword) indicates an :ref:`annotation " "scope <annotation-scopes>`. The capitalized names like " "``TYPE_PARAMS_OF_ListOrSet`` are not actually bound at runtime." msgstr "" -#: reference/compound_stmts.rst:1847 +#: reference/compound_stmts.rst:1849 msgid "Footnotes" msgstr "" -#: reference/compound_stmts.rst:1848 +#: reference/compound_stmts.rst:1850 msgid "" "The exception is propagated to the invocation stack unless there is a :" "keyword:`finally` clause which happens to raise another exception. That new " "exception causes the old one to be lost." msgstr "" -#: reference/compound_stmts.rst:1852 +#: reference/compound_stmts.rst:1854 msgid "In pattern matching, a sequence is defined as one of the following:" msgstr "" -#: reference/compound_stmts.rst:1854 +#: reference/compound_stmts.rst:1856 msgid "a class that inherits from :class:`collections.abc.Sequence`" msgstr "" -#: reference/compound_stmts.rst:1855 +#: reference/compound_stmts.rst:1857 msgid "" "a Python class that has been registered as :class:`collections.abc.Sequence`" msgstr "" -#: reference/compound_stmts.rst:1856 +#: reference/compound_stmts.rst:1858 msgid "" "a builtin class that has its (CPython) :c:macro:`Py_TPFLAGS_SEQUENCE` bit set" msgstr "" -#: reference/compound_stmts.rst:1857 reference/compound_stmts.rst:1876 +#: reference/compound_stmts.rst:1859 reference/compound_stmts.rst:1878 msgid "a class that inherits from any of the above" msgstr "" -#: reference/compound_stmts.rst:1859 +#: reference/compound_stmts.rst:1861 msgid "The following standard library classes are sequences:" msgstr "" -#: reference/compound_stmts.rst:1861 +#: reference/compound_stmts.rst:1863 msgid ":class:`array.array`" msgstr "" -#: reference/compound_stmts.rst:1862 +#: reference/compound_stmts.rst:1864 msgid ":class:`collections.deque`" msgstr "" -#: reference/compound_stmts.rst:1864 +#: reference/compound_stmts.rst:1866 msgid ":class:`memoryview`" msgstr "" -#: reference/compound_stmts.rst:1865 +#: reference/compound_stmts.rst:1867 msgid ":class:`range`" msgstr "" -#: reference/compound_stmts.rst:1868 +#: reference/compound_stmts.rst:1870 msgid "" "Subject values of type ``str``, ``bytes``, and ``bytearray`` do not match " "sequence patterns." msgstr "" -#: reference/compound_stmts.rst:1871 +#: reference/compound_stmts.rst:1873 msgid "In pattern matching, a mapping is defined as one of the following:" msgstr "" -#: reference/compound_stmts.rst:1873 +#: reference/compound_stmts.rst:1875 msgid "a class that inherits from :class:`collections.abc.Mapping`" msgstr "" -#: reference/compound_stmts.rst:1874 +#: reference/compound_stmts.rst:1876 msgid "" "a Python class that has been registered as :class:`collections.abc.Mapping`" msgstr "" -#: reference/compound_stmts.rst:1875 +#: reference/compound_stmts.rst:1877 msgid "" "a builtin class that has its (CPython) :c:macro:`Py_TPFLAGS_MAPPING` bit set" msgstr "" -#: reference/compound_stmts.rst:1878 +#: reference/compound_stmts.rst:1880 msgid "" "The standard library classes :class:`dict` and :class:`types." "MappingProxyType` are mappings." msgstr "" -#: reference/compound_stmts.rst:1881 +#: reference/compound_stmts.rst:1883 msgid "" "A string literal appearing as the first statement in the function body is " "transformed into the function's :attr:`~function.__doc__` attribute and " "therefore the function's :term:`docstring`." msgstr "" -#: reference/compound_stmts.rst:1885 +#: reference/compound_stmts.rst:1887 msgid "" "A string literal appearing as the first statement in the class body is " "transformed into the namespace's :attr:`~type.__doc__` item and therefore " @@ -2455,9 +2455,9 @@ msgstr "" #: reference/compound_stmts.rst:169 reference/compound_stmts.rst:207 #: reference/compound_stmts.rst:390 reference/compound_stmts.rst:437 #: reference/compound_stmts.rst:471 reference/compound_stmts.rst:588 -#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1387 -#: reference/compound_stmts.rst:1497 reference/compound_stmts.rst:1531 -#: reference/compound_stmts.rst:1576 +#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1389 +#: reference/compound_stmts.rst:1499 reference/compound_stmts.rst:1533 +#: reference/compound_stmts.rst:1578 msgid "statement" msgstr "" @@ -2499,7 +2499,7 @@ msgstr "" #: reference/compound_stmts.rst:144 reference/compound_stmts.rst:207 #: reference/compound_stmts.rst:327 reference/compound_stmts.rst:390 #: reference/compound_stmts.rst:408 reference/compound_stmts.rst:471 -#: reference/compound_stmts.rst:588 reference/compound_stmts.rst:1507 +#: reference/compound_stmts.rst:588 reference/compound_stmts.rst:1509 msgid "keyword" msgstr "" @@ -2510,15 +2510,15 @@ msgstr "" #: reference/compound_stmts.rst:86 reference/compound_stmts.rst:111 #: reference/compound_stmts.rst:144 reference/compound_stmts.rst:207 #: reference/compound_stmts.rst:471 reference/compound_stmts.rst:588 -#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1323 -#: reference/compound_stmts.rst:1387 +#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1325 +#: reference/compound_stmts.rst:1389 msgid ": (colon)" msgstr "" #: reference/compound_stmts.rst:86 reference/compound_stmts.rst:111 #: reference/compound_stmts.rst:144 reference/compound_stmts.rst:207 #: reference/compound_stmts.rst:471 reference/compound_stmts.rst:588 -#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1387 +#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1389 msgid "compound statement" msgstr "" @@ -2557,7 +2557,7 @@ msgid "list" msgstr "" #: reference/compound_stmts.rst:144 reference/compound_stmts.rst:298 -#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1387 +#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1389 msgid "object" msgstr "" @@ -2623,7 +2623,7 @@ msgid "with statement" msgstr "" #: reference/compound_stmts.rst:471 reference/compound_stmts.rst:1195 -#: reference/compound_stmts.rst:1387 +#: reference/compound_stmts.rst:1389 msgid ", (comma)" msgstr "" @@ -2663,13 +2663,13 @@ msgstr "" msgid "AS pattern, OR pattern, capture pattern, wildcard pattern" msgstr "" -#: reference/compound_stmts.rst:1186 reference/compound_stmts.rst:1273 +#: reference/compound_stmts.rst:1186 reference/compound_stmts.rst:1275 msgid "parameter" msgstr "" #: reference/compound_stmts.rst:1186 reference/compound_stmts.rst:1195 -#: reference/compound_stmts.rst:1237 reference/compound_stmts.rst:1273 -#: reference/compound_stmts.rst:1302 +#: reference/compound_stmts.rst:1239 reference/compound_stmts.rst:1275 +#: reference/compound_stmts.rst:1304 msgid "function definition" msgstr "" @@ -2677,19 +2677,19 @@ msgstr "" msgid "def" msgstr "" -#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1323 +#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1325 msgid "function" msgstr "" -#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1387 +#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1389 msgid "definition" msgstr "" -#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1387 +#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1389 msgid "name" msgstr "" -#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1387 +#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1389 msgid "binding" msgstr "" @@ -2697,7 +2697,7 @@ msgstr "" msgid "user-defined function" msgstr "" -#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1387 +#: reference/compound_stmts.rst:1195 reference/compound_stmts.rst:1389 msgid "() (parentheses)" msgstr "" @@ -2705,106 +2705,106 @@ msgstr "" msgid "parameter list" msgstr "" -#: reference/compound_stmts.rst:1237 reference/compound_stmts.rst:1437 +#: reference/compound_stmts.rst:1239 reference/compound_stmts.rst:1439 msgid "@ (at)" msgstr "" -#: reference/compound_stmts.rst:1273 +#: reference/compound_stmts.rst:1275 msgid "default" msgstr "" -#: reference/compound_stmts.rst:1273 +#: reference/compound_stmts.rst:1275 msgid "value" msgstr "" -#: reference/compound_stmts.rst:1273 +#: reference/compound_stmts.rst:1275 msgid "argument" msgstr "" -#: reference/compound_stmts.rst:1273 +#: reference/compound_stmts.rst:1275 msgid "= (equals)" msgstr "" -#: reference/compound_stmts.rst:1302 +#: reference/compound_stmts.rst:1304 msgid "/ (slash)" msgstr "" -#: reference/compound_stmts.rst:1302 +#: reference/compound_stmts.rst:1304 msgid "* (asterisk)" msgstr "" -#: reference/compound_stmts.rst:1302 +#: reference/compound_stmts.rst:1304 msgid "**" msgstr "" -#: reference/compound_stmts.rst:1323 +#: reference/compound_stmts.rst:1325 msgid "annotations" msgstr "" -#: reference/compound_stmts.rst:1323 +#: reference/compound_stmts.rst:1325 msgid "->" msgstr "" -#: reference/compound_stmts.rst:1323 +#: reference/compound_stmts.rst:1325 msgid "function annotations" msgstr "" -#: reference/compound_stmts.rst:1346 +#: reference/compound_stmts.rst:1348 msgid "lambda" msgstr "" -#: reference/compound_stmts.rst:1346 +#: reference/compound_stmts.rst:1348 msgid "expression" msgstr "" -#: reference/compound_stmts.rst:1387 +#: reference/compound_stmts.rst:1389 msgid "class" msgstr "" -#: reference/compound_stmts.rst:1387 +#: reference/compound_stmts.rst:1389 msgid "execution" msgstr "" -#: reference/compound_stmts.rst:1387 +#: reference/compound_stmts.rst:1389 msgid "frame" msgstr "" -#: reference/compound_stmts.rst:1387 +#: reference/compound_stmts.rst:1389 msgid "inheritance" msgstr "" -#: reference/compound_stmts.rst:1387 +#: reference/compound_stmts.rst:1389 msgid "docstring" msgstr "" -#: reference/compound_stmts.rst:1387 reference/compound_stmts.rst:1437 +#: reference/compound_stmts.rst:1389 reference/compound_stmts.rst:1439 msgid "class definition" msgstr "" -#: reference/compound_stmts.rst:1387 +#: reference/compound_stmts.rst:1389 msgid "expression list" msgstr "" -#: reference/compound_stmts.rst:1497 +#: reference/compound_stmts.rst:1499 msgid "async def" msgstr "" -#: reference/compound_stmts.rst:1507 +#: reference/compound_stmts.rst:1509 msgid "async" msgstr "" -#: reference/compound_stmts.rst:1507 +#: reference/compound_stmts.rst:1509 msgid "await" msgstr "" -#: reference/compound_stmts.rst:1531 +#: reference/compound_stmts.rst:1533 msgid "async for" msgstr "" -#: reference/compound_stmts.rst:1576 +#: reference/compound_stmts.rst:1578 msgid "async with" msgstr "" -#: reference/compound_stmts.rst:1630 +#: reference/compound_stmts.rst:1632 msgid "type parameters" msgstr "" diff --git a/reference/datamodel.po b/reference/datamodel.po index 35853b059..fd2ed9488 100644 --- a/reference/datamodel.po +++ b/reference/datamodel.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -1130,7 +1130,7 @@ msgstr "" #: reference/datamodel.rst:1010 msgid "" "Setting :attr:`!__loader__` on a module while failing to set :attr:`!" -"__spec__.loader` is deprecated. In Python 3.14, :attr:`!__loader__` will " +"__spec__.loader` is deprecated. In Python 3.16, :attr:`!__loader__` will " "cease to be set or taken into consideration by the import system or the " "standard library." msgstr "" @@ -1559,7 +1559,7 @@ msgstr "" #: reference/datamodel.rst:1429 msgid "" "This attribute of code objects is deprecated, and may be removed in Python " -"3.14." +"3.15." msgstr "" #: reference/datamodel.rst:1434 diff --git a/reference/expressions.po b/reference/expressions.po index cc147946a..d8989137a 100644 --- a/reference/expressions.po +++ b/reference/expressions.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -713,7 +713,7 @@ msgid "" "*value* may be cleared." msgstr "" -#: reference/expressions.rst:795 +#: reference/expressions.rst:798 msgid "" "The second signature \\(type\\[, value\\[, traceback\\]\\]\\) is deprecated " "and may be removed in a future version of Python." @@ -868,7 +868,7 @@ msgid "" "which are used to control the execution of a generator function." msgstr "" -#: reference/expressions.rst:750 +#: reference/expressions.rst:751 msgid "" "Returns an awaitable which when run starts to execute the asynchronous " "generator or resumes it at the last executed yield expression. When an " @@ -883,12 +883,12 @@ msgid "" "has completed." msgstr "" -#: reference/expressions.rst:762 +#: reference/expressions.rst:763 msgid "" "This method is normally called implicitly by a :keyword:`async for` loop." msgstr "" -#: reference/expressions.rst:767 +#: reference/expressions.rst:769 msgid "" "Returns an awaitable which when run resumes the execution of the " "asynchronous generator. As with the :meth:`~generator.send` method for a " @@ -903,7 +903,7 @@ msgid "" "receive the value." msgstr "" -#: reference/expressions.rst:783 +#: reference/expressions.rst:786 msgid "" "Returns an awaitable that raises an exception of type ``type`` at the point " "where the asynchronous generator was paused, and returns the next value " @@ -915,7 +915,7 @@ msgid "" "that exception propagates to the caller of the awaitable." msgstr "" -#: reference/expressions.rst:803 +#: reference/expressions.rst:807 msgid "" "Returns an awaitable that when run will throw a :exc:`GeneratorExit` into " "the asynchronous generator function at the point where it was paused. If the " @@ -931,25 +931,25 @@ msgid "" "will return an awaitable that does nothing." msgstr "" -#: reference/expressions.rst:819 +#: reference/expressions.rst:823 msgid "Primaries" msgstr "" -#: reference/expressions.rst:823 +#: reference/expressions.rst:827 msgid "" "Primaries represent the most tightly bound operations of the language. Their " "syntax is:" msgstr "" -#: reference/expressions.rst:833 +#: reference/expressions.rst:837 msgid "Attribute references" msgstr "" -#: reference/expressions.rst:839 +#: reference/expressions.rst:843 msgid "An attribute reference is a primary followed by a period and a name:" msgstr "" -#: reference/expressions.rst:849 +#: reference/expressions.rst:853 msgid "" "The primary must evaluate to an object of a type that supports attribute " "references, which most objects do. This object is then asked to produce the " @@ -958,7 +958,7 @@ msgid "" "reference may yield different objects." msgstr "" -#: reference/expressions.rst:855 +#: reference/expressions.rst:859 msgid "" "This production can be customized by overriding the :meth:`~object." "__getattribute__` method or the :meth:`~object.__getattr__` method. The :" @@ -966,17 +966,17 @@ msgid "" "or raises :exc:`AttributeError` if the attribute is not available." msgstr "" -#: reference/expressions.rst:861 +#: reference/expressions.rst:865 msgid "" "If an :exc:`AttributeError` is raised and the object has a :meth:`!" "__getattr__` method, that method is called as a fallback." msgstr "" -#: reference/expressions.rst:867 +#: reference/expressions.rst:871 msgid "Subscriptions" msgstr "" -#: reference/expressions.rst:882 +#: reference/expressions.rst:886 msgid "" "The subscription of an instance of a :ref:`container class <sequence-types>` " "will generally select an element from the container. The subscription of a :" @@ -984,13 +984,13 @@ msgid "" "`GenericAlias <types-genericalias>` object." msgstr "" -#: reference/expressions.rst:890 +#: reference/expressions.rst:894 msgid "" "When an object is subscripted, the interpreter will evaluate the primary and " "the expression list." msgstr "" -#: reference/expressions.rst:893 +#: reference/expressions.rst:897 msgid "" "The primary must evaluate to an object that supports subscription. An object " "may support subscription through defining one or both of :meth:`~object." @@ -1000,7 +1000,7 @@ msgid "" "called instead of ``__getitem__``, see :ref:`classgetitem-versus-getitem`." msgstr "" -#: reference/expressions.rst:900 +#: reference/expressions.rst:904 msgid "" "If the expression list contains at least one comma, or if any of the " "expressions are starred, the expression list will evaluate to a :class:" @@ -1008,17 +1008,17 @@ msgid "" "expression list will evaluate to the value of the list's sole member." msgstr "" -#: reference/expressions.rst:905 +#: reference/expressions.rst:909 msgid "Expressions in an expression list may be starred. See :pep:`646`." msgstr "" -#: reference/expressions.rst:908 +#: reference/expressions.rst:912 msgid "" "For built-in objects, there are two types of objects that support " "subscription via :meth:`~object.__getitem__`:" msgstr "" -#: reference/expressions.rst:911 +#: reference/expressions.rst:915 msgid "" "Mappings. If the primary is a :term:`mapping`, the expression list must " "evaluate to an object whose value is one of the keys of the mapping, and the " @@ -1026,7 +1026,7 @@ msgid "" "An example of a builtin mapping class is the :class:`dict` class." msgstr "" -#: reference/expressions.rst:915 +#: reference/expressions.rst:919 msgid "" "Sequences. If the primary is a :term:`sequence`, the expression list must " "evaluate to an :class:`int` or a :class:`slice` (as discussed in the " @@ -1034,7 +1034,7 @@ msgid "" "`str`, :class:`list` and :class:`tuple` classes." msgstr "" -#: reference/expressions.rst:920 +#: reference/expressions.rst:924 msgid "" "The formal syntax makes no special provision for negative indices in :term:" "`sequences <sequence>`. However, built-in sequences all provide a :meth:" @@ -1048,25 +1048,25 @@ msgid "" "explicitly add that support." msgstr "" -#: reference/expressions.rst:934 +#: reference/expressions.rst:938 msgid "" "A :class:`string <str>` is a special kind of sequence whose items are " "*characters*. A character is not a separate data type but a string of " "exactly one character." msgstr "" -#: reference/expressions.rst:942 +#: reference/expressions.rst:946 msgid "Slicings" msgstr "" -#: reference/expressions.rst:956 +#: reference/expressions.rst:960 msgid "" "A slicing selects a range of items in a sequence object (e.g., a string, " "tuple or list). Slicings may be used as expressions or as targets in " "assignment or :keyword:`del` statements. The syntax for a slicing:" msgstr "" -#: reference/expressions.rst:969 +#: reference/expressions.rst:973 msgid "" "There is ambiguity in the formal syntax here: anything that looks like an " "expression list also looks like a slice list, so any subscription can be " @@ -1076,7 +1076,7 @@ msgid "" "the case if the slice list contains no proper slice)." msgstr "" -#: reference/expressions.rst:981 +#: reference/expressions.rst:985 msgid "" "The semantics for a slicing are as follows. The primary is indexed (using " "the same :meth:`~object.__getitem__` method as normal subscription) with a " @@ -1091,23 +1091,23 @@ msgid "" "missing expressions." msgstr "" -#: reference/expressions.rst:1005 +#: reference/expressions.rst:1009 msgid "Calls" msgstr "" -#: reference/expressions.rst:1007 +#: reference/expressions.rst:1011 msgid "" "A call calls a callable object (e.g., a :term:`function`) with a possibly " "empty series of :term:`arguments <argument>`:" msgstr "" -#: reference/expressions.rst:1024 +#: reference/expressions.rst:1028 msgid "" "An optional trailing comma may be present after the positional and keyword " "arguments but does not affect the semantics." msgstr "" -#: reference/expressions.rst:1030 +#: reference/expressions.rst:1034 msgid "" "The primary must evaluate to a callable object (user-defined functions, " "built-in functions, methods of built-in objects, class objects, methods of " @@ -1117,7 +1117,7 @@ msgid "" "formal :term:`parameter` lists." msgstr "" -#: reference/expressions.rst:1038 +#: reference/expressions.rst:1042 msgid "" "If keyword arguments are present, they are first converted to positional " "arguments, as follows. First, a list of unfilled slots is created for the " @@ -1138,7 +1138,7 @@ msgid "" "filled slots is used as the argument list for the call." msgstr "" -#: reference/expressions.rst:1058 +#: reference/expressions.rst:1062 msgid "" "An implementation may provide built-in functions whose positional parameters " "do not have names, even if they are 'named' for the purpose of " @@ -1147,7 +1147,7 @@ msgid "" "`PyArg_ParseTuple` to parse their arguments." msgstr "" -#: reference/expressions.rst:1064 +#: reference/expressions.rst:1068 msgid "" "If there are more positional arguments than there are formal parameter " "slots, a :exc:`TypeError` exception is raised, unless a formal parameter " @@ -1156,7 +1156,7 @@ msgid "" "empty tuple if there were no excess positional arguments)." msgstr "" -#: reference/expressions.rst:1070 +#: reference/expressions.rst:1074 msgid "" "If any keyword argument does not correspond to a formal parameter name, a :" "exc:`TypeError` exception is raised, unless a formal parameter using the " @@ -1166,7 +1166,7 @@ msgid "" "(new) empty dictionary if there were no excess keyword arguments." msgstr "" -#: reference/expressions.rst:1081 +#: reference/expressions.rst:1085 msgid "" "If the syntax ``*expression`` appears in the function call, ``expression`` " "must evaluate to an :term:`iterable`. Elements from these iterables are " @@ -1176,14 +1176,14 @@ msgid "" "*y1*, ..., *yM*, *x3*, *x4*." msgstr "" -#: reference/expressions.rst:1088 +#: reference/expressions.rst:1092 msgid "" "A consequence of this is that although the ``*expression`` syntax may appear " "*after* explicit keyword arguments, it is processed *before* the keyword " "arguments (and any ``**expression`` arguments -- see below). So::" msgstr "" -#: reference/expressions.rst:1092 +#: reference/expressions.rst:1096 msgid "" ">>> def f(a, b):\n" "... print(a, b)\n" @@ -1198,13 +1198,13 @@ msgid "" "1 2" msgstr "" -#: reference/expressions.rst:1104 +#: reference/expressions.rst:1108 msgid "" "It is unusual for both keyword arguments and the ``*expression`` syntax to " "be used in the same call, so in practice this confusion does not often arise." msgstr "" -#: reference/expressions.rst:1110 +#: reference/expressions.rst:1114 msgid "" "If the syntax ``**expression`` appears in the function call, ``expression`` " "must evaluate to a :term:`mapping`, the contents of which are treated as " @@ -1213,7 +1213,7 @@ msgid "" "a :exc:`TypeError` exception is raised." msgstr "" -#: reference/expressions.rst:1116 +#: reference/expressions.rst:1120 msgid "" "When ``**expression`` is used, each key in this mapping must be a string. " "Each value from the mapping is assigned to the first formal parameter " @@ -1225,110 +1225,112 @@ msgid "" "is raised." msgstr "" -#: reference/expressions.rst:1126 +#: reference/expressions.rst:1130 msgid "" "Formal parameters using the syntax ``*identifier`` or ``**identifier`` " "cannot be used as positional argument slots or as keyword argument names." msgstr "" -#: reference/expressions.rst:1129 +#: reference/expressions.rst:1133 msgid "" "Function calls accept any number of ``*`` and ``**`` unpackings, positional " "arguments may follow iterable unpackings (``*``), and keyword arguments may " "follow dictionary unpackings (``**``). Originally proposed by :pep:`448`." msgstr "" -#: reference/expressions.rst:1135 +#: reference/expressions.rst:1139 msgid "" "A call always returns some value, possibly ``None``, unless it raises an " "exception. How this value is computed depends on the type of the callable " "object." msgstr "" -#: reference/expressions.rst:1139 +#: reference/expressions.rst:1143 msgid "If it is---" msgstr "" -#: reference/expressions.rst:1141 +#: reference/expressions.rst:1145 msgid "a user-defined function:" msgstr "" -#: reference/expressions.rst:1148 +#: reference/expressions.rst:1152 msgid "" "The code block for the function is executed, passing it the argument list. " "The first thing the code block will do is bind the formal parameters to the " "arguments; this is described in section :ref:`function`. When the code " "block executes a :keyword:`return` statement, this specifies the return " -"value of the function call." +"value of the function call. If execution reaches the end of the code block " +"without executing a :keyword:`return` statement, the return value is " +"``None``." msgstr "" -#: reference/expressions.rst:1154 +#: reference/expressions.rst:1159 msgid "a built-in function or method:" msgstr "" -#: reference/expressions.rst:1165 +#: reference/expressions.rst:1170 msgid "" "The result is up to the interpreter; see :ref:`built-in-funcs` for the " "descriptions of built-in functions and methods." msgstr "" -#: reference/expressions.rst:1168 +#: reference/expressions.rst:1173 msgid "a class object:" msgstr "" -#: reference/expressions.rst:1173 +#: reference/expressions.rst:1178 msgid "A new instance of that class is returned." msgstr "" -#: reference/expressions.rst:1175 +#: reference/expressions.rst:1180 msgid "a class instance method:" msgstr "" -#: reference/expressions.rst:1181 +#: reference/expressions.rst:1186 msgid "" "The corresponding user-defined function is called, with an argument list " "that is one longer than the argument list of the call: the instance becomes " "the first argument." msgstr "" -#: reference/expressions.rst:1185 +#: reference/expressions.rst:1190 msgid "a class instance:" msgstr "" -#: reference/expressions.rst:1190 +#: reference/expressions.rst:1195 msgid "" "The class must define a :meth:`~object.__call__` method; the effect is then " "the same as if that method was called." msgstr "" -#: reference/expressions.rst:1996 +#: reference/expressions.rst:2001 msgid "Await expression" msgstr "" -#: reference/expressions.rst:1200 +#: reference/expressions.rst:1205 msgid "" "Suspend the execution of :term:`coroutine` on an :term:`awaitable` object. " "Can only be used inside a :term:`coroutine function`." msgstr "" -#: reference/expressions.rst:1212 +#: reference/expressions.rst:1217 msgid "The power operator" msgstr "" -#: reference/expressions.rst:1218 +#: reference/expressions.rst:1223 msgid "" "The power operator binds more tightly than unary operators on its left; it " "binds less tightly than unary operators on its right. The syntax is:" msgstr "" -#: reference/expressions.rst:1224 +#: reference/expressions.rst:1229 msgid "" "Thus, in an unparenthesized sequence of power and unary operators, the " "operators are evaluated from right to left (this does not constrain the " "evaluation order for the operands): ``-1**2`` results in ``-1``." msgstr "" -#: reference/expressions.rst:1228 +#: reference/expressions.rst:1233 msgid "" "The power operator has the same semantics as the built-in :func:`pow` " "function, when called with two arguments: it yields its left argument raised " @@ -1336,7 +1338,7 @@ msgid "" "converted to a common type, and the result is of that type." msgstr "" -#: reference/expressions.rst:1233 +#: reference/expressions.rst:1238 msgid "" "For int operands, the result has the same type as the operands unless the " "second argument is negative; in that case, all arguments are converted to " @@ -1344,41 +1346,41 @@ msgid "" "``100``, but ``10**-2`` returns ``0.01``." msgstr "" -#: reference/expressions.rst:1238 +#: reference/expressions.rst:1243 msgid "" "Raising ``0.0`` to a negative power results in a :exc:`ZeroDivisionError`. " "Raising a negative number to a fractional power results in a :class:" "`complex` number. (In earlier versions it raised a :exc:`ValueError`.)" msgstr "" -#: reference/expressions.rst:1242 +#: reference/expressions.rst:1247 msgid "" "This operation can be customized using the special :meth:`~object.__pow__` " "and :meth:`~object.__rpow__` methods." msgstr "" -#: reference/expressions.rst:1248 +#: reference/expressions.rst:1253 msgid "Unary arithmetic and bitwise operations" msgstr "" -#: reference/expressions.rst:1254 +#: reference/expressions.rst:1259 msgid "All unary arithmetic and bitwise operations have the same priority:" msgstr "" -#: reference/expressions.rst:1265 +#: reference/expressions.rst:1270 msgid "" "The unary ``-`` (minus) operator yields the negation of its numeric " "argument; the operation can be overridden with the :meth:`~object.__neg__` " "special method." msgstr "" -#: reference/expressions.rst:1273 +#: reference/expressions.rst:1278 msgid "" "The unary ``+`` (plus) operator yields its numeric argument unchanged; the " "operation can be overridden with the :meth:`~object.__pos__` special method." msgstr "" -#: reference/expressions.rst:1280 +#: reference/expressions.rst:1285 msgid "" "The unary ``~`` (invert) operator yields the bitwise inversion of its " "integer argument. The bitwise inversion of ``x`` is defined as ``-(x+1)``. " @@ -1386,17 +1388,17 @@ msgid "" "meth:`~object.__invert__` special method." msgstr "" -#: reference/expressions.rst:1289 +#: reference/expressions.rst:1294 msgid "" "In all three cases, if the argument does not have the proper type, a :exc:" "`TypeError` exception is raised." msgstr "" -#: reference/expressions.rst:1296 +#: reference/expressions.rst:1301 msgid "Binary arithmetic operations" msgstr "" -#: reference/expressions.rst:1300 +#: reference/expressions.rst:1305 msgid "" "The binary arithmetic operations have the conventional priority levels. " "Note that some of these operations also apply to certain non-numeric types. " @@ -1404,7 +1406,7 @@ msgid "" "multiplicative operators and one for additive operators:" msgstr "" -#: reference/expressions.rst:1315 +#: reference/expressions.rst:1320 msgid "" "The ``*`` (multiplication) operator yields the product of its arguments. " "The arguments must either both be numbers, or one argument must be an " @@ -1414,25 +1416,25 @@ msgid "" "an empty sequence." msgstr "" -#: reference/expressions.rst:1321 +#: reference/expressions.rst:1326 msgid "" "This operation can be customized using the special :meth:`~object.__mul__` " "and :meth:`~object.__rmul__` methods." msgstr "" -#: reference/expressions.rst:1328 +#: reference/expressions.rst:1333 msgid "" "The ``@`` (at) operator is intended to be used for matrix multiplication. " "No builtin Python types implement this operator." msgstr "" -#: reference/expressions.rst:1331 +#: reference/expressions.rst:1336 msgid "" "This operation can be customized using the special :meth:`~object." "__matmul__` and :meth:`~object.__rmatmul__` methods." msgstr "" -#: reference/expressions.rst:1342 +#: reference/expressions.rst:1347 msgid "" "The ``/`` (division) and ``//`` (floor division) operators yield the " "quotient of their arguments. The numeric arguments are first converted to a " @@ -1442,7 +1444,7 @@ msgid "" "the :exc:`ZeroDivisionError` exception." msgstr "" -#: reference/expressions.rst:1349 +#: reference/expressions.rst:1354 msgid "" "The division operation can be customized using the special :meth:`~object." "__truediv__` and :meth:`~object.__rtruediv__` methods. The floor division " @@ -1450,7 +1452,7 @@ msgid "" "and :meth:`~object.__rfloordiv__` methods." msgstr "" -#: reference/expressions.rst:1358 +#: reference/expressions.rst:1363 msgid "" "The ``%`` (modulo) operator yields the remainder from the division of the " "first argument by the second. The numeric arguments are first converted to " @@ -1462,7 +1464,7 @@ msgid "" "absolute value of the second operand [#]_." msgstr "" -#: reference/expressions.rst:1367 +#: reference/expressions.rst:1372 msgid "" "The floor division and modulo operators are connected by the following " "identity: ``x == (x//y)*y + (x%y)``. Floor division and modulo are also " @@ -1470,7 +1472,7 @@ msgid "" "y, x%y)``. [#]_." msgstr "" -#: reference/expressions.rst:1372 +#: reference/expressions.rst:1377 msgid "" "In addition to performing the modulo operation on numbers, the ``%`` " "operator is also overloaded by string objects to perform old-style string " @@ -1479,20 +1481,20 @@ msgid "" "formatting`." msgstr "" -#: reference/expressions.rst:1377 +#: reference/expressions.rst:1382 msgid "" "The *modulo* operation can be customized using the special :meth:`~object." "__mod__` and :meth:`~object.__rmod__` methods." msgstr "" -#: reference/expressions.rst:1380 +#: reference/expressions.rst:1385 msgid "" "The floor division operator, the modulo operator, and the :func:`divmod` " "function are not defined for complex numbers. Instead, convert to a " "floating-point number using the :func:`abs` function if appropriate." msgstr "" -#: reference/expressions.rst:1389 +#: reference/expressions.rst:1394 msgid "" "The ``+`` (addition) operator yields the sum of its arguments. The " "arguments must either both be numbers or both be sequences of the same " @@ -1500,40 +1502,40 @@ msgid "" "then added together. In the latter case, the sequences are concatenated." msgstr "" -#: reference/expressions.rst:1394 +#: reference/expressions.rst:1399 msgid "" "This operation can be customized using the special :meth:`~object.__add__` " "and :meth:`~object.__radd__` methods." msgstr "" -#: reference/expressions.rst:1402 +#: reference/expressions.rst:1407 msgid "" "The ``-`` (subtraction) operator yields the difference of its arguments. " "The numeric arguments are first converted to a common type." msgstr "" -#: reference/expressions.rst:1405 +#: reference/expressions.rst:1410 msgid "" "This operation can be customized using the special :meth:`~object.__sub__` " "and :meth:`~object.__rsub__` methods." msgstr "" -#: reference/expressions.rst:1412 +#: reference/expressions.rst:1417 msgid "Shifting operations" msgstr "" -#: reference/expressions.rst:1419 +#: reference/expressions.rst:1424 msgid "" "The shifting operations have lower priority than the arithmetic operations:" msgstr "" -#: reference/expressions.rst:1424 +#: reference/expressions.rst:1429 msgid "" "These operators accept integers as arguments. They shift the first argument " "to the left or right by the number of bits given by the second argument." msgstr "" -#: reference/expressions.rst:1427 +#: reference/expressions.rst:1432 msgid "" "The left shift operation can be customized using the special :meth:`~object." "__lshift__` and :meth:`~object.__rlshift__` methods. The right shift " @@ -1541,46 +1543,46 @@ msgid "" "and :meth:`~object.__rrshift__` methods." msgstr "" -#: reference/expressions.rst:1434 +#: reference/expressions.rst:1439 msgid "" "A right shift by *n* bits is defined as floor division by ``pow(2,n)``. A " "left shift by *n* bits is defined as multiplication with ``pow(2,n)``." msgstr "" -#: reference/expressions.rst:1441 +#: reference/expressions.rst:1446 msgid "Binary bitwise operations" msgstr "" -#: reference/expressions.rst:1445 +#: reference/expressions.rst:1450 msgid "Each of the three bitwise operations has a different priority level:" msgstr "" -#: reference/expressions.rst:1456 +#: reference/expressions.rst:1461 msgid "" "The ``&`` operator yields the bitwise AND of its arguments, which must be " "integers or one of them must be a custom object overriding :meth:`~object." "__and__` or :meth:`~object.__rand__` special methods." msgstr "" -#: reference/expressions.rst:1465 +#: reference/expressions.rst:1470 msgid "" "The ``^`` operator yields the bitwise XOR (exclusive OR) of its arguments, " "which must be integers or one of them must be a custom object overriding :" "meth:`~object.__xor__` or :meth:`~object.__rxor__` special methods." msgstr "" -#: reference/expressions.rst:1474 +#: reference/expressions.rst:1479 msgid "" "The ``|`` operator yields the bitwise (inclusive) OR of its arguments, which " "must be integers or one of them must be a custom object overriding :meth:" "`~object.__or__` or :meth:`~object.__ror__` special methods." msgstr "" -#: reference/expressions.rst:1482 +#: reference/expressions.rst:1487 msgid "Comparisons" msgstr "" -#: reference/expressions.rst:1494 +#: reference/expressions.rst:1499 msgid "" "Unlike C, all comparison operations in Python have the same priority, which " "is lower than that of any arithmetic, shifting or bitwise operation. Also " @@ -1588,14 +1590,14 @@ msgid "" "conventional in mathematics:" msgstr "" -#: reference/expressions.rst:1504 +#: reference/expressions.rst:1509 msgid "" "Comparisons yield boolean values: ``True`` or ``False``. Custom :dfn:`rich " "comparison methods` may return non-boolean values. In this case Python will " "call :func:`bool` on such value in boolean contexts." msgstr "" -#: reference/expressions.rst:1510 +#: reference/expressions.rst:1515 msgid "" "Comparisons can be chained arbitrarily, e.g., ``x < y <= z`` is equivalent " "to ``x < y and y <= z``, except that ``y`` is evaluated only once (but in " @@ -1603,7 +1605,7 @@ msgid "" "false)." msgstr "" -#: reference/expressions.rst:1514 +#: reference/expressions.rst:1519 msgid "" "Formally, if *a*, *b*, *c*, ..., *y*, *z* are expressions and *op1*, " "*op2*, ..., *opN* are comparison operators, then ``a op1 b op2 c ... y opN " @@ -1611,24 +1613,24 @@ msgid "" "each expression is evaluated at most once." msgstr "" -#: reference/expressions.rst:1519 +#: reference/expressions.rst:1524 msgid "" "Note that ``a op1 b op2 c`` doesn't imply any kind of comparison between *a* " "and *c*, so that, e.g., ``x < y > z`` is perfectly legal (though perhaps not " "pretty)." msgstr "" -#: reference/expressions.rst:1526 +#: reference/expressions.rst:1531 msgid "Value comparisons" msgstr "" -#: reference/expressions.rst:1528 +#: reference/expressions.rst:1533 msgid "" "The operators ``<``, ``>``, ``==``, ``>=``, ``<=``, and ``!=`` compare the " "values of two objects. The objects do not need to have the same type." msgstr "" -#: reference/expressions.rst:1531 +#: reference/expressions.rst:1536 msgid "" "Chapter :ref:`objects` states that objects have a value (in addition to type " "and identity). The value of an object is a rather abstract notion in " @@ -1640,7 +1642,7 @@ msgid "" "indirectly, by means of their comparison implementation." msgstr "" -#: reference/expressions.rst:1540 +#: reference/expressions.rst:1545 msgid "" "Because all types are (direct or indirect) subtypes of :class:`object`, they " "inherit the default comparison behavior from :class:`object`. Types can " @@ -1648,7 +1650,7 @@ msgid "" "methods` like :meth:`~object.__lt__`, described in :ref:`customization`." msgstr "" -#: reference/expressions.rst:1546 +#: reference/expressions.rst:1551 msgid "" "The default behavior for equality comparison (``==`` and ``!=``) is based on " "the identity of the objects. Hence, equality comparison of instances with " @@ -1658,14 +1660,14 @@ msgid "" "``x is y`` implies ``x == y``)." msgstr "" -#: reference/expressions.rst:1553 +#: reference/expressions.rst:1558 msgid "" "A default order comparison (``<``, ``>``, ``<=``, and ``>=``) is not " "provided; an attempt raises :exc:`TypeError`. A motivation for this default " "behavior is the lack of a similar invariant as for equality." msgstr "" -#: reference/expressions.rst:1557 +#: reference/expressions.rst:1562 msgid "" "The behavior of the default equality comparison, that instances with " "different identities are always unequal, may be in contrast to what types " @@ -1674,13 +1676,13 @@ msgid "" "in fact, a number of built-in types have done that." msgstr "" -#: reference/expressions.rst:1563 +#: reference/expressions.rst:1568 msgid "" "The following list describes the comparison behavior of the most important " "built-in types." msgstr "" -#: reference/expressions.rst:1566 +#: reference/expressions.rst:1571 msgid "" "Numbers of built-in numeric types (:ref:`typesnumeric`) and of the standard " "library types :class:`fractions.Fraction` and :class:`decimal.Decimal` can " @@ -1690,7 +1692,7 @@ msgid "" "of precision." msgstr "" -#: reference/expressions.rst:1573 +#: reference/expressions.rst:1578 msgid "" "The not-a-number values ``float('NaN')`` and ``decimal.Decimal('NaN')`` are " "special. Any ordered comparison of a number to a not-a-number value is " @@ -1700,32 +1702,32 @@ msgid "" "is compliant with IEEE 754." msgstr "" -#: reference/expressions.rst:1580 +#: reference/expressions.rst:1585 msgid "" "``None`` and :data:`NotImplemented` are singletons. :PEP:`8` advises that " "comparisons for singletons should always be done with ``is`` or ``is not``, " "never the equality operators." msgstr "" -#: reference/expressions.rst:1584 +#: reference/expressions.rst:1589 msgid "" "Binary sequences (instances of :class:`bytes` or :class:`bytearray`) can be " "compared within and across their types. They compare lexicographically " "using the numeric values of their elements." msgstr "" -#: reference/expressions.rst:1588 +#: reference/expressions.rst:1593 msgid "" "Strings (instances of :class:`str`) compare lexicographically using the " "numerical Unicode code points (the result of the built-in function :func:" "`ord`) of their characters. [#]_" msgstr "" -#: reference/expressions.rst:1592 +#: reference/expressions.rst:1597 msgid "Strings and binary sequences cannot be directly compared." msgstr "" -#: reference/expressions.rst:1594 +#: reference/expressions.rst:1599 msgid "" "Sequences (instances of :class:`tuple`, :class:`list`, or :class:`range`) " "can be compared only within each of their types, with the restriction that " @@ -1734,7 +1736,7 @@ msgid "" "raises :exc:`TypeError`." msgstr "" -#: reference/expressions.rst:1600 +#: reference/expressions.rst:1605 msgid "" "Sequences compare lexicographically using comparison of corresponding " "elements. The built-in containers typically assume identical objects are " @@ -1742,19 +1744,19 @@ msgid "" "objects to improve performance and to maintain their internal invariants." msgstr "" -#: reference/expressions.rst:1605 +#: reference/expressions.rst:1610 msgid "" "Lexicographical comparison between built-in collections works as follows:" msgstr "" -#: reference/expressions.rst:1607 +#: reference/expressions.rst:1612 msgid "" "For two collections to compare equal, they must be of the same type, have " "the same length, and each pair of corresponding elements must compare equal " "(for example, ``[1,2] == (1,2)`` is false because the type is not the same)." msgstr "" -#: reference/expressions.rst:1612 +#: reference/expressions.rst:1617 msgid "" "Collections that support order comparison are ordered the same as their " "first unequal elements (for example, ``[1,2,x] <= [1,2,y]`` has the same " @@ -1763,25 +1765,25 @@ msgid "" "true)." msgstr "" -#: reference/expressions.rst:1618 +#: reference/expressions.rst:1623 msgid "" "Mappings (instances of :class:`dict`) compare equal if and only if they have " "equal ``(key, value)`` pairs. Equality comparison of the keys and values " "enforces reflexivity." msgstr "" -#: reference/expressions.rst:1622 +#: reference/expressions.rst:1627 msgid "" "Order comparisons (``<``, ``>``, ``<=``, and ``>=``) raise :exc:`TypeError`." msgstr "" -#: reference/expressions.rst:1624 +#: reference/expressions.rst:1629 msgid "" "Sets (instances of :class:`set` or :class:`frozenset`) can be compared " "within and across their types." msgstr "" -#: reference/expressions.rst:1627 +#: reference/expressions.rst:1632 msgid "" "They define order comparison operators to mean subset and superset tests. " "Those relations do not define total orderings (for example, the two sets " @@ -1792,110 +1794,110 @@ msgid "" "sets as inputs)." msgstr "" -#: reference/expressions.rst:1635 +#: reference/expressions.rst:1640 msgid "Comparison of sets enforces reflexivity of its elements." msgstr "" -#: reference/expressions.rst:1637 +#: reference/expressions.rst:1642 msgid "" "Most other built-in types have no comparison methods implemented, so they " "inherit the default comparison behavior." msgstr "" -#: reference/expressions.rst:1640 +#: reference/expressions.rst:1645 msgid "" "User-defined classes that customize their comparison behavior should follow " "some consistency rules, if possible:" msgstr "" -#: reference/expressions.rst:1643 +#: reference/expressions.rst:1648 msgid "" "Equality comparison should be reflexive. In other words, identical objects " "should compare equal:" msgstr "" -#: reference/expressions.rst:1646 +#: reference/expressions.rst:1651 msgid "``x is y`` implies ``x == y``" msgstr "" -#: reference/expressions.rst:1648 +#: reference/expressions.rst:1653 msgid "" "Comparison should be symmetric. In other words, the following expressions " "should have the same result:" msgstr "" -#: reference/expressions.rst:1651 +#: reference/expressions.rst:1656 msgid "``x == y`` and ``y == x``" msgstr "" -#: reference/expressions.rst:1653 +#: reference/expressions.rst:1658 msgid "``x != y`` and ``y != x``" msgstr "" -#: reference/expressions.rst:1655 +#: reference/expressions.rst:1660 msgid "``x < y`` and ``y > x``" msgstr "" -#: reference/expressions.rst:1657 +#: reference/expressions.rst:1662 msgid "``x <= y`` and ``y >= x``" msgstr "" -#: reference/expressions.rst:1659 +#: reference/expressions.rst:1664 msgid "" "Comparison should be transitive. The following (non-exhaustive) examples " "illustrate that:" msgstr "" -#: reference/expressions.rst:1662 +#: reference/expressions.rst:1667 msgid "``x > y and y > z`` implies ``x > z``" msgstr "" -#: reference/expressions.rst:1664 +#: reference/expressions.rst:1669 msgid "``x < y and y <= z`` implies ``x < z``" msgstr "" -#: reference/expressions.rst:1666 +#: reference/expressions.rst:1671 msgid "" "Inverse comparison should result in the boolean negation. In other words, " "the following expressions should have the same result:" msgstr "" -#: reference/expressions.rst:1669 +#: reference/expressions.rst:1674 msgid "``x == y`` and ``not x != y``" msgstr "" -#: reference/expressions.rst:1671 +#: reference/expressions.rst:1676 msgid "``x < y`` and ``not x >= y`` (for total ordering)" msgstr "" -#: reference/expressions.rst:1673 +#: reference/expressions.rst:1678 msgid "``x > y`` and ``not x <= y`` (for total ordering)" msgstr "" -#: reference/expressions.rst:1675 +#: reference/expressions.rst:1680 msgid "" "The last two expressions apply to totally ordered collections (e.g. to " "sequences, but not to sets or mappings). See also the :func:`~functools." "total_ordering` decorator." msgstr "" -#: reference/expressions.rst:1679 +#: reference/expressions.rst:1684 msgid "" "The :func:`hash` result should be consistent with equality. Objects that are " "equal should either have the same hash value, or be marked as unhashable." msgstr "" -#: reference/expressions.rst:1683 +#: reference/expressions.rst:1688 msgid "" "Python does not enforce these consistency rules. In fact, the not-a-number " "values are an example for not following these rules." msgstr "" -#: reference/expressions.rst:1692 +#: reference/expressions.rst:1697 msgid "Membership test operations" msgstr "" -#: reference/expressions.rst:1694 +#: reference/expressions.rst:1699 msgid "" "The operators :keyword:`in` and :keyword:`not in` test for membership. ``x " "in s`` evaluates to ``True`` if *x* is a member of *s*, and ``False`` " @@ -1906,7 +1908,7 @@ msgid "" "expression ``x in y`` is equivalent to ``any(x is e or x == e for e in y)``." msgstr "" -#: reference/expressions.rst:1702 +#: reference/expressions.rst:1707 msgid "" "For the string and bytes types, ``x in y`` is ``True`` if and only if *x* is " "a substring of *y*. An equivalent test is ``y.find(x) != -1``. Empty " @@ -1914,14 +1916,14 @@ msgid "" "``\"\" in \"abc\"`` will return ``True``." msgstr "" -#: reference/expressions.rst:1707 +#: reference/expressions.rst:1712 msgid "" "For user-defined classes which define the :meth:`~object.__contains__` " "method, ``x in y`` returns ``True`` if ``y.__contains__(x)`` returns a true " "value, and ``False`` otherwise." msgstr "" -#: reference/expressions.rst:1711 +#: reference/expressions.rst:1716 msgid "" "For user-defined classes which do not define :meth:`~object.__contains__` " "but do define :meth:`~object.__iter__`, ``x in y`` is ``True`` if some value " @@ -1930,7 +1932,7 @@ msgid "" "it is as if :keyword:`in` raised that exception." msgstr "" -#: reference/expressions.rst:1717 +#: reference/expressions.rst:1722 msgid "" "Lastly, the old-style iteration protocol is tried: if a class defines :meth:" "`~object.__getitem__`, ``x in y`` is ``True`` if and only if there is a non-" @@ -1939,17 +1941,17 @@ msgid "" "exception is raised, it is as if :keyword:`in` raised that exception)." msgstr "" -#: reference/expressions.rst:1729 +#: reference/expressions.rst:1734 msgid "" "The operator :keyword:`not in` is defined to have the inverse truth value " "of :keyword:`in`." msgstr "" -#: reference/expressions.rst:1742 +#: reference/expressions.rst:1747 msgid "Identity comparisons" msgstr "" -#: reference/expressions.rst:1744 +#: reference/expressions.rst:1749 msgid "" "The operators :keyword:`is` and :keyword:`is not` test for an object's " "identity: ``x is y`` is true if and only if *x* and *y* are the same " @@ -1957,11 +1959,11 @@ msgid "" "``x is not y`` yields the inverse truth value. [#]_" msgstr "" -#: reference/expressions.rst:1756 +#: reference/expressions.rst:1761 msgid "Boolean operations" msgstr "" -#: reference/expressions.rst:1767 +#: reference/expressions.rst:1772 msgid "" "In the context of Boolean operations, and also when expressions are used by " "control flow statements, the following values are interpreted as false: " @@ -1972,25 +1974,25 @@ msgid "" "__bool__` method." msgstr "" -#: reference/expressions.rst:1776 +#: reference/expressions.rst:1781 msgid "" "The operator :keyword:`not` yields ``True`` if its argument is false, " "``False`` otherwise." msgstr "" -#: reference/expressions.rst:1781 +#: reference/expressions.rst:1786 msgid "" "The expression ``x and y`` first evaluates *x*; if *x* is false, its value " "is returned; otherwise, *y* is evaluated and the resulting value is returned." msgstr "" -#: reference/expressions.rst:1786 +#: reference/expressions.rst:1791 msgid "" "The expression ``x or y`` first evaluates *x*; if *x* is true, its value is " "returned; otherwise, *y* is evaluated and the resulting value is returned." msgstr "" -#: reference/expressions.rst:1789 +#: reference/expressions.rst:1794 msgid "" "Note that neither :keyword:`and` nor :keyword:`or` restrict the value and " "type they return to ``False`` and ``True``, but rather return the last " @@ -2001,11 +2003,11 @@ msgid "" "argument (for example, ``not 'foo'`` produces ``False`` rather than ``''``.)" msgstr "" -#: reference/expressions.rst:1805 +#: reference/expressions.rst:1810 msgid "Assignment expressions" msgstr "" -#: reference/expressions.rst:1810 +#: reference/expressions.rst:1815 msgid "" "An assignment expression (sometimes also called a \"named expression\" or " "\"walrus\") assigns an :token:`~python-grammar:expression` to an :token:" @@ -2013,27 +2015,27 @@ msgid "" "`~python-grammar:expression`." msgstr "" -#: reference/expressions.rst:1815 +#: reference/expressions.rst:1820 msgid "One common use case is when handling matched regular expressions:" msgstr "" -#: reference/expressions.rst:1817 +#: reference/expressions.rst:1822 msgid "" "if matching := pattern.search(data):\n" " do_something(matching)" msgstr "" -#: reference/expressions.rst:1822 +#: reference/expressions.rst:1827 msgid "Or, when processing a file stream in chunks:" msgstr "" -#: reference/expressions.rst:1824 +#: reference/expressions.rst:1829 msgid "" "while chunk := file.read(9000):\n" " process(chunk)" msgstr "" -#: reference/expressions.rst:1829 +#: reference/expressions.rst:1834 msgid "" "Assignment expressions must be surrounded by parentheses when used as " "expression statements and when used as sub-expressions in slicing, " @@ -2043,36 +2045,36 @@ msgid "" "and ``while`` statements." msgstr "" -#: reference/expressions.rst:1837 +#: reference/expressions.rst:1842 msgid "See :pep:`572` for more details about assignment expressions." msgstr "" -#: reference/expressions.rst:1844 +#: reference/expressions.rst:1849 msgid "Conditional expressions" msgstr "" -#: reference/expressions.rst:1856 +#: reference/expressions.rst:1861 msgid "" "Conditional expressions (sometimes called a \"ternary operator\") have the " "lowest priority of all Python operations." msgstr "" -#: reference/expressions.rst:1859 +#: reference/expressions.rst:1864 msgid "" "The expression ``x if C else y`` first evaluates the condition, *C* rather " "than *x*. If *C* is true, *x* is evaluated and its value is returned; " "otherwise, *y* is evaluated and its value is returned." msgstr "" -#: reference/expressions.rst:1863 +#: reference/expressions.rst:1868 msgid "See :pep:`308` for more details about conditional expressions." msgstr "" -#: reference/expressions.rst:1870 +#: reference/expressions.rst:1875 msgid "Lambdas" msgstr "" -#: reference/expressions.rst:1881 +#: reference/expressions.rst:1886 msgid "" "Lambda expressions (sometimes called lambda forms) are used to create " "anonymous functions. The expression ``lambda parameters: expression`` yields " @@ -2080,31 +2082,31 @@ msgid "" "defined with:" msgstr "" -#: reference/expressions.rst:1885 +#: reference/expressions.rst:1890 msgid "" "def <lambda>(parameters):\n" " return expression" msgstr "" -#: reference/expressions.rst:1890 +#: reference/expressions.rst:1895 msgid "" "See section :ref:`function` for the syntax of parameter lists. Note that " "functions created with lambda expressions cannot contain statements or " "annotations." msgstr "" -#: reference/expressions.rst:1898 +#: reference/expressions.rst:1903 msgid "Expression lists" msgstr "" -#: reference/expressions.rst:1914 +#: reference/expressions.rst:1919 msgid "" "Except when part of a list or set display, an expression list containing at " "least one comma yields a tuple. The length of the tuple is the number of " "expressions in the list. The expressions are evaluated from left to right." msgstr "" -#: reference/expressions.rst:1923 +#: reference/expressions.rst:1928 msgid "" "An asterisk ``*`` denotes :dfn:`iterable unpacking`. Its operand must be " "an :term:`iterable`. The iterable is expanded into a sequence of items, " @@ -2112,16 +2114,16 @@ msgid "" "unpacking." msgstr "" -#: reference/expressions.rst:1928 +#: reference/expressions.rst:1933 msgid "" "Iterable unpacking in expression lists, originally proposed by :pep:`448`." msgstr "" -#: reference/expressions.rst:1931 +#: reference/expressions.rst:1936 msgid "Any item in an expression list may be starred. See :pep:`646`." msgstr "" -#: reference/expressions.rst:1936 +#: reference/expressions.rst:1941 msgid "" "A trailing comma is required only to create a one-item tuple, such as ``1," "``; it is optional in all other cases. A single expression without a " @@ -2130,24 +2132,24 @@ msgid "" "``()``.)" msgstr "" -#: reference/expressions.rst:1947 +#: reference/expressions.rst:1952 msgid "Evaluation order" msgstr "" -#: reference/expressions.rst:1951 +#: reference/expressions.rst:1956 msgid "" "Python evaluates expressions from left to right. Notice that while " "evaluating an assignment, the right-hand side is evaluated before the left-" "hand side." msgstr "" -#: reference/expressions.rst:1954 +#: reference/expressions.rst:1959 msgid "" "In the following lines, expressions will be evaluated in the arithmetic " "order of their suffixes::" msgstr "" -#: reference/expressions.rst:1957 +#: reference/expressions.rst:1962 msgid "" "expr1, expr2, expr3, expr4\n" "(expr1, expr2, expr3, expr4)\n" @@ -2157,11 +2159,11 @@ msgid "" "expr3, expr4 = expr1, expr2" msgstr "" -#: reference/expressions.rst:1968 +#: reference/expressions.rst:1973 msgid "Operator precedence" msgstr "" -#: reference/expressions.rst:1973 +#: reference/expressions.rst:1978 msgid "" "The following table summarizes the operator precedence in Python, from " "highest precedence (most binding) to lowest precedence (least binding). " @@ -2171,176 +2173,176 @@ msgid "" "group from right to left)." msgstr "" -#: reference/expressions.rst:1979 +#: reference/expressions.rst:1984 msgid "" "Note that comparisons, membership tests, and identity tests, all have the " "same precedence and have a left-to-right chaining feature as described in " "the :ref:`comparisons` section." msgstr "" -#: reference/expressions.rst:1985 +#: reference/expressions.rst:1990 msgid "Operator" msgstr "" -#: reference/expressions.rst:1985 +#: reference/expressions.rst:1990 msgid "Description" msgstr "" -#: reference/expressions.rst:1987 +#: reference/expressions.rst:1992 msgid "``(expressions...)``," msgstr "" -#: reference/expressions.rst:1989 +#: reference/expressions.rst:1994 msgid "``[expressions...]``, ``{key: value...}``, ``{expressions...}``" msgstr "" -#: reference/expressions.rst:1987 +#: reference/expressions.rst:1992 msgid "" "Binding or parenthesized expression, list display, dictionary display, set " "display" msgstr "" -#: reference/expressions.rst:1993 +#: reference/expressions.rst:1998 msgid "``x[index]``, ``x[index:index]``, ``x(arguments...)``, ``x.attribute``" msgstr "" -#: reference/expressions.rst:1993 +#: reference/expressions.rst:1998 msgid "Subscription, slicing, call, attribute reference" msgstr "" -#: reference/expressions.rst:1996 +#: reference/expressions.rst:2001 msgid ":keyword:`await x <await>`" msgstr "" -#: reference/expressions.rst:1998 +#: reference/expressions.rst:2003 msgid "``**``" msgstr "" -#: reference/expressions.rst:1998 +#: reference/expressions.rst:2003 msgid "Exponentiation [#]_" msgstr "" -#: reference/expressions.rst:2000 +#: reference/expressions.rst:2005 msgid "``+x``, ``-x``, ``~x``" msgstr "" -#: reference/expressions.rst:2000 +#: reference/expressions.rst:2005 msgid "Positive, negative, bitwise NOT" msgstr "" -#: reference/expressions.rst:2002 +#: reference/expressions.rst:2007 msgid "``*``, ``@``, ``/``, ``//``, ``%``" msgstr "" -#: reference/expressions.rst:2002 +#: reference/expressions.rst:2007 msgid "" "Multiplication, matrix multiplication, division, floor division, remainder " "[#]_" msgstr "" -#: reference/expressions.rst:2006 +#: reference/expressions.rst:2011 msgid "``+``, ``-``" msgstr "" -#: reference/expressions.rst:2006 +#: reference/expressions.rst:2011 msgid "Addition and subtraction" msgstr "" -#: reference/expressions.rst:2008 +#: reference/expressions.rst:2013 msgid "``<<``, ``>>``" msgstr "" -#: reference/expressions.rst:2008 +#: reference/expressions.rst:2013 msgid "Shifts" msgstr "" -#: reference/expressions.rst:2010 +#: reference/expressions.rst:2015 msgid "``&``" msgstr "" -#: reference/expressions.rst:2010 +#: reference/expressions.rst:2015 msgid "Bitwise AND" msgstr "" -#: reference/expressions.rst:2012 +#: reference/expressions.rst:2017 msgid "``^``" msgstr "" -#: reference/expressions.rst:2012 +#: reference/expressions.rst:2017 msgid "Bitwise XOR" msgstr "" -#: reference/expressions.rst:2014 +#: reference/expressions.rst:2019 msgid "``|``" msgstr "" -#: reference/expressions.rst:2014 +#: reference/expressions.rst:2019 msgid "Bitwise OR" msgstr "" -#: reference/expressions.rst:2016 +#: reference/expressions.rst:2021 msgid "" ":keyword:`in`, :keyword:`not in`, :keyword:`is`, :keyword:`is not`, ``<``, " "``<=``, ``>``, ``>=``, ``!=``, ``==``" msgstr "" -#: reference/expressions.rst:2016 +#: reference/expressions.rst:2021 msgid "Comparisons, including membership tests and identity tests" msgstr "" -#: reference/expressions.rst:2020 +#: reference/expressions.rst:2025 msgid ":keyword:`not x <not>`" msgstr "" -#: reference/expressions.rst:2020 +#: reference/expressions.rst:2025 msgid "Boolean NOT" msgstr "" -#: reference/expressions.rst:2022 +#: reference/expressions.rst:2027 msgid ":keyword:`and`" msgstr "" -#: reference/expressions.rst:2022 +#: reference/expressions.rst:2027 msgid "Boolean AND" msgstr "" -#: reference/expressions.rst:2024 +#: reference/expressions.rst:2029 msgid ":keyword:`or`" msgstr "" -#: reference/expressions.rst:2024 +#: reference/expressions.rst:2029 msgid "Boolean OR" msgstr "" -#: reference/expressions.rst:2026 +#: reference/expressions.rst:2031 msgid ":keyword:`if <if_expr>` -- :keyword:`!else`" msgstr "" -#: reference/expressions.rst:2026 +#: reference/expressions.rst:2031 msgid "Conditional expression" msgstr "" -#: reference/expressions.rst:2028 +#: reference/expressions.rst:2033 msgid ":keyword:`lambda`" msgstr "" -#: reference/expressions.rst:2028 +#: reference/expressions.rst:2033 msgid "Lambda expression" msgstr "" -#: reference/expressions.rst:2030 +#: reference/expressions.rst:2035 msgid "``:=``" msgstr "" -#: reference/expressions.rst:2030 +#: reference/expressions.rst:2035 msgid "Assignment expression" msgstr "" -#: reference/expressions.rst:2035 +#: reference/expressions.rst:2040 msgid "Footnotes" msgstr "" -#: reference/expressions.rst:2036 +#: reference/expressions.rst:2041 msgid "" "While ``abs(x%y) < abs(y)`` is true mathematically, for floats it may not be " "true numerically due to roundoff. For example, and assuming a platform on " @@ -2352,7 +2354,7 @@ msgid "" "approach is more appropriate depends on the application." msgstr "" -#: reference/expressions.rst:2045 +#: reference/expressions.rst:2050 msgid "" "If x is very close to an exact integer multiple of y, it's possible for ``x//" "y`` to be one larger than ``(x-x%y)//y`` due to rounding. In such cases, " @@ -2360,7 +2362,7 @@ msgid "" "* y + x % y`` be very close to ``x``." msgstr "" -#: reference/expressions.rst:2050 +#: reference/expressions.rst:2055 msgid "" "The Unicode standard distinguishes between :dfn:`code points` (e.g. U+0041) " "and :dfn:`abstract characters` (e.g. \"LATIN CAPITAL LETTER A\"). While most " @@ -2374,7 +2376,7 @@ msgid "" "(COMBINING CEDILLA)." msgstr "" -#: reference/expressions.rst:2061 +#: reference/expressions.rst:2066 msgid "" "The comparison operators on strings compare at the level of Unicode code " "points. This may be counter-intuitive to humans. For example, ``\"\\u00C7\" " @@ -2382,13 +2384,13 @@ msgid "" "same abstract character \"LATIN CAPITAL LETTER C WITH CEDILLA\"." msgstr "" -#: reference/expressions.rst:2066 +#: reference/expressions.rst:2071 msgid "" "To compare strings at the level of abstract characters (that is, in a way " "intuitive to humans), use :func:`unicodedata.normalize`." msgstr "" -#: reference/expressions.rst:2069 +#: reference/expressions.rst:2074 msgid "" "Due to automatic garbage-collection, free lists, and the dynamic nature of " "descriptors, you may notice seemingly unusual behaviour in certain uses of " @@ -2396,20 +2398,20 @@ msgid "" "instance methods, or constants. Check their documentation for more info." msgstr "" -#: reference/expressions.rst:2074 +#: reference/expressions.rst:2079 msgid "" "The power operator ``**`` binds less tightly than an arithmetic or bitwise " "unary operator on its right, that is, ``2**-1`` is ``0.5``." msgstr "" -#: reference/expressions.rst:2077 +#: reference/expressions.rst:2082 msgid "" "The ``%`` operator is also used for string formatting; the same precedence " "applies." msgstr "" -#: reference/expressions.rst:393 reference/expressions.rst:1758 -#: reference/expressions.rst:1872 reference/expressions.rst:1900 +#: reference/expressions.rst:393 reference/expressions.rst:1763 +#: reference/expressions.rst:1877 reference/expressions.rst:1905 msgid "expression" msgstr "" @@ -2417,7 +2419,7 @@ msgstr "" msgid "BNF" msgstr "" -#: reference/expressions.rst:1250 reference/expressions.rst:1298 +#: reference/expressions.rst:1255 reference/expressions.rst:1303 msgid "arithmetic" msgstr "" @@ -2438,8 +2440,8 @@ msgid "identifier" msgstr "" #: reference/expressions.rst:569 reference/expressions.rst:746 -#: reference/expressions.rst:844 reference/expressions.rst:1336 -#: reference/expressions.rst:1432 +#: reference/expressions.rst:848 reference/expressions.rst:1341 +#: reference/expressions.rst:1437 msgid "exception" msgstr "" @@ -2477,9 +2479,9 @@ msgstr "" #: reference/expressions.rst:275 reference/expressions.rst:329 #: reference/expressions.rst:393 reference/expressions.rst:736 -#: reference/expressions.rst:873 reference/expressions.rst:994 -#: reference/expressions.rst:1155 reference/expressions.rst:1176 -#: reference/expressions.rst:1912 +#: reference/expressions.rst:877 reference/expressions.rst:998 +#: reference/expressions.rst:1160 reference/expressions.rst:1181 +#: reference/expressions.rst:1917 msgid "object" msgstr "" @@ -2487,7 +2489,7 @@ msgstr "" msgid "parenthesized form" msgstr "" -#: reference/expressions.rst:393 reference/expressions.rst:994 +#: reference/expressions.rst:393 reference/expressions.rst:998 msgid "() (parentheses)" msgstr "" @@ -2499,16 +2501,16 @@ msgstr "" msgid "empty" msgstr "" -#: reference/expressions.rst:873 reference/expressions.rst:1912 +#: reference/expressions.rst:877 reference/expressions.rst:1917 msgid "tuple" msgstr "" -#: reference/expressions.rst:1934 +#: reference/expressions.rst:1939 msgid "comma" msgstr "" #: reference/expressions.rst:275 reference/expressions.rst:329 -#: reference/expressions.rst:994 reference/expressions.rst:1900 +#: reference/expressions.rst:998 reference/expressions.rst:1905 msgid ", (comma)" msgstr "" @@ -2524,7 +2526,7 @@ msgstr "" msgid "in comprehensions" msgstr "" -#: reference/expressions.rst:1846 +#: reference/expressions.rst:1851 msgid "if" msgstr "" @@ -2532,12 +2534,12 @@ msgstr "" msgid "async for" msgstr "" -#: reference/expressions.rst:1194 +#: reference/expressions.rst:1199 msgid "await" msgstr "" -#: reference/expressions.rst:844 reference/expressions.rst:950 -#: reference/expressions.rst:1900 +#: reference/expressions.rst:848 reference/expressions.rst:954 +#: reference/expressions.rst:1905 msgid "list" msgstr "" @@ -2545,7 +2547,7 @@ msgstr "" msgid "display" msgstr "" -#: reference/expressions.rst:869 +#: reference/expressions.rst:873 msgid "[] (square brackets)" msgstr "" @@ -2553,7 +2555,7 @@ msgstr "" msgid "list expression" msgstr "" -#: reference/expressions.rst:301 reference/expressions.rst:1900 +#: reference/expressions.rst:301 reference/expressions.rst:1905 msgid "expression list" msgstr "" @@ -2569,7 +2571,7 @@ msgstr "" msgid "set expression" msgstr "" -#: reference/expressions.rst:355 reference/expressions.rst:873 +#: reference/expressions.rst:355 reference/expressions.rst:877 msgid "dictionary" msgstr "" @@ -2589,7 +2591,7 @@ msgstr "" msgid "dictionary expression" msgstr "" -#: reference/expressions.rst:944 reference/expressions.rst:1872 +#: reference/expressions.rst:948 reference/expressions.rst:1877 msgid ": (colon)" msgstr "" @@ -2601,11 +2603,11 @@ msgstr "" msgid "in dictionary displays" msgstr "" -#: reference/expressions.rst:1077 reference/expressions.rst:1919 +#: reference/expressions.rst:1081 reference/expressions.rst:1924 msgid "unpacking" msgstr "" -#: reference/expressions.rst:1107 reference/expressions.rst:1214 +#: reference/expressions.rst:1111 reference/expressions.rst:1219 msgid "**" msgstr "" @@ -2621,7 +2623,7 @@ msgstr "" msgid "generator expression" msgstr "" -#: reference/expressions.rst:1194 +#: reference/expressions.rst:1199 msgid "keyword" msgstr "" @@ -2633,7 +2635,7 @@ msgstr "" msgid "from" msgstr "" -#: reference/expressions.rst:1142 reference/expressions.rst:1872 +#: reference/expressions.rst:1146 reference/expressions.rst:1877 msgid "function" msgstr "" @@ -2649,7 +2651,7 @@ msgstr "" msgid "StopIteration" msgstr "" -#: reference/expressions.rst:798 +#: reference/expressions.rst:801 msgid "GeneratorExit" msgstr "" @@ -2665,470 +2667,470 @@ msgstr "" msgid "StopAsyncIteration" msgstr "" -#: reference/expressions.rst:821 +#: reference/expressions.rst:825 msgid "primary" msgstr "" -#: reference/expressions.rst:835 +#: reference/expressions.rst:839 msgid "attribute" msgstr "" -#: reference/expressions.rst:835 +#: reference/expressions.rst:839 msgid "reference" msgstr "" -#: reference/expressions.rst:835 +#: reference/expressions.rst:839 msgid ". (dot)" msgstr "" -#: reference/expressions.rst:835 +#: reference/expressions.rst:839 msgid "attribute reference" msgstr "" -#: reference/expressions.rst:844 +#: reference/expressions.rst:848 msgid "AttributeError" msgstr "" -#: reference/expressions.rst:844 +#: reference/expressions.rst:848 msgid "module" msgstr "" -#: reference/expressions.rst:869 +#: reference/expressions.rst:873 msgid "subscription" msgstr "" -#: reference/expressions.rst:950 reference/expressions.rst:1723 +#: reference/expressions.rst:954 reference/expressions.rst:1728 msgid "sequence" msgstr "" -#: reference/expressions.rst:873 +#: reference/expressions.rst:877 msgid "mapping" msgstr "" -#: reference/expressions.rst:930 reference/expressions.rst:950 +#: reference/expressions.rst:934 reference/expressions.rst:954 msgid "string" msgstr "" -#: reference/expressions.rst:930 +#: reference/expressions.rst:934 msgid "item" msgstr "" -#: reference/expressions.rst:930 +#: reference/expressions.rst:934 msgid "character" msgstr "" -#: reference/expressions.rst:944 +#: reference/expressions.rst:948 msgid "slicing" msgstr "" -#: reference/expressions.rst:944 +#: reference/expressions.rst:948 msgid "slice" msgstr "" -#: reference/expressions.rst:976 +#: reference/expressions.rst:980 msgid "start (slice object attribute)" msgstr "" -#: reference/expressions.rst:976 +#: reference/expressions.rst:980 msgid "stop (slice object attribute)" msgstr "" -#: reference/expressions.rst:976 +#: reference/expressions.rst:980 msgid "step (slice object attribute)" msgstr "" -#: reference/expressions.rst:994 +#: reference/expressions.rst:998 msgid "callable" msgstr "" -#: reference/expressions.rst:1142 reference/expressions.rst:1169 -#: reference/expressions.rst:1186 +#: reference/expressions.rst:1146 reference/expressions.rst:1174 +#: reference/expressions.rst:1191 msgid "call" msgstr "" -#: reference/expressions.rst:994 +#: reference/expressions.rst:998 msgid "argument" msgstr "" -#: reference/expressions.rst:1027 +#: reference/expressions.rst:1031 msgid "call semantics" msgstr "" -#: reference/expressions.rst:994 +#: reference/expressions.rst:998 msgid "argument list" msgstr "" -#: reference/expressions.rst:994 +#: reference/expressions.rst:998 msgid "= (equals)" msgstr "" -#: reference/expressions.rst:1077 reference/expressions.rst:1107 +#: reference/expressions.rst:1081 reference/expressions.rst:1111 msgid "in function calls" msgstr "" -#: reference/expressions.rst:1027 +#: reference/expressions.rst:1031 msgid "parameter" msgstr "" -#: reference/expressions.rst:1311 reference/expressions.rst:1919 +#: reference/expressions.rst:1316 reference/expressions.rst:1924 msgid "* (asterisk)" msgstr "" -#: reference/expressions.rst:1142 +#: reference/expressions.rst:1146 msgid "user-defined" msgstr "" -#: reference/expressions.rst:1142 +#: reference/expressions.rst:1146 msgid "user-defined function" msgstr "" -#: reference/expressions.rst:1155 +#: reference/expressions.rst:1160 msgid "built-in function" msgstr "" -#: reference/expressions.rst:1155 +#: reference/expressions.rst:1160 msgid "method" msgstr "" -#: reference/expressions.rst:1155 +#: reference/expressions.rst:1160 msgid "built-in method" msgstr "" -#: reference/expressions.rst:1169 +#: reference/expressions.rst:1174 msgid "class" msgstr "" -#: reference/expressions.rst:1169 +#: reference/expressions.rst:1174 msgid "class object" msgstr "" -#: reference/expressions.rst:1176 +#: reference/expressions.rst:1181 msgid "class instance" msgstr "" -#: reference/expressions.rst:1186 +#: reference/expressions.rst:1191 msgid "instance" msgstr "" -#: reference/expressions.rst:1186 +#: reference/expressions.rst:1191 msgid "__call__() (object method)" msgstr "" -#: reference/expressions.rst:1214 +#: reference/expressions.rst:1219 msgid "power" msgstr "" -#: reference/expressions.rst:1250 reference/expressions.rst:1414 -#: reference/expressions.rst:1758 +#: reference/expressions.rst:1255 reference/expressions.rst:1419 +#: reference/expressions.rst:1763 msgid "operation" msgstr "" -#: reference/expressions.rst:1259 reference/expressions.rst:1276 -#: reference/expressions.rst:1324 reference/expressions.rst:1354 -#: reference/expressions.rst:1397 reference/expressions.rst:1452 -#: reference/expressions.rst:1469 reference/expressions.rst:1723 -#: reference/expressions.rst:1774 reference/expressions.rst:1784 -#: reference/expressions.rst:1970 +#: reference/expressions.rst:1264 reference/expressions.rst:1281 +#: reference/expressions.rst:1329 reference/expressions.rst:1359 +#: reference/expressions.rst:1402 reference/expressions.rst:1457 +#: reference/expressions.rst:1474 reference/expressions.rst:1728 +#: reference/expressions.rst:1779 reference/expressions.rst:1789 +#: reference/expressions.rst:1975 msgid "operator" msgstr "" -#: reference/expressions.rst:1250 +#: reference/expressions.rst:1255 msgid "unary" msgstr "" -#: reference/expressions.rst:1443 reference/expressions.rst:1460 -#: reference/expressions.rst:1469 +#: reference/expressions.rst:1448 reference/expressions.rst:1465 +#: reference/expressions.rst:1474 msgid "bitwise" msgstr "" -#: reference/expressions.rst:1259 +#: reference/expressions.rst:1264 msgid "negation" msgstr "" -#: reference/expressions.rst:1259 +#: reference/expressions.rst:1264 msgid "minus" msgstr "" -#: reference/expressions.rst:1397 +#: reference/expressions.rst:1402 msgid "- (minus)" msgstr "" -#: reference/expressions.rst:1268 +#: reference/expressions.rst:1273 msgid "unary operator" msgstr "" -#: reference/expressions.rst:1268 +#: reference/expressions.rst:1273 msgid "plus" msgstr "" -#: reference/expressions.rst:1384 +#: reference/expressions.rst:1389 msgid "+ (plus)" msgstr "" -#: reference/expressions.rst:1276 +#: reference/expressions.rst:1281 msgid "inversion" msgstr "" -#: reference/expressions.rst:1276 +#: reference/expressions.rst:1281 msgid "~ (tilde)" msgstr "" -#: reference/expressions.rst:1287 +#: reference/expressions.rst:1292 msgid "TypeError" msgstr "" -#: reference/expressions.rst:1443 +#: reference/expressions.rst:1448 msgid "binary" msgstr "" -#: reference/expressions.rst:1311 +#: reference/expressions.rst:1316 msgid "multiplication" msgstr "" -#: reference/expressions.rst:1324 +#: reference/expressions.rst:1329 msgid "matrix multiplication" msgstr "" -#: reference/expressions.rst:1324 +#: reference/expressions.rst:1329 msgid "@ (at)" msgstr "" -#: reference/expressions.rst:1336 +#: reference/expressions.rst:1341 msgid "ZeroDivisionError" msgstr "" -#: reference/expressions.rst:1336 +#: reference/expressions.rst:1341 msgid "division" msgstr "" -#: reference/expressions.rst:1336 +#: reference/expressions.rst:1341 msgid "/ (slash)" msgstr "" -#: reference/expressions.rst:1336 +#: reference/expressions.rst:1341 msgid "//" msgstr "" -#: reference/expressions.rst:1354 +#: reference/expressions.rst:1359 msgid "modulo" msgstr "" -#: reference/expressions.rst:1354 +#: reference/expressions.rst:1359 msgid "% (percent)" msgstr "" -#: reference/expressions.rst:1384 +#: reference/expressions.rst:1389 msgid "addition" msgstr "" -#: reference/expressions.rst:1397 +#: reference/expressions.rst:1402 msgid "binary operator" msgstr "" -#: reference/expressions.rst:1397 +#: reference/expressions.rst:1402 msgid "subtraction" msgstr "" -#: reference/expressions.rst:1414 +#: reference/expressions.rst:1419 msgid "shifting" msgstr "" -#: reference/expressions.rst:1414 +#: reference/expressions.rst:1419 msgid "<<" msgstr "" -#: reference/expressions.rst:1414 +#: reference/expressions.rst:1419 msgid ">>" msgstr "" -#: reference/expressions.rst:1432 +#: reference/expressions.rst:1437 msgid "ValueError" msgstr "" -#: reference/expressions.rst:1779 +#: reference/expressions.rst:1784 msgid "and" msgstr "" -#: reference/expressions.rst:1452 +#: reference/expressions.rst:1457 msgid "& (ampersand)" msgstr "" -#: reference/expressions.rst:1460 +#: reference/expressions.rst:1465 msgid "xor" msgstr "" -#: reference/expressions.rst:1460 +#: reference/expressions.rst:1465 msgid "exclusive" msgstr "" -#: reference/expressions.rst:1469 reference/expressions.rst:1784 +#: reference/expressions.rst:1474 reference/expressions.rst:1789 msgid "or" msgstr "" -#: reference/expressions.rst:1460 +#: reference/expressions.rst:1465 msgid "^ (caret)" msgstr "" -#: reference/expressions.rst:1469 +#: reference/expressions.rst:1474 msgid "inclusive" msgstr "" -#: reference/expressions.rst:1469 +#: reference/expressions.rst:1474 msgid "| (vertical bar)" msgstr "" -#: reference/expressions.rst:1484 +#: reference/expressions.rst:1489 msgid "comparison" msgstr "" -#: reference/expressions.rst:1484 +#: reference/expressions.rst:1489 msgid "C" msgstr "" -#: reference/expressions.rst:1484 +#: reference/expressions.rst:1489 msgid "language" msgstr "" -#: reference/expressions.rst:1484 +#: reference/expressions.rst:1489 msgid "< (less)" msgstr "" -#: reference/expressions.rst:1484 +#: reference/expressions.rst:1489 msgid "> (greater)" msgstr "" -#: reference/expressions.rst:1484 +#: reference/expressions.rst:1489 msgid "<=" msgstr "" -#: reference/expressions.rst:1484 +#: reference/expressions.rst:1489 msgid ">=" msgstr "" -#: reference/expressions.rst:1484 +#: reference/expressions.rst:1489 msgid "==" msgstr "" -#: reference/expressions.rst:1484 +#: reference/expressions.rst:1489 msgid "!=" msgstr "" -#: reference/expressions.rst:1508 +#: reference/expressions.rst:1513 msgid "chaining" msgstr "" -#: reference/expressions.rst:1508 +#: reference/expressions.rst:1513 msgid "comparisons" msgstr "" -#: reference/expressions.rst:1723 +#: reference/expressions.rst:1728 msgid "in" msgstr "" -#: reference/expressions.rst:1723 +#: reference/expressions.rst:1728 msgid "not in" msgstr "" -#: reference/expressions.rst:1723 +#: reference/expressions.rst:1728 msgid "membership" msgstr "" -#: reference/expressions.rst:1732 +#: reference/expressions.rst:1737 msgid "test" msgstr "" -#: reference/expressions.rst:1732 +#: reference/expressions.rst:1737 msgid "is" msgstr "" -#: reference/expressions.rst:1732 +#: reference/expressions.rst:1737 msgid "is not" msgstr "" -#: reference/expressions.rst:1732 +#: reference/expressions.rst:1737 msgid "identity" msgstr "" -#: reference/expressions.rst:1758 +#: reference/expressions.rst:1763 msgid "Conditional" msgstr "" -#: reference/expressions.rst:1758 +#: reference/expressions.rst:1763 msgid "Boolean" msgstr "" -#: reference/expressions.rst:1774 +#: reference/expressions.rst:1779 msgid "not" msgstr "" -#: reference/expressions.rst:1798 +#: reference/expressions.rst:1803 msgid ":= (colon equals)" msgstr "" -#: reference/expressions.rst:1798 +#: reference/expressions.rst:1803 msgid "assignment expression" msgstr "" -#: reference/expressions.rst:1798 +#: reference/expressions.rst:1803 msgid "walrus operator" msgstr "" -#: reference/expressions.rst:1798 +#: reference/expressions.rst:1803 msgid "named expression" msgstr "" -#: reference/expressions.rst:1846 +#: reference/expressions.rst:1851 msgid "conditional" msgstr "" -#: reference/expressions.rst:1846 +#: reference/expressions.rst:1851 msgid "ternary" msgstr "" -#: reference/expressions.rst:1846 +#: reference/expressions.rst:1851 msgid "conditional expression" msgstr "" -#: reference/expressions.rst:1846 +#: reference/expressions.rst:1851 msgid "else" msgstr "" -#: reference/expressions.rst:1872 +#: reference/expressions.rst:1877 msgid "lambda" msgstr "" -#: reference/expressions.rst:1872 +#: reference/expressions.rst:1877 msgid "form" msgstr "" -#: reference/expressions.rst:1872 +#: reference/expressions.rst:1877 msgid "anonymous" msgstr "" -#: reference/expressions.rst:1872 +#: reference/expressions.rst:1877 msgid "lambda expression" msgstr "" -#: reference/expressions.rst:1919 +#: reference/expressions.rst:1924 msgid "iterable" msgstr "" -#: reference/expressions.rst:1919 +#: reference/expressions.rst:1924 msgid "in expression lists" msgstr "" -#: reference/expressions.rst:1934 +#: reference/expressions.rst:1939 msgid "trailing" msgstr "" -#: reference/expressions.rst:1949 +#: reference/expressions.rst:1954 msgid "evaluation" msgstr "" -#: reference/expressions.rst:1949 +#: reference/expressions.rst:1954 msgid "order" msgstr "" -#: reference/expressions.rst:1970 +#: reference/expressions.rst:1975 msgid "precedence" msgstr "" diff --git a/reference/grammar.po b/reference/grammar.po index 7289b9105..973f9ed06 100644 --- a/reference/grammar.po +++ b/reference/grammar.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -279,8 +279,8 @@ msgid "" "import_from[stmt_ty]:\n" " | 'from' a=('.' | '...')* b=dotted_name 'import' c=import_from_targets " "{\n" -" _PyAST_ImportFrom(b->v.Name.id, c, _PyPegen_seq_count_dots(a), " -"EXTRA) }\n" +" _PyPegen_checked_future_import(p, b->v.Name.id, c, " +"_PyPegen_seq_count_dots(a), EXTRA) }\n" " | 'from' a=('.' | '...')+ 'import' b=import_from_targets {\n" " _PyAST_ImportFrom(NULL, b, _PyPegen_seq_count_dots(a), EXTRA) }\n" "import_from_targets[asdl_alias_seq*]:\n" diff --git a/reference/import.po b/reference/import.po index ed9c9f434..9162c8587 100644 --- a/reference/import.po +++ b/reference/import.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -172,11 +172,11 @@ msgid "" "__init__.py`` respectively." msgstr "" -#: reference/import.rst:127 +#: reference/import.rst:129 msgid "Namespace packages" msgstr "" -#: reference/import.rst:133 +#: reference/import.rst:135 msgid "" "A namespace package is a composite of various :term:`portions <portion>`, " "where each portion contributes a subpackage to the parent package. Portions " @@ -187,7 +187,7 @@ msgid "" "concrete representation." msgstr "" -#: reference/import.rst:141 +#: reference/import.rst:143 msgid "" "Namespace packages do not use an ordinary list for their ``__path__`` " "attribute. They instead use a custom iterable type which will automatically " @@ -196,7 +196,7 @@ msgid "" "top level package) changes." msgstr "" -#: reference/import.rst:147 +#: reference/import.rst:149 msgid "" "With namespace packages, there is no ``parent/__init__.py`` file. In fact, " "there may be multiple ``parent`` directories found during import search, " @@ -206,15 +206,15 @@ msgid "" "or one of its subpackages is imported." msgstr "" -#: reference/import.rst:154 +#: reference/import.rst:156 msgid "See also :pep:`420` for the namespace package specification." msgstr "" -#: reference/import.rst:158 +#: reference/import.rst:160 msgid "Searching" msgstr "" -#: reference/import.rst:160 +#: reference/import.rst:162 msgid "" "To begin the search, Python needs the :term:`fully qualified <qualified " "name>` name of the module (or package, but for the purposes of this " @@ -224,7 +224,7 @@ msgid "" "functions." msgstr "" -#: reference/import.rst:166 +#: reference/import.rst:168 msgid "" "This name will be used in various phases of the import search, and it may be " "the dotted path to a submodule, e.g. ``foo.bar.baz``. In this case, Python " @@ -233,11 +233,11 @@ msgid "" "is raised." msgstr "" -#: reference/import.rst:173 +#: reference/import.rst:175 msgid "The module cache" msgstr "" -#: reference/import.rst:178 +#: reference/import.rst:180 msgid "" "The first place checked during import search is :data:`sys.modules`. This " "mapping serves as a cache of all modules that have been previously imported, " @@ -247,7 +247,7 @@ msgid "" "module object." msgstr "" -#: reference/import.rst:185 +#: reference/import.rst:187 msgid "" "During import, the module name is looked up in :data:`sys.modules` and if " "present, the associated value is the module satisfying the import, and the " @@ -256,7 +256,7 @@ msgid "" "continue searching for the module." msgstr "" -#: reference/import.rst:191 +#: reference/import.rst:193 msgid "" ":data:`sys.modules` is writable. Deleting a key may not destroy the " "associated module (as other modules may hold references to it), but it will " @@ -266,7 +266,7 @@ msgid "" "`ModuleNotFoundError`." msgstr "" -#: reference/import.rst:198 +#: reference/import.rst:200 msgid "" "Beware though, as if you keep a reference to the module object, invalidate " "its cache entry in :data:`sys.modules`, and then re-import the named module, " @@ -275,11 +275,11 @@ msgid "" "module contents by rerunning the module's code." msgstr "" -#: reference/import.rst:208 +#: reference/import.rst:210 msgid "Finders and loaders" msgstr "" -#: reference/import.rst:215 +#: reference/import.rst:217 msgid "" "If the named module is not found in :data:`sys.modules`, then Python's " "import protocol is invoked to find and load the module. This protocol " @@ -291,7 +291,7 @@ msgid "" "module." msgstr "" -#: reference/import.rst:223 +#: reference/import.rst:225 msgid "" "Python includes a number of default finders and importers. The first one " "knows how to locate built-in modules, and the second knows how to locate " @@ -301,13 +301,13 @@ msgid "" "locatable resource, such as those identified by URLs." msgstr "" -#: reference/import.rst:230 +#: reference/import.rst:232 msgid "" "The import machinery is extensible, so new finders can be added to extend " "the range and scope of module searching." msgstr "" -#: reference/import.rst:233 +#: reference/import.rst:235 msgid "" "Finders do not actually load modules. If they can find the named module, " "they return a :dfn:`module spec`, an encapsulation of the module's import-" @@ -315,32 +315,32 @@ msgid "" "module." msgstr "" -#: reference/import.rst:237 +#: reference/import.rst:239 msgid "" "The following sections describe the protocol for finders and loaders in more " "detail, including how you can create and register new ones to extend the " "import machinery." msgstr "" -#: reference/import.rst:241 +#: reference/import.rst:243 msgid "" "In previous versions of Python, finders returned :term:`loaders <loader>` " "directly, whereas now they return module specs which *contain* loaders. " "Loaders are still used during import but have fewer responsibilities." msgstr "" -#: reference/import.rst:247 +#: reference/import.rst:249 msgid "Import hooks" msgstr "" -#: reference/import.rst:257 +#: reference/import.rst:259 msgid "" "The import machinery is designed to be extensible; the primary mechanism for " "this are the *import hooks*. There are two types of import hooks: *meta " "hooks* and *import path hooks*." msgstr "" -#: reference/import.rst:261 +#: reference/import.rst:263 msgid "" "Meta hooks are called at the start of import processing, before any other " "import processing has occurred, other than :data:`sys.modules` cache look " @@ -349,7 +349,7 @@ msgid "" "finder objects to :data:`sys.meta_path`, as described below." msgstr "" -#: reference/import.rst:267 +#: reference/import.rst:269 msgid "" "Import path hooks are called as part of :data:`sys.path` (or ``package." "__path__``) processing, at the point where their associated path item is " @@ -357,11 +357,11 @@ msgid "" "data:`sys.path_hooks` as described below." msgstr "" -#: reference/import.rst:274 +#: reference/import.rst:276 msgid "The meta path" msgstr "" -#: reference/import.rst:280 +#: reference/import.rst:282 msgid "" "When the named module is not found in :data:`sys.modules`, Python next " "searches :data:`sys.meta_path`, which contains a list of meta path finder " @@ -373,7 +373,7 @@ msgid "" "named module or not." msgstr "" -#: reference/import.rst:289 +#: reference/import.rst:291 msgid "" "If the meta path finder knows how to handle the named module, it returns a " "spec object. If it cannot handle the named module, it returns ``None``. " @@ -382,7 +382,7 @@ msgid "" "exceptions raised are simply propagated up, aborting the import process." msgstr "" -#: reference/import.rst:295 +#: reference/import.rst:297 msgid "" "The :meth:`~importlib.abc.MetaPathFinder.find_spec` method of meta path " "finders is called with two or three arguments. The first is the fully " @@ -396,7 +396,7 @@ msgid "" "system passes in a target module only during reload." msgstr "" -#: reference/import.rst:306 +#: reference/import.rst:308 msgid "" "The meta path may be traversed multiple times for a single import request. " "For example, assuming none of the modules involved has already been cached, " @@ -408,14 +408,14 @@ msgid "" "will call ``mpf.find_spec(\"foo.bar.baz\", foo.bar.__path__, None)``." msgstr "" -#: reference/import.rst:316 +#: reference/import.rst:318 msgid "" "Some meta path finders only support top level imports. These importers will " "always return ``None`` when anything other than ``None`` is passed as the " "second argument." msgstr "" -#: reference/import.rst:320 +#: reference/import.rst:322 msgid "" "Python's default :data:`sys.meta_path` has three meta path finders, one that " "knows how to import built-in modules, one that knows how to import frozen " @@ -423,7 +423,7 @@ msgid "" "path` (i.e. the :term:`path based finder`)." msgstr "" -#: reference/import.rst:325 +#: reference/import.rst:327 msgid "" "The :meth:`~importlib.abc.MetaPathFinder.find_spec` method of meta path " "finders replaced :meth:`!find_module`, which is now deprecated. While it " @@ -432,30 +432,30 @@ msgid "" "find_spec`." msgstr "" -#: reference/import.rst:332 +#: reference/import.rst:334 msgid "" "Use of :meth:`!find_module` by the import system now raises :exc:" "`ImportWarning`." msgstr "" -#: reference/import.rst:336 +#: reference/import.rst:338 msgid "" ":meth:`!find_module` has been removed. Use :meth:`~importlib.abc." "MetaPathFinder.find_spec` instead." msgstr "" -#: reference/import.rst:342 +#: reference/import.rst:344 msgid "Loading" msgstr "" -#: reference/import.rst:344 +#: reference/import.rst:346 msgid "" "If and when a module spec is found, the import machinery will use it (and " "the loader it contains) when loading the module. Here is an approximation " "of what happens during the loading portion of import::" msgstr "" -#: reference/import.rst:348 +#: reference/import.rst:350 msgid "" "module = None\n" "if spec.loader is not None and hasattr(spec.loader, 'create_module'):\n" @@ -487,17 +487,17 @@ msgid "" "return sys.modules[spec.name]" msgstr "" -#: reference/import.rst:377 +#: reference/import.rst:379 msgid "Note the following details:" msgstr "" -#: reference/import.rst:379 +#: reference/import.rst:381 msgid "" "If there is an existing module object with the given name in :data:`sys." "modules`, import will have already returned it." msgstr "" -#: reference/import.rst:382 +#: reference/import.rst:384 msgid "" "The module will exist in :data:`sys.modules` before the loader executes the " "module code. This is crucial because the module code may (directly or " @@ -506,7 +506,7 @@ msgid "" "best." msgstr "" -#: reference/import.rst:388 +#: reference/import.rst:390 msgid "" "If loading fails, the failing module -- and only the failing module -- gets " "removed from :data:`sys.modules`. Any module already in the :data:`sys." @@ -515,7 +515,7 @@ msgid "" "the failing module is left in :data:`sys.modules`." msgstr "" -#: reference/import.rst:394 +#: reference/import.rst:396 msgid "" "After the module is created but before execution, the import machinery sets " "the import-related module attributes (\"_init_module_attrs\" in the pseudo-" @@ -523,31 +523,31 @@ msgid "" "attrs>`." msgstr "" -#: reference/import.rst:399 +#: reference/import.rst:401 msgid "" "Module execution is the key moment of loading in which the module's " "namespace gets populated. Execution is entirely delegated to the loader, " "which gets to decide what gets populated and how." msgstr "" -#: reference/import.rst:403 +#: reference/import.rst:405 msgid "" "The module created during loading and passed to exec_module() may not be the " "one returned at the end of import [#fnlo]_." msgstr "" -#: reference/import.rst:406 +#: reference/import.rst:408 msgid "" "The import system has taken over the boilerplate responsibilities of " "loaders. These were previously performed by the :meth:`importlib.abc.Loader." "load_module` method." msgstr "" -#: reference/import.rst:412 +#: reference/import.rst:414 msgid "Loaders" msgstr "" -#: reference/import.rst:414 +#: reference/import.rst:416 msgid "" "Module loaders provide the critical function of loading: module execution. " "The import machinery calls the :meth:`importlib.abc.Loader.exec_module` " @@ -555,32 +555,32 @@ msgid "" "returned from :meth:`~importlib.abc.Loader.exec_module` is ignored." msgstr "" -#: reference/import.rst:419 +#: reference/import.rst:421 msgid "Loaders must satisfy the following requirements:" msgstr "" -#: reference/import.rst:421 +#: reference/import.rst:423 msgid "" "If the module is a Python module (as opposed to a built-in module or a " "dynamically loaded extension), the loader should execute the module's code " "in the module's global name space (``module.__dict__``)." msgstr "" -#: reference/import.rst:425 +#: reference/import.rst:427 msgid "" "If the loader cannot execute the module, it should raise an :exc:" "`ImportError`, although any other exception raised during :meth:`~importlib." "abc.Loader.exec_module` will be propagated." msgstr "" -#: reference/import.rst:429 +#: reference/import.rst:431 msgid "" "In many cases, the finder and loader can be the same object; in such cases " "the :meth:`~importlib.abc.MetaPathFinder.find_spec` method would just return " "a spec with the loader set to ``self``." msgstr "" -#: reference/import.rst:433 +#: reference/import.rst:435 msgid "" "Module loaders may opt in to creating the module object during loading by " "implementing a :meth:`~importlib.abc.Loader.create_module` method. It takes " @@ -590,18 +590,18 @@ msgid "" "will create the new module itself." msgstr "" -#: reference/import.rst:440 +#: reference/import.rst:442 msgid "The :meth:`~importlib.abc.Loader.create_module` method of loaders." msgstr "" -#: reference/import.rst:443 +#: reference/import.rst:445 msgid "" "The :meth:`~importlib.abc.Loader.load_module` method was replaced by :meth:" "`~importlib.abc.Loader.exec_module` and the import machinery assumed all the " "boilerplate responsibilities of loading." msgstr "" -#: reference/import.rst:448 +#: reference/import.rst:450 msgid "" "For compatibility with existing loaders, the import machinery will use the " "``load_module()`` method of loaders if it exists and the loader does not " @@ -609,14 +609,14 @@ msgid "" "deprecated and loaders should implement ``exec_module()`` instead." msgstr "" -#: reference/import.rst:453 +#: reference/import.rst:455 msgid "" "The ``load_module()`` method must implement all the boilerplate loading " "functionality described above in addition to executing the module. All the " "same constraints apply, with some additional clarification:" msgstr "" -#: reference/import.rst:457 +#: reference/import.rst:459 msgid "" "If there is an existing module object with the given name in :data:`sys." "modules`, the loader must use that existing module. (Otherwise, :func:" @@ -625,40 +625,40 @@ msgid "" "add it to :data:`sys.modules`." msgstr "" -#: reference/import.rst:463 +#: reference/import.rst:465 msgid "" "The module *must* exist in :data:`sys.modules` before the loader executes " "the module code, to prevent unbounded recursion or multiple loading." msgstr "" -#: reference/import.rst:467 +#: reference/import.rst:469 msgid "" "If loading fails, the loader must remove any modules it has inserted into :" "data:`sys.modules`, but it must remove **only** the failing module(s), and " "only if the loader itself has loaded the module(s) explicitly." msgstr "" -#: reference/import.rst:472 +#: reference/import.rst:474 msgid "" "A :exc:`DeprecationWarning` is raised when ``exec_module()`` is defined but " "``create_module()`` is not." msgstr "" -#: reference/import.rst:476 +#: reference/import.rst:478 msgid "" "An :exc:`ImportError` is raised when ``exec_module()`` is defined but " "``create_module()`` is not." msgstr "" -#: reference/import.rst:480 +#: reference/import.rst:482 msgid "Use of ``load_module()`` will raise :exc:`ImportWarning`." msgstr "" -#: reference/import.rst:484 +#: reference/import.rst:486 msgid "Submodules" msgstr "" -#: reference/import.rst:486 +#: reference/import.rst:488 msgid "" "When a submodule is loaded using any mechanism (e.g. ``importlib`` APIs, the " "``import`` or ``import-from`` statements, or built-in ``__import__()``) a " @@ -668,28 +668,28 @@ msgid "" "submodule. Let's say you have the following directory structure::" msgstr "" -#: reference/import.rst:493 +#: reference/import.rst:495 msgid "" "spam/\n" " __init__.py\n" " foo.py" msgstr "" -#: reference/import.rst:497 +#: reference/import.rst:499 msgid "and ``spam/__init__.py`` has the following line in it::" msgstr "" -#: reference/import.rst:499 +#: reference/import.rst:501 msgid "from .foo import Foo" msgstr "" -#: reference/import.rst:501 +#: reference/import.rst:503 msgid "" "then executing the following puts name bindings for ``foo`` and ``Foo`` in " "the ``spam`` module::" msgstr "" -#: reference/import.rst:504 +#: reference/import.rst:506 msgid "" ">>> import spam\n" ">>> spam.foo\n" @@ -698,7 +698,7 @@ msgid "" "<class 'spam.foo.Foo'>" msgstr "" -#: reference/import.rst:510 +#: reference/import.rst:512 msgid "" "Given Python's familiar name binding rules this might seem surprising, but " "it's actually a fundamental feature of the import system. The invariant " @@ -707,11 +707,11 @@ msgid "" "``foo`` attribute of the former." msgstr "" -#: reference/import.rst:519 +#: reference/import.rst:521 msgid "Module specs" msgstr "" -#: reference/import.rst:521 +#: reference/import.rst:523 msgid "" "The import machinery uses a variety of information about each module during " "import, especially before loading. Most of the information is common to all " @@ -719,7 +719,7 @@ msgid "" "related information on a per-module basis." msgstr "" -#: reference/import.rst:526 +#: reference/import.rst:528 msgid "" "Using a spec during import allows state to be transferred between import " "system components, e.g. between the finder that creates the module spec and " @@ -728,7 +728,7 @@ msgid "" "a module spec the loader had that responsibility." msgstr "" -#: reference/import.rst:532 +#: reference/import.rst:534 msgid "" "The module's spec is exposed as :attr:`module.__spec__`. Setting :attr:`!" "__spec__` appropriately applies equally to :ref:`modules initialized during " @@ -736,17 +736,17 @@ msgid "" "attr:`!__spec__` is :ref:`set to None in some cases <main_spec>`." msgstr "" -#: reference/import.rst:538 +#: reference/import.rst:540 msgid "" "See :class:`~importlib.machinery.ModuleSpec` for details on the contents of " "the module spec." msgstr "" -#: reference/import.rst:546 +#: reference/import.rst:548 msgid "__path__ attributes on modules" msgstr "" -#: reference/import.rst:548 +#: reference/import.rst:550 msgid "" "The :attr:`~module.__path__` attribute should be a (possibly empty) :term:" "`sequence` of strings enumerating the locations where the package's " @@ -754,7 +754,7 @@ msgid "" "attribute, it is a :term:`package`." msgstr "" -#: reference/import.rst:553 +#: reference/import.rst:555 msgid "" "A package's :attr:`~module.__path__` attribute is used during imports of its " "subpackages. Within the import machinery, it functions much the same as :" @@ -763,14 +763,14 @@ msgid "" "than :data:`!sys.path`." msgstr "" -#: reference/import.rst:560 +#: reference/import.rst:562 msgid "" "The same rules used for :data:`sys.path` also apply to a package's :attr:`!" "__path__`. :data:`sys.path_hooks` (described below) are consulted when " "traversing a package's :attr:`!__path__`." msgstr "" -#: reference/import.rst:564 +#: reference/import.rst:566 msgid "" "A package's ``__init__.py`` file may set or alter the package's :attr:" "`~module.__path__` attribute, and this was typically the way namespace " @@ -780,18 +780,18 @@ msgid "" "automatically sets :attr:`!__path__` correctly for the namespace package." msgstr "" -#: reference/import.rst:573 +#: reference/import.rst:575 msgid "Module reprs" msgstr "" -#: reference/import.rst:575 +#: reference/import.rst:577 msgid "" "By default, all modules have a usable repr, however depending on the " "attributes set above, and in the module's spec, you can more explicitly " "control the repr of module objects." msgstr "" -#: reference/import.rst:579 +#: reference/import.rst:581 msgid "" "If the module has a spec (``__spec__``), the import machinery will try to " "generate a repr from it. If that fails or there is no spec, the import " @@ -801,45 +801,45 @@ msgid "" "for whatever information is missing." msgstr "" -#: reference/import.rst:586 +#: reference/import.rst:588 msgid "Here are the exact rules used:" msgstr "" -#: reference/import.rst:588 +#: reference/import.rst:590 msgid "" "If the module has a ``__spec__`` attribute, the information in the spec is " "used to generate the repr. The \"name\", \"loader\", \"origin\", and " "\"has_location\" attributes are consulted." msgstr "" -#: reference/import.rst:592 +#: reference/import.rst:594 msgid "" "If the module has a ``__file__`` attribute, this is used as part of the " "module's repr." msgstr "" -#: reference/import.rst:595 +#: reference/import.rst:597 msgid "" "If the module has no ``__file__`` but does have a ``__loader__`` that is not " "``None``, then the loader's repr is used as part of the module's repr." msgstr "" -#: reference/import.rst:598 +#: reference/import.rst:600 msgid "Otherwise, just use the module's ``__name__`` in the repr." msgstr "" -#: reference/import.rst:600 +#: reference/import.rst:602 msgid "" "Use of :meth:`!module_repr`, having been deprecated since Python 3.4, was " "removed in Python 3.12 and is no longer called during the resolution of a " "module's repr." msgstr "" -#: reference/import.rst:608 +#: reference/import.rst:610 msgid "Cached bytecode invalidation" msgstr "" -#: reference/import.rst:610 +#: reference/import.rst:612 msgid "" "Before Python loads cached bytecode from a ``.pyc`` file, it checks whether " "the cache is up-to-date with the source ``.py`` file. By default, Python " @@ -849,7 +849,7 @@ msgid "" "source's metadata." msgstr "" -#: reference/import.rst:617 +#: reference/import.rst:619 msgid "" "Python also supports \"hash-based\" cache files, which store a hash of the " "source file's contents rather than its metadata. There are two variants of " @@ -863,17 +863,17 @@ msgid "" "option:`--check-hash-based-pycs` flag." msgstr "" -#: reference/import.rst:628 +#: reference/import.rst:630 msgid "" "Added hash-based ``.pyc`` files. Previously, Python only supported timestamp-" "based invalidation of bytecode caches." msgstr "" -#: reference/import.rst:634 +#: reference/import.rst:636 msgid "The Path Based Finder" msgstr "" -#: reference/import.rst:639 +#: reference/import.rst:641 msgid "" "As mentioned previously, Python comes with several default meta path " "finders. One of these, called the :term:`path based finder` (:class:" @@ -882,14 +882,14 @@ msgid "" "a location to search for modules." msgstr "" -#: reference/import.rst:645 +#: reference/import.rst:647 msgid "" "The path based finder itself doesn't know how to import anything. Instead, " "it traverses the individual path entries, associating each of them with a " "path entry finder that knows how to handle that particular kind of path." msgstr "" -#: reference/import.rst:649 +#: reference/import.rst:651 msgid "" "The default set of path entry finders implement all the semantics for " "finding modules on the file system, handling special file types such as " @@ -900,14 +900,14 @@ msgid "" "from zipfiles." msgstr "" -#: reference/import.rst:656 +#: reference/import.rst:658 msgid "" "Path entries need not be limited to file system locations. They can refer " "to URLs, database queries, or any other location that can be specified as a " "string." msgstr "" -#: reference/import.rst:660 +#: reference/import.rst:662 msgid "" "The path based finder provides additional hooks and protocols so that you " "can extend and customize the types of searchable path entries. For example, " @@ -918,7 +918,7 @@ msgid "" "from the web." msgstr "" -#: reference/import.rst:668 +#: reference/import.rst:670 msgid "" "A word of warning: this section and the previous both use the term *finder*, " "distinguishing between them by using the terms :term:`meta path finder` and :" @@ -929,7 +929,7 @@ msgid "" "process, as keyed off the :data:`sys.meta_path` traversal." msgstr "" -#: reference/import.rst:676 +#: reference/import.rst:678 msgid "" "By contrast, path entry finders are in a sense an implementation detail of " "the path based finder, and in fact, if the path based finder were to be " @@ -937,11 +937,11 @@ msgid "" "would be invoked." msgstr "" -#: reference/import.rst:683 +#: reference/import.rst:685 msgid "Path entry finders" msgstr "" -#: reference/import.rst:691 +#: reference/import.rst:693 msgid "" "The :term:`path based finder` is responsible for finding and loading Python " "modules and packages whose location is specified with a string :term:`path " @@ -949,7 +949,7 @@ msgid "" "not be limited to this." msgstr "" -#: reference/import.rst:696 +#: reference/import.rst:698 msgid "" "As a meta path finder, the :term:`path based finder` implements the :meth:" "`~importlib.abc.MetaPathFinder.find_spec` protocol previously described, " @@ -957,7 +957,7 @@ msgid "" "modules are found and loaded from the :term:`import path`." msgstr "" -#: reference/import.rst:701 +#: reference/import.rst:703 msgid "" "Three variables are used by the :term:`path based finder`, :data:`sys." "path`, :data:`sys.path_hooks` and :data:`sys.path_importer_cache`. The " @@ -965,7 +965,7 @@ msgid "" "additional ways that the import machinery can be customized." msgstr "" -#: reference/import.rst:706 +#: reference/import.rst:708 msgid "" ":data:`sys.path` contains a list of strings providing search locations for " "modules and packages. It is initialized from the :envvar:`PYTHONPATH` " @@ -977,7 +977,7 @@ msgid "" "other data types are ignored." msgstr "" -#: reference/import.rst:715 +#: reference/import.rst:717 msgid "" "The :term:`path based finder` is a :term:`meta path finder`, so the import " "machinery begins the :term:`import path` search by calling the path based " @@ -989,7 +989,7 @@ msgid "" "top level import and :data:`sys.path` is used." msgstr "" -#: reference/import.rst:724 +#: reference/import.rst:726 msgid "" "The path based finder iterates over every entry in the search path, and for " "each of these, looks for an appropriate :term:`path entry finder` (:class:" @@ -1005,7 +1005,7 @@ msgid "" "finder to perform the path entry search again." msgstr "" -#: reference/import.rst:737 +#: reference/import.rst:739 msgid "" "If the path entry is not present in the cache, the path based finder " "iterates over every callable in :data:`sys.path_hooks`. Each of the :term:" @@ -1021,7 +1021,7 @@ msgid "" "decode the argument, it should raise :exc:`ImportError`." msgstr "" -#: reference/import.rst:751 +#: reference/import.rst:753 msgid "" "If :data:`sys.path_hooks` iteration ends with no :term:`path entry finder` " "being returned, then the path based finder's :meth:`~importlib.machinery." @@ -1031,7 +1031,7 @@ msgid "" "could not find the module." msgstr "" -#: reference/import.rst:758 +#: reference/import.rst:760 msgid "" "If a :term:`path entry finder` *is* returned by one of the :term:`path entry " "hook` callables on :data:`sys.path_hooks`, then the following protocol is " @@ -1039,7 +1039,7 @@ msgid "" "the module." msgstr "" -#: reference/import.rst:763 +#: reference/import.rst:765 msgid "" "The current working directory -- denoted by an empty string -- is handled " "slightly differently from other entries on :data:`sys.path`. First, if the " @@ -1051,18 +1051,18 @@ msgid "" "and not the empty string." msgstr "" -#: reference/import.rst:773 +#: reference/import.rst:775 msgid "Path entry finder protocol" msgstr "" -#: reference/import.rst:775 +#: reference/import.rst:777 msgid "" "In order to support imports of modules and initialized packages and also to " "contribute portions to namespace packages, path entry finders must implement " "the :meth:`~importlib.abc.PathEntryFinder.find_spec` method." msgstr "" -#: reference/import.rst:779 +#: reference/import.rst:781 msgid "" ":meth:`~importlib.abc.PathEntryFinder.find_spec` takes two arguments: the " "fully qualified name of the module being imported, and the (optional) target " @@ -1070,21 +1070,21 @@ msgid "" "spec will always have \"loader\" set (with one exception)." msgstr "" -#: reference/import.rst:784 +#: reference/import.rst:786 msgid "" "To indicate to the import machinery that the spec represents a namespace :" "term:`portion`, the path entry finder sets ``submodule_search_locations`` to " "a list containing the portion." msgstr "" -#: reference/import.rst:788 +#: reference/import.rst:790 msgid "" ":meth:`~importlib.abc.PathEntryFinder.find_spec` replaced :meth:`!" "find_loader` and :meth:`!find_module`, both of which are now deprecated, but " "will be used if ``find_spec()`` is not defined." msgstr "" -#: reference/import.rst:794 +#: reference/import.rst:796 msgid "" "Older path entry finders may implement one of these two deprecated methods " "instead of ``find_spec()``. The methods are still respected for the sake of " @@ -1092,14 +1092,14 @@ msgid "" "path entry finder, the legacy methods are ignored." msgstr "" -#: reference/import.rst:799 +#: reference/import.rst:801 msgid "" ":meth:`!find_loader` takes one argument, the fully qualified name of the " "module being imported. ``find_loader()`` returns a 2-tuple where the first " "item is the loader and the second item is a namespace :term:`portion`." msgstr "" -#: reference/import.rst:804 +#: reference/import.rst:806 msgid "" "For backwards compatibility with other implementations of the import " "protocol, many path entry finders also support the same, traditional " @@ -1109,7 +1109,7 @@ msgid "" "initial call to the path hook)." msgstr "" -#: reference/import.rst:811 +#: reference/import.rst:813 msgid "" "The ``find_module()`` method on path entry finders is deprecated, as it does " "not allow the path entry finder to contribute portions to namespace " @@ -1118,28 +1118,28 @@ msgid "" "preference to ``find_module()``." msgstr "" -#: reference/import.rst:817 +#: reference/import.rst:819 msgid "" "Calls to :meth:`!find_module` and :meth:`!find_loader` by the import system " "will raise :exc:`ImportWarning`." msgstr "" -#: reference/import.rst:822 +#: reference/import.rst:824 msgid "``find_module()`` and ``find_loader()`` have been removed." msgstr "" -#: reference/import.rst:827 +#: reference/import.rst:829 msgid "Replacing the standard import system" msgstr "" -#: reference/import.rst:829 +#: reference/import.rst:831 msgid "" "The most reliable mechanism for replacing the entire import system is to " "delete the default contents of :data:`sys.meta_path`, replacing them " "entirely with a custom meta path hook." msgstr "" -#: reference/import.rst:833 +#: reference/import.rst:835 msgid "" "If it is acceptable to only alter the behaviour of import statements without " "affecting other APIs that access the import system, then replacing the " @@ -1148,7 +1148,7 @@ msgid "" "statements within that module." msgstr "" -#: reference/import.rst:839 +#: reference/import.rst:841 msgid "" "To selectively prevent the import of some modules from a hook early on the " "meta path (rather than disabling the standard import system entirely), it is " @@ -1158,11 +1158,11 @@ msgid "" "exception terminates it immediately." msgstr "" -#: reference/import.rst:849 +#: reference/import.rst:851 msgid "Package Relative Imports" msgstr "" -#: reference/import.rst:851 +#: reference/import.rst:853 msgid "" "Relative imports use leading dots. A single leading dot indicates a relative " "import, starting with the current package. Two or more leading dots indicate " @@ -1170,7 +1170,7 @@ msgid "" "after the first. For example, given the following package layout::" msgstr "" -#: reference/import.rst:856 +#: reference/import.rst:858 msgid "" "package/\n" " __init__.py\n" @@ -1184,13 +1184,13 @@ msgid "" " moduleA.py" msgstr "" -#: reference/import.rst:867 +#: reference/import.rst:869 msgid "" "In either ``subpackage1/moduleX.py`` or ``subpackage1/__init__.py``, the " "following are valid relative imports::" msgstr "" -#: reference/import.rst:870 +#: reference/import.rst:872 msgid "" "from .moduleY import spam\n" "from .moduleY import spam as ham\n" @@ -1200,28 +1200,28 @@ msgid "" "from ..moduleA import foo" msgstr "" -#: reference/import.rst:877 +#: reference/import.rst:879 msgid "" "Absolute imports may use either the ``import <>`` or ``from <> import <>`` " "syntax, but relative imports may only use the second form; the reason for " "this is that::" msgstr "" -#: reference/import.rst:881 +#: reference/import.rst:883 msgid "import XXX.YYY.ZZZ" msgstr "" -#: reference/import.rst:883 +#: reference/import.rst:885 msgid "" "should expose ``XXX.YYY.ZZZ`` as a usable expression, but .moduleY is not a " "valid expression." msgstr "" -#: reference/import.rst:890 +#: reference/import.rst:892 msgid "Special considerations for __main__" msgstr "" -#: reference/import.rst:892 +#: reference/import.rst:894 msgid "" "The :mod:`__main__` module is a special case relative to Python's import " "system. As noted :ref:`elsewhere <programs>`, the ``__main__`` module is " @@ -1232,17 +1232,17 @@ msgid "" "interpreter is invoked." msgstr "" -#: reference/import.rst:903 +#: reference/import.rst:905 msgid "__main__.__spec__" msgstr "" -#: reference/import.rst:905 +#: reference/import.rst:907 msgid "" "Depending on how :mod:`__main__` is initialized, ``__main__.__spec__`` gets " "set appropriately or to ``None``." msgstr "" -#: reference/import.rst:908 +#: reference/import.rst:910 msgid "" "When Python is started with the :option:`-m` option, ``__spec__`` is set to " "the module spec of the corresponding module or package. ``__spec__`` is also " @@ -1250,30 +1250,30 @@ msgid "" "directory, zipfile or other :data:`sys.path` entry." msgstr "" -#: reference/import.rst:913 +#: reference/import.rst:915 msgid "" "In :ref:`the remaining cases <using-on-interface-options>` ``__main__." "__spec__`` is set to ``None``, as the code used to populate the :mod:" "`__main__` does not correspond directly with an importable module:" msgstr "" -#: reference/import.rst:917 +#: reference/import.rst:919 msgid "interactive prompt" msgstr "" -#: reference/import.rst:918 +#: reference/import.rst:920 msgid ":option:`-c` option" msgstr "" -#: reference/import.rst:919 +#: reference/import.rst:921 msgid "running from stdin" msgstr "" -#: reference/import.rst:920 +#: reference/import.rst:922 msgid "running directly from a source or bytecode file" msgstr "" -#: reference/import.rst:922 +#: reference/import.rst:924 msgid "" "Note that ``__main__.__spec__`` is always ``None`` in the last case, *even " "if* the file could technically be imported directly as a module instead. Use " @@ -1281,7 +1281,7 @@ msgid "" "`__main__`." msgstr "" -#: reference/import.rst:927 +#: reference/import.rst:929 msgid "" "Note also that even when ``__main__`` corresponds with an importable module " "and ``__main__.__spec__`` is set accordingly, they're still considered " @@ -1290,11 +1290,11 @@ msgid "" "populate the ``__main__`` namespace, and not during normal import." msgstr "" -#: reference/import.rst:935 +#: reference/import.rst:937 msgid "References" msgstr "" -#: reference/import.rst:937 +#: reference/import.rst:939 msgid "" "The import machinery has evolved considerably since Python's early days. " "The original `specification for packages <https://www.python.org/doc/essays/" @@ -1302,37 +1302,37 @@ msgid "" "since the writing of that document." msgstr "" -#: reference/import.rst:942 +#: reference/import.rst:944 msgid "" "The original specification for :data:`sys.meta_path` was :pep:`302`, with " "subsequent extension in :pep:`420`." msgstr "" -#: reference/import.rst:945 +#: reference/import.rst:947 msgid "" ":pep:`420` introduced :term:`namespace packages <namespace package>` for " "Python 3.3. :pep:`420` also introduced the :meth:`!find_loader` protocol as " "an alternative to :meth:`!find_module`." msgstr "" -#: reference/import.rst:949 +#: reference/import.rst:951 msgid "" ":pep:`366` describes the addition of the ``__package__`` attribute for " "explicit relative imports in main modules." msgstr "" -#: reference/import.rst:952 +#: reference/import.rst:954 msgid "" ":pep:`328` introduced absolute and explicit relative imports and initially " "proposed ``__name__`` for semantics :pep:`366` would eventually specify for " "``__package__``." msgstr "" -#: reference/import.rst:956 +#: reference/import.rst:958 msgid ":pep:`338` defines executing modules as scripts." msgstr "" -#: reference/import.rst:958 +#: reference/import.rst:960 msgid "" ":pep:`451` adds the encapsulation of per-module import state in spec " "objects. It also off-loads most of the boilerplate responsibilities of " @@ -1341,15 +1341,15 @@ msgid "" "finders and loaders." msgstr "" -#: reference/import.rst:965 +#: reference/import.rst:967 msgid "Footnotes" msgstr "" -#: reference/import.rst:966 +#: reference/import.rst:968 msgid "See :class:`types.ModuleType`." msgstr "" -#: reference/import.rst:968 +#: reference/import.rst:970 msgid "" "The importlib implementation avoids using the return value directly. " "Instead, it gets the module object by looking the module name up in :data:" @@ -1362,7 +1362,7 @@ msgstr "" msgid "import machinery" msgstr "" -#: reference/import.rst:95 reference/import.rst:129 +#: reference/import.rst:95 reference/import.rst:131 msgid "package" msgstr "" @@ -1370,82 +1370,82 @@ msgstr "" msgid "regular" msgstr "" -#: reference/import.rst:129 +#: reference/import.rst:131 msgid "namespace" msgstr "" -#: reference/import.rst:129 +#: reference/import.rst:131 msgid "portion" msgstr "" -#: reference/import.rst:175 +#: reference/import.rst:177 msgid "sys.modules" msgstr "" -#: reference/import.rst:276 +#: reference/import.rst:278 msgid "finder" msgstr "" -#: reference/import.rst:210 +#: reference/import.rst:212 msgid "loader" msgstr "" -#: reference/import.rst:210 +#: reference/import.rst:212 msgid "module spec" msgstr "" -#: reference/import.rst:249 +#: reference/import.rst:251 msgid "import hooks" msgstr "" -#: reference/import.rst:249 +#: reference/import.rst:251 msgid "meta hooks" msgstr "" -#: reference/import.rst:249 +#: reference/import.rst:251 msgid "path hooks" msgstr "" -#: reference/import.rst:249 +#: reference/import.rst:251 msgid "hooks" msgstr "" -#: reference/import.rst:249 +#: reference/import.rst:251 msgid "import" msgstr "" -#: reference/import.rst:249 +#: reference/import.rst:251 msgid "meta" msgstr "" -#: reference/import.rst:249 +#: reference/import.rst:251 msgid "path" msgstr "" -#: reference/import.rst:276 +#: reference/import.rst:278 msgid "sys.meta_path" msgstr "" -#: reference/import.rst:276 +#: reference/import.rst:278 msgid "find_spec" msgstr "" -#: reference/import.rst:636 +#: reference/import.rst:638 msgid "path based finder" msgstr "" -#: reference/import.rst:685 +#: reference/import.rst:687 msgid "sys.path" msgstr "" -#: reference/import.rst:685 +#: reference/import.rst:687 msgid "sys.path_hooks" msgstr "" -#: reference/import.rst:685 +#: reference/import.rst:687 msgid "sys.path_importer_cache" msgstr "" -#: reference/import.rst:685 +#: reference/import.rst:687 msgid "PYTHONPATH" msgstr "" diff --git a/reference/lexical_analysis.po b/reference/lexical_analysis.po index c3be894f0..47eba294a 100644 --- a/reference/lexical_analysis.po +++ b/reference/lexical_analysis.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -22,12 +22,13 @@ msgstr "" #: reference/lexical_analysis.rst:10 msgid "" -"A Python program is read by a *parser*. Input to the parser is a stream of " -"*tokens*, generated by the *lexical analyzer*. This chapter describes how " -"the lexical analyzer breaks a file into tokens." +"A Python program is read by a *parser*. Input to the parser is a stream of :" +"term:`tokens <token>`, generated by the *lexical analyzer* (also known as " +"the *tokenizer*). This chapter describes how the lexical analyzer breaks a " +"file into tokens." msgstr "" -#: reference/lexical_analysis.rst:14 +#: reference/lexical_analysis.rst:15 msgid "" "Python reads program text as Unicode code points; the encoding of a source " "file can be given by an encoding declaration and defaults to UTF-8, see :pep:" @@ -35,19 +36,19 @@ msgid "" "`SyntaxError` is raised." msgstr "" -#: reference/lexical_analysis.rst:23 +#: reference/lexical_analysis.rst:24 msgid "Line structure" msgstr "" -#: reference/lexical_analysis.rst:27 +#: reference/lexical_analysis.rst:28 msgid "A Python program is divided into a number of *logical lines*." msgstr "" -#: reference/lexical_analysis.rst:33 +#: reference/lexical_analysis.rst:34 msgid "Logical lines" msgstr "" -#: reference/lexical_analysis.rst:37 +#: reference/lexical_analysis.rst:38 msgid "" "The end of a logical line is represented by the token NEWLINE. Statements " "cannot cross logical line boundaries except where NEWLINE is allowed by the " @@ -56,11 +57,11 @@ msgid "" "implicit *line joining* rules." msgstr "" -#: reference/lexical_analysis.rst:47 +#: reference/lexical_analysis.rst:48 msgid "Physical lines" msgstr "" -#: reference/lexical_analysis.rst:49 +#: reference/lexical_analysis.rst:50 msgid "" "A physical line is a sequence of characters terminated by an end-of-line " "sequence. In source files and strings, any of the standard platform line " @@ -71,18 +72,18 @@ msgid "" "input also serves as an implicit terminator for the final physical line." msgstr "" -#: reference/lexical_analysis.rst:57 +#: reference/lexical_analysis.rst:58 msgid "" "When embedding Python, source code strings should be passed to Python APIs " "using the standard C conventions for newline characters (the ``\\n`` " "character, representing ASCII LF, is the line terminator)." msgstr "" -#: reference/lexical_analysis.rst:65 +#: reference/lexical_analysis.rst:66 msgid "Comments" msgstr "" -#: reference/lexical_analysis.rst:70 +#: reference/lexical_analysis.rst:71 msgid "" "A comment starts with a hash character (``#``) that is not part of a string " "literal, and ends at the end of the physical line. A comment signifies the " @@ -90,11 +91,11 @@ msgid "" "Comments are ignored by the syntax." msgstr "" -#: reference/lexical_analysis.rst:79 +#: reference/lexical_analysis.rst:80 msgid "Encoding declarations" msgstr "" -#: reference/lexical_analysis.rst:84 +#: reference/lexical_analysis.rst:85 msgid "" "If a comment in the first or second line of the Python script matches the " "regular expression ``coding[=:]\\s*([-\\w.]+)``, this comment is processed " @@ -104,41 +105,41 @@ msgid "" "comment-only line. The recommended forms of an encoding expression are ::" msgstr "" -#: reference/lexical_analysis.rst:91 +#: reference/lexical_analysis.rst:92 msgid "# -*- coding: <encoding-name> -*-" msgstr "" -#: reference/lexical_analysis.rst:93 +#: reference/lexical_analysis.rst:94 msgid "which is recognized also by GNU Emacs, and ::" msgstr "" -#: reference/lexical_analysis.rst:95 +#: reference/lexical_analysis.rst:96 msgid "# vim:fileencoding=<encoding-name>" msgstr "" -#: reference/lexical_analysis.rst:97 +#: reference/lexical_analysis.rst:98 msgid "which is recognized by Bram Moolenaar's VIM." msgstr "" -#: reference/lexical_analysis.rst:99 +#: reference/lexical_analysis.rst:100 msgid "" "If no encoding declaration is found, the default encoding is UTF-8. If the " "implicit or explicit encoding of a file is UTF-8, an initial UTF-8 byte-" "order mark (b'\\xef\\xbb\\xbf') is ignored rather than being a syntax error." msgstr "" -#: reference/lexical_analysis.rst:103 +#: reference/lexical_analysis.rst:104 msgid "" "If an encoding is declared, the encoding name must be recognized by Python " "(see :ref:`standard-encodings`). The encoding is used for all lexical " "analysis, including string literals, comments and identifiers." msgstr "" -#: reference/lexical_analysis.rst:112 +#: reference/lexical_analysis.rst:113 msgid "Explicit line joining" msgstr "" -#: reference/lexical_analysis.rst:116 +#: reference/lexical_analysis.rst:117 msgid "" "Two or more physical lines may be joined into logical lines using backslash " "characters (``\\``), as follows: when a physical line ends in a backslash " @@ -147,7 +148,7 @@ msgid "" "following end-of-line character. For example::" msgstr "" -#: reference/lexical_analysis.rst:122 +#: reference/lexical_analysis.rst:123 msgid "" "if 1900 < year < 2100 and 1 <= month <= 12 \\\n" " and 1 <= day <= 31 and 0 <= hour < 24 \\\n" @@ -155,7 +156,7 @@ msgid "" " return 1" msgstr "" -#: reference/lexical_analysis.rst:127 +#: reference/lexical_analysis.rst:128 msgid "" "A line ending in a backslash cannot carry a comment. A backslash does not " "continue a comment. A backslash does not continue a token except for string " @@ -164,17 +165,17 @@ msgid "" "line outside a string literal." msgstr "" -#: reference/lexical_analysis.rst:137 +#: reference/lexical_analysis.rst:138 msgid "Implicit line joining" msgstr "" -#: reference/lexical_analysis.rst:139 +#: reference/lexical_analysis.rst:140 msgid "" "Expressions in parentheses, square brackets or curly braces can be split " "over more than one physical line without using backslashes. For example::" msgstr "" -#: reference/lexical_analysis.rst:142 +#: reference/lexical_analysis.rst:143 msgid "" "month_names = ['Januari', 'Februari', 'Maart', # These are the\n" " 'April', 'Mei', 'Juni', # Dutch names\n" @@ -182,7 +183,7 @@ msgid "" " 'Oktober', 'November', 'December'] # of the year" msgstr "" -#: reference/lexical_analysis.rst:147 +#: reference/lexical_analysis.rst:148 msgid "" "Implicitly continued lines can carry comments. The indentation of the " "continuation lines is not important. Blank continuation lines are allowed. " @@ -191,11 +192,11 @@ msgid "" "that case they cannot carry comments." msgstr "" -#: reference/lexical_analysis.rst:157 +#: reference/lexical_analysis.rst:158 msgid "Blank lines" msgstr "" -#: reference/lexical_analysis.rst:161 +#: reference/lexical_analysis.rst:162 msgid "" "A logical line that contains only spaces, tabs, formfeeds and possibly a " "comment, is ignored (i.e., no NEWLINE token is generated). During " @@ -206,18 +207,18 @@ msgid "" "statement." msgstr "" -#: reference/lexical_analysis.rst:172 +#: reference/lexical_analysis.rst:173 msgid "Indentation" msgstr "" -#: reference/lexical_analysis.rst:176 +#: reference/lexical_analysis.rst:177 msgid "" "Leading whitespace (spaces and tabs) at the beginning of a logical line is " "used to compute the indentation level of the line, which in turn is used to " "determine the grouping of statements." msgstr "" -#: reference/lexical_analysis.rst:180 +#: reference/lexical_analysis.rst:181 msgid "" "Tabs are replaced (from left to right) by one to eight spaces such that the " "total number of characters up to and including the replacement is a multiple " @@ -228,14 +229,14 @@ msgid "" "the indentation." msgstr "" -#: reference/lexical_analysis.rst:188 +#: reference/lexical_analysis.rst:189 msgid "" "Indentation is rejected as inconsistent if a source file mixes tabs and " "spaces in a way that makes the meaning dependent on the worth of a tab in " "spaces; a :exc:`TabError` is raised in that case." msgstr "" -#: reference/lexical_analysis.rst:192 +#: reference/lexical_analysis.rst:193 msgid "" "**Cross-platform compatibility note:** because of the nature of text editors " "on non-UNIX platforms, it is unwise to use a mixture of spaces and tabs for " @@ -243,7 +244,7 @@ msgid "" "different platforms may explicitly limit the maximum indentation level." msgstr "" -#: reference/lexical_analysis.rst:197 +#: reference/lexical_analysis.rst:198 msgid "" "A formfeed character may be present at the start of the line; it will be " "ignored for the indentation calculations above. Formfeed characters " @@ -251,13 +252,13 @@ msgid "" "instance, they may reset the space count to zero)." msgstr "" -#: reference/lexical_analysis.rst:204 +#: reference/lexical_analysis.rst:205 msgid "" "The indentation levels of consecutive lines are used to generate INDENT and " "DEDENT tokens, using a stack, as follows." msgstr "" -#: reference/lexical_analysis.rst:207 +#: reference/lexical_analysis.rst:208 msgid "" "Before the first line of the file is read, a single zero is pushed on the " "stack; this will never be popped off again. The numbers pushed on the stack " @@ -271,13 +272,13 @@ msgid "" "number remaining on the stack that is larger than zero." msgstr "" -#: reference/lexical_analysis.rst:218 +#: reference/lexical_analysis.rst:219 msgid "" "Here is an example of a correctly (though confusingly) indented piece of " "Python code::" msgstr "" -#: reference/lexical_analysis.rst:221 +#: reference/lexical_analysis.rst:222 msgid "" "def perm(l):\n" " # Compute the list of all permutations of l\n" @@ -292,11 +293,11 @@ msgid "" " return r" msgstr "" -#: reference/lexical_analysis.rst:233 +#: reference/lexical_analysis.rst:234 msgid "The following example shows various indentation errors::" msgstr "" -#: reference/lexical_analysis.rst:235 +#: reference/lexical_analysis.rst:236 msgid "" " def perm(l): # error: first line indented\n" "for i in range(len(l)): # error: not indented\n" @@ -307,18 +308,18 @@ msgid "" " return r # error: inconsistent dedent" msgstr "" -#: reference/lexical_analysis.rst:243 +#: reference/lexical_analysis.rst:244 msgid "" "(Actually, the first three errors are detected by the parser; only the last " "error is found by the lexical analyzer --- the indentation of ``return r`` " "does not match a level popped off the stack.)" msgstr "" -#: reference/lexical_analysis.rst:251 +#: reference/lexical_analysis.rst:252 msgid "Whitespace between tokens" msgstr "" -#: reference/lexical_analysis.rst:253 +#: reference/lexical_analysis.rst:254 msgid "" "Except at the beginning of a logical line or in string literals, the " "whitespace characters space, tab and formfeed can be used interchangeably to " @@ -327,11 +328,11 @@ msgid "" "is one token, but a b is two tokens)." msgstr "" -#: reference/lexical_analysis.rst:263 +#: reference/lexical_analysis.rst:264 msgid "Other tokens" msgstr "" -#: reference/lexical_analysis.rst:265 +#: reference/lexical_analysis.rst:266 msgid "" "Besides NEWLINE, INDENT and DEDENT, the following categories of tokens " "exist: *identifiers*, *keywords*, *literals*, *operators*, and *delimiters*. " @@ -341,24 +342,24 @@ msgid "" "from left to right." msgstr "" -#: reference/lexical_analysis.rst:275 +#: reference/lexical_analysis.rst:276 msgid "Identifiers and keywords" msgstr "" -#: reference/lexical_analysis.rst:279 +#: reference/lexical_analysis.rst:280 msgid "" "Identifiers (also referred to as *names*) are described by the following " "lexical definitions." msgstr "" -#: reference/lexical_analysis.rst:282 +#: reference/lexical_analysis.rst:283 msgid "" "The syntax of identifiers in Python is based on the Unicode standard annex " "UAX-31, with elaboration and changes as defined below; see also :pep:`3131` " "for further details." msgstr "" -#: reference/lexical_analysis.rst:286 +#: reference/lexical_analysis.rst:287 msgid "" "Within the ASCII range (U+0001..U+007F), the valid characters for " "identifiers include the uppercase and lowercase letters ``A`` through ``Z``, " @@ -369,90 +370,90 @@ msgid "" "`unicodedata` module." msgstr "" -#: reference/lexical_analysis.rst:294 +#: reference/lexical_analysis.rst:295 msgid "Identifiers are unlimited in length. Case is significant." msgstr "" -#: reference/lexical_analysis.rst:303 +#: reference/lexical_analysis.rst:304 msgid "The Unicode category codes mentioned above stand for:" msgstr "" -#: reference/lexical_analysis.rst:305 +#: reference/lexical_analysis.rst:306 msgid "*Lu* - uppercase letters" msgstr "" -#: reference/lexical_analysis.rst:306 +#: reference/lexical_analysis.rst:307 msgid "*Ll* - lowercase letters" msgstr "" -#: reference/lexical_analysis.rst:307 +#: reference/lexical_analysis.rst:308 msgid "*Lt* - titlecase letters" msgstr "" -#: reference/lexical_analysis.rst:308 +#: reference/lexical_analysis.rst:309 msgid "*Lm* - modifier letters" msgstr "" -#: reference/lexical_analysis.rst:309 +#: reference/lexical_analysis.rst:310 msgid "*Lo* - other letters" msgstr "" -#: reference/lexical_analysis.rst:310 +#: reference/lexical_analysis.rst:311 msgid "*Nl* - letter numbers" msgstr "" -#: reference/lexical_analysis.rst:311 +#: reference/lexical_analysis.rst:312 msgid "*Mn* - nonspacing marks" msgstr "" -#: reference/lexical_analysis.rst:312 +#: reference/lexical_analysis.rst:313 msgid "*Mc* - spacing combining marks" msgstr "" -#: reference/lexical_analysis.rst:313 +#: reference/lexical_analysis.rst:314 msgid "*Nd* - decimal numbers" msgstr "" -#: reference/lexical_analysis.rst:314 +#: reference/lexical_analysis.rst:315 msgid "*Pc* - connector punctuations" msgstr "" -#: reference/lexical_analysis.rst:315 +#: reference/lexical_analysis.rst:316 msgid "" "*Other_ID_Start* - explicit list of characters in `PropList.txt <https://www." "unicode.org/Public/15.0.0/ucd/PropList.txt>`_ to support backwards " "compatibility" msgstr "" -#: reference/lexical_analysis.rst:318 +#: reference/lexical_analysis.rst:319 msgid "*Other_ID_Continue* - likewise" msgstr "" -#: reference/lexical_analysis.rst:320 +#: reference/lexical_analysis.rst:321 msgid "" "All identifiers are converted into the normal form NFKC while parsing; " "comparison of identifiers is based on NFKC." msgstr "" -#: reference/lexical_analysis.rst:323 +#: reference/lexical_analysis.rst:324 msgid "" "A non-normative HTML file listing all valid identifier characters for " "Unicode 15.0.0 can be found at https://www.unicode.org/Public/15.0.0/ucd/" "DerivedCoreProperties.txt" msgstr "" -#: reference/lexical_analysis.rst:331 +#: reference/lexical_analysis.rst:332 msgid "Keywords" msgstr "" -#: reference/lexical_analysis.rst:337 +#: reference/lexical_analysis.rst:338 msgid "" "The following identifiers are used as reserved words, or *keywords* of the " "language, and cannot be used as ordinary identifiers. They must be spelled " "exactly as written here:" msgstr "" -#: reference/lexical_analysis.rst:341 +#: reference/lexical_analysis.rst:342 msgid "" "False await else import pass\n" "None break except in raise\n" @@ -463,11 +464,11 @@ msgid "" "async elif if or yield" msgstr "" -#: reference/lexical_analysis.rst:355 +#: reference/lexical_analysis.rst:356 msgid "Soft Keywords" msgstr "" -#: reference/lexical_analysis.rst:361 +#: reference/lexical_analysis.rst:362 msgid "" "Some identifiers are only reserved under specific contexts. These are known " "as *soft keywords*. The identifiers ``match``, ``case``, ``type`` and ``_`` " @@ -475,82 +476,82 @@ msgid "" "is done at the parser level, not when tokenizing." msgstr "" -#: reference/lexical_analysis.rst:366 +#: reference/lexical_analysis.rst:367 msgid "" "As soft keywords, their use in the grammar is possible while still " "preserving compatibility with existing code that uses these names as " "identifier names." msgstr "" -#: reference/lexical_analysis.rst:370 +#: reference/lexical_analysis.rst:371 msgid "" "``match``, ``case``, and ``_`` are used in the :keyword:`match` statement. " "``type`` is used in the :keyword:`type` statement." msgstr "" -#: reference/lexical_analysis.rst:373 +#: reference/lexical_analysis.rst:374 msgid "``type`` is now a soft keyword." msgstr "" -#: reference/lexical_analysis.rst:382 +#: reference/lexical_analysis.rst:383 msgid "Reserved classes of identifiers" msgstr "" -#: reference/lexical_analysis.rst:384 +#: reference/lexical_analysis.rst:385 msgid "" "Certain classes of identifiers (besides keywords) have special meanings. " "These classes are identified by the patterns of leading and trailing " "underscore characters:" msgstr "" -#: reference/lexical_analysis.rst:388 +#: reference/lexical_analysis.rst:389 msgid "``_*``" msgstr "" -#: reference/lexical_analysis.rst:389 +#: reference/lexical_analysis.rst:390 msgid "Not imported by ``from module import *``." msgstr "" -#: reference/lexical_analysis.rst:391 +#: reference/lexical_analysis.rst:392 msgid "``_``" msgstr "" -#: reference/lexical_analysis.rst:392 +#: reference/lexical_analysis.rst:393 msgid "" "In a ``case`` pattern within a :keyword:`match` statement, ``_`` is a :ref:" "`soft keyword <soft-keywords>` that denotes a :ref:`wildcard <wildcard-" "patterns>`." msgstr "" -#: reference/lexical_analysis.rst:396 +#: reference/lexical_analysis.rst:397 msgid "" "Separately, the interactive interpreter makes the result of the last " "evaluation available in the variable ``_``. (It is stored in the :mod:" "`builtins` module, alongside built-in functions like ``print``.)" msgstr "" -#: reference/lexical_analysis.rst:401 +#: reference/lexical_analysis.rst:402 msgid "" "Elsewhere, ``_`` is a regular identifier. It is often used to name " "\"special\" items, but it is not special to Python itself." msgstr "" -#: reference/lexical_analysis.rst:406 +#: reference/lexical_analysis.rst:407 msgid "" "The name ``_`` is often used in conjunction with internationalization; refer " "to the documentation for the :mod:`gettext` module for more information on " "this convention." msgstr "" -#: reference/lexical_analysis.rst:410 +#: reference/lexical_analysis.rst:411 msgid "It is also commonly used for unused variables." msgstr "" -#: reference/lexical_analysis.rst:412 +#: reference/lexical_analysis.rst:413 msgid "``__*__``" msgstr "" -#: reference/lexical_analysis.rst:413 +#: reference/lexical_analysis.rst:414 msgid "" "System-defined names, informally known as \"dunder\" names. These names are " "defined by the interpreter and its implementation (including the standard " @@ -560,11 +561,11 @@ msgid "" "explicitly documented use, is subject to breakage without warning." msgstr "" -#: reference/lexical_analysis.rst:420 +#: reference/lexical_analysis.rst:421 msgid "``__*``" msgstr "" -#: reference/lexical_analysis.rst:421 +#: reference/lexical_analysis.rst:422 msgid "" "Class-private names. Names in this category, when used within the context " "of a class definition, are re-written to use a mangled form to help avoid " @@ -572,23 +573,23 @@ msgid "" "section :ref:`atom-identifiers`." msgstr "" -#: reference/lexical_analysis.rst:430 +#: reference/lexical_analysis.rst:431 msgid "Literals" msgstr "" -#: reference/lexical_analysis.rst:434 +#: reference/lexical_analysis.rst:435 msgid "Literals are notations for constant values of some built-in types." msgstr "" -#: reference/lexical_analysis.rst:445 +#: reference/lexical_analysis.rst:446 msgid "String and Bytes literals" msgstr "" -#: reference/lexical_analysis.rst:447 +#: reference/lexical_analysis.rst:448 msgid "String literals are described by the following lexical definitions:" msgstr "" -#: reference/lexical_analysis.rst:472 +#: reference/lexical_analysis.rst:473 msgid "" "One syntactic restriction not indicated by these productions is that " "whitespace is not allowed between the :token:`~python-grammar:stringprefix` " @@ -598,7 +599,7 @@ msgid "" "`encodings`." msgstr "" -#: reference/lexical_analysis.rst:482 +#: reference/lexical_analysis.rst:483 msgid "" "In plain English: Both types of literals can be enclosed in matching single " "quotes (``'``) or double quotes (``\"``). They can also be enclosed in " @@ -611,7 +612,7 @@ msgid "" "sequences>` below for examples." msgstr "" -#: reference/lexical_analysis.rst:495 +#: reference/lexical_analysis.rst:496 msgid "" "Bytes literals are always prefixed with ``'b'`` or ``'B'``; they produce an " "instance of the :class:`bytes` type instead of the :class:`str` type. They " @@ -619,7 +620,7 @@ msgid "" "greater must be expressed with escapes." msgstr "" -#: reference/lexical_analysis.rst:504 +#: reference/lexical_analysis.rst:505 msgid "" "Both string and bytes literals may optionally be prefixed with a letter " "``'r'`` or ``'R'``; such constructs are called :dfn:`raw string literals` " @@ -628,20 +629,20 @@ msgid "" "escapes are not treated specially." msgstr "" -#: reference/lexical_analysis.rst:510 +#: reference/lexical_analysis.rst:511 msgid "" "The ``'rb'`` prefix of raw bytes literals has been added as a synonym of " "``'br'``." msgstr "" -#: reference/lexical_analysis.rst:514 +#: reference/lexical_analysis.rst:515 msgid "" "Support for the unicode legacy literal (``u'value'``) was reintroduced to " "simplify the maintenance of dual Python 2.x and 3.x codebases. See :pep:" "`414` for more information." msgstr "" -#: reference/lexical_analysis.rst:522 +#: reference/lexical_analysis.rst:523 msgid "" "A string literal with ``'f'`` or ``'F'`` in its prefix is a :dfn:`formatted " "string literal`; see :ref:`f-strings`. The ``'f'`` may be combined with " @@ -649,7 +650,7 @@ msgid "" "are possible, but formatted bytes literals are not." msgstr "" -#: reference/lexical_analysis.rst:527 +#: reference/lexical_analysis.rst:528 msgid "" "In triple-quoted literals, unescaped newlines and quotes are allowed (and " "are retained), except that three unescaped quotes in a row terminate the " @@ -657,250 +658,250 @@ msgid "" "either ``'`` or ``\"``.)" msgstr "" -#: reference/lexical_analysis.rst:550 +#: reference/lexical_analysis.rst:551 msgid "Escape sequences" msgstr "" -#: reference/lexical_analysis.rst:552 +#: reference/lexical_analysis.rst:553 msgid "" "Unless an ``'r'`` or ``'R'`` prefix is present, escape sequences in string " "and bytes literals are interpreted according to rules similar to those used " "by Standard C. The recognized escape sequences are:" msgstr "" -#: reference/lexical_analysis.rst:557 reference/lexical_analysis.rst:590 +#: reference/lexical_analysis.rst:558 reference/lexical_analysis.rst:591 msgid "Escape Sequence" msgstr "" -#: reference/lexical_analysis.rst:557 reference/lexical_analysis.rst:590 +#: reference/lexical_analysis.rst:558 reference/lexical_analysis.rst:591 msgid "Meaning" msgstr "" -#: reference/lexical_analysis.rst:557 reference/lexical_analysis.rst:590 +#: reference/lexical_analysis.rst:558 reference/lexical_analysis.rst:591 msgid "Notes" msgstr "" -#: reference/lexical_analysis.rst:559 +#: reference/lexical_analysis.rst:560 msgid "``\\``\\ <newline>" msgstr "" -#: reference/lexical_analysis.rst:559 +#: reference/lexical_analysis.rst:560 msgid "Backslash and newline ignored" msgstr "" -#: reference/lexical_analysis.rst:559 +#: reference/lexical_analysis.rst:560 msgid "\\(1)" msgstr "" -#: reference/lexical_analysis.rst:561 +#: reference/lexical_analysis.rst:562 msgid "``\\\\``" msgstr "" -#: reference/lexical_analysis.rst:561 +#: reference/lexical_analysis.rst:562 msgid "Backslash (``\\``)" msgstr "" -#: reference/lexical_analysis.rst:563 +#: reference/lexical_analysis.rst:564 msgid "``\\'``" msgstr "" -#: reference/lexical_analysis.rst:563 +#: reference/lexical_analysis.rst:564 msgid "Single quote (``'``)" msgstr "" -#: reference/lexical_analysis.rst:565 +#: reference/lexical_analysis.rst:566 msgid "``\\\"``" msgstr "" -#: reference/lexical_analysis.rst:565 +#: reference/lexical_analysis.rst:566 msgid "Double quote (``\"``)" msgstr "" -#: reference/lexical_analysis.rst:567 +#: reference/lexical_analysis.rst:568 msgid "``\\a``" msgstr "" -#: reference/lexical_analysis.rst:567 +#: reference/lexical_analysis.rst:568 msgid "ASCII Bell (BEL)" msgstr "" -#: reference/lexical_analysis.rst:569 +#: reference/lexical_analysis.rst:570 msgid "``\\b``" msgstr "" -#: reference/lexical_analysis.rst:569 +#: reference/lexical_analysis.rst:570 msgid "ASCII Backspace (BS)" msgstr "" -#: reference/lexical_analysis.rst:571 +#: reference/lexical_analysis.rst:572 msgid "``\\f``" msgstr "" -#: reference/lexical_analysis.rst:571 +#: reference/lexical_analysis.rst:572 msgid "ASCII Formfeed (FF)" msgstr "" -#: reference/lexical_analysis.rst:573 +#: reference/lexical_analysis.rst:574 msgid "``\\n``" msgstr "" -#: reference/lexical_analysis.rst:573 +#: reference/lexical_analysis.rst:574 msgid "ASCII Linefeed (LF)" msgstr "" -#: reference/lexical_analysis.rst:575 +#: reference/lexical_analysis.rst:576 msgid "``\\r``" msgstr "" -#: reference/lexical_analysis.rst:575 +#: reference/lexical_analysis.rst:576 msgid "ASCII Carriage Return (CR)" msgstr "" -#: reference/lexical_analysis.rst:577 +#: reference/lexical_analysis.rst:578 msgid "``\\t``" msgstr "" -#: reference/lexical_analysis.rst:577 +#: reference/lexical_analysis.rst:578 msgid "ASCII Horizontal Tab (TAB)" msgstr "" -#: reference/lexical_analysis.rst:579 +#: reference/lexical_analysis.rst:580 msgid "``\\v``" msgstr "" -#: reference/lexical_analysis.rst:579 +#: reference/lexical_analysis.rst:580 msgid "ASCII Vertical Tab (VT)" msgstr "" -#: reference/lexical_analysis.rst:581 +#: reference/lexical_analysis.rst:582 msgid ":samp:`\\\\\\\\{ooo}`" msgstr "" -#: reference/lexical_analysis.rst:581 +#: reference/lexical_analysis.rst:582 msgid "Character with octal value *ooo*" msgstr "" -#: reference/lexical_analysis.rst:581 +#: reference/lexical_analysis.rst:582 msgid "(2,4)" msgstr "" -#: reference/lexical_analysis.rst:584 +#: reference/lexical_analysis.rst:585 msgid ":samp:`\\\\x{hh}`" msgstr "" -#: reference/lexical_analysis.rst:584 +#: reference/lexical_analysis.rst:585 msgid "Character with hex value *hh*" msgstr "" -#: reference/lexical_analysis.rst:584 +#: reference/lexical_analysis.rst:585 msgid "(3,4)" msgstr "" -#: reference/lexical_analysis.rst:587 +#: reference/lexical_analysis.rst:588 msgid "Escape sequences only recognized in string literals are:" msgstr "" -#: reference/lexical_analysis.rst:592 +#: reference/lexical_analysis.rst:593 msgid ":samp:`\\\\N\\\\{{name}\\\\}`" msgstr "" -#: reference/lexical_analysis.rst:592 +#: reference/lexical_analysis.rst:593 msgid "Character named *name* in the Unicode database" msgstr "" -#: reference/lexical_analysis.rst:592 +#: reference/lexical_analysis.rst:593 msgid "\\(5)" msgstr "" -#: reference/lexical_analysis.rst:595 +#: reference/lexical_analysis.rst:596 msgid ":samp:`\\\\u{xxxx}`" msgstr "" -#: reference/lexical_analysis.rst:595 +#: reference/lexical_analysis.rst:596 msgid "Character with 16-bit hex value *xxxx*" msgstr "" -#: reference/lexical_analysis.rst:595 +#: reference/lexical_analysis.rst:596 msgid "\\(6)" msgstr "" -#: reference/lexical_analysis.rst:598 +#: reference/lexical_analysis.rst:599 msgid ":samp:`\\\\U{xxxxxxxx}`" msgstr "" -#: reference/lexical_analysis.rst:598 +#: reference/lexical_analysis.rst:599 msgid "Character with 32-bit hex value *xxxxxxxx*" msgstr "" -#: reference/lexical_analysis.rst:598 +#: reference/lexical_analysis.rst:599 msgid "\\(7)" msgstr "" -#: reference/lexical_analysis.rst:602 +#: reference/lexical_analysis.rst:603 msgid "Notes:" msgstr "" -#: reference/lexical_analysis.rst:605 +#: reference/lexical_analysis.rst:606 msgid "A backslash can be added at the end of a line to ignore the newline::" msgstr "" -#: reference/lexical_analysis.rst:607 +#: reference/lexical_analysis.rst:608 msgid "" ">>> 'This string will not include \\\n" "... backslashes or newline characters.'\n" "'This string will not include backslashes or newline characters.'" msgstr "" -#: reference/lexical_analysis.rst:611 +#: reference/lexical_analysis.rst:612 msgid "" "The same result can be achieved using :ref:`triple-quoted strings " "<strings>`, or parentheses and :ref:`string literal concatenation <string-" "concatenation>`." msgstr "" -#: reference/lexical_analysis.rst:616 +#: reference/lexical_analysis.rst:617 msgid "As in Standard C, up to three octal digits are accepted." msgstr "" -#: reference/lexical_analysis.rst:618 +#: reference/lexical_analysis.rst:619 msgid "" "Octal escapes with value larger than ``0o377`` produce a :exc:" "`DeprecationWarning`." msgstr "" -#: reference/lexical_analysis.rst:622 +#: reference/lexical_analysis.rst:623 msgid "" "Octal escapes with value larger than ``0o377`` produce a :exc:" "`SyntaxWarning`. In a future Python version they will be eventually a :exc:" "`SyntaxError`." msgstr "" -#: reference/lexical_analysis.rst:628 +#: reference/lexical_analysis.rst:629 msgid "Unlike in Standard C, exactly two hex digits are required." msgstr "" -#: reference/lexical_analysis.rst:631 +#: reference/lexical_analysis.rst:632 msgid "" "In a bytes literal, hexadecimal and octal escapes denote the byte with the " "given value. In a string literal, these escapes denote a Unicode character " "with the given value." msgstr "" -#: reference/lexical_analysis.rst:636 +#: reference/lexical_analysis.rst:637 msgid "Support for name aliases [#]_ has been added." msgstr "" -#: reference/lexical_analysis.rst:640 +#: reference/lexical_analysis.rst:641 msgid "Exactly four hex digits are required." msgstr "" -#: reference/lexical_analysis.rst:643 +#: reference/lexical_analysis.rst:644 msgid "" "Any Unicode character can be encoded this way. Exactly eight hex digits are " "required." msgstr "" -#: reference/lexical_analysis.rst:649 +#: reference/lexical_analysis.rst:650 msgid "" "Unlike Standard C, all unrecognized escape sequences are left in the string " "unchanged, i.e., *the backslash is left in the result*. (This behavior is " @@ -910,17 +911,17 @@ msgid "" "category of unrecognized escapes for bytes literals." msgstr "" -#: reference/lexical_analysis.rst:656 +#: reference/lexical_analysis.rst:657 msgid "Unrecognized escape sequences produce a :exc:`DeprecationWarning`." msgstr "" -#: reference/lexical_analysis.rst:659 +#: reference/lexical_analysis.rst:660 msgid "" "Unrecognized escape sequences produce a :exc:`SyntaxWarning`. In a future " "Python version they will be eventually a :exc:`SyntaxError`." msgstr "" -#: reference/lexical_analysis.rst:663 +#: reference/lexical_analysis.rst:664 msgid "" "Even in a raw literal, quotes can be escaped with a backslash, but the " "backslash remains in the result; for example, ``r\"\\\"\"`` is a valid " @@ -933,11 +934,11 @@ msgid "" "continuation." msgstr "" -#: reference/lexical_analysis.rst:676 +#: reference/lexical_analysis.rst:677 msgid "String literal concatenation" msgstr "" -#: reference/lexical_analysis.rst:678 +#: reference/lexical_analysis.rst:679 msgid "" "Multiple adjacent string or bytes literals (delimited by whitespace), " "possibly using different quoting conventions, are allowed, and their meaning " @@ -947,14 +948,14 @@ msgid "" "lines, or even to add comments to parts of strings, for example::" msgstr "" -#: reference/lexical_analysis.rst:685 +#: reference/lexical_analysis.rst:686 msgid "" "re.compile(\"[A-Za-z_]\" # letter or underscore\n" " \"[A-Za-z0-9_]*\" # letter, digit or underscore\n" " )" msgstr "" -#: reference/lexical_analysis.rst:689 +#: reference/lexical_analysis.rst:690 msgid "" "Note that this feature is defined at the syntactical level, but implemented " "at compile time. The '+' operator must be used to concatenate string " @@ -964,11 +965,11 @@ msgid "" "with plain string literals." msgstr "" -#: reference/lexical_analysis.rst:712 +#: reference/lexical_analysis.rst:713 msgid "f-strings" msgstr "" -#: reference/lexical_analysis.rst:716 +#: reference/lexical_analysis.rst:717 msgid "" "A :dfn:`formatted string literal` or :dfn:`f-string` is a string literal " "that is prefixed with ``'f'`` or ``'F'``. These strings may contain " @@ -977,14 +978,14 @@ msgid "" "are really expressions evaluated at run time." msgstr "" -#: reference/lexical_analysis.rst:722 +#: reference/lexical_analysis.rst:723 msgid "" "Escape sequences are decoded like in ordinary string literals (except when a " "literal is also marked as a raw string). After decoding, the grammar for " "the contents of the string is:" msgstr "" -#: reference/lexical_analysis.rst:736 +#: reference/lexical_analysis.rst:737 msgid "" "The parts of the string outside curly braces are treated literally, except " "that any doubled curly braces ``'{{'`` or ``'}}'`` are replaced with the " @@ -997,7 +998,7 @@ msgid "" "replacement field ends with a closing curly bracket ``'}'``." msgstr "" -#: reference/lexical_analysis.rst:746 +#: reference/lexical_analysis.rst:747 msgid "" "Expressions in formatted string literals are treated like regular Python " "expressions surrounded by parentheses, with a few exceptions. An empty " @@ -1011,27 +1012,27 @@ msgid "" "replacement fields must be closed in a different line." msgstr "" -#: reference/lexical_analysis.rst:757 +#: reference/lexical_analysis.rst:758 msgid "" ">>> f\"abc{a # This is a comment }\"\n" "... + 3}\"\n" "'abc5'" msgstr "" -#: reference/lexical_analysis.rst:763 +#: reference/lexical_analysis.rst:764 msgid "" "Prior to Python 3.7, an :keyword:`await` expression and comprehensions " "containing an :keyword:`async for` clause were illegal in the expressions in " "formatted string literals due to a problem with the implementation." msgstr "" -#: reference/lexical_analysis.rst:768 +#: reference/lexical_analysis.rst:769 msgid "" "Prior to Python 3.12, comments were not allowed inside f-string replacement " "fields." msgstr "" -#: reference/lexical_analysis.rst:772 +#: reference/lexical_analysis.rst:773 msgid "" "When the equal sign ``'='`` is provided, the output will have the expression " "text, the ``'='`` and the evaluated value. Spaces after the opening brace " @@ -1042,18 +1043,18 @@ msgid "" "r'`` is declared." msgstr "" -#: reference/lexical_analysis.rst:780 +#: reference/lexical_analysis.rst:781 msgid "The equal sign ``'='``." msgstr "" -#: reference/lexical_analysis.rst:783 +#: reference/lexical_analysis.rst:784 msgid "" "If a conversion is specified, the result of evaluating the expression is " "converted before formatting. Conversion ``'!s'`` calls :func:`str` on the " "result, ``'!r'`` calls :func:`repr`, and ``'!a'`` calls :func:`ascii`." msgstr "" -#: reference/lexical_analysis.rst:787 +#: reference/lexical_analysis.rst:788 msgid "" "The result is then formatted using the :func:`format` protocol. The format " "specifier is passed to the :meth:`~object.__format__` method of the " @@ -1062,7 +1063,7 @@ msgid "" "value of the whole string." msgstr "" -#: reference/lexical_analysis.rst:793 +#: reference/lexical_analysis.rst:794 msgid "" "Top-level format specifiers may include nested replacement fields. These " "nested fields may include their own conversion fields and :ref:`format " @@ -1071,17 +1072,17 @@ msgid "" "as that used by the :meth:`str.format` method." msgstr "" -#: reference/lexical_analysis.rst:799 +#: reference/lexical_analysis.rst:800 msgid "" "Formatted string literals may be concatenated, but replacement fields cannot " "be split across literals." msgstr "" -#: reference/lexical_analysis.rst:802 +#: reference/lexical_analysis.rst:803 msgid "Some examples of formatted string literals::" msgstr "" -#: reference/lexical_analysis.rst:804 +#: reference/lexical_analysis.rst:805 msgid "" ">>> name = \"Fred\"\n" ">>> f\"He said his name is {name!r}.\"\n" @@ -1113,32 +1114,32 @@ msgid "" "'line = \"The mill\\'s closed\" '" msgstr "" -#: reference/lexical_analysis.rst:834 +#: reference/lexical_analysis.rst:835 msgid "" "Reusing the outer f-string quoting type inside a replacement field is " "permitted::" msgstr "" -#: reference/lexical_analysis.rst:837 +#: reference/lexical_analysis.rst:838 msgid "" ">>> a = dict(x=2)\n" ">>> f\"abc {a[\"x\"]} def\"\n" "'abc 2 def'" msgstr "" -#: reference/lexical_analysis.rst:841 +#: reference/lexical_analysis.rst:842 msgid "" "Prior to Python 3.12, reuse of the same quoting type of the outer f-string " "inside a replacement field was not possible." msgstr "" -#: reference/lexical_analysis.rst:845 +#: reference/lexical_analysis.rst:846 msgid "" "Backslashes are also allowed in replacement fields and are evaluated the " "same way as in any other context::" msgstr "" -#: reference/lexical_analysis.rst:848 +#: reference/lexical_analysis.rst:849 msgid "" ">>> a = [\"a\", \"b\", \"c\"]\n" ">>> print(f\"List a contains:\\n{\"\\n\".join(a)}\")\n" @@ -1148,19 +1149,19 @@ msgid "" "c" msgstr "" -#: reference/lexical_analysis.rst:855 +#: reference/lexical_analysis.rst:856 msgid "" "Prior to Python 3.12, backslashes were not permitted inside an f-string " "replacement field." msgstr "" -#: reference/lexical_analysis.rst:859 +#: reference/lexical_analysis.rst:860 msgid "" "Formatted string literals cannot be used as docstrings, even if they do not " "include expressions." msgstr "" -#: reference/lexical_analysis.rst:864 +#: reference/lexical_analysis.rst:865 msgid "" ">>> def foo():\n" "... f\"Not a docstring\"\n" @@ -1169,83 +1170,83 @@ msgid "" "True" msgstr "" -#: reference/lexical_analysis.rst:870 +#: reference/lexical_analysis.rst:871 msgid "" "See also :pep:`498` for the proposal that added formatted string literals, " "and :meth:`str.format`, which uses a related format string mechanism." msgstr "" -#: reference/lexical_analysis.rst:877 +#: reference/lexical_analysis.rst:878 msgid "Numeric literals" msgstr "" -#: reference/lexical_analysis.rst:883 +#: reference/lexical_analysis.rst:884 msgid "" "There are three types of numeric literals: integers, floating-point numbers, " "and imaginary numbers. There are no complex literals (complex numbers can " "be formed by adding a real number and an imaginary number)." msgstr "" -#: reference/lexical_analysis.rst:887 +#: reference/lexical_analysis.rst:888 msgid "" "Note that numeric literals do not include a sign; a phrase like ``-1`` is " "actually an expression composed of the unary operator '``-``' and the " "literal ``1``." msgstr "" -#: reference/lexical_analysis.rst:901 +#: reference/lexical_analysis.rst:902 msgid "Integer literals" msgstr "" -#: reference/lexical_analysis.rst:903 +#: reference/lexical_analysis.rst:904 msgid "Integer literals are described by the following lexical definitions:" msgstr "" -#: reference/lexical_analysis.rst:917 +#: reference/lexical_analysis.rst:918 msgid "" "There is no limit for the length of integer literals apart from what can be " "stored in available memory." msgstr "" -#: reference/lexical_analysis.rst:920 +#: reference/lexical_analysis.rst:921 msgid "" "Underscores are ignored for determining the numeric value of the literal. " "They can be used to group digits for enhanced readability. One underscore " "can occur between digits, and after base specifiers like ``0x``." msgstr "" -#: reference/lexical_analysis.rst:924 +#: reference/lexical_analysis.rst:925 msgid "" "Note that leading zeros in a non-zero decimal number are not allowed. This " "is for disambiguation with C-style octal literals, which Python used before " "version 3.0." msgstr "" -#: reference/lexical_analysis.rst:928 +#: reference/lexical_analysis.rst:929 msgid "Some examples of integer literals::" msgstr "" -#: reference/lexical_analysis.rst:930 +#: reference/lexical_analysis.rst:931 msgid "" "7 2147483647 0o177 0b100110111\n" "3 79228162514264337593543950336 0o377 0xdeadbeef\n" " 100_000_000_000 0b_1110_0101" msgstr "" -#: reference/lexical_analysis.rst:934 reference/lexical_analysis.rst:966 +#: reference/lexical_analysis.rst:935 reference/lexical_analysis.rst:967 msgid "Underscores are now allowed for grouping purposes in literals." msgstr "" -#: reference/lexical_analysis.rst:945 +#: reference/lexical_analysis.rst:946 msgid "Floating-point literals" msgstr "" -#: reference/lexical_analysis.rst:947 +#: reference/lexical_analysis.rst:948 msgid "" "Floating-point literals are described by the following lexical definitions:" msgstr "" -#: reference/lexical_analysis.rst:957 +#: reference/lexical_analysis.rst:958 msgid "" "Note that the integer and exponent parts are always interpreted using radix " "10. For example, ``077e010`` is legal, and denotes the same number as " @@ -1254,23 +1255,23 @@ msgid "" "grouping." msgstr "" -#: reference/lexical_analysis.rst:962 +#: reference/lexical_analysis.rst:963 msgid "Some examples of floating-point literals::" msgstr "" -#: reference/lexical_analysis.rst:964 +#: reference/lexical_analysis.rst:965 msgid "3.14 10. .001 1e100 3.14e-10 0e0 3.14_15_93" msgstr "" -#: reference/lexical_analysis.rst:975 +#: reference/lexical_analysis.rst:976 msgid "Imaginary literals" msgstr "" -#: reference/lexical_analysis.rst:977 +#: reference/lexical_analysis.rst:978 msgid "Imaginary literals are described by the following lexical definitions:" msgstr "" -#: reference/lexical_analysis.rst:982 +#: reference/lexical_analysis.rst:983 msgid "" "An imaginary literal yields a complex number with a real part of 0.0. " "Complex numbers are represented as a pair of floating-point numbers and have " @@ -1279,34 +1280,34 @@ msgid "" "Some examples of imaginary literals::" msgstr "" -#: reference/lexical_analysis.rst:988 +#: reference/lexical_analysis.rst:989 msgid "3.14j 10.j 10j .001j 1e100j 3.14e-10j 3.14_15_93j" msgstr "" -#: reference/lexical_analysis.rst:994 +#: reference/lexical_analysis.rst:995 msgid "Operators" msgstr "" -#: reference/lexical_analysis.rst:998 +#: reference/lexical_analysis.rst:999 msgid "The following tokens are operators:" msgstr "" -#: reference/lexical_analysis.rst:1000 +#: reference/lexical_analysis.rst:1001 msgid "" "+ - * ** / // % @\n" "<< >> & | ^ ~ :=\n" "< > <= >= == !=" msgstr "" -#: reference/lexical_analysis.rst:1011 +#: reference/lexical_analysis.rst:1012 msgid "Delimiters" msgstr "" -#: reference/lexical_analysis.rst:1015 +#: reference/lexical_analysis.rst:1016 msgid "The following tokens serve as delimiters in the grammar:" msgstr "" -#: reference/lexical_analysis.rst:1017 +#: reference/lexical_analysis.rst:1018 msgid "" "( ) [ ] { }\n" ", : ! . ; @ =\n" @@ -1314,7 +1315,7 @@ msgid "" "@= &= |= ^= >>= <<= **=" msgstr "" -#: reference/lexical_analysis.rst:1024 +#: reference/lexical_analysis.rst:1025 msgid "" "The period can also occur in floating-point and imaginary literals. A " "sequence of three periods has a special meaning as an ellipsis literal. The " @@ -1322,31 +1323,31 @@ msgid "" "as delimiters, but also perform an operation." msgstr "" -#: reference/lexical_analysis.rst:1029 +#: reference/lexical_analysis.rst:1030 msgid "" "The following printing ASCII characters have special meaning as part of " "other tokens or are otherwise significant to the lexical analyzer:" msgstr "" -#: reference/lexical_analysis.rst:1032 +#: reference/lexical_analysis.rst:1033 msgid "' \" # \\" msgstr "" -#: reference/lexical_analysis.rst:1036 +#: reference/lexical_analysis.rst:1037 msgid "" "The following printing ASCII characters are not used in Python. Their " "occurrence outside string literals and comments is an unconditional error:" msgstr "" -#: reference/lexical_analysis.rst:1039 +#: reference/lexical_analysis.rst:1040 msgid "$ ? `" msgstr "" -#: reference/lexical_analysis.rst:1045 +#: reference/lexical_analysis.rst:1046 msgid "Footnotes" msgstr "" -#: reference/lexical_analysis.rst:1046 +#: reference/lexical_analysis.rst:1047 msgid "https://www.unicode.org/Public/15.0.0/ucd/NameAliases.txt" msgstr "" @@ -1362,404 +1363,404 @@ msgstr "" msgid "token" msgstr "" -#: reference/lexical_analysis.rst:25 +#: reference/lexical_analysis.rst:26 msgid "line structure" msgstr "" -#: reference/lexical_analysis.rst:35 +#: reference/lexical_analysis.rst:36 msgid "logical line" msgstr "" -#: reference/lexical_analysis.rst:35 reference/lexical_analysis.rst:114 -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:36 reference/lexical_analysis.rst:115 +#: reference/lexical_analysis.rst:532 msgid "physical line" msgstr "" -#: reference/lexical_analysis.rst:35 reference/lexical_analysis.rst:114 +#: reference/lexical_analysis.rst:36 reference/lexical_analysis.rst:115 msgid "line joining" msgstr "" -#: reference/lexical_analysis.rst:35 +#: reference/lexical_analysis.rst:36 msgid "NEWLINE token" msgstr "" -#: reference/lexical_analysis.rst:67 +#: reference/lexical_analysis.rst:68 msgid "comment" msgstr "" -#: reference/lexical_analysis.rst:67 +#: reference/lexical_analysis.rst:68 msgid "hash character" msgstr "" -#: reference/lexical_analysis.rst:67 reference/lexical_analysis.rst:81 +#: reference/lexical_analysis.rst:68 reference/lexical_analysis.rst:82 msgid "# (hash)" msgstr "" -#: reference/lexical_analysis.rst:81 +#: reference/lexical_analysis.rst:82 msgid "source character set" msgstr "" -#: reference/lexical_analysis.rst:81 +#: reference/lexical_analysis.rst:82 msgid "encoding declarations (source file)" msgstr "" -#: reference/lexical_analysis.rst:81 +#: reference/lexical_analysis.rst:82 msgid "source encoding declaration" msgstr "" -#: reference/lexical_analysis.rst:114 +#: reference/lexical_analysis.rst:115 msgid "line continuation" msgstr "" -#: reference/lexical_analysis.rst:114 +#: reference/lexical_analysis.rst:115 msgid "backslash character" msgstr "" -#: reference/lexical_analysis.rst:159 +#: reference/lexical_analysis.rst:160 msgid "blank line" msgstr "" -#: reference/lexical_analysis.rst:174 +#: reference/lexical_analysis.rst:175 msgid "indentation" msgstr "" -#: reference/lexical_analysis.rst:174 +#: reference/lexical_analysis.rst:175 msgid "leading whitespace" msgstr "" -#: reference/lexical_analysis.rst:174 +#: reference/lexical_analysis.rst:175 msgid "space" msgstr "" -#: reference/lexical_analysis.rst:174 +#: reference/lexical_analysis.rst:175 msgid "tab" msgstr "" -#: reference/lexical_analysis.rst:174 +#: reference/lexical_analysis.rst:175 msgid "grouping" msgstr "" -#: reference/lexical_analysis.rst:174 +#: reference/lexical_analysis.rst:175 msgid "statement grouping" msgstr "" -#: reference/lexical_analysis.rst:202 +#: reference/lexical_analysis.rst:203 msgid "INDENT token" msgstr "" -#: reference/lexical_analysis.rst:202 +#: reference/lexical_analysis.rst:203 msgid "DEDENT token" msgstr "" -#: reference/lexical_analysis.rst:277 +#: reference/lexical_analysis.rst:278 msgid "identifier" msgstr "" -#: reference/lexical_analysis.rst:277 +#: reference/lexical_analysis.rst:278 msgid "name" msgstr "" -#: reference/lexical_analysis.rst:333 reference/lexical_analysis.rst:357 +#: reference/lexical_analysis.rst:334 reference/lexical_analysis.rst:358 msgid "keyword" msgstr "" -#: reference/lexical_analysis.rst:333 +#: reference/lexical_analysis.rst:334 msgid "reserved word" msgstr "" -#: reference/lexical_analysis.rst:357 +#: reference/lexical_analysis.rst:358 msgid "soft keyword" msgstr "" -#: reference/lexical_analysis.rst:376 +#: reference/lexical_analysis.rst:377 msgid "_, identifiers" msgstr "" -#: reference/lexical_analysis.rst:376 +#: reference/lexical_analysis.rst:377 msgid "__, identifiers" msgstr "" -#: reference/lexical_analysis.rst:432 +#: reference/lexical_analysis.rst:433 msgid "literal" msgstr "" -#: reference/lexical_analysis.rst:432 +#: reference/lexical_analysis.rst:433 msgid "constant" msgstr "" -#: reference/lexical_analysis.rst:437 reference/lexical_analysis.rst:478 +#: reference/lexical_analysis.rst:438 reference/lexical_analysis.rst:479 msgid "string literal" msgstr "" -#: reference/lexical_analysis.rst:437 reference/lexical_analysis.rst:491 +#: reference/lexical_analysis.rst:438 reference/lexical_analysis.rst:492 msgid "bytes literal" msgstr "" -#: reference/lexical_analysis.rst:437 +#: reference/lexical_analysis.rst:438 msgid "ASCII" msgstr "" -#: reference/lexical_analysis.rst:437 +#: reference/lexical_analysis.rst:438 msgid "' (single quote)" msgstr "" -#: reference/lexical_analysis.rst:437 +#: reference/lexical_analysis.rst:438 msgid "\" (double quote)" msgstr "" -#: reference/lexical_analysis.rst:437 +#: reference/lexical_analysis.rst:438 msgid "u'" msgstr "" -#: reference/lexical_analysis.rst:437 +#: reference/lexical_analysis.rst:438 msgid "u\"" msgstr "" -#: reference/lexical_analysis.rst:478 +#: reference/lexical_analysis.rst:479 msgid "triple-quoted string" msgstr "" -#: reference/lexical_analysis.rst:478 +#: reference/lexical_analysis.rst:479 msgid "Unicode Consortium" msgstr "" -#: reference/lexical_analysis.rst:478 +#: reference/lexical_analysis.rst:479 msgid "raw string" msgstr "" -#: reference/lexical_analysis.rst:478 +#: reference/lexical_analysis.rst:479 msgid "\"\"\"" msgstr "" -#: reference/lexical_analysis.rst:478 +#: reference/lexical_analysis.rst:479 msgid "'''" msgstr "" -#: reference/lexical_analysis.rst:491 +#: reference/lexical_analysis.rst:492 msgid "b'" msgstr "" -#: reference/lexical_analysis.rst:491 +#: reference/lexical_analysis.rst:492 msgid "b\"" msgstr "" -#: reference/lexical_analysis.rst:500 +#: reference/lexical_analysis.rst:501 msgid "r'" msgstr "" -#: reference/lexical_analysis.rst:500 +#: reference/lexical_analysis.rst:501 msgid "raw string literal" msgstr "" -#: reference/lexical_analysis.rst:500 +#: reference/lexical_analysis.rst:501 msgid "r\"" msgstr "" -#: reference/lexical_analysis.rst:518 +#: reference/lexical_analysis.rst:519 msgid "f'" msgstr "" -#: reference/lexical_analysis.rst:518 reference/lexical_analysis.rst:696 +#: reference/lexical_analysis.rst:519 reference/lexical_analysis.rst:697 msgid "formatted string literal" msgstr "" -#: reference/lexical_analysis.rst:518 +#: reference/lexical_analysis.rst:519 msgid "f\"" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "escape sequence" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "Standard C" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "C" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "\\ (backslash)" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "\\\\" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "\\a" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "\\b" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "\\f" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "\\n" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "\\r" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "\\t" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "\\v" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "\\x" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "\\N" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "\\u" msgstr "" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:532 msgid "\\U" msgstr "" -#: reference/lexical_analysis.rst:647 +#: reference/lexical_analysis.rst:648 msgid "unrecognized escape sequence" msgstr "" -#: reference/lexical_analysis.rst:696 +#: reference/lexical_analysis.rst:697 msgid "interpolated string literal" msgstr "" -#: reference/lexical_analysis.rst:696 +#: reference/lexical_analysis.rst:697 msgid "string" msgstr "" -#: reference/lexical_analysis.rst:696 +#: reference/lexical_analysis.rst:697 msgid "formatted literal" msgstr "" -#: reference/lexical_analysis.rst:696 +#: reference/lexical_analysis.rst:697 msgid "interpolated literal" msgstr "" -#: reference/lexical_analysis.rst:696 +#: reference/lexical_analysis.rst:697 msgid "f-string" msgstr "" -#: reference/lexical_analysis.rst:696 +#: reference/lexical_analysis.rst:697 msgid "fstring" msgstr "" -#: reference/lexical_analysis.rst:696 +#: reference/lexical_analysis.rst:697 msgid "{} (curly brackets)" msgstr "" -#: reference/lexical_analysis.rst:696 +#: reference/lexical_analysis.rst:697 msgid "in formatted string literal" msgstr "" -#: reference/lexical_analysis.rst:696 +#: reference/lexical_analysis.rst:697 msgid "! (exclamation)" msgstr "" -#: reference/lexical_analysis.rst:696 +#: reference/lexical_analysis.rst:697 msgid ": (colon)" msgstr "" -#: reference/lexical_analysis.rst:696 +#: reference/lexical_analysis.rst:697 msgid "= (equals)" msgstr "" -#: reference/lexical_analysis.rst:696 +#: reference/lexical_analysis.rst:697 msgid "for help in debugging using string literals" msgstr "" -#: reference/lexical_analysis.rst:879 +#: reference/lexical_analysis.rst:880 msgid "number" msgstr "" -#: reference/lexical_analysis.rst:879 +#: reference/lexical_analysis.rst:880 msgid "numeric literal" msgstr "" -#: reference/lexical_analysis.rst:879 reference/lexical_analysis.rst:892 +#: reference/lexical_analysis.rst:880 reference/lexical_analysis.rst:893 msgid "integer literal" msgstr "" -#: reference/lexical_analysis.rst:879 +#: reference/lexical_analysis.rst:880 msgid "floating-point literal" msgstr "" -#: reference/lexical_analysis.rst:879 +#: reference/lexical_analysis.rst:880 msgid "hexadecimal literal" msgstr "" -#: reference/lexical_analysis.rst:879 +#: reference/lexical_analysis.rst:880 msgid "octal literal" msgstr "" -#: reference/lexical_analysis.rst:879 +#: reference/lexical_analysis.rst:880 msgid "binary literal" msgstr "" -#: reference/lexical_analysis.rst:879 +#: reference/lexical_analysis.rst:880 msgid "decimal literal" msgstr "" -#: reference/lexical_analysis.rst:879 +#: reference/lexical_analysis.rst:880 msgid "imaginary literal" msgstr "" -#: reference/lexical_analysis.rst:879 +#: reference/lexical_analysis.rst:880 msgid "complex literal" msgstr "" -#: reference/lexical_analysis.rst:892 +#: reference/lexical_analysis.rst:893 msgid "0b" msgstr "" -#: reference/lexical_analysis.rst:892 +#: reference/lexical_analysis.rst:893 msgid "0o" msgstr "" -#: reference/lexical_analysis.rst:892 +#: reference/lexical_analysis.rst:893 msgid "0x" msgstr "" -#: reference/lexical_analysis.rst:892 reference/lexical_analysis.rst:938 +#: reference/lexical_analysis.rst:893 reference/lexical_analysis.rst:939 msgid "_ (underscore)" msgstr "" -#: reference/lexical_analysis.rst:892 reference/lexical_analysis.rst:938 -#: reference/lexical_analysis.rst:970 +#: reference/lexical_analysis.rst:893 reference/lexical_analysis.rst:939 +#: reference/lexical_analysis.rst:971 msgid "in numeric literal" msgstr "" -#: reference/lexical_analysis.rst:938 +#: reference/lexical_analysis.rst:939 msgid ". (dot)" msgstr "" -#: reference/lexical_analysis.rst:938 +#: reference/lexical_analysis.rst:939 msgid "e" msgstr "" -#: reference/lexical_analysis.rst:970 +#: reference/lexical_analysis.rst:971 msgid "j" msgstr "" -#: reference/lexical_analysis.rst:996 +#: reference/lexical_analysis.rst:997 msgid "operators" msgstr "" -#: reference/lexical_analysis.rst:1013 +#: reference/lexical_analysis.rst:1014 msgid "delimiters" msgstr "" diff --git a/reference/simple_stmts.po b/reference/simple_stmts.po index 70127a27b..ad39dd741 100644 --- a/reference/simple_stmts.po +++ b/reference/simple_stmts.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -442,12 +442,13 @@ msgstr "" msgid "" "These equivalences assume that :const:`__debug__` and :exc:`AssertionError` " "refer to the built-in variables with those names. In the current " -"implementation, the built-in variable :const:`__debug__` is ``True`` under " -"normal circumstances, ``False`` when optimization is requested (command line " -"option :option:`-O`). The current code generator emits no code for an " -"assert statement when optimization is requested at compile time. Note that " -"it is unnecessary to include the source code for the expression that failed " -"in the error message; it will be displayed as part of the stack trace." +"implementation, the built-in variable ``__debug__`` is ``True`` under normal " +"circumstances, ``False`` when optimization is requested (command line " +"option :option:`-O`). The current code generator emits no code for an :" +"keyword:`assert` statement when optimization is requested at compile time. " +"Note that it is unnecessary to include the source code for the expression " +"that failed in the error message; it will be displayed as part of the stack " +"trace." msgstr "" #: reference/simple_stmts.rst:416 @@ -564,7 +565,7 @@ msgstr "" #: reference/simple_stmts.rst:533 msgid "" "A :keyword:`yield` statement is semantically equivalent to a :ref:`yield " -"expression <yieldexpr>`. The yield statement can be used to omit the " +"expression <yieldexpr>`. The ``yield`` statement can be used to omit the " "parentheses that would otherwise be required in the equivalent yield " "expression statement. For example, the yield statements ::" msgstr "" @@ -589,8 +590,9 @@ msgstr "" msgid "" "Yield expressions and statements are only used when defining a :term:" "`generator` function, and are only used in the body of the generator " -"function. Using yield in a function definition is sufficient to cause that " -"definition to create a generator function instead of a normal function." +"function. Using :keyword:`yield` in a function definition is sufficient to " +"cause that definition to create a generator function instead of a normal " +"function." msgstr "" #: reference/simple_stmts.rst:551 @@ -1100,35 +1102,20 @@ msgstr "" #: reference/simple_stmts.rst:967 msgid "" -"The :keyword:`global` statement is a declaration which holds for the entire " -"current code block. It means that the listed identifiers are to be " -"interpreted as globals. It would be impossible to assign to a global " +"The :keyword:`global` statement causes the listed identifiers to be " +"interpreted as globals. It would be impossible to assign to a global " "variable without :keyword:`!global`, although free variables may refer to " "globals without being declared global." msgstr "" -#: reference/simple_stmts.rst:973 +#: reference/simple_stmts.rst:972 msgid "" -"Names listed in a :keyword:`global` statement must not be used in the same " -"code block textually preceding that :keyword:`!global` statement." +"The :keyword:`global` statement applies to the entire scope of a function or " +"class body. A :exc:`SyntaxError` is raised if a variable is used or assigned " +"to prior to its global declaration in the scope." msgstr "" -#: reference/simple_stmts.rst:976 -msgid "" -"Names listed in a :keyword:`global` statement must not be defined as formal " -"parameters, or as targets in :keyword:`with` statements or :keyword:`except` " -"clauses, or in a :keyword:`for` target list, :keyword:`class` definition, " -"function definition, :keyword:`import` statement, or variable annotation." -msgstr "" - -#: reference/simple_stmts.rst:983 -msgid "" -"The current implementation does not enforce some of these restrictions, but " -"programs should not abuse this freedom, as future implementations may " -"enforce them or silently change the meaning of the program." -msgstr "" - -#: reference/simple_stmts.rst:992 +#: reference/simple_stmts.rst:981 msgid "" "**Programmer's note:** :keyword:`global` is a directive to the parser. It " "applies only to code parsed at the same time as the :keyword:`!global` " @@ -1140,11 +1127,11 @@ msgid "" "func:`compile` functions." msgstr "" -#: reference/simple_stmts.rst:1004 +#: reference/simple_stmts.rst:993 msgid "The :keyword:`!nonlocal` statement" msgstr "" -#: reference/simple_stmts.rst:1012 +#: reference/simple_stmts.rst:1001 msgid "" "When the definition of a function or class is nested (enclosed) within the " "definitions of other functions, its nonlocal scopes are the local scopes of " @@ -1156,64 +1143,64 @@ msgid "" "`SyntaxError` is raised." msgstr "" -#: reference/simple_stmts.rst:1021 +#: reference/simple_stmts.rst:1010 msgid "" -"The nonlocal statement applies to the entire scope of a function or class " -"body. A :exc:`SyntaxError` is raised if a variable is used or assigned to " -"prior to its nonlocal declaration in the scope." +"The :keyword:`nonlocal` statement applies to the entire scope of a function " +"or class body. A :exc:`SyntaxError` is raised if a variable is used or " +"assigned to prior to its nonlocal declaration in the scope." msgstr "" -#: reference/simple_stmts.rst:1027 +#: reference/simple_stmts.rst:1016 msgid ":pep:`3104` - Access to Names in Outer Scopes" msgstr "" -#: reference/simple_stmts.rst:1028 +#: reference/simple_stmts.rst:1017 msgid "The specification for the :keyword:`nonlocal` statement." msgstr "" -#: reference/simple_stmts.rst:1030 +#: reference/simple_stmts.rst:1019 msgid "" "**Programmer's note:** :keyword:`nonlocal` is a directive to the parser and " "applies only to code parsed along with it. See the note for the :keyword:" "`global` statement." msgstr "" -#: reference/simple_stmts.rst:1038 +#: reference/simple_stmts.rst:1027 msgid "The :keyword:`!type` statement" msgstr "" -#: reference/simple_stmts.rst:1045 +#: reference/simple_stmts.rst:1034 msgid "" "The :keyword:`!type` statement declares a type alias, which is an instance " "of :class:`typing.TypeAliasType`." msgstr "" -#: reference/simple_stmts.rst:1048 +#: reference/simple_stmts.rst:1037 msgid "For example, the following statement creates a type alias::" msgstr "" -#: reference/simple_stmts.rst:1050 +#: reference/simple_stmts.rst:1039 msgid "type Point = tuple[float, float]" msgstr "" -#: reference/simple_stmts.rst:1052 +#: reference/simple_stmts.rst:1041 msgid "This code is roughly equivalent to::" msgstr "" -#: reference/simple_stmts.rst:1054 +#: reference/simple_stmts.rst:1043 msgid "" "annotation-def VALUE_OF_Point():\n" " return tuple[float, float]\n" "Point = typing.TypeAliasType(\"Point\", VALUE_OF_Point())" msgstr "" -#: reference/simple_stmts.rst:1058 +#: reference/simple_stmts.rst:1047 msgid "" "``annotation-def`` indicates an :ref:`annotation scope <annotation-scopes>`, " "which behaves mostly like a function, but with several small differences." msgstr "" -#: reference/simple_stmts.rst:1061 +#: reference/simple_stmts.rst:1050 msgid "" "The value of the type alias is evaluated in the annotation scope. It is not " "evaluated when the type alias is created, but only when the value is " @@ -1222,21 +1209,21 @@ msgid "" "not yet defined." msgstr "" -#: reference/simple_stmts.rst:1067 +#: reference/simple_stmts.rst:1056 msgid "" "Type aliases may be made generic by adding a :ref:`type parameter list <type-" "params>` after the name. See :ref:`generic-type-aliases` for more." msgstr "" -#: reference/simple_stmts.rst:1070 +#: reference/simple_stmts.rst:1059 msgid ":keyword:`!type` is a :ref:`soft keyword <soft-keywords>`." msgstr "" -#: reference/simple_stmts.rst:1076 +#: reference/simple_stmts.rst:1065 msgid ":pep:`695` - Type Parameter Syntax" msgstr "" -#: reference/simple_stmts.rst:1077 +#: reference/simple_stmts.rst:1066 msgid "" "Introduced the :keyword:`!type` statement and syntax for generic classes and " "functions." @@ -1250,7 +1237,7 @@ msgstr "" #: reference/simple_stmts.rst:382 reference/simple_stmts.rst:447 #: reference/simple_stmts.rst:486 reference/simple_stmts.rst:559 #: reference/simple_stmts.rst:718 reference/simple_stmts.rst:873 -#: reference/simple_stmts.rst:1006 reference/simple_stmts.rst:1040 +#: reference/simple_stmts.rst:995 reference/simple_stmts.rst:1029 msgid "statement" msgstr "" @@ -1263,7 +1250,7 @@ msgstr "" msgid "list" msgstr "" -#: reference/simple_stmts.rst:987 +#: reference/simple_stmts.rst:976 msgid "built-in function" msgstr "" @@ -1351,7 +1338,7 @@ msgid "target" msgstr "" #: reference/simple_stmts.rst:382 reference/simple_stmts.rst:959 -#: reference/simple_stmts.rst:1006 +#: reference/simple_stmts.rst:995 msgid ", (comma)" msgstr "" @@ -1677,26 +1664,26 @@ msgstr "" msgid "future statement" msgstr "" -#: reference/simple_stmts.rst:1006 +#: reference/simple_stmts.rst:995 msgid "identifier list" msgstr "" -#: reference/simple_stmts.rst:987 +#: reference/simple_stmts.rst:976 msgid "exec" msgstr "" -#: reference/simple_stmts.rst:987 +#: reference/simple_stmts.rst:976 msgid "eval" msgstr "" -#: reference/simple_stmts.rst:987 +#: reference/simple_stmts.rst:976 msgid "compile" msgstr "" -#: reference/simple_stmts.rst:1006 +#: reference/simple_stmts.rst:995 msgid "nonlocal" msgstr "" -#: reference/simple_stmts.rst:1040 +#: reference/simple_stmts.rst:1029 msgid "type" msgstr "" diff --git a/sphinx.po b/sphinx.po index ee6a66418..c29be28a1 100644 --- a/sphinx.po +++ b/sphinx.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2022-12-28 16:25-0500\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -171,89 +171,93 @@ msgid "" msgstr "" #: tools/templates/dummy.html:6 -msgid "CPython implementation detail:" -msgstr "CPython uygulama ayrıntısı:" - -#: tools/templates/dummy.html:7 -msgid "" -"Deprecated since version {deprecated}, will be removed in version {removed}" -msgstr "" -"Sürüm {deprecated} 'den beri kullanım dışı, sürüm {removed} 'da kaldırılacak" - -#: tools/templates/dummy.html:8 -msgid "Deprecated since version {deprecated}, removed in version {removed}" +msgid "Availability" msgstr "" -"Sürüm {deprecated} 'den beri kullanım dışı, sürüm {removed} 'da kaldırıldı" -#: tools/templates/dummy.html:12 +#: tools/templates/dummy.html:10 msgid "Part of the" msgstr "Bir parçası" -#: tools/templates/dummy.html:13 +#: tools/templates/dummy.html:11 msgid "Limited API" msgstr "Sınırlı API" -#: tools/templates/dummy.html:14 +#: tools/templates/dummy.html:12 msgid "Stable ABI" msgstr "Kararlı ABI" -#: tools/templates/dummy.html:15 +#: tools/templates/dummy.html:13 msgid "(as an opaque struct)" msgstr "(bir opak yapı olarak)" -#: tools/templates/dummy.html:16 +#: tools/templates/dummy.html:14 msgid "(including all members)" msgstr "(tüm üyeler dahil)" -#: tools/templates/dummy.html:17 +#: tools/templates/dummy.html:15 msgid "since version %s" msgstr "%s sürümünden beri" -#: tools/templates/dummy.html:18 +#: tools/templates/dummy.html:16 msgid "(Only some members are part of the stable ABI.)" msgstr "(Sadece bazı üyeler kararlı ABI'ın bir parçasıdır.)" -#: tools/templates/dummy.html:19 +#: tools/templates/dummy.html:17 msgid "This is" msgstr "Bu" -#: tools/templates/dummy.html:20 +#: tools/templates/dummy.html:18 msgid "Unstable API" msgstr "Kararsız API" -#: tools/templates/dummy.html:21 +#: tools/templates/dummy.html:19 msgid ". It may change without warning in minor releases." msgstr ". Bu, küçük (minor) sürümlerde uyarı olmadan değişebilir." -#: tools/templates/dummy.html:22 +#: tools/templates/dummy.html:20 msgid "Return value: Always NULL." msgstr "Döndürdüğü değer: Her zaman NULL." -#: tools/templates/dummy.html:23 +#: tools/templates/dummy.html:21 msgid "Return value: New reference." msgstr "Döndürdüğü değer: Yeni referans." -#: tools/templates/dummy.html:24 +#: tools/templates/dummy.html:22 msgid "Return value: Borrowed reference." msgstr "Döndürdüğü değer: Ödünç alınmış referans." -#: tools/templates/dummy.html:28 +#: tools/templates/dummy.html:26 +msgid "CPython implementation detail:" +msgstr "CPython uygulama ayrıntısı:" + +#: tools/templates/dummy.html:30 +msgid "" +"Deprecated since version {deprecated}, will be removed in version {removed}" +msgstr "" +"Sürüm {deprecated} 'den beri kullanım dışı, sürüm {removed} 'da kaldırılacak" + +#: tools/templates/dummy.html:31 +msgid "Deprecated since version {deprecated}, removed in version {removed}" +msgstr "" +"Sürüm {deprecated} 'den beri kullanım dışı, sürüm {removed} 'da kaldırıldı" + +#: tools/templates/dummy.html:35 msgid "in development" msgstr "geliştirme aşamasında" -#: tools/templates/dummy.html:29 +#: tools/templates/dummy.html:36 msgid "pre-release" msgstr "önsürüm" -#: tools/templates/dummy.html:30 +#: tools/templates/dummy.html:37 msgid "stable" msgstr "kararlı" -#: tools/templates/dummy.html:31 +#: tools/templates/dummy.html:38 msgid "security-fixes" msgstr "güvenlik düzeltmeleri" -#: tools/templates/dummy.html:32 +#: tools/templates/dummy.html:39 msgid "EOL" msgstr "EOL" diff --git a/tutorial/datastructures.po b/tutorial/datastructures.po index dfe5d3722..4f0840724 100644 --- a/tutorial/datastructures.po +++ b/tutorial/datastructures.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2022-12-28 21:39+0300\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -200,9 +200,9 @@ msgstr "Listeleri Yığın Olarak Kullanma" msgid "" "The list methods make it very easy to use a list as a stack, where the last " "element added is the first element retrieved (\"last-in, first-out\"). To " -"add an item to the top of the stack, use :meth:`~list.append`. To retrieve " -"an item from the top of the stack, use :meth:`~list.pop` without an explicit " -"index. For example::" +"add an item to the top of the stack, use :meth:`!append`. To retrieve an " +"item from the top of the stack, use :meth:`!pop` without an explicit index. " +"For example::" msgstr "" "Liste yöntemleri, bir listeyi, eklenen son öğenin alınan ilk öğe olduğu bir " "yığın olarak kullanmayı çok kolaylaştırır (\"son giren ilk çıkar\"). " @@ -532,9 +532,9 @@ msgstr ":keyword:`!del` ifadesi" #, fuzzy msgid "" "There is a way to remove an item from a list given its index instead of its " -"value: the :keyword:`del` statement. This differs from the :meth:`~list." -"pop` method which returns a value. The :keyword:`!del` statement can also " -"be used to remove slices from a list or clear the entire list (which we did " +"value: the :keyword:`del` statement. This differs from the :meth:`!pop` " +"method which returns a value. The :keyword:`!del` statement can also be " +"used to remove slices from a list or clear the entire list (which we did " "earlier by assignment of an empty list to the slice). For example::" msgstr "" "Değer yerine indeksi verilen bir öğeyi listeden kaldırmanın bir yolu " @@ -798,8 +798,8 @@ msgid "" "can be used as keys if they contain only strings, numbers, or tuples; if a " "tuple contains any mutable object either directly or indirectly, it cannot " "be used as a key. You can't use lists as keys, since lists can be modified " -"in place using index assignments, slice assignments, or methods like :meth:" -"`~list.append` and :meth:`~list.extend`." +"in place using index assignments, slice assignments, or methods like :meth:`!" +"append` and :meth:`!extend`." msgstr "" "Python'da yerleşik olarak bulunan bir başka kullanışlı veri türü de " "*sözlüktür* (bkz :ref:`typesmapping`). Sözlükler bazen diğer dillerde " diff --git a/tutorial/errors.po b/tutorial/errors.po index 85e7eb440..f511ecd72 100644 --- a/tutorial/errors.po +++ b/tutorial/errors.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2022-12-28 22:18+0300\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -56,12 +56,10 @@ msgstr "" #: tutorial/errors.rst:26 #, fuzzy msgid "" -"The parser repeats the offending line and displays little 'arrow's pointing " -"at the token in the line where the error was detected. The error may be " -"caused by the absence of a token *before* the indicated token. In the " -"example, the error is detected at the function :func:`print`, since a colon " -"(``':'``) is missing before it. File name and line number are printed so " -"you know where to look in case the input came from a script." +"The parser repeats the offending line and displays little arrows pointing at " +"the place where the error was detected. Note that this is not always the " +"place that needs to be fixed. In the example, the error is detected at the " +"function :func:`print`, since a colon (``':'``) is missing just before it." msgstr "" "Ayrıştırıcı, hatalı satırı yineler ve hatanın algılandığı en erken noktayı " "gösteren küçük bir 'ok' görüntüler. Hata oktan *önceki* dizgede meydana " @@ -70,11 +68,17 @@ msgstr "" "numarası yazdırılır, böylece girişin bir komut dosyasından gelmesi durumunda " "nereye bakacağınızı bilirsiniz." -#: tutorial/errors.rst:37 +#: tutorial/errors.rst:31 +msgid "" +"The file name (``<stdin>`` in our example) and line number are printed so " +"you know where to look in case the input came from a file." +msgstr "" + +#: tutorial/errors.rst:38 msgid "Exceptions" msgstr "Özel Durumlar" -#: tutorial/errors.rst:39 +#: tutorial/errors.rst:40 msgid "" "Even if a statement or expression is syntactically correct, it may cause an " "error when an attempt is made to execute it. Errors detected during " @@ -90,7 +94,7 @@ msgstr "" "öğreneceksiniz. Ancak, çoğu özel durum programlar tarafından önlenemez ve " "burada gösterildiği gibi hata iletileriyle sonuçlanır::" -#: tutorial/errors.rst:45 +#: tutorial/errors.rst:46 msgid "" ">>> 10 * (1/0)\n" "Traceback (most recent call last):\n" @@ -106,7 +110,7 @@ msgid "" "TypeError: can only concatenate str (not \"int\") to str" msgstr "" -#: tutorial/errors.rst:58 +#: tutorial/errors.rst:59 msgid "" "The last line of the error message indicates what happened. Exceptions come " "in different types, and the type is printed as part of the message: the " @@ -126,7 +130,7 @@ msgstr "" "kural olmasına rağmen). Standart özel durum adları gömülü tanımlayıcılardır " "(ayrılmış anahtar sözcükler değildir)." -#: tutorial/errors.rst:66 +#: tutorial/errors.rst:67 msgid "" "The rest of the line provides detail based on the type of exception and what " "caused it." @@ -134,7 +138,7 @@ msgstr "" "Satırın geri kalanı, özel durum türüne ve buna neyin neden olduğuna bağlı " "olarak ayrıntı gösterir." -#: tutorial/errors.rst:69 +#: tutorial/errors.rst:70 msgid "" "The preceding part of the error message shows the context where the " "exception occurred, in the form of a stack traceback. In general it contains " @@ -146,17 +150,17 @@ msgstr "" "bir yığın izleme listesi içerir; ancak, standart girişten okunan satırları " "görüntülemez." -#: tutorial/errors.rst:74 +#: tutorial/errors.rst:75 msgid "" ":ref:`bltin-exceptions` lists the built-in exceptions and their meanings." msgstr "" ":ref:`bltin-exceptions` yerleşik özel durumları ve anlamlarını listeler." -#: tutorial/errors.rst:80 +#: tutorial/errors.rst:81 msgid "Handling Exceptions" msgstr "Özel Durumları İşleme" -#: tutorial/errors.rst:82 +#: tutorial/errors.rst:83 msgid "" "It is possible to write programs that handle selected exceptions. Look at " "the following example, which asks the user for input until a valid integer " @@ -171,7 +175,7 @@ msgstr "" "sistemi ne destekliyorsa onu kullanarak); kullanıcı kaynaklı kesintilerin :" "exc:`KeyboardInterrupt` özel durumu ile gösterildiğini unutmayın. ::" -#: tutorial/errors.rst:88 +#: tutorial/errors.rst:89 msgid "" ">>> while True:\n" "... try:\n" @@ -182,11 +186,11 @@ msgid "" "..." msgstr "" -#: tutorial/errors.rst:96 +#: tutorial/errors.rst:97 msgid "The :keyword:`try` statement works as follows." msgstr ":keyword:`try` ifadesi aşağıdaki gibi çalışır." -#: tutorial/errors.rst:98 +#: tutorial/errors.rst:99 msgid "" "First, the *try clause* (the statement(s) between the :keyword:`try` and :" "keyword:`except` keywords) is executed." @@ -194,7 +198,7 @@ msgstr "" "İlk olarak, *try yan tümcesi* (:keyword:`try` ve :keyword:`except` anahtar " "kelimeleri arasındaki ifadeler) yürütülür." -#: tutorial/errors.rst:101 +#: tutorial/errors.rst:102 msgid "" "If no exception occurs, the *except clause* is skipped and execution of the :" "keyword:`try` statement is finished." @@ -202,7 +206,7 @@ msgstr "" "Özel durum oluşmazsa, *except yan tümcesi* atlanır ve :keyword:`try` " "ifadesinin yürütülmesi tamamlanır." -#: tutorial/errors.rst:104 +#: tutorial/errors.rst:105 msgid "" "If an exception occurs during execution of the :keyword:`try` clause, the " "rest of the clause is skipped. Then, if its type matches the exception " @@ -214,7 +218,7 @@ msgstr "" "türü ile karşılaşılırsa, *except yan tümcesi* yürütülür ve try/except " "bloğundan sonra yürütme devam eder." -#: tutorial/errors.rst:109 +#: tutorial/errors.rst:110 #, fuzzy msgid "" "If an exception occurs which does not match the exception named in the " @@ -227,7 +231,7 @@ msgstr "" "bulunamazsa, bu bir *işlenmeyen özel durum* olur ve yürütme yukarıda " "gösterildiği gibi bir iletiyle durur." -#: tutorial/errors.rst:113 +#: tutorial/errors.rst:114 msgid "" "A :keyword:`try` statement may have more than one *except clause*, to " "specify handlers for different exceptions. At most one handler will be " @@ -243,13 +247,13 @@ msgstr "" "işleyicilerinde işlemez. *except yan tümcesi* birden çok özel durumu " "parantezli demet olarak adlandırabilir, örneğin::" -#: tutorial/errors.rst:119 +#: tutorial/errors.rst:120 msgid "" "... except (RuntimeError, TypeError, NameError):\n" "... pass" msgstr "" -#: tutorial/errors.rst:122 +#: tutorial/errors.rst:123 #, fuzzy msgid "" "A class in an :keyword:`except` clause matches exceptions which are " @@ -263,7 +267,7 @@ msgstr "" "temel sınıfla uyumlu olmadığından tersi olamaz). Örneğin, aşağıdaki kod B, " "C, D'yi bu sırada yazdırır::" -#: tutorial/errors.rst:127 +#: tutorial/errors.rst:128 msgid "" "class B(Exception):\n" " pass\n" @@ -285,7 +289,7 @@ msgid "" " print(\"B\")" msgstr "" -#: tutorial/errors.rst:146 +#: tutorial/errors.rst:147 msgid "" "Note that if the *except clauses* were reversed (with ``except B`` first), " "it would have printed B, B, B --- the first matching *except clause* is " @@ -295,7 +299,7 @@ msgstr "" "B, B şeklinde yazdırılacaktır --- ilk eşleşen *except yan tümcesi* " "tetiklenir." -#: tutorial/errors.rst:149 +#: tutorial/errors.rst:150 msgid "" "When an exception occurs, it may have associated values, also known as the " "exception's *arguments*. The presence and types of the arguments depend on " @@ -304,7 +308,7 @@ msgstr "" "Bir istisna oluştuğunda, istisnanın *argümanı* olarak da bilinen ilişkili " "bir değeri olabilir. Argümanın varlığı ve türü, istisna türüne bağlıdır." -#: tutorial/errors.rst:153 +#: tutorial/errors.rst:154 #, fuzzy msgid "" "The *except clause* may specify a variable after the exception name. The " @@ -319,7 +323,7 @@ msgstr "" "yerleşik istisna türleri :meth:`__str__`, ``.args`` öğesine açıkça erişmeden " "tüm argümanları yazdırmak için tanımlar. ::" -#: tutorial/errors.rst:159 +#: tutorial/errors.rst:160 msgid "" ">>> try:\n" "... raise Exception('spam', 'eggs')\n" @@ -340,7 +344,7 @@ msgid "" "y = eggs" msgstr "" -#: tutorial/errors.rst:176 +#: tutorial/errors.rst:177 #, fuzzy msgid "" "The exception's :meth:`~object.__str__` output is printed as the last part " @@ -349,7 +353,7 @@ msgstr "" "İstisnanın :meth:`__str__` çıktısı, işlenmeyen istisnalar için mesajın son " "kısmı ('ayrıntı') olarak yazdırılır." -#: tutorial/errors.rst:179 +#: tutorial/errors.rst:180 msgid "" ":exc:`BaseException` is the common base class of all exceptions. One of its " "subclasses, :exc:`Exception`, is the base class of all the non-fatal " @@ -367,7 +371,7 @@ msgstr "" "exc:`SystemExit` ve bir kullanıcı programı kesmek istediğinde ortaya çıkan :" "exc:`KeyboardInterrupt` içerir." -#: tutorial/errors.rst:187 +#: tutorial/errors.rst:188 msgid "" ":exc:`Exception` can be used as a wildcard that catches (almost) everything. " "However, it is good practice to be as specific as possible with the types of " @@ -379,7 +383,7 @@ msgstr "" "türleri konusunda mümkün olduğunca spesifik olmak ve beklenmeyen " "istisnaların yayılmasına izin vermek iyi bir uygulamadır." -#: tutorial/errors.rst:192 +#: tutorial/errors.rst:193 msgid "" "The most common pattern for handling :exc:`Exception` is to print or log the " "exception and then re-raise it (allowing a caller to handle the exception as " @@ -389,7 +393,7 @@ msgstr "" "log'a kaydetmek ve ardından yeniden yükseltmektir (arayanın istisnayı da " "işlemesine izin verir)::" -#: tutorial/errors.rst:196 +#: tutorial/errors.rst:197 msgid "" "import sys\n" "\n" @@ -406,7 +410,7 @@ msgid "" " raise" msgstr "" -#: tutorial/errors.rst:210 +#: tutorial/errors.rst:211 msgid "" "The :keyword:`try` ... :keyword:`except` statement has an optional *else " "clause*, which, when present, must follow all *except clauses*. It is " @@ -418,7 +422,7 @@ msgstr "" "izlemelidir. *try yan tümcesi* bir özel durum oluşturmazsa yürütülmesi " "gereken kod için yararlıdır. Mesela::" -#: tutorial/errors.rst:215 +#: tutorial/errors.rst:216 msgid "" "for arg in sys.argv[1:]:\n" " try:\n" @@ -430,7 +434,7 @@ msgid "" " f.close()" msgstr "" -#: tutorial/errors.rst:224 +#: tutorial/errors.rst:225 msgid "" "The use of the :keyword:`!else` clause is better than adding additional code " "to the :keyword:`try` clause because it avoids accidentally catching an " @@ -442,7 +446,7 @@ msgstr "" "korunan kod tarafından oluşturulmamış bir istisnayı yakalamayı önler. ... :" "keyword:`!except` ifadesi." -#: tutorial/errors.rst:229 +#: tutorial/errors.rst:230 msgid "" "Exception handlers do not handle only exceptions that occur immediately in " "the *try clause*, but also those that occur inside functions that are called " @@ -452,7 +456,7 @@ msgstr "" "istisnaları değil, aynı zamanda *try yan tümcesinde* çağrılan (dolaylı " "olarak da olsa) işlevlerin içinde oluşan istisnaları da işler. Örneğin::" -#: tutorial/errors.rst:233 +#: tutorial/errors.rst:234 msgid "" ">>> def this_fails():\n" "... x = 1/0\n" @@ -465,11 +469,11 @@ msgid "" "Handling run-time error: division by zero" msgstr "" -#: tutorial/errors.rst:247 +#: tutorial/errors.rst:248 msgid "Raising Exceptions" msgstr "Hata Yükseltme" -#: tutorial/errors.rst:249 +#: tutorial/errors.rst:250 msgid "" "The :keyword:`raise` statement allows the programmer to force a specified " "exception to occur. For example::" @@ -477,7 +481,7 @@ msgstr "" ":keyword:`raise` ifadesi, programcının belirli bir istisnanın " "gerçekleşmesini zorlamasını sağlar. Örneğin::" -#: tutorial/errors.rst:252 +#: tutorial/errors.rst:253 msgid "" ">>> raise NameError('HiThere')\n" "Traceback (most recent call last):\n" @@ -485,7 +489,7 @@ msgid "" "NameError: HiThere" msgstr "" -#: tutorial/errors.rst:257 +#: tutorial/errors.rst:258 msgid "" "The sole argument to :keyword:`raise` indicates the exception to be raised. " "This must be either an exception instance or an exception class (a class " @@ -499,11 +503,11 @@ msgstr "" "olmalıdır. Bir istisna sınıfı iletilirse, yapıcısını hiçbir argüman olmadan " "çağırarak dolaylı olarak başlatılır::" -#: tutorial/errors.rst:263 +#: tutorial/errors.rst:264 msgid "raise ValueError # shorthand for 'raise ValueError()'" msgstr "" -#: tutorial/errors.rst:265 +#: tutorial/errors.rst:266 msgid "" "If you need to determine whether an exception was raised but don't intend to " "handle it, a simpler form of the :keyword:`raise` statement allows you to re-" @@ -513,7 +517,7 @@ msgstr "" "onu işlemeyi düşünmüyorsanız, :keyword:`raise` ifadesinin daha basit bir " "biçimi, istisnayı yeniden oluşturmanıza olanak tanır::" -#: tutorial/errors.rst:269 +#: tutorial/errors.rst:270 msgid "" ">>> try:\n" "... raise NameError('HiThere')\n" @@ -527,11 +531,11 @@ msgid "" "NameError: HiThere" msgstr "" -#: tutorial/errors.rst:284 +#: tutorial/errors.rst:285 msgid "Exception Chaining" msgstr "İstisna Zincirleme" -#: tutorial/errors.rst:286 +#: tutorial/errors.rst:287 msgid "" "If an unhandled exception occurs inside an :keyword:`except` section, it " "will have the exception being handled attached to it and included in the " @@ -541,7 +545,7 @@ msgstr "" "istisnanın kendisine eklenmiş olarak işlenmesi ve şu hata mesajına dahil " "edilmesi gerekir::" -#: tutorial/errors.rst:290 +#: tutorial/errors.rst:291 msgid "" ">>> try:\n" "... open(\"database.sqlite\")\n" @@ -559,7 +563,7 @@ msgid "" "RuntimeError: unable to handle error" msgstr "" -#: tutorial/errors.rst:305 +#: tutorial/errors.rst:306 msgid "" "To indicate that an exception is a direct consequence of another, the :" "keyword:`raise` statement allows an optional :keyword:`from<raise>` clause::" @@ -568,17 +572,17 @@ msgstr "" "sonucu olduğunu belirtmek için isteğe bağlı :keyword:`from<raise>` yan " "tümcesine izin verir::" -#: tutorial/errors.rst:308 +#: tutorial/errors.rst:309 msgid "" "# exc must be exception instance or None.\n" "raise RuntimeError from exc" msgstr "" -#: tutorial/errors.rst:311 +#: tutorial/errors.rst:312 msgid "This can be useful when you are transforming exceptions. For example::" msgstr "Bu, özel durumları dönüştürürken yararlı olabilir. Mesela::" -#: tutorial/errors.rst:313 +#: tutorial/errors.rst:314 msgid "" ">>> def func():\n" "... raise ConnectionError\n" @@ -600,7 +604,7 @@ msgid "" "RuntimeError: Failed to open database" msgstr "" -#: tutorial/errors.rst:332 +#: tutorial/errors.rst:333 msgid "" "It also allows disabling automatic exception chaining using the ``from " "None`` idiom::" @@ -608,7 +612,7 @@ msgstr "" "Ayrıca, ``from None`` deyimi kullanılarak otomatik istisna zincirlemenin " "devre dışı bırakılmasına izin verir::" -#: tutorial/errors.rst:335 +#: tutorial/errors.rst:336 msgid "" ">>> try:\n" "... open('database.sqlite')\n" @@ -620,18 +624,18 @@ msgid "" "RuntimeError" msgstr "" -#: tutorial/errors.rst:344 +#: tutorial/errors.rst:345 msgid "" "For more information about chaining mechanics, see :ref:`bltin-exceptions`." msgstr "" "Zincirleme mekaniği hakkında daha fazla bilgi için bkz. :ref:`bltin-" "exceptions`." -#: tutorial/errors.rst:350 +#: tutorial/errors.rst:351 msgid "User-defined Exceptions" msgstr "Kullanıcı Tanımlı İstisnalar" -#: tutorial/errors.rst:352 +#: tutorial/errors.rst:353 msgid "" "Programs may name their own exceptions by creating a new exception class " "(see :ref:`tut-classes` for more about Python classes). Exceptions should " @@ -643,7 +647,7 @@ msgstr "" "`tut-classes` ). Özel durumlar genellikle doğrudan veya dolaylı olarak :exc:" "`Exception` sınıfından türetilmelidir." -#: tutorial/errors.rst:356 +#: tutorial/errors.rst:357 msgid "" "Exception classes can be defined which do anything any other class can do, " "but are usually kept simple, often only offering a number of attributes that " @@ -655,7 +659,7 @@ msgstr "" "istisna için işleyiciler tarafından hatayla ilgili bilgilerin çıkarılmasına " "izin veren bir dizi öznitelik sunar." -#: tutorial/errors.rst:360 +#: tutorial/errors.rst:361 msgid "" "Most exceptions are defined with names that end in \"Error\", similar to the " "naming of the standard exceptions." @@ -663,7 +667,7 @@ msgstr "" "Çoğu özel durum, standart özel durumların adlandırışına benzer şekilde " "\"Hata\" ile biten adlarla tanımlanır." -#: tutorial/errors.rst:363 +#: tutorial/errors.rst:364 msgid "" "Many standard modules define their own exceptions to report errors that may " "occur in functions they define." @@ -671,11 +675,11 @@ msgstr "" "Birçok standart modül, tanımladıkları işlevlerde oluşabilecek hataları " "raporlamak için kendi istisnalarını tanımlar." -#: tutorial/errors.rst:370 +#: tutorial/errors.rst:371 msgid "Defining Clean-up Actions" msgstr "Temizleme Eylemlerini Tanımlama" -#: tutorial/errors.rst:372 +#: tutorial/errors.rst:373 msgid "" "The :keyword:`try` statement has another optional clause which is intended " "to define clean-up actions that must be executed under all circumstances. " @@ -684,7 +688,7 @@ msgstr "" ":keyword:`try` deyimi, her koşulda yürütülmesi gereken temizleme eylemlerini " "tanımlamayı amaçlayan başka bir opsiyonel yan tümceye sahiptir. Mesela::" -#: tutorial/errors.rst:376 +#: tutorial/errors.rst:377 msgid "" ">>> try:\n" "... raise KeyboardInterrupt\n" @@ -697,7 +701,7 @@ msgid "" "KeyboardInterrupt" msgstr "" -#: tutorial/errors.rst:386 +#: tutorial/errors.rst:387 msgid "" "If a :keyword:`finally` clause is present, the :keyword:`!finally` clause " "will execute as the last task before the :keyword:`try` statement completes. " @@ -711,7 +715,7 @@ msgstr "" "oluşturup oluşturmadığından bağımsız çalışır. Aşağıdaki noktalarda, bir " "istisna oluştuğunda daha karmaşık durumlar anlatılmaktadır:" -#: tutorial/errors.rst:392 +#: tutorial/errors.rst:393 msgid "" "If an exception occurs during execution of the :keyword:`!try` clause, the " "exception may be handled by an :keyword:`except` clause. If the exception is " @@ -723,7 +727,7 @@ msgstr "" "bir :keyword:`!except` yan tümcesi tarafından ele alınmıyorsa, istisna :" "keyword:`!finally` yan tümcesi yürütüldükten sonra yeniden oluşturulur." -#: tutorial/errors.rst:398 +#: tutorial/errors.rst:399 msgid "" "An exception could occur during execution of an :keyword:`!except` or :" "keyword:`!else` clause. Again, the exception is re-raised after the :keyword:" @@ -733,7 +737,7 @@ msgstr "" "sırasında bir istisna oluşabilir. Yine, istisna, :keyword:`!finally` yan " "tümcesi yürütüldükten sonra yeniden oluşturulur." -#: tutorial/errors.rst:402 +#: tutorial/errors.rst:403 msgid "" "If the :keyword:`!finally` clause executes a :keyword:`break`, :keyword:" "`continue` or :keyword:`return` statement, exceptions are not re-raised." @@ -741,7 +745,7 @@ msgstr "" ":keyword:`!finally` yan tümcesi bir :keyword:`break`, :keyword:`continue` " "veya :keyword:`return` deyimini yürütürse, istisnalar yeniden oluşturulmaz." -#: tutorial/errors.rst:406 +#: tutorial/errors.rst:407 msgid "" "If the :keyword:`!try` statement reaches a :keyword:`break`, :keyword:" "`continue` or :keyword:`return` statement, the :keyword:`!finally` clause " @@ -753,7 +757,7 @@ msgstr "" "keyword:`!break`, :keyword:`!continue` veya :keyword:`!return` ifadesinin " "yürütülmesinin hemen öncesinde yürütülür." -#: tutorial/errors.rst:412 +#: tutorial/errors.rst:413 msgid "" "If a :keyword:`!finally` clause includes a :keyword:`!return` statement, the " "returned value will be the one from the :keyword:`!finally` clause's :" @@ -765,11 +769,11 @@ msgstr "" "return` ifadesindeki değer olacaktır, :keyword:`!try` yan tümcesinin :" "keyword:`!return` ifadesindeki değer değil." -#: tutorial/errors.rst:418 +#: tutorial/errors.rst:419 msgid "For example::" msgstr "Mesela::" -#: tutorial/errors.rst:420 +#: tutorial/errors.rst:421 msgid "" ">>> def bool_return():\n" "... try:\n" @@ -781,11 +785,11 @@ msgid "" "False" msgstr "" -#: tutorial/errors.rst:429 +#: tutorial/errors.rst:430 msgid "A more complicated example::" msgstr "Daha karmaşık bir örnek::" -#: tutorial/errors.rst:431 +#: tutorial/errors.rst:432 msgid "" ">>> def divide(x, y):\n" "... try:\n" @@ -811,7 +815,7 @@ msgid "" "TypeError: unsupported operand type(s) for /: 'str' and 'str'" msgstr "" -#: tutorial/errors.rst:454 +#: tutorial/errors.rst:455 msgid "" "As you can see, the :keyword:`finally` clause is executed in any event. " "The :exc:`TypeError` raised by dividing two strings is not handled by the :" @@ -823,7 +827,7 @@ msgstr "" "tarafından işlenmez ve bu nedenle :keyword:`!finally` yan tümcesi " "yürütüldikten sonra yeniden yükseltilir." -#: tutorial/errors.rst:459 +#: tutorial/errors.rst:460 msgid "" "In real world applications, the :keyword:`finally` clause is useful for " "releasing external resources (such as files or network connections), " @@ -833,11 +837,11 @@ msgstr "" "kullanımının başarılı olup olmadığına bakılmaksızın dış kaynakları (dosyalar " "veya ağ bağlantıları gibi) serbest bırakmak için yararlıdır." -#: tutorial/errors.rst:467 +#: tutorial/errors.rst:468 msgid "Predefined Clean-up Actions" msgstr "Önceden Tanımlanmış Temizleme Eylemleri" -#: tutorial/errors.rst:469 +#: tutorial/errors.rst:470 msgid "" "Some objects define standard clean-up actions to be undertaken when the " "object is no longer needed, regardless of whether or not the operation using " @@ -849,13 +853,13 @@ msgstr "" "standart temizleme eylemlerini tanımlar. Bir dosyayı açmaya ve içeriğini " "ekrana yazdırmaya çalışan aşağıdaki örneğe bakın. ::" -#: tutorial/errors.rst:474 +#: tutorial/errors.rst:475 msgid "" "for line in open(\"myfile.txt\"):\n" " print(line, end=\"\")" msgstr "" -#: tutorial/errors.rst:477 +#: tutorial/errors.rst:478 msgid "" "The problem with this code is that it leaves the file open for an " "indeterminate amount of time after this part of the code has finished " @@ -870,14 +874,14 @@ msgstr "" "keyword:`with` ifadesi, dosyalar gibi nesnelerin her zaman hızlı ve doğru " "temizlenmesini sağlayacak şekilde kullanılmasına izin verir. ::" -#: tutorial/errors.rst:483 +#: tutorial/errors.rst:484 msgid "" "with open(\"myfile.txt\") as f:\n" " for line in f:\n" " print(line, end=\"\")" msgstr "" -#: tutorial/errors.rst:487 +#: tutorial/errors.rst:488 msgid "" "After the statement is executed, the file *f* is always closed, even if a " "problem was encountered while processing the lines. Objects which, like " @@ -888,11 +892,11 @@ msgstr "" "bile *f* dosyası her zaman kapatılır. Dosyalar gibi önceden tanımlanmış " "temizleme eylemleri sağlayan nesneler dokümantasyonlarında bunu gösterir." -#: tutorial/errors.rst:495 +#: tutorial/errors.rst:496 msgid "Raising and Handling Multiple Unrelated Exceptions" msgstr "Birden Fazla Alakasız İstisna Oluşturma ve İşleme" -#: tutorial/errors.rst:497 +#: tutorial/errors.rst:498 msgid "" "There are situations where it is necessary to report several exceptions that " "have occurred. This is often the case in concurrency frameworks, when " @@ -906,7 +910,7 @@ msgstr "" "yerine yürütmeye devam etmenin ve birden çok hata toplamanın istendiği başka " "kullanım durumları da vardır." -#: tutorial/errors.rst:503 +#: tutorial/errors.rst:504 msgid "" "The builtin :exc:`ExceptionGroup` wraps a list of exception instances so " "that they can be raised together. It is an exception itself, so it can be " @@ -916,7 +920,7 @@ msgstr "" "örneklerinin bir listesini sarar. Kendisi bir istisnadır, bu nedenle " "herhangi bir istisna gibi yakalanabilir. ::" -#: tutorial/errors.rst:507 +#: tutorial/errors.rst:508 msgid "" ">>> def f():\n" "... excs = [OSError('error 1'), SystemError('error 2')]\n" @@ -941,7 +945,7 @@ msgid "" ">>>" msgstr "" -#: tutorial/errors.rst:529 +#: tutorial/errors.rst:530 msgid "" "By using ``except*`` instead of ``except``, we can selectively handle only " "the exceptions in the group that match a certain type. In the following " @@ -955,7 +959,7 @@ msgstr "" "tüm istisnaların diğer yan tümcelere yayılmasına ve sonunda yeniden ortaya " "çıkmasına izin verirken, belirli bir türdeki grup istisnalarını çıkarır. ::" -#: tutorial/errors.rst:536 +#: tutorial/errors.rst:537 msgid "" ">>> def f():\n" "... raise ExceptionGroup(\n" @@ -994,7 +998,7 @@ msgid "" ">>>" msgstr "" -#: tutorial/errors.rst:572 +#: tutorial/errors.rst:573 msgid "" "Note that the exceptions nested in an exception group must be instances, not " "types. This is because in practice the exceptions would typically be ones " @@ -1006,7 +1010,7 @@ msgstr "" "olarak, aşağıdaki kalıp boyunca program tarafından önceden oluşturulmuş ve " "yakalanmış olanlar olmasıdır::" -#: tutorial/errors.rst:577 +#: tutorial/errors.rst:578 msgid "" ">>> excs = []\n" "... for test in tests:\n" @@ -1020,11 +1024,11 @@ msgid "" "..." msgstr "" -#: tutorial/errors.rst:592 +#: tutorial/errors.rst:593 msgid "Enriching Exceptions with Notes" msgstr "İstisnaları Notlarla Zenginleştirme" -#: tutorial/errors.rst:594 +#: tutorial/errors.rst:595 msgid "" "When an exception is created in order to be raised, it is usually " "initialized with information that describes the error that has occurred. " @@ -1041,7 +1045,7 @@ msgstr "" "``add_note(note)`` metodu vardır. Standart geri işleme (traceback) " "oluşturma, tüm notları istisnadan sonra eklendikleri sırayla içerir. ::" -#: tutorial/errors.rst:601 +#: tutorial/errors.rst:602 msgid "" ">>> try:\n" "... raise TypeError('bad type')\n" @@ -1058,7 +1062,7 @@ msgid "" ">>>" msgstr "" -#: tutorial/errors.rst:615 +#: tutorial/errors.rst:616 msgid "" "For example, when collecting exceptions into an exception group, we may want " "to add context information for the individual errors. In the following each " @@ -1068,7 +1072,7 @@ msgstr "" "bağlam bilgisi eklemek isteyebiliriz. Aşağıda, gruptaki her özel durum, bu " "hatanın ne zaman oluştuğunu gösteren bir nota sahiptir. ::" -#: tutorial/errors.rst:619 +#: tutorial/errors.rst:620 msgid "" ">>> def f():\n" "... raise OSError('operation failed')\n" diff --git a/tutorial/interactive.po b/tutorial/interactive.po index ee4f05cee..7d60e08fb 100644 --- a/tutorial/interactive.po +++ b/tutorial/interactive.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-09-18 19:05+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2022-02-13 20:23+0300\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -71,13 +71,14 @@ msgid "Alternatives to the Interactive Interpreter" msgstr "Etkileşimli Yorumlayıcıya Alternatifler" #: tutorial/interactive.rst:38 +#, fuzzy msgid "" "This facility is an enormous step forward compared to earlier versions of " "the interpreter; however, some wishes are left: It would be nice if the " "proper indentation were suggested on continuation lines (the parser knows if " -"an indent token is required next). The completion mechanism might use the " -"interpreter's symbol table. A command to check (or even suggest) matching " -"parentheses, quotes, etc., would also be useful." +"an :data:`~token.INDENT` token is required next). The completion mechanism " +"might use the interpreter's symbol table. A command to check (or even " +"suggest) matching parentheses, quotes, etc., would also be useful." msgstr "" "Bu olanak, tercümanın önceki sürümleriyle karşılaştırıldığında ileriye doğru " "atılmış çok büyük bir adımdır; ancak, bazı eksiklikler var: Devam " diff --git a/tutorial/introduction.po b/tutorial/introduction.po index b313108fe..12e90c7df 100644 --- a/tutorial/introduction.po +++ b/tutorial/introduction.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2024-02-27 22:42+0300\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -357,41 +357,34 @@ msgstr "" "<faq-programming-raw-string-backslash>` 'e bakın." #: tutorial/introduction.rst:197 +#, fuzzy msgid "" "String literals can span multiple lines. One way is using triple-quotes: " -"``\"\"\"...\"\"\"`` or ``'''...'''``. End of lines are automatically " -"included in the string, but it's possible to prevent this by adding a ``\\`` " -"at the end of the line. The following example::" +"``\"\"\"...\"\"\"`` or ``'''...'''``. End-of-line characters are " +"automatically included in the string, but it's possible to prevent this by " +"adding a ``\\`` at the end of the line. In the following example, the " +"initial newline is not included::" msgstr "" "Dize sabitleri birden çok satıra yayılabilir. Bunun bir yolu üçlü tırnak " "kullanmaktır: ``\"\"\"...\"\"\"`` veya ``'''...'''``. Satır sonu otomatik " "olarak dizeye dahil edilir, ancak satırın sonuna ``\\`` ekleyerek bunu " "önlemek mümkündür. Aşağıdaki örnek::" -#: tutorial/introduction.rst:202 +#: tutorial/introduction.rst:203 msgid "" -"print(\"\"\"\\\n" +">>> print(\"\"\"\\\n" +"... Usage: thingy [OPTIONS]\n" +"... -h Display this usage message\n" +"... -H hostname Hostname to connect to\n" +"... \"\"\")\n" "Usage: thingy [OPTIONS]\n" " -h Display this usage message\n" " -H hostname Hostname to connect to\n" -"\"\"\")" -msgstr "" - -#: tutorial/introduction.rst:208 -msgid "" -"produces the following output (note that the initial newline is not " -"included):" +"\n" +">>>" msgstr "" -"aşağıdaki çıktıyı üretir (ilk yeni satırın dahil olmadığını unutmayın):" -#: tutorial/introduction.rst:210 -msgid "" -"Usage: thingy [OPTIONS]\n" -" -h Display this usage message\n" -" -H hostname Hostname to connect to" -msgstr "" - -#: tutorial/introduction.rst:216 +#: tutorial/introduction.rst:214 msgid "" "Strings can be concatenated (glued together) with the ``+`` operator, and " "repeated with ``*``::" @@ -399,14 +392,14 @@ msgstr "" "Dizeler ``+`` operatörüyle birleştirilebilir (birbirine yapıştırılabilir) ve " "``*`` ile tekrarlanabilir::" -#: tutorial/introduction.rst:219 +#: tutorial/introduction.rst:217 msgid "" ">>> # 3 times 'un', followed by 'ium'\n" ">>> 3 * 'un' + 'ium'\n" "'unununium'" msgstr "" -#: tutorial/introduction.rst:223 +#: tutorial/introduction.rst:221 msgid "" "Two or more *string literals* (i.e. the ones enclosed between quotes) next " "to each other are automatically concatenated. ::" @@ -414,19 +407,19 @@ msgstr "" "Yan yana iki veya daha fazla *dize sabiti* (yani, tırnak işaretleri arasına " "alınanlar) otomatik olarak birleştirilir. ::" -#: tutorial/introduction.rst:226 +#: tutorial/introduction.rst:224 msgid "" ">>> 'Py' 'thon'\n" "'Python'" msgstr "" -#: tutorial/introduction.rst:229 +#: tutorial/introduction.rst:227 msgid "" "This feature is particularly useful when you want to break long strings::" msgstr "" "Bu özellik, özellikle uzun dizeleri kırmak istediğinizde kullanışlıdır::" -#: tutorial/introduction.rst:231 +#: tutorial/introduction.rst:229 msgid "" ">>> text = ('Put several strings within parentheses '\n" "... 'to have them joined together.')\n" @@ -434,13 +427,13 @@ msgid "" "'Put several strings within parentheses to have them joined together.'" msgstr "" -#: tutorial/introduction.rst:236 +#: tutorial/introduction.rst:234 msgid "" "This only works with two literals though, not with variables or expressions::" msgstr "" "Bu, değişkenler veya ifadelerle değil, yalnızca iki sabit değerle çalışır::" -#: tutorial/introduction.rst:238 +#: tutorial/introduction.rst:236 msgid "" ">>> prefix = 'Py'\n" ">>> prefix 'thon' # can't concatenate a variable and a string literal\n" @@ -455,20 +448,20 @@ msgid "" "SyntaxError: invalid syntax" msgstr "" -#: tutorial/introduction.rst:250 +#: tutorial/introduction.rst:248 msgid "" "If you want to concatenate variables or a variable and a literal, use ``+``::" msgstr "" "Değişkenleri veya bir değişkeni ve bir sabiti birleştirmek istiyorsanız, " "``+`` kullanın:" -#: tutorial/introduction.rst:252 +#: tutorial/introduction.rst:250 msgid "" ">>> prefix + 'thon'\n" "'Python'" msgstr "" -#: tutorial/introduction.rst:255 +#: tutorial/introduction.rst:253 msgid "" "Strings can be *indexed* (subscripted), with the first character having " "index 0. There is no separate character type; a character is simply a string " @@ -478,7 +471,7 @@ msgstr "" "olabilir). Karakterler için ayrı bir tür yoktur; karakterler yalnızca *bir* " "uzunluğunda dizelerdir::" -#: tutorial/introduction.rst:259 +#: tutorial/introduction.rst:257 msgid "" ">>> word = 'Python'\n" ">>> word[0] # character in position 0\n" @@ -487,12 +480,12 @@ msgid "" "'n'" msgstr "" -#: tutorial/introduction.rst:265 +#: tutorial/introduction.rst:263 msgid "" "Indices may also be negative numbers, to start counting from the right::" msgstr "Sağdan saymaya başlamak için indeksler negatif sayılar da olabilir::" -#: tutorial/introduction.rst:267 +#: tutorial/introduction.rst:265 msgid "" ">>> word[-1] # last character\n" "'n'\n" @@ -502,12 +495,12 @@ msgid "" "'P'" msgstr "" -#: tutorial/introduction.rst:274 +#: tutorial/introduction.rst:272 msgid "Note that since -0 is the same as 0, negative indices start from -1." msgstr "" "-0 ile 0 aynı olduğundan, negatif endekslerin -1'den başladığını unutmayın." -#: tutorial/introduction.rst:276 +#: tutorial/introduction.rst:274 #, fuzzy msgid "" "In addition to indexing, *slicing* is also supported. While indexing is " @@ -518,7 +511,7 @@ msgstr "" "etmek için indeksleme kullanılırken, *dilimleme* alt dizeyi elde etmenizi " "sağlar::" -#: tutorial/introduction.rst:279 +#: tutorial/introduction.rst:277 msgid "" ">>> word[0:2] # characters from position 0 (included) to 2 (excluded)\n" "'Py'\n" @@ -526,7 +519,7 @@ msgid "" "'tho'" msgstr "" -#: tutorial/introduction.rst:284 +#: tutorial/introduction.rst:282 msgid "" "Slice indices have useful defaults; an omitted first index defaults to zero, " "an omitted second index defaults to the size of the string being sliced. ::" @@ -535,7 +528,7 @@ msgstr "" "varsayılanı sıfırdır, atlanmış bir ikinci dizin varsayılanı dilimlenmekte " "olan dizenin boyutudur. ::" -#: tutorial/introduction.rst:287 +#: tutorial/introduction.rst:285 msgid "" ">>> word[:2] # character from the beginning to position 2 (excluded)\n" "'Py'\n" @@ -545,7 +538,7 @@ msgid "" "'on'" msgstr "" -#: tutorial/introduction.rst:294 +#: tutorial/introduction.rst:292 msgid "" "Note how the start is always included, and the end always excluded. This " "makes sure that ``s[:i] + s[i:]`` is always equal to ``s``::" @@ -554,7 +547,7 @@ msgstr "" "dikkat edin. Bu, ``s[:i] + s[i:]`` değerinin her zaman ``s`` değerine eşit " "olmasını sağlar::" -#: tutorial/introduction.rst:297 +#: tutorial/introduction.rst:295 msgid "" ">>> word[:2] + word[2:]\n" "'Python'\n" @@ -562,7 +555,7 @@ msgid "" "'Python'" msgstr "" -#: tutorial/introduction.rst:302 +#: tutorial/introduction.rst:300 msgid "" "One way to remember how slices work is to think of the indices as pointing " "*between* characters, with the left edge of the first character numbered 0. " @@ -574,7 +567,7 @@ msgstr "" "Ardından, *n* karakterli bir dizenin son karakterinin sağ kenarında *n* " "dizini vardır, örneğin::" -#: tutorial/introduction.rst:307 +#: tutorial/introduction.rst:305 msgid "" " +---+---+---+---+---+---+\n" " | P | y | t | h | o | n |\n" @@ -583,7 +576,7 @@ msgid "" "-6 -5 -4 -3 -2 -1" msgstr "" -#: tutorial/introduction.rst:313 +#: tutorial/introduction.rst:311 msgid "" "The first row of numbers gives the position of the indices 0...6 in the " "string; the second row gives the corresponding negative indices. The slice " @@ -594,7 +587,7 @@ msgstr "" "karşılık gelen negatif endeksleri verir. *i* ile *j* arasındaki dilim, " "sırasıyla *i* ve *j* etiketli kenarlar arasındaki tüm karakterlerden oluşur." -#: tutorial/introduction.rst:318 +#: tutorial/introduction.rst:316 msgid "" "For non-negative indices, the length of a slice is the difference of the " "indices, if both are within bounds. For example, the length of " @@ -603,11 +596,11 @@ msgstr "" "Negatif olmayan indeksler için, her ikisi de sınırlar içindeyse, bir dilimin " "uzunluğu indekslerin farkıdır. Örneğin, ``kelime[1:3]`` 'ün uzunluğu 2'dir." -#: tutorial/introduction.rst:322 +#: tutorial/introduction.rst:320 msgid "Attempting to use an index that is too large will result in an error::" msgstr "Çok büyük bir dizin kullanmaya çalışmak bir hataya neden olur::" -#: tutorial/introduction.rst:324 +#: tutorial/introduction.rst:322 msgid "" ">>> word[42] # the word only has 6 characters\n" "Traceback (most recent call last):\n" @@ -615,7 +608,7 @@ msgid "" "IndexError: string index out of range" msgstr "" -#: tutorial/introduction.rst:329 +#: tutorial/introduction.rst:327 msgid "" "However, out of range slice indexes are handled gracefully when used for " "slicing::" @@ -623,7 +616,7 @@ msgstr "" "Ancak, aralık dışı dilim endeksleri, dilimleme için kullanıldığında zarif " "bir şekilde işlenir::" -#: tutorial/introduction.rst:332 +#: tutorial/introduction.rst:330 msgid "" ">>> word[4:42]\n" "'on'\n" @@ -631,7 +624,7 @@ msgid "" "''" msgstr "" -#: tutorial/introduction.rst:337 +#: tutorial/introduction.rst:335 msgid "" "Python strings cannot be changed --- they are :term:`immutable`. Therefore, " "assigning to an indexed position in the string results in an error::" @@ -639,7 +632,7 @@ msgstr "" "Python dizeleri değiştirilemez --- bunlar :term:`immutable` 'dır. Bu " "nedenle, dizide dizine alınmış bir konuma atamak bir hatayla sonuçlanır::" -#: tutorial/introduction.rst:340 +#: tutorial/introduction.rst:338 msgid "" ">>> word[0] = 'J'\n" "Traceback (most recent call last):\n" @@ -651,11 +644,11 @@ msgid "" "TypeError: 'str' object does not support item assignment" msgstr "" -#: tutorial/introduction.rst:349 +#: tutorial/introduction.rst:347 msgid "If you need a different string, you should create a new one::" msgstr "Farklı bir dizeye ihtiyacınız varsa, yeni bir tane oluşturmalısınız::" -#: tutorial/introduction.rst:351 +#: tutorial/introduction.rst:349 msgid "" ">>> 'J' + word[1:]\n" "'Jython'\n" @@ -663,22 +656,22 @@ msgid "" "'Pypy'" msgstr "" -#: tutorial/introduction.rst:356 +#: tutorial/introduction.rst:354 msgid "The built-in function :func:`len` returns the length of a string::" msgstr "Yerleşik işlev :func:`len`, bir dizenin uzunluğunu döndürür::" -#: tutorial/introduction.rst:358 +#: tutorial/introduction.rst:356 msgid "" ">>> s = 'supercalifragilisticexpialidocious'\n" ">>> len(s)\n" "34" msgstr "" -#: tutorial/introduction.rst:365 +#: tutorial/introduction.rst:363 msgid ":ref:`textseq`" msgstr ":ref:`textseq`" -#: tutorial/introduction.rst:366 +#: tutorial/introduction.rst:364 msgid "" "Strings are examples of *sequence types*, and support the common operations " "supported by such types." @@ -686,37 +679,37 @@ msgstr "" "Dizeler, *sıra türlerinin* örnekleridir ve bu türler tarafından desteklenen " "genel işlemleri destekler." -#: tutorial/introduction.rst:369 +#: tutorial/introduction.rst:367 msgid ":ref:`string-methods`" msgstr ":ref:`dize-yöntemleri <string-methods>`" -#: tutorial/introduction.rst:370 +#: tutorial/introduction.rst:368 msgid "" "Strings support a large number of methods for basic transformations and " "searching." msgstr "Dizeler, temel dönüşümler ve arama için çok sayıda yöntemi destekler." -#: tutorial/introduction.rst:373 +#: tutorial/introduction.rst:371 msgid ":ref:`f-strings`" msgstr ":ref:`f-strings`" -#: tutorial/introduction.rst:374 +#: tutorial/introduction.rst:372 msgid "String literals that have embedded expressions." msgstr "Gömülü ifadelere sahip dize sabitleri." -#: tutorial/introduction.rst:376 +#: tutorial/introduction.rst:374 msgid ":ref:`formatstrings`" msgstr ":ref:`formatstrings`" -#: tutorial/introduction.rst:377 +#: tutorial/introduction.rst:375 msgid "Information about string formatting with :meth:`str.format`." msgstr ":meth:`str.format` ile dize biçimlendirme hakkında bilgi." -#: tutorial/introduction.rst:379 +#: tutorial/introduction.rst:377 msgid ":ref:`old-string-formatting`" msgstr ":ref:`old-string-formatting`" -#: tutorial/introduction.rst:380 +#: tutorial/introduction.rst:378 msgid "" "The old formatting operations invoked when strings are the left operand of " "the ``%`` operator are described in more detail here." @@ -724,11 +717,11 @@ msgstr "" "Dizeler ``%`` operatörünün sol işleneni olduğunda çağrılan eski " "biçimlendirme işlemleri burada daha ayrıntılı olarak açıklanmaktadır." -#: tutorial/introduction.rst:387 +#: tutorial/introduction.rst:385 msgid "Lists" msgstr "Listeler" -#: tutorial/introduction.rst:389 +#: tutorial/introduction.rst:387 msgid "" "Python knows a number of *compound* data types, used to group together other " "values. The most versatile is the *list*, which can be written as a list of " @@ -741,14 +734,14 @@ msgstr "" "Listeler farklı türde ögeler içerebilir, ancak genellikle ögelerin tümü aynı " "türdedir. ::" -#: tutorial/introduction.rst:394 +#: tutorial/introduction.rst:392 msgid "" ">>> squares = [1, 4, 9, 16, 25]\n" ">>> squares\n" "[1, 4, 9, 16, 25]" msgstr "" -#: tutorial/introduction.rst:398 +#: tutorial/introduction.rst:396 msgid "" "Like strings (and all other built-in :term:`sequence` types), lists can be " "indexed and sliced::" @@ -756,7 +749,7 @@ msgstr "" "Dizeler gibi (ve diğer tüm yerleşik :term:`sequence` türleri), listeler " "dizine alınabilir ve dilimlenebilir::" -#: tutorial/introduction.rst:401 +#: tutorial/introduction.rst:399 msgid "" ">>> squares[0] # indexing returns the item\n" "1\n" @@ -766,17 +759,17 @@ msgid "" "[9, 16, 25]" msgstr "" -#: tutorial/introduction.rst:408 +#: tutorial/introduction.rst:406 msgid "Lists also support operations like concatenation::" msgstr "Ayrıca listeler birleştirme gibi işlemleri de destekler::" -#: tutorial/introduction.rst:410 +#: tutorial/introduction.rst:408 msgid "" ">>> squares + [36, 49, 64, 81, 100]\n" "[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]" msgstr "" -#: tutorial/introduction.rst:413 +#: tutorial/introduction.rst:411 msgid "" "Unlike strings, which are :term:`immutable`, lists are a :term:`mutable` " "type, i.e. it is possible to change their content::" @@ -784,7 +777,7 @@ msgstr "" ":term:`immutable` olan dizelerin aksine, listeler :term:`mutable` " "türündedir, yani içeriklerini değiştirmek mümkündür::" -#: tutorial/introduction.rst:416 +#: tutorial/introduction.rst:414 msgid "" ">>> cubes = [1, 8, 27, 65, 125] # something's wrong here\n" ">>> 4 ** 3 # the cube of 4 is 64, not 65!\n" @@ -794,7 +787,7 @@ msgid "" "[1, 8, 27, 64, 125]" msgstr "" -#: tutorial/introduction.rst:423 +#: tutorial/introduction.rst:421 #, fuzzy msgid "" "You can also add new items at the end of the list, by using the :meth:`!list." @@ -804,7 +797,7 @@ msgstr "" "öğeler ekleyebilirsiniz (yöntemler hakkında daha fazla bilgiyi daha sonra " "göreceğiz)::" -#: tutorial/introduction.rst:426 +#: tutorial/introduction.rst:424 msgid "" ">>> cubes.append(216) # add the cube of 6\n" ">>> cubes.append(7 ** 3) # and the cube of 7\n" @@ -812,7 +805,7 @@ msgid "" "[1, 8, 27, 64, 125, 216, 343]" msgstr "" -#: tutorial/introduction.rst:431 +#: tutorial/introduction.rst:429 msgid "" "Simple assignment in Python never copies data. When you assign a list to a " "variable, the variable refers to the *existing list*. Any changes you make " @@ -820,7 +813,7 @@ msgid "" "that refer to it.::" msgstr "" -#: tutorial/introduction.rst:436 +#: tutorial/introduction.rst:434 msgid "" ">>> rgb = [\"Red\", \"Green\", \"Blue\"]\n" ">>> rgba = rgb\n" @@ -831,7 +824,7 @@ msgid "" "[\"Red\", \"Green\", \"Blue\", \"Alph\"]" msgstr "" -#: tutorial/introduction.rst:444 +#: tutorial/introduction.rst:442 msgid "" "All slice operations return a new list containing the requested elements. " "This means that the following slice returns a :ref:`shallow copy " @@ -841,7 +834,7 @@ msgstr "" "aşağıdaki dilimin listenin bir :ref:`shallow copy <shallow_vs_deep_copy>` " "döndürdüğü anlamına gelir::" -#: tutorial/introduction.rst:448 +#: tutorial/introduction.rst:446 msgid "" ">>> correct_rgba = rgba[:]\n" ">>> correct_rgba[-1] = \"Alpha\"\n" @@ -851,7 +844,7 @@ msgid "" "[\"Red\", \"Green\", \"Blue\", \"Alph\"]" msgstr "" -#: tutorial/introduction.rst:455 +#: tutorial/introduction.rst:453 msgid "" "Assignment to slices is also possible, and this can even change the size of " "the list or clear it entirely::" @@ -859,7 +852,7 @@ msgstr "" "Dilimlere atama da mümkündür ve bu, listenin boyutunu bile değiştirebilir " "veya tamamen temizleyebilir::" -#: tutorial/introduction.rst:458 +#: tutorial/introduction.rst:456 msgid "" ">>> letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g']\n" ">>> letters\n" @@ -878,18 +871,18 @@ msgid "" "[]" msgstr "" -#: tutorial/introduction.rst:474 +#: tutorial/introduction.rst:472 msgid "The built-in function :func:`len` also applies to lists::" msgstr "Yerleşik işlev :func:`len` ayrıca listeler için de geçerlidir::" -#: tutorial/introduction.rst:476 +#: tutorial/introduction.rst:474 msgid "" ">>> letters = ['a', 'b', 'c', 'd']\n" ">>> len(letters)\n" "4" msgstr "" -#: tutorial/introduction.rst:480 +#: tutorial/introduction.rst:478 msgid "" "It is possible to nest lists (create lists containing other lists), for " "example::" @@ -897,7 +890,7 @@ msgstr "" "Listeleri iç içe yerleştirmek (diğer listeleri içeren listeler oluşturmak) " "mümkündür, örneğin::" -#: tutorial/introduction.rst:483 +#: tutorial/introduction.rst:481 msgid "" ">>> a = ['a', 'b', 'c']\n" ">>> n = [1, 2, 3]\n" @@ -910,11 +903,11 @@ msgid "" "'b'" msgstr "" -#: tutorial/introduction.rst:496 +#: tutorial/introduction.rst:494 msgid "First Steps Towards Programming" msgstr "Programlamaya Doğru İlk Adımlar" -#: tutorial/introduction.rst:498 +#: tutorial/introduction.rst:496 msgid "" "Of course, we can use Python for more complicated tasks than adding two and " "two together. For instance, we can write an initial sub-sequence of the " @@ -925,7 +918,7 @@ msgstr "" "kullanabiliriz. Örneğin, `Fibonacci serisinin <https://en.wikipedia.org/wiki/" "Fibonacci_sequence>`_ ilk alt dizisini aşağıdaki gibi yazabiliriz:" -#: tutorial/introduction.rst:503 +#: tutorial/introduction.rst:501 msgid "" ">>> # Fibonacci series:\n" ">>> # the sum of two elements defines the next\n" @@ -943,11 +936,11 @@ msgid "" "8" msgstr "" -#: tutorial/introduction.rst:518 +#: tutorial/introduction.rst:516 msgid "This example introduces several new features." msgstr "Bu örnek, birkaç yeni özellik sunar." -#: tutorial/introduction.rst:520 +#: tutorial/introduction.rst:518 msgid "" "The first line contains a *multiple assignment*: the variables ``a`` and " "``b`` simultaneously get the new values 0 and 1. On the last line this is " @@ -959,7 +952,7 @@ msgstr "" "1 değerlerini alır. Tarafların tümü, herhangi bir görev yapılmadan önce " "değerlendirilir. Sağ taraftaki ifadeler soldan sağa doğru değerlendirilir." -#: tutorial/introduction.rst:526 +#: tutorial/introduction.rst:524 msgid "" "The :keyword:`while` loop executes as long as the condition (here: ``a < " "10``) remains true. In Python, like in C, any non-zero integer value is " @@ -979,7 +972,7 @@ msgstr "" "(küçüktür), ``>`` (büyüktür), ``==`` (eşittir), ``<=`` ( küçük veya eşit), " "``>=`` (büyük veya eşit) ve ``!=`` (eşit değil)." -#: tutorial/introduction.rst:535 +#: tutorial/introduction.rst:533 msgid "" "The *body* of the loop is *indented*: indentation is Python's way of " "grouping statements. At the interactive prompt, you have to type a tab or " @@ -1000,7 +993,7 @@ msgstr "" "tahmin edemez). Bir temel blok içindeki her satırın aynı miktarda girintili " "olması gerektiğini unutmayın." -#: tutorial/introduction.rst:544 +#: tutorial/introduction.rst:542 #, fuzzy msgid "" "The :func:`print` function writes the value of the argument(s) it is given. " @@ -1017,14 +1010,14 @@ msgstr "" "işaretleri olmadan yazdırılır ve öğelerin arasına bir boşluk eklenir, " "böylece şunları güzel bir şekilde biçimlendirebilirsiniz:" -#: tutorial/introduction.rst:551 +#: tutorial/introduction.rst:549 msgid "" ">>> i = 256*256\n" ">>> print('The value of i is', i)\n" "The value of i is 65536" msgstr "" -#: tutorial/introduction.rst:555 +#: tutorial/introduction.rst:553 msgid "" "The keyword argument *end* can be used to avoid the newline after the " "output, or end the output with a different string::" @@ -1032,7 +1025,7 @@ msgstr "" "*end* anahtar sözcüğü argümanı, çıktıdan sonra yeni satırı önlemek veya " "çıktıyı farklı bir dizeyle bitirmek için kullanılabilir::" -#: tutorial/introduction.rst:558 +#: tutorial/introduction.rst:556 msgid "" ">>> a, b = 0, 1\n" ">>> while a < 1000:\n" @@ -1042,11 +1035,11 @@ msgid "" "0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987," msgstr "" -#: tutorial/introduction.rst:567 +#: tutorial/introduction.rst:565 msgid "Footnotes" msgstr "Dipnotlar" -#: tutorial/introduction.rst:568 +#: tutorial/introduction.rst:566 msgid "" "Since ``**`` has higher precedence than ``-``, ``-3**2`` will be interpreted " "as ``-(3**2)`` and thus result in ``-9``. To avoid this and get ``9``, you " @@ -1056,7 +1049,7 @@ msgstr "" "(3**2)`` olarak yorumlanacak ve dolayısıyla ``-9`` ile sonuçlanacaktır. " "Bundan kaçınmak ve ``9`` elde etmek için ``(-3)**2`` kullanabilirsiniz." -#: tutorial/introduction.rst:572 +#: tutorial/introduction.rst:570 msgid "" "Unlike other languages, special characters such as ``\\n`` have the same " "meaning with both single (``'...'``) and double (``\"...\"``) quotes. The " @@ -1077,6 +1070,12 @@ msgstr "" msgid "comment" msgstr "yorum" +#~ msgid "" +#~ "produces the following output (note that the initial newline is not " +#~ "included):" +#~ msgstr "" +#~ "aşağıdaki çıktıyı üretir (ilk yeni satırın dahil olmadığını unutmayın):" + #~ msgid "Strings" #~ msgstr "Dizeler" diff --git a/tutorial/modules.po b/tutorial/modules.po index 21632b7e4..eeecb3fe2 100644 --- a/tutorial/modules.po +++ b/tutorial/modules.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2024-04-10 21:30+0300\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -618,7 +618,7 @@ msgid "" ">>> import fibo, sys\n" ">>> dir(fibo)\n" "['__name__', 'fib', 'fib2']\n" -">>> dir(sys) \n" +">>> dir(sys)\n" "['__breakpointhook__', '__displayhook__', '__doc__', '__excepthook__',\n" " '__interactivehook__', '__loader__', '__name__', '__package__', " "'__spec__',\n" @@ -684,7 +684,7 @@ msgstr "" #: tutorial/modules.rst:354 msgid "" ">>> import builtins\n" -">>> dir(builtins) \n" +">>> dir(builtins)\n" "['ArithmeticError', 'AssertionError', 'AttributeError', 'BaseException',\n" " 'BlockingIOError', 'BrokenPipeError', 'BufferError', 'BytesWarning',\n" " 'ChildProcessError', 'ConnectionAbortedError', 'ConnectionError',\n" diff --git a/using/configure.po b/using/configure.po index b1c0bfa8b..4e4dbac67 100644 --- a/using/configure.po +++ b/using/configure.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -691,7 +691,7 @@ msgid "Define the ``Py_TRACE_REFS`` macro." msgstr "" #: using/configure.rst:462 -msgid "Add :func:`!sys.getobjects` function." +msgid "Add :func:`sys.getobjects` function." msgstr "" #: using/configure.rst:463 @@ -940,48 +940,57 @@ msgid "Options:" msgstr "" #: using/configure.rst:662 -msgid "``universal2``;" +msgid "``universal2`` (x86-64 and arm64);" msgstr "" #: using/configure.rst:663 -msgid "``32-bit``;" +msgid "``32-bit`` (PPC and i386);" msgstr "" #: using/configure.rst:664 -msgid "``64-bit``;" +msgid "``64-bit`` (PPC64 and x86-64);" msgstr "" #: using/configure.rst:665 -msgid "``3-way``;" +msgid "``3-way`` (i386, PPC and x86-64);" msgstr "" #: using/configure.rst:666 -msgid "``intel``;" +msgid "``intel`` (i386 and x86-64);" msgstr "" #: using/configure.rst:667 -msgid "``intel-32``;" +msgid "``intel-32`` (i386);" msgstr "" #: using/configure.rst:668 -msgid "``intel-64``;" +msgid "``intel-64`` (x86-64);" msgstr "" #: using/configure.rst:669 -msgid "``all``." +msgid "``all`` (PPC, i386, PPC64 and x86-64)." msgstr "" -#: using/configure.rst:673 +#: using/configure.rst:671 +msgid "" +"Note that values for this configuration item are *not* the same as the " +"identifiers used for universal binary wheels on macOS. See the Python " +"Packaging User Guide for details on the `packaging platform compatibility " +"tags used on macOS <https://packaging.python.org/en/latest/specifications/" +"platform-compatibility-tags/#macos>`_" +msgstr "" + +#: using/configure.rst:679 msgid "" "Specify the name for the python framework on macOS only valid when :option:" "`--enable-framework` is set (default: ``Python``)." msgstr "" -#: using/configure.rst:678 +#: using/configure.rst:684 msgid "Cross Compiling Options" msgstr "" -#: using/configure.rst:680 +#: using/configure.rst:686 msgid "" "Cross compiling, also known as cross building, can be used to build Python " "for another CPU architecture or platform. Cross compiling requires a Python " @@ -989,28 +998,28 @@ msgid "" "match the version of the cross compiled host Python." msgstr "" -#: using/configure.rst:687 +#: using/configure.rst:693 msgid "" "configure for building on BUILD, usually guessed by :program:`config.guess`." msgstr "" -#: using/configure.rst:691 +#: using/configure.rst:697 msgid "cross-compile to build programs to run on HOST (target platform)" msgstr "" -#: using/configure.rst:695 +#: using/configure.rst:701 msgid "path to build ``python`` binary for cross compiling" msgstr "" -#: using/configure.rst:701 +#: using/configure.rst:707 msgid "An environment variable that points to a file with configure overrides." msgstr "" -#: using/configure.rst:703 +#: using/configure.rst:709 msgid "Example *config.site* file:" msgstr "" -#: using/configure.rst:705 +#: using/configure.rst:711 msgid "" "# config.site-aarch64\n" "ac_cv_buggy_getaddrinfo=no\n" @@ -1018,11 +1027,11 @@ msgid "" "ac_cv_file__dev_ptc=no" msgstr "" -#: using/configure.rst:713 +#: using/configure.rst:719 msgid "Cross compiling example::" msgstr "" -#: using/configure.rst:715 +#: using/configure.rst:721 msgid "" "CONFIG_SITE=config.site-aarch64 ../configure \\\n" " --build=x86_64-pc-linux-gnu \\\n" @@ -1030,70 +1039,70 @@ msgid "" " --with-build-python=../x86_64/python" msgstr "" -#: using/configure.rst:722 +#: using/configure.rst:728 msgid "Python Build System" msgstr "" -#: using/configure.rst:725 +#: using/configure.rst:731 msgid "Main files of the build system" msgstr "" -#: using/configure.rst:727 +#: using/configure.rst:733 msgid ":file:`configure.ac` => :file:`configure`;" msgstr "" -#: using/configure.rst:728 +#: using/configure.rst:734 msgid "" ":file:`Makefile.pre.in` => :file:`Makefile` (created by :file:`configure`);" msgstr "" -#: using/configure.rst:729 +#: using/configure.rst:735 msgid ":file:`pyconfig.h` (created by :file:`configure`);" msgstr "" -#: using/configure.rst:730 +#: using/configure.rst:736 msgid "" ":file:`Modules/Setup`: C extensions built by the Makefile using :file:" "`Module/makesetup` shell script;" msgstr "" -#: using/configure.rst:734 +#: using/configure.rst:740 msgid "Main build steps" msgstr "" -#: using/configure.rst:736 +#: using/configure.rst:742 msgid "C files (``.c``) are built as object files (``.o``)." msgstr "" -#: using/configure.rst:737 +#: using/configure.rst:743 msgid "A static ``libpython`` library (``.a``) is created from objects files." msgstr "" -#: using/configure.rst:738 +#: using/configure.rst:744 msgid "" "``python.o`` and the static ``libpython`` library are linked into the final " "``python`` program." msgstr "" -#: using/configure.rst:740 +#: using/configure.rst:746 msgid "C extensions are built by the Makefile (see :file:`Modules/Setup`)." msgstr "" -#: using/configure.rst:743 +#: using/configure.rst:749 msgid "Main Makefile targets" msgstr "" -#: using/configure.rst:745 +#: using/configure.rst:751 msgid "``make``: Build Python with the standard library." msgstr "" -#: using/configure.rst:746 +#: using/configure.rst:752 msgid "" "``make platform:``: build the ``python`` program, but don't build the " "standard library extension modules." msgstr "" -#: using/configure.rst:748 +#: using/configure.rst:754 msgid "" "``make profile-opt``: build Python using Profile Guided Optimization (PGO). " "You can use the configure :option:`--enable-optimizations` option to make " @@ -1101,46 +1110,46 @@ msgid "" "``make``)." msgstr "" -#: using/configure.rst:752 +#: using/configure.rst:758 msgid "" "``make buildbottest``: Build Python and run the Python test suite, the same " "way than buildbots test Python. Set ``TESTTIMEOUT`` variable (in seconds) to " "change the test timeout (1200 by default: 20 minutes)." msgstr "" -#: using/configure.rst:755 +#: using/configure.rst:761 msgid "``make install``: Build and install Python." msgstr "" -#: using/configure.rst:756 +#: using/configure.rst:762 msgid "" "``make regen-all``: Regenerate (almost) all generated files; ``make regen-" "stdlib-module-names`` and ``autoconf`` must be run separately for the " "remaining generated files." msgstr "" -#: using/configure.rst:759 +#: using/configure.rst:765 msgid "``make clean``: Remove built files." msgstr "" -#: using/configure.rst:760 +#: using/configure.rst:766 msgid "" "``make distclean``: Same than ``make clean``, but remove also files created " "by the configure script." msgstr "" -#: using/configure.rst:764 +#: using/configure.rst:770 msgid "C extensions" msgstr "" -#: using/configure.rst:766 +#: using/configure.rst:772 msgid "" "Some C extensions are built as built-in modules, like the ``sys`` module. " "They are built with the ``Py_BUILD_CORE_BUILTIN`` macro defined. Built-in " "modules have no ``__file__`` attribute:" msgstr "" -#: using/configure.rst:770 +#: using/configure.rst:776 msgid "" ">>> import sys\n" ">>> sys\n" @@ -1151,14 +1160,14 @@ msgid "" "AttributeError: module 'sys' has no attribute '__file__'" msgstr "" -#: using/configure.rst:780 +#: using/configure.rst:786 msgid "" "Other C extensions are built as dynamic libraries, like the ``_asyncio`` " "module. They are built with the ``Py_BUILD_CORE_MODULE`` macro defined. " "Example on Linux x86-64:" msgstr "" -#: using/configure.rst:784 +#: using/configure.rst:790 msgid "" ">>> import _asyncio\n" ">>> _asyncio\n" @@ -1168,7 +1177,7 @@ msgid "" "'/usr/lib64/python3.9/lib-dynload/_asyncio.cpython-39-x86_64-linux-gnu.so'" msgstr "" -#: using/configure.rst:792 +#: using/configure.rst:798 msgid "" ":file:`Modules/Setup` is used to generate Makefile targets to build C " "extensions. At the beginning of the files, C extensions are built as built-" @@ -1176,303 +1185,303 @@ msgid "" "dynamic libraries." msgstr "" -#: using/configure.rst:796 +#: using/configure.rst:802 msgid "" "The :c:macro:`!PyAPI_FUNC()`, :c:macro:`!PyAPI_DATA()` and :c:macro:" "`PyMODINIT_FUNC` macros of :file:`Include/exports.h` are defined differently " "depending if the ``Py_BUILD_CORE_MODULE`` macro is defined:" msgstr "" -#: using/configure.rst:800 +#: using/configure.rst:806 msgid "Use ``Py_EXPORTED_SYMBOL`` if the ``Py_BUILD_CORE_MODULE`` is defined" msgstr "" -#: using/configure.rst:801 +#: using/configure.rst:807 msgid "Use ``Py_IMPORTED_SYMBOL`` otherwise." msgstr "" -#: using/configure.rst:803 +#: using/configure.rst:809 msgid "" "If the ``Py_BUILD_CORE_BUILTIN`` macro is used by mistake on a C extension " "built as a shared library, its :samp:`PyInit_{xxx}()` function is not " "exported, causing an :exc:`ImportError` on import." msgstr "" -#: using/configure.rst:809 +#: using/configure.rst:815 msgid "Compiler and linker flags" msgstr "" -#: using/configure.rst:811 +#: using/configure.rst:817 msgid "" "Options set by the ``./configure`` script and environment variables and used " "by ``Makefile``." msgstr "" -#: using/configure.rst:815 +#: using/configure.rst:821 msgid "Preprocessor flags" msgstr "" -#: using/configure.rst:819 +#: using/configure.rst:825 msgid "" "Value of :envvar:`CPPFLAGS` variable passed to the ``./configure`` script." msgstr "" -#: using/configure.rst:825 +#: using/configure.rst:831 msgid "" "(Objective) C/C++ preprocessor flags, e.g. :samp:`-I{include_dir}` if you " "have headers in a nonstandard directory *include_dir*." msgstr "" -#: using/configure.rst:1018 +#: using/configure.rst:1024 msgid "" "Both :envvar:`CPPFLAGS` and :envvar:`LDFLAGS` need to contain the shell's " "value to be able to build extension modules using the directories specified " "in the environment variables." msgstr "" -#: using/configure.rst:838 +#: using/configure.rst:844 msgid "" "Extra preprocessor flags added for building the interpreter object files." msgstr "" -#: using/configure.rst:840 +#: using/configure.rst:846 msgid "" "Default: ``$(BASECPPFLAGS) -I. -I$(srcdir)/Include $(CONFIGURE_CPPFLAGS) " "$(CPPFLAGS)``." msgstr "" -#: using/configure.rst:845 +#: using/configure.rst:851 msgid "Compiler flags" msgstr "" -#: using/configure.rst:849 +#: using/configure.rst:855 msgid "C compiler command." msgstr "" -#: using/configure.rst:851 +#: using/configure.rst:857 msgid "Example: ``gcc -pthread``." msgstr "" -#: using/configure.rst:855 +#: using/configure.rst:861 msgid "C++ compiler command." msgstr "" -#: using/configure.rst:857 +#: using/configure.rst:863 msgid "Example: ``g++ -pthread``." msgstr "" -#: using/configure.rst:861 +#: using/configure.rst:867 msgid "C compiler flags." msgstr "" -#: using/configure.rst:865 +#: using/configure.rst:871 msgid "" ":envvar:`CFLAGS_NODIST` is used for building the interpreter and stdlib C " "extensions. Use it when a compiler flag should *not* be part of :envvar:" "`CFLAGS` once Python is installed (:gh:`65320`)." msgstr "" -#: using/configure.rst:869 +#: using/configure.rst:875 msgid "In particular, :envvar:`CFLAGS` should not contain:" msgstr "" -#: using/configure.rst:871 +#: using/configure.rst:877 msgid "" "the compiler flag ``-I`` (for setting the search path for include files). " "The ``-I`` flags are processed from left to right, and any flags in :envvar:" "`CFLAGS` would take precedence over user- and package-supplied ``-I`` flags." msgstr "" -#: using/configure.rst:876 +#: using/configure.rst:882 msgid "" "hardening flags such as ``-Werror`` because distributions cannot control " "whether packages installed by users conform to such heightened standards." msgstr "" -#: using/configure.rst:884 +#: using/configure.rst:890 msgid "" "Options passed to the :mod:`compileall` command line when building PYC files " "in ``make install``. Default: ``-j0``." msgstr "" -#: using/configure.rst:891 +#: using/configure.rst:897 msgid "Extra C compiler flags." msgstr "" -#: using/configure.rst:895 +#: using/configure.rst:901 msgid "" "Value of :envvar:`CFLAGS` variable passed to the ``./configure`` script." msgstr "" -#: using/configure.rst:902 +#: using/configure.rst:908 msgid "" "Value of :envvar:`CFLAGS_NODIST` variable passed to the ``./configure`` " "script." msgstr "" -#: using/configure.rst:909 +#: using/configure.rst:915 msgid "Base compiler flags." msgstr "" -#: using/configure.rst:913 +#: using/configure.rst:919 msgid "Optimization flags." msgstr "" -#: using/configure.rst:917 +#: using/configure.rst:923 msgid "Strict or non-strict aliasing flags used to compile ``Python/dtoa.c``." msgstr "" -#: using/configure.rst:923 +#: using/configure.rst:929 msgid "Compiler flags used to build a shared library." msgstr "" -#: using/configure.rst:925 +#: using/configure.rst:931 msgid "For example, ``-fPIC`` is used on Linux and on BSD." msgstr "" -#: using/configure.rst:929 +#: using/configure.rst:935 msgid "Extra C flags added for building the interpreter object files." msgstr "" -#: using/configure.rst:931 +#: using/configure.rst:937 msgid "" "Default: ``$(CCSHARED)`` when :option:`--enable-shared` is used, or an empty " "string otherwise." msgstr "" -#: using/configure.rst:936 +#: using/configure.rst:942 msgid "" "Default: ``$(BASECFLAGS) $(OPT) $(CONFIGURE_CFLAGS) $(CFLAGS) " "$(EXTRA_CFLAGS)``." msgstr "" -#: using/configure.rst:940 +#: using/configure.rst:946 msgid "" "Default: ``$(CONFIGURE_CFLAGS_NODIST) $(CFLAGS_NODIST) -I$(srcdir)/Include/" "internal``." msgstr "" -#: using/configure.rst:946 +#: using/configure.rst:952 msgid "C flags used for building the interpreter object files." msgstr "" -#: using/configure.rst:948 +#: using/configure.rst:954 msgid "" "Default: ``$(PY_CFLAGS) $(PY_CFLAGS_NODIST) $(PY_CPPFLAGS) " "$(CFLAGSFORSHARED)``." msgstr "" -#: using/configure.rst:954 +#: using/configure.rst:960 msgid "Default: ``$(PY_STDMODULE_CFLAGS) -DPy_BUILD_CORE``." msgstr "" -#: using/configure.rst:960 +#: using/configure.rst:966 msgid "" "Compiler flags to build a standard library extension module as a built-in " "module, like the :mod:`posix` module." msgstr "" -#: using/configure.rst:963 +#: using/configure.rst:969 msgid "Default: ``$(PY_STDMODULE_CFLAGS) -DPy_BUILD_CORE_BUILTIN``." msgstr "" -#: using/configure.rst:969 +#: using/configure.rst:975 msgid "Purify command. Purify is a memory debugger program." msgstr "" -#: using/configure.rst:971 +#: using/configure.rst:977 msgid "Default: empty string (not used)." msgstr "" -#: using/configure.rst:975 +#: using/configure.rst:981 msgid "Linker flags" msgstr "" -#: using/configure.rst:979 +#: using/configure.rst:985 msgid "" "Linker command used to build programs like ``python`` and ``_testembed``." msgstr "" -#: using/configure.rst:981 +#: using/configure.rst:987 msgid "Default: ``$(PURIFY) $(CC)``." msgstr "" -#: using/configure.rst:985 +#: using/configure.rst:991 msgid "" "Value of :envvar:`LDFLAGS` variable passed to the ``./configure`` script." msgstr "" -#: using/configure.rst:987 +#: using/configure.rst:993 msgid "" "Avoid assigning :envvar:`CFLAGS`, :envvar:`LDFLAGS`, etc. so users can use " "them on the command line to append to these values without stomping the pre-" "set values." msgstr "" -#: using/configure.rst:995 +#: using/configure.rst:1001 msgid "" ":envvar:`LDFLAGS_NODIST` is used in the same manner as :envvar:" "`CFLAGS_NODIST`. Use it when a linker flag should *not* be part of :envvar:" "`LDFLAGS` once Python is installed (:gh:`65320`)." msgstr "" -#: using/configure.rst:999 +#: using/configure.rst:1005 msgid "In particular, :envvar:`LDFLAGS` should not contain:" msgstr "" -#: using/configure.rst:1001 +#: using/configure.rst:1007 msgid "" "the compiler flag ``-L`` (for setting the search path for libraries). The ``-" "L`` flags are processed from left to right, and any flags in :envvar:" "`LDFLAGS` would take precedence over user- and package-supplied ``-L`` flags." msgstr "" -#: using/configure.rst:1008 +#: using/configure.rst:1014 msgid "" "Value of :envvar:`LDFLAGS_NODIST` variable passed to the ``./configure`` " "script." msgstr "" -#: using/configure.rst:1015 +#: using/configure.rst:1021 msgid "" "Linker flags, e.g. :samp:`-L{lib_dir}` if you have libraries in a " "nonstandard directory *lib_dir*." msgstr "" -#: using/configure.rst:1024 +#: using/configure.rst:1030 msgid "" "Linker flags to pass libraries to the linker when linking the Python " "executable." msgstr "" -#: using/configure.rst:1027 +#: using/configure.rst:1033 msgid "Example: ``-lrt``." msgstr "" -#: using/configure.rst:1031 +#: using/configure.rst:1037 msgid "Command to build a shared library." msgstr "" -#: using/configure.rst:1033 +#: using/configure.rst:1039 msgid "Default: ``@LDSHARED@ $(PY_LDFLAGS)``." msgstr "" -#: using/configure.rst:1037 +#: using/configure.rst:1043 msgid "Command to build ``libpython`` shared library." msgstr "" -#: using/configure.rst:1039 +#: using/configure.rst:1045 msgid "Default: ``@BLDSHARED@ $(PY_CORE_LDFLAGS)``." msgstr "" -#: using/configure.rst:1043 +#: using/configure.rst:1049 msgid "Default: ``$(CONFIGURE_LDFLAGS) $(LDFLAGS)``." msgstr "" -#: using/configure.rst:1047 +#: using/configure.rst:1053 msgid "Default: ``$(CONFIGURE_LDFLAGS_NODIST) $(LDFLAGS_NODIST)``." msgstr "" -#: using/configure.rst:1053 +#: using/configure.rst:1059 msgid "Linker flags used for building the interpreter object files." msgstr "" diff --git a/using/editors.po b/using/editors.po index f24415323..a2196df5c 100644 --- a/using/editors.po +++ b/using/editors.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-17 01:28+0300\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -27,9 +27,28 @@ msgid "" "checks." msgstr "" -#: using/editors.rst:12 +#: using/editors.rst:14 +msgid "IDLE --- Python editor and shell" +msgstr "" + +#: using/editors.rst:16 +msgid "" +"IDLE is Python’s Integrated Development and Learning Environment and is " +"generally bundled with Python installs. If you are on Linux and do not have " +"IDLE installed see :ref:`Installing IDLE on Linux " +"<installing_idle_on_linux>`. For more information see the :ref:`IDLE docs " +"<idle>`." +msgstr "" + +#: using/editors.rst:22 +msgid "Other Editors and IDEs" +msgstr "" + +#: using/editors.rst:24 msgid "" -"Please go to `Python Editors <https://wiki.python.org/moin/PythonEditors>`_ " -"and `Integrated Development Environments <https://wiki.python.org/moin/" -"IntegratedDevelopmentEnvironments>`_ for a comprehensive list." +"Python's community wiki has information submitted by the community on " +"Editors and IDEs. Please go to `Python Editors <https://wiki.python.org/moin/" +"PythonEditors>`_ and `Integrated Development Environments <https://wiki." +"python.org/moin/IntegratedDevelopmentEnvironments>`_ for a comprehensive " +"list." msgstr "" diff --git a/using/unix.po b/using/unix.po index bd9203969..f1229e66f 100644 --- a/using/unix.po +++ b/using/unix.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -77,23 +77,65 @@ msgstr "" msgid "for Slackware users" msgstr "" -#: using/unix.rst:40 +#: using/unix.rst:41 +msgid "Installing IDLE" +msgstr "" + +#: using/unix.rst:43 +msgid "In some cases, IDLE might not be included in your Python installation." +msgstr "" + +#: using/unix.rst:45 +msgid "For Debian and Ubuntu users::" +msgstr "" + +#: using/unix.rst:47 +msgid "" +"sudo apt update\n" +"sudo apt install idle" +msgstr "" + +#: using/unix.rst:50 +msgid "For Fedora, RHEL, and CentOS users::" +msgstr "" + +#: using/unix.rst:52 +msgid "sudo dnf install python3-idle" +msgstr "" + +#: using/unix.rst:54 +msgid "For SUSE and OpenSUSE users::" +msgstr "" + +#: using/unix.rst:56 +msgid "sudo zypper install python3-idle" +msgstr "" + +#: using/unix.rst:58 +msgid "For Alpine Linux users::" +msgstr "" + +#: using/unix.rst:60 +msgid "sudo apk add python3-idle" +msgstr "" + +#: using/unix.rst:65 msgid "On FreeBSD and OpenBSD" msgstr "" -#: using/unix.rst:42 +#: using/unix.rst:67 msgid "FreeBSD users, to add the package use::" msgstr "" -#: using/unix.rst:44 +#: using/unix.rst:69 msgid "pkg install python3" msgstr "" -#: using/unix.rst:46 +#: using/unix.rst:71 msgid "OpenBSD users, to add the package use::" msgstr "" -#: using/unix.rst:48 +#: using/unix.rst:73 msgid "" "pkg_add -r python\n" "\n" @@ -101,21 +143,21 @@ msgid "" "architecture here>/python-<version>.tgz" msgstr "" -#: using/unix.rst:52 +#: using/unix.rst:77 msgid "For example i386 users get the 2.5.1 version of Python using::" msgstr "" -#: using/unix.rst:54 +#: using/unix.rst:79 msgid "" "pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.2/packages/i386/python-2.5.1p2." "tgz" msgstr "" -#: using/unix.rst:60 +#: using/unix.rst:85 msgid "Building Python" msgstr "" -#: using/unix.rst:62 +#: using/unix.rst:87 msgid "" "If you want to compile CPython yourself, first thing you should do is get " "the `source <https://www.python.org/downloads/source/>`_. You can download " @@ -124,36 +166,36 @@ msgid "" "contribute patches, you will need a clone.)" msgstr "" -#: using/unix.rst:68 +#: using/unix.rst:93 msgid "The build process consists of the usual commands::" msgstr "" -#: using/unix.rst:70 +#: using/unix.rst:95 msgid "" "./configure\n" "make\n" "make install" msgstr "" -#: using/unix.rst:74 +#: using/unix.rst:99 msgid "" ":ref:`Configuration options <configure-options>` and caveats for specific " "Unix platforms are extensively documented in the :source:`README.rst` file " "in the root of the Python source tree." msgstr "" -#: using/unix.rst:80 +#: using/unix.rst:105 msgid "" "``make install`` can overwrite or masquerade the :file:`python3` binary. " "``make altinstall`` is therefore recommended instead of ``make install`` " "since it only installs :file:`{exec_prefix}/bin/python{version}`." msgstr "" -#: using/unix.rst:86 +#: using/unix.rst:111 msgid "Python-related paths and files" msgstr "" -#: using/unix.rst:88 +#: using/unix.rst:113 msgid "" "These are subject to difference depending on local installation " "conventions; :option:`prefix <--prefix>` and :option:`exec_prefix <--exec-" @@ -161,92 +203,92 @@ msgid "" "software; they may be the same." msgstr "" -#: using/unix.rst:93 +#: using/unix.rst:118 msgid "" "For example, on most Linux systems, the default for both is :file:`/usr`." msgstr "" -#: using/unix.rst:96 +#: using/unix.rst:121 msgid "File/directory" msgstr "" -#: using/unix.rst:96 +#: using/unix.rst:121 msgid "Meaning" msgstr "" -#: using/unix.rst:98 +#: using/unix.rst:123 msgid ":file:`{exec_prefix}/bin/python3`" msgstr "" -#: using/unix.rst:98 +#: using/unix.rst:123 msgid "Recommended location of the interpreter." msgstr "" -#: using/unix.rst:100 +#: using/unix.rst:125 msgid "" ":file:`{prefix}/lib/python{version}`, :file:`{exec_prefix}/lib/" "python{version}`" msgstr "" -#: using/unix.rst:100 +#: using/unix.rst:125 msgid "" "Recommended locations of the directories containing the standard modules." msgstr "" -#: using/unix.rst:103 +#: using/unix.rst:128 msgid "" ":file:`{prefix}/include/python{version}`, :file:`{exec_prefix}/include/" "python{version}`" msgstr "" -#: using/unix.rst:103 +#: using/unix.rst:128 msgid "" "Recommended locations of the directories containing the include files needed " "for developing Python extensions and embedding the interpreter." msgstr "" -#: using/unix.rst:111 +#: using/unix.rst:136 msgid "Miscellaneous" msgstr "" -#: using/unix.rst:113 +#: using/unix.rst:138 msgid "" "To easily use Python scripts on Unix, you need to make them executable, e.g. " "with" msgstr "" -#: using/unix.rst:116 +#: using/unix.rst:141 msgid "$ chmod +x script" msgstr "" -#: using/unix.rst:120 +#: using/unix.rst:145 msgid "" "and put an appropriate Shebang line at the top of the script. A good choice " "is usually ::" msgstr "" -#: using/unix.rst:123 +#: using/unix.rst:148 msgid "#!/usr/bin/env python3" msgstr "" -#: using/unix.rst:125 +#: using/unix.rst:150 msgid "" "which searches for the Python interpreter in the whole :envvar:`PATH`. " "However, some Unices may not have the :program:`env` command, so you may " "need to hardcode ``/usr/bin/python3`` as the interpreter path." msgstr "" -#: using/unix.rst:129 +#: using/unix.rst:154 msgid "" "To use shell commands in your Python scripts, look at the :mod:`subprocess` " "module." msgstr "" -#: using/unix.rst:134 +#: using/unix.rst:159 msgid "Custom OpenSSL" msgstr "" -#: using/unix.rst:136 +#: using/unix.rst:161 msgid "" "To use your vendor's OpenSSL configuration and system trust store, locate " "the directory with ``openssl.cnf`` file or symlink in ``/etc``. On most " @@ -255,19 +297,19 @@ msgid "" "directory." msgstr "" -#: using/unix.rst:142 +#: using/unix.rst:167 msgid "" "$ find /etc/ -name openssl.cnf -printf \"%h\\n\"\n" "/etc/ssl" msgstr "" -#: using/unix.rst:147 +#: using/unix.rst:172 msgid "" "Download, build, and install OpenSSL. Make sure you use ``install_sw`` and " "not ``install``. The ``install_sw`` target does not override ``openssl.cnf``." msgstr "" -#: using/unix.rst:151 +#: using/unix.rst:176 msgid "" "$ curl -O https://www.openssl.org/source/openssl-VERSION.tar.gz\n" "$ tar xzf openssl-VERSION\n" @@ -282,13 +324,13 @@ msgid "" "$ popd" msgstr "" -#: using/unix.rst:165 +#: using/unix.rst:190 msgid "" "Build Python with custom OpenSSL (see the configure ``--with-openssl`` and " "``--with-openssl-rpath`` options)" msgstr "" -#: using/unix.rst:168 +#: using/unix.rst:193 msgid "" "$ pushd python-3.x.x\n" "$ ./configure -C \\\n" @@ -299,7 +341,7 @@ msgid "" "$ make altinstall" msgstr "" -#: using/unix.rst:180 +#: using/unix.rst:205 msgid "" "Patch releases of OpenSSL have a backwards compatible ABI. You don't need to " "recompile Python to update OpenSSL. It's sufficient to replace the custom " diff --git a/using/windows.po b/using/windows.po index ed72df740..a789d5016 100644 --- a/using/windows.po +++ b/using/windows.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -804,7 +804,7 @@ msgid "" "For more detail on the technical basis for these limitations, please consult " "Microsoft's documentation on packaged full-trust apps, currently available " "at `docs.microsoft.com/en-us/windows/msix/desktop/desktop-to-uwp-behind-the-" -"scenes <https://docs.microsoft.com/en-us/windows/msix/desktop/desktop-to-uwp-" +"scenes <https://learn.microsoft.com/windows/msix/desktop/desktop-to-uwp-" "behind-the-scenes>`_" msgstr "" @@ -911,7 +911,7 @@ msgstr "" #: using/windows.rst:477 msgid "" "The embedded distribution does not include the `Microsoft C Runtime <https://" -"docs.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist#visual-" +"learn.microsoft.com/cpp/windows/latest-supported-vc-redist#visual-" "studio-2015-2017-2019-and-2022>`_ and it is the responsibility of the " "application installer to provide this. The runtime may have already been " "installed on a user's system previously or automatically via Windows Update, " @@ -1137,8 +1137,7 @@ msgstr "" #: using/windows.rst:621 msgid "" -"https://docs.microsoft.com/en-us/windows/win32/procthread/environment-" -"variables" +"https://learn.microsoft.com/windows/win32/procthread/environment-variables" msgstr "" #: using/windows.rst:622 @@ -1147,8 +1146,8 @@ msgstr "" #: using/windows.rst:624 msgid "" -"https://docs.microsoft.com/en-us/windows-server/administration/windows-" -"commands/set_1" +"https://learn.microsoft.com/windows-server/administration/windows-commands/" +"set_1" msgstr "" #: using/windows.rst:625 @@ -1157,8 +1156,8 @@ msgstr "" #: using/windows.rst:627 msgid "" -"https://docs.microsoft.com/en-us/windows-server/administration/windows-" -"commands/setx" +"https://learn.microsoft.com/windows-server/administration/windows-commands/" +"setx" msgstr "" #: using/windows.rst:628 @@ -2124,7 +2123,7 @@ msgstr "" #: using/windows.rst:1224 msgid "" -"`Component Object Model <https://docs.microsoft.com/en-us/windows/win32/com/" +"`Component Object Model <https://learn.microsoft.com/windows/win32/com/" "component-object-model--com--portal>`_ (COM)" msgstr "" @@ -2142,7 +2141,7 @@ msgstr "" #: using/windows.rst:1230 msgid "" -"`Microsoft Foundation Classes <https://docs.microsoft.com/en-us/cpp/mfc/mfc-" +"`Microsoft Foundation Classes <https://learn.microsoft.com/cpp/mfc/mfc-" "desktop-applications>`_ (MFC) user interfaces" msgstr "" diff --git a/whatsnew/2.3.po b/whatsnew/2.3.po index 9a4e10b9c..82b206148 100644 --- a/whatsnew/2.3.po +++ b/whatsnew/2.3.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -500,7 +500,7 @@ msgid "" "Other systems also allow Unicode strings as file names but convert them to " "byte strings before passing them to the system, which can cause a :exc:" "`UnicodeError` to be raised. Applications can test whether arbitrary Unicode " -"strings are supported as file names by checking :attr:`os.path." +"strings are supported as file names by checking :const:`os.path." "supports_unicode_filenames`, a Boolean value." msgstr "" diff --git a/whatsnew/2.7.po b/whatsnew/2.7.po index 993adb5be..7d0a93d88 100644 --- a/whatsnew/2.7.po +++ b/whatsnew/2.7.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -1464,7 +1464,7 @@ msgid "" ">>> for letter in 'here is a sample of english text':\n" "... c[letter] += 1\n" "...\n" -">>> c \n" +">>> c\n" "Counter({' ': 6, 'e': 5, 's': 3, 'a': 2, 'i': 2, 'h': 2,\n" "'l': 2, 't': 2, 'g': 1, 'f': 1, 'm': 1, 'o': 1, 'n': 1,\n" "'p': 1, 'r': 1, 'x': 1})\n" @@ -2210,7 +2210,7 @@ msgstr "" #: whatsnew/2.7.rst:1605 msgid "" -"The :attr:`sys.version_info` value is now a named tuple, with attributes " +"The :data:`sys.version_info` value is now a named tuple, with attributes " "named :attr:`!major`, :attr:`!minor`, :attr:`!micro`, :attr:`!releaselevel`, " "and :attr:`!serial`. (Contributed by Ross Light; :issue:`4285`.)" msgstr "" diff --git a/whatsnew/3.0.po b/whatsnew/3.0.po index 87b29d22c..a03178277 100644 --- a/whatsnew/3.0.po +++ b/whatsnew/3.0.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -157,7 +157,7 @@ msgstr "" #: whatsnew/3.0.rst:153 msgid "" -"Also, the :meth:`dict.iterkeys`, :meth:`dict.iteritems` and :meth:`dict." +"Also, the :meth:`!dict.iterkeys`, :meth:`!dict.iteritems` and :meth:`!dict." "itervalues` methods are no longer supported." msgstr "" @@ -184,7 +184,7 @@ msgstr "" #: whatsnew/3.0.rst:173 msgid "" -":func:`range` now behaves like :func:`xrange` used to behave, except it " +":func:`range` now behaves like :func:`!xrange` used to behave, except it " "works with values of arbitrary size. The latter no longer exists." msgstr "" @@ -214,18 +214,19 @@ msgstr "" #: whatsnew/3.0.rst:195 msgid "" -":meth:`builtin.sorted` and :meth:`list.sort` no longer accept the *cmp* " -"argument providing a comparison function. Use the *key* argument instead. N." -"B. the *key* and *reverse* arguments are now \"keyword-only\"." +":meth:`sorted` and :meth:`list.sort` no longer accept the *cmp* argument " +"providing a comparison function. Use the *key* argument instead. N.B. the " +"*key* and *reverse* arguments are now \"keyword-only\"." msgstr "" #: whatsnew/3.0.rst:200 msgid "" -"The :func:`cmp` function should be treated as gone, and the :meth:`__cmp__` " -"special method is no longer supported. Use :meth:`__lt__` for sorting, :" -"meth:`__eq__` with :meth:`__hash__`, and other rich comparisons as needed. " -"(If you really need the :func:`cmp` functionality, you could use the " -"expression ``(a > b) - (a < b)`` as the equivalent for ``cmp(a, b)``.)" +"The :func:`!cmp` function should be treated as gone, and the :meth:`!" +"__cmp__` special method is no longer supported. Use :meth:`~object.__lt__` " +"for sorting, :meth:`~object.__eq__` with :meth:`~object.__hash__`, and other " +"rich comparisons as needed. (If you really need the :func:`!cmp` " +"functionality, you could use the expression ``(a > b) - (a < b)`` as the " +"equivalent for ``cmp(a, b)``.)" msgstr "" #: whatsnew/3.0.rst:207 @@ -234,9 +235,9 @@ msgstr "" #: whatsnew/3.0.rst:209 msgid "" -":pep:`237`: Essentially, :class:`long` renamed to :class:`int`. That is, " +":pep:`237`: Essentially, :class:`!long` renamed to :class:`int`. That is, " "there is only one built-in integral type, named :class:`int`; but it behaves " -"mostly like the old :class:`long` type." +"mostly like the old :class:`!long` type." msgstr "" #: whatsnew/3.0.rst:213 @@ -248,11 +249,11 @@ msgstr "" #: whatsnew/3.0.rst:217 msgid "" -"The :data:`sys.maxint` constant was removed, since there is no longer a " +"The :data:`!sys.maxint` constant was removed, since there is no longer a " "limit to the value of integers. However, :data:`sys.maxsize` can be used as " "an integer larger than any practical list or string index. It conforms to " "the implementation's \"natural\" integer size and is typically the same as :" -"data:`sys.maxint` in previous releases on the same platform (assuming the " +"data:`!sys.maxint` in previous releases on the same platform (assuming the " "same build options)." msgstr "" @@ -297,7 +298,7 @@ msgid "" "uses Unicode, encodings or binary data most likely has to change. The " "change is for the better, as in the 2.x world there were numerous bugs " "having to do with mixing encoded and unencoded text. To be prepared in " -"Python 2.x, start using :class:`unicode` for all unencoded text, and :class:" +"Python 2.x, start using :class:`!unicode` for all unencoded text, and :class:" "`str` for binary or encoded data only. Then the ``2to3`` tool will do most " "of the work for you." msgstr "" @@ -322,7 +323,8 @@ msgid "" "Like :class:`str`, the :class:`bytes` type is immutable. There is a " "separate *mutable* type to hold buffered binary data, :class:`bytearray`. " "Nearly all APIs that accept :class:`bytes` also accept :class:`bytearray`. " -"The mutable API is based on :class:`collections.MutableSequence`." +"The mutable API is based on :class:`collections.MutableSequence <collections." +"abc.MutableSequence>`." msgstr "" #: whatsnew/3.0.rst:274 @@ -337,10 +339,10 @@ msgstr "" #: whatsnew/3.0.rst:281 msgid "" -"The built-in :class:`basestring` abstract type was removed. Use :class:" +"The built-in :class:`!basestring` abstract type was removed. Use :class:" "`str` instead. The :class:`str` and :class:`bytes` types don't have " "functionality enough in common to warrant a shared base class. The ``2to3`` " -"tool (see below) replaces every occurrence of :class:`basestring` with :" +"tool (see below) replaces every occurrence of :class:`!basestring` with :" "class:`str`." msgstr "" @@ -442,9 +444,9 @@ msgid "" ":pep:`3107`: Function argument and return value annotations. This provides " "a standardized way of annotating a function's parameters and return value. " "There are no semantics attached to such annotations except that they can be " -"introspected at runtime using the :attr:`~object.__annotations__` " -"attribute. The intent is to encourage experimentation through metaclasses, " -"decorators or frameworks." +"introspected at runtime using the :attr:`!__annotations__` attribute. The " +"intent is to encourage experimentation through metaclasses, decorators or " +"frameworks." msgstr "" #: whatsnew/3.0.rst:363 @@ -570,7 +572,7 @@ msgstr "" #: whatsnew/3.0.rst:431 msgid "" -"The module-global :data:`__metaclass__` variable is no longer supported. " +"The module-global :data:`!__metaclass__` variable is no longer supported. " "(It was a crutch to make it easier to default to new-style classes without " "deriving every class from :class:`object`.)" msgstr "" @@ -714,15 +716,15 @@ msgid "" "and has additional keyword arguments *encoding*, *errors*, *newline* and " "*closefd*. Also note that an invalid *mode* argument now raises :exc:" "`ValueError`, not :exc:`IOError`. The binary file object underlying a text " -"file object can be accessed as :attr:`f.buffer` (but beware that the text " +"file object can be accessed as :attr:`!f.buffer` (but beware that the text " "object maintains a buffer of itself in order to speed up the encoding and " "decoding operations)." msgstr "" #: whatsnew/3.0.rst:529 msgid "" -":ref:`pep-3118`. The old builtin :func:`buffer` is now really gone; the new " -"builtin :func:`memoryview` provides (mostly) similar functionality." +":ref:`pep-3118`. The old builtin :func:`!buffer` is now really gone; the " +"new builtin :func:`memoryview` provides (mostly) similar functionality." msgstr "" #: whatsnew/3.0.rst:533 @@ -730,8 +732,9 @@ msgid "" ":ref:`pep-3119`. The :mod:`abc` module and the ABCs defined in the :mod:" "`collections` module plays a somewhat more prominent role in the language " "now, and built-in collection types like :class:`dict` and :class:`list` " -"conform to the :class:`collections.MutableMapping` and :class:`collections." -"MutableSequence` ABCs, respectively." +"conform to the :class:`collections.MutableMapping <collections.abc." +"MutableMapping>` and :class:`collections.MutableSequence <collections.abc." +"MutableSequence>` ABCs, respectively." msgstr "" #: whatsnew/3.0.rst:539 @@ -898,10 +901,10 @@ msgstr "" #: whatsnew/3.0.rst:615 msgid "" -":mod:`tkinter` (all :mod:`Tkinter`-related modules except :mod:`turtle`). " -"The target audience of :mod:`turtle` doesn't really care about :mod:" -"`tkinter`. Also note that as of Python 2.6, the functionality of :mod:" -"`turtle` has been greatly enhanced." +":mod:`tkinter` (all ``Tkinter``-related modules except :mod:`turtle`). The " +"target audience of :mod:`turtle` doesn't really care about :mod:`tkinter`. " +"Also note that as of Python 2.6, the functionality of :mod:`turtle` has been " +"greatly enhanced." msgstr "" #: whatsnew/3.0.rst:620 @@ -927,23 +930,23 @@ msgstr "" #: whatsnew/3.0.rst:631 msgid "" -"Cleanup of the :mod:`sys` module: removed :func:`sys.exitfunc`, :func:`sys." -"exc_clear`, :data:`sys.exc_type`, :data:`sys.exc_value`, :data:`sys." +"Cleanup of the :mod:`sys` module: removed :func:`!sys.exitfunc`, :func:`!sys." +"exc_clear`, :data:`!sys.exc_type`, :data:`!sys.exc_value`, :data:`!sys." "exc_traceback`. (Note that :data:`sys.last_type` etc. remain.)" msgstr "" #: whatsnew/3.0.rst:636 msgid "" -"Cleanup of the :class:`array.array` type: the :meth:`read` and :meth:`write` " -"methods are gone; use :meth:`fromfile` and :meth:`tofile` instead. Also, " -"the ``'c'`` typecode for array is gone -- use either ``'b'`` for bytes or " -"``'u'`` for Unicode characters." +"Cleanup of the :class:`array.array` type: the :meth:`!read` and :meth:`!" +"write` methods are gone; use :meth:`~array.array.fromfile` and :meth:`~array." +"array.tofile` instead. Also, the ``'c'`` typecode for array is gone -- use " +"either ``'b'`` for bytes or ``'u'`` for Unicode characters." msgstr "" #: whatsnew/3.0.rst:642 msgid "" -"Cleanup of the :mod:`operator` module: removed :func:`sequenceIncludes` and :" -"func:`isCallable`." +"Cleanup of the :mod:`operator` module: removed :func:`!sequenceIncludes` " +"and :func:`!isCallable`." msgstr "" #: whatsnew/3.0.rst:645 @@ -954,7 +957,8 @@ msgid "" msgstr "" #: whatsnew/3.0.rst:649 -msgid "Cleanup of the :mod:`random` module: removed the :func:`jumpahead` API." +msgid "" +"Cleanup of the :mod:`random` module: removed the :func:`!jumpahead` API." msgstr "" #: whatsnew/3.0.rst:651 @@ -963,8 +967,8 @@ msgstr "" #: whatsnew/3.0.rst:653 msgid "" -"The functions :func:`os.tmpnam`, :func:`os.tempnam` and :func:`os.tmpfile` " -"have been removed in favor of the :mod:`tempfile` module." +"The functions :func:`!os.tmpnam`, :func:`!os.tempnam` and :func:`!os." +"tmpfile` have been removed in favor of the :mod:`tempfile` module." msgstr "" #: whatsnew/3.0.rst:657 @@ -975,19 +979,19 @@ msgstr "" #: whatsnew/3.0.rst:661 msgid "" -":data:`string.letters` and its friends (:data:`string.lowercase` and :data:" -"`string.uppercase`) are gone. Use :data:`string.ascii_letters` etc. " -"instead. (The reason for the removal is that :data:`string.letters` and " +":data:`!string.letters` and its friends (:data:`!string.lowercase` and :data:" +"`!string.uppercase`) are gone. Use :data:`string.ascii_letters` etc. " +"instead. (The reason for the removal is that :data:`!string.letters` and " "friends had locale-specific behavior, which is a bad idea for such " "attractively named global \"constants\".)" msgstr "" #: whatsnew/3.0.rst:668 msgid "" -"Renamed module :mod:`__builtin__` to :mod:`builtins` (removing the " -"underscores, adding an 's'). The :data:`__builtins__` variable found in " +"Renamed module :mod:`!__builtin__` to :mod:`builtins` (removing the " +"underscores, adding an 's'). The :data:`!__builtins__` variable found in " "most global namespaces is unchanged. To modify a builtin, you should use :" -"mod:`builtins`, not :data:`__builtins__`!" +"mod:`builtins`, not :data:`!__builtins__`!" msgstr "" #: whatsnew/3.0.rst:675 @@ -1032,13 +1036,13 @@ msgid "" msgstr "" #: whatsnew/3.0.rst:705 -msgid ":exc:`StandardError` was removed." +msgid ":exc:`!StandardError` was removed." msgstr "" #: whatsnew/3.0.rst:707 msgid "" -"Exceptions no longer behave as sequences. Use the :attr:`args` attribute " -"instead." +"Exceptions no longer behave as sequences. Use the :attr:`~BaseException." +"args` attribute instead." msgstr "" #: whatsnew/3.0.rst:710 @@ -1124,10 +1128,10 @@ msgstr "" #: whatsnew/3.0.rst:768 msgid "" -":meth:`__getslice__`, :meth:`__setslice__` and :meth:`__delslice__` were " +":meth:`!__getslice__`, :meth:`!__setslice__` and :meth:`!__delslice__` were " "killed. The syntax ``a[i:j]`` now translates to ``a.__getitem__(slice(i, " -"j))`` (or :meth:`__setitem__` or :meth:`__delitem__`, when used as an " -"assignment or deletion target, respectively)." +"j))`` (or :meth:`~object.__setitem__` or :meth:`~object.__delitem__`, when " +"used as an assignment or deletion target, respectively)." msgstr "" #: whatsnew/3.0.rst:774 @@ -1138,13 +1142,13 @@ msgstr "" #: whatsnew/3.0.rst:777 msgid "" -"The :meth:`__oct__` and :meth:`__hex__` special methods are removed -- :func:" -"`oct` and :func:`hex` use :meth:`__index__` now to convert the argument to " -"an integer." +"The :meth:`!__oct__` and :meth:`!__hex__` special methods are removed -- :" +"func:`oct` and :func:`hex` use :meth:`~object.__index__` now to convert the " +"argument to an integer." msgstr "" #: whatsnew/3.0.rst:781 -msgid "Removed support for :attr:`__members__` and :attr:`__methods__`." +msgid "Removed support for :attr:`!__members__` and :attr:`!__methods__`." msgstr "" #: whatsnew/3.0.rst:783 @@ -1178,7 +1182,7 @@ msgstr "" #: whatsnew/3.0.rst:805 msgid "" -":pep:`3111`: :func:`raw_input` was renamed to :func:`input`. That is, the " +":pep:`3111`: :func:`!raw_input` was renamed to :func:`input`. That is, the " "new :func:`input` function reads a line from :data:`sys.stdin` and returns " "it with the trailing newline stripped. It raises :exc:`EOFError` if the " "input is terminated prematurely. To get the old behavior of :func:`input`, " @@ -1203,53 +1207,53 @@ msgid "" msgstr "" #: whatsnew/3.0.rst:823 -msgid "Moved :func:`intern` to :func:`sys.intern`." +msgid "Moved :func:`!intern` to :func:`sys.intern`." msgstr "" #: whatsnew/3.0.rst:825 msgid "" -"Removed: :func:`apply`. Instead of ``apply(f, args)`` use ``f(*args)``." +"Removed: :func:`!apply`. Instead of ``apply(f, args)`` use ``f(*args)``." msgstr "" #: whatsnew/3.0.rst:828 msgid "" "Removed :func:`callable`. Instead of ``callable(f)`` you can use " -"``isinstance(f, collections.Callable)``. The :func:`operator.isCallable` " +"``isinstance(f, collections.Callable)``. The :func:`!operator.isCallable` " "function is also gone." msgstr "" #: whatsnew/3.0.rst:832 msgid "" -"Removed :func:`coerce`. This function no longer serves a purpose now that " +"Removed :func:`!coerce`. This function no longer serves a purpose now that " "classic classes are gone." msgstr "" #: whatsnew/3.0.rst:835 msgid "" -"Removed :func:`execfile`. Instead of ``execfile(fn)`` use ``exec(open(fn)." +"Removed :func:`!execfile`. Instead of ``execfile(fn)`` use ``exec(open(fn)." "read())``." msgstr "" #: whatsnew/3.0.rst:838 msgid "" -"Removed the :class:`file` type. Use :func:`open`. There are now several " +"Removed the :class:`!file` type. Use :func:`open`. There are now several " "different kinds of streams that open can return in the :mod:`io` module." msgstr "" #: whatsnew/3.0.rst:841 msgid "" -"Removed :func:`reduce`. Use :func:`functools.reduce` if you really need it; " -"however, 99 percent of the time an explicit :keyword:`for` loop is more " +"Removed :func:`!reduce`. Use :func:`functools.reduce` if you really need " +"it; however, 99 percent of the time an explicit :keyword:`for` loop is more " "readable." msgstr "" #: whatsnew/3.0.rst:845 -msgid "Removed :func:`reload`. Use :func:`!imp.reload`." +msgid "Removed :func:`!reload`. Use :func:`!imp.reload`." msgstr "" #: whatsnew/3.0.rst:847 msgid "" -"Removed. :meth:`dict.has_key` -- use the :keyword:`in` operator instead." +"Removed. :meth:`!dict.has_key` -- use the :keyword:`in` operator instead." msgstr "" #: whatsnew/3.0.rst:854 diff --git a/whatsnew/3.12.po b/whatsnew/3.12.po index 09a68fcd7..c7cfaa88e 100644 --- a/whatsnew/3.12.po +++ b/whatsnew/3.12.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -255,7 +255,7 @@ msgid "" "<unittest-TestCase-removed-aliases_>`_." msgstr "" -#: whatsnew/3.12.rst:1837 +#: whatsnew/3.12.rst:1851 msgid "New Features" msgstr "" @@ -1150,37 +1150,49 @@ msgid "" msgstr "" #: whatsnew/3.12.rst:822 -msgid "pdb" +msgid "platform" msgstr "" #: whatsnew/3.12.rst:824 msgid "" +"Add support for detecting Windows 11 and Windows Server releases past 2012. " +"Previously, lookups on Windows Server platforms newer than Windows Server " +"2012 and on Windows 11 would return ``Windows-10``. (Contributed by Steve " +"Dower in :gh:`89545`.)" +msgstr "" + +#: whatsnew/3.12.rst:830 +msgid "pdb" +msgstr "" + +#: whatsnew/3.12.rst:832 +msgid "" "Add convenience variables to hold values temporarily for debug session and " "provide quick access to values like the current frame or the return value. " "(Contributed by Tian Gao in :gh:`103693`.)" msgstr "" -#: whatsnew/3.12.rst:830 +#: whatsnew/3.12.rst:838 msgid "random" msgstr "" -#: whatsnew/3.12.rst:832 +#: whatsnew/3.12.rst:840 msgid "" "Add :func:`random.binomialvariate`. (Contributed by Raymond Hettinger in :gh:" "`81620`.)" msgstr "" -#: whatsnew/3.12.rst:835 +#: whatsnew/3.12.rst:843 msgid "" "Add a default of ``lambd=1.0`` to :func:`random.expovariate`. (Contributed " "by Raymond Hettinger in :gh:`100234`.)" msgstr "" -#: whatsnew/3.12.rst:839 +#: whatsnew/3.12.rst:847 msgid "shutil" msgstr "" -#: whatsnew/3.12.rst:841 +#: whatsnew/3.12.rst:849 msgid "" ":func:`shutil.make_archive` now passes the *root_dir* argument to custom " "archivers which support it. In this case it no longer temporarily changes " @@ -1188,7 +1200,7 @@ msgid "" "archiving. (Contributed by Serhiy Storchaka in :gh:`74696`.)" msgstr "" -#: whatsnew/3.12.rst:847 +#: whatsnew/3.12.rst:855 msgid "" ":func:`shutil.rmtree` now accepts a new argument *onexc* which is an error " "handler like *onerror* but which expects an exception instance rather than a " @@ -1196,14 +1208,14 @@ msgid "" "Katriel in :gh:`102828`.)" msgstr "" -#: whatsnew/3.12.rst:852 +#: whatsnew/3.12.rst:860 msgid "" ":func:`shutil.which` now consults the *PATHEXT* environment variable to find " "matches within *PATH* on Windows even when the given *cmd* includes a " "directory component. (Contributed by Charles Machalow in :gh:`103179`.)" msgstr "" -#: whatsnew/3.12.rst:857 +#: whatsnew/3.12.rst:865 msgid "" ":func:`shutil.which` will call ``NeedCurrentDirectoryForExePathW`` when " "querying for executables on Windows to determine if the current working " @@ -1211,24 +1223,24 @@ msgid "" "Machalow in :gh:`103179`.)" msgstr "" -#: whatsnew/3.12.rst:862 +#: whatsnew/3.12.rst:870 msgid "" ":func:`shutil.which` will return a path matching the *cmd* with a component " "from ``PATHEXT`` prior to a direct match elsewhere in the search path on " "Windows. (Contributed by Charles Machalow in :gh:`103179`.)" msgstr "" -#: whatsnew/3.12.rst:1541 +#: whatsnew/3.12.rst:1555 msgid "sqlite3" msgstr "" -#: whatsnew/3.12.rst:870 +#: whatsnew/3.12.rst:878 msgid "" "Add a :ref:`command-line interface <sqlite3-cli>`. (Contributed by Erlend E. " "Aasland in :gh:`77617`.)" msgstr "" -#: whatsnew/3.12.rst:873 +#: whatsnew/3.12.rst:881 msgid "" "Add the :attr:`sqlite3.Connection.autocommit` attribute to :class:`sqlite3." "Connection` and the *autocommit* parameter to :func:`sqlite3.connect` to " @@ -1236,43 +1248,43 @@ msgid "" "control-autocommit>`. (Contributed by Erlend E. Aasland in :gh:`83638`.)" msgstr "" -#: whatsnew/3.12.rst:880 +#: whatsnew/3.12.rst:888 msgid "" "Add *entrypoint* keyword-only parameter to :meth:`sqlite3.Connection." "load_extension`, for overriding the SQLite extension entry point. " "(Contributed by Erlend E. Aasland in :gh:`103015`.)" msgstr "" -#: whatsnew/3.12.rst:885 +#: whatsnew/3.12.rst:893 msgid "" "Add :meth:`sqlite3.Connection.getconfig` and :meth:`sqlite3.Connection." "setconfig` to :class:`sqlite3.Connection` to make configuration changes to a " "database connection. (Contributed by Erlend E. Aasland in :gh:`103489`.)" msgstr "" -#: whatsnew/3.12.rst:891 +#: whatsnew/3.12.rst:899 msgid "statistics" msgstr "" -#: whatsnew/3.12.rst:893 +#: whatsnew/3.12.rst:901 msgid "" "Extend :func:`statistics.correlation` to include as a ``ranked`` method for " "computing the Spearman correlation of ranked data. (Contributed by Raymond " "Hettinger in :gh:`95861`.)" msgstr "" -#: whatsnew/3.12.rst:898 +#: whatsnew/3.12.rst:2318 msgid "sys" msgstr "" -#: whatsnew/3.12.rst:900 +#: whatsnew/3.12.rst:908 msgid "" "Add the :mod:`sys.monitoring` namespace to expose the new :ref:`PEP 669 " "<whatsnew312-pep669>` monitoring API. (Contributed by Mark Shannon in :gh:" "`103082`.)" msgstr "" -#: whatsnew/3.12.rst:904 +#: whatsnew/3.12.rst:912 msgid "" "Add :func:`sys.activate_stack_trampoline` and :func:`sys." "deactivate_stack_trampoline` for activating and deactivating stack profiler " @@ -1282,7 +1294,7 @@ msgid "" "Shannon in :gh:`96123`.)" msgstr "" -#: whatsnew/3.12.rst:913 +#: whatsnew/3.12.rst:921 msgid "" "Add :data:`sys.last_exc` which holds the last unhandled exception that was " "raised (for post-mortem debugging use cases). Deprecate the three fields " @@ -1291,14 +1303,14 @@ msgid "" "Katriel in :gh:`102778`.)" msgstr "" -#: whatsnew/3.12.rst:1736 +#: whatsnew/3.12.rst:1750 msgid "" ":func:`sys._current_exceptions` now returns a mapping from thread-id to an " "exception instance, rather than to a ``(typ, exc, tb)`` tuple. (Contributed " "by Irit Katriel in :gh:`103176`.)" msgstr "" -#: whatsnew/3.12.rst:923 +#: whatsnew/3.12.rst:931 msgid "" ":func:`sys.setrecursionlimit` and :func:`sys.getrecursionlimit`. The " "recursion limit now applies only to Python code. Builtin functions do not " @@ -1306,23 +1318,23 @@ msgid "" "prevents recursion from causing a virtual machine crash." msgstr "" -#: whatsnew/3.12.rst:929 +#: whatsnew/3.12.rst:937 msgid "tempfile" msgstr "" -#: whatsnew/3.12.rst:931 +#: whatsnew/3.12.rst:939 msgid "" "The :class:`tempfile.NamedTemporaryFile` function has a new optional " "parameter *delete_on_close* (Contributed by Evgeny Zorin in :gh:`58451`.)" msgstr "" -#: whatsnew/3.12.rst:933 +#: whatsnew/3.12.rst:941 msgid "" ":func:`tempfile.mkdtemp` now always returns an absolute path, even if the " "argument provided to the *dir* parameter is a relative path." msgstr "" -#: whatsnew/3.12.rst:935 +#: whatsnew/3.12.rst:943 msgid "" "As of 3.12.4 on Windows, the default mode ``0o700`` used by :func:`tempfile." "mkdtemp` now limits access to the new directory due to changes to :func:`os." @@ -1330,11 +1342,11 @@ msgid "" "Dower in :gh:`118486`.)" msgstr "" -#: whatsnew/3.12.rst:941 +#: whatsnew/3.12.rst:949 msgid "threading" msgstr "" -#: whatsnew/3.12.rst:943 +#: whatsnew/3.12.rst:951 msgid "" "Add :func:`threading.settrace_all_threads` and :func:`threading." "setprofile_all_threads` that allow to set tracing and profiling functions in " @@ -1342,11 +1354,11 @@ msgid "" "Galindo in :gh:`93503`.)" msgstr "" -#: whatsnew/3.12.rst:949 +#: whatsnew/3.12.rst:957 msgid "tkinter" msgstr "" -#: whatsnew/3.12.rst:951 +#: whatsnew/3.12.rst:959 msgid "" "``tkinter.Canvas.coords()`` now flattens its arguments. It now accepts not " "only coordinates as separate arguments (``x1, y1, x2, y2, ...``) and a " @@ -1356,11 +1368,11 @@ msgid "" "in :gh:`94473`.)" msgstr "" -#: whatsnew/3.12.rst:960 +#: whatsnew/3.12.rst:968 msgid "tokenize" msgstr "" -#: whatsnew/3.12.rst:962 +#: whatsnew/3.12.rst:970 msgid "" "The :mod:`tokenize` module includes the changes introduced in :pep:`701`. " "(Contributed by Marta Gómez Macías and Pablo Galindo in :gh:`102856`.) See :" @@ -1368,22 +1380,22 @@ msgid "" "to the :mod:`tokenize` module." msgstr "" -#: whatsnew/3.12.rst:968 +#: whatsnew/3.12.rst:976 msgid "types" msgstr "" -#: whatsnew/3.12.rst:970 +#: whatsnew/3.12.rst:978 msgid "" "Add :func:`types.get_original_bases` to allow for further introspection of :" "ref:`user-defined-generics` when subclassed. (Contributed by James Hilton-" "Balfe and Alex Waygood in :gh:`101827`.)" msgstr "" -#: whatsnew/3.12.rst:977 +#: whatsnew/3.12.rst:985 msgid "typing" msgstr "" -#: whatsnew/3.12.rst:979 +#: whatsnew/3.12.rst:987 msgid "" ":func:`isinstance` checks against :func:`runtime-checkable protocols <typing." "runtime_checkable>` now use :func:`inspect.getattr_static` rather than :func:" @@ -1396,7 +1408,7 @@ msgid "" "affected by this change. (Contributed by Alex Waygood in :gh:`102433`.)" msgstr "" -#: whatsnew/3.12.rst:990 +#: whatsnew/3.12.rst:998 msgid "" "The members of a runtime-checkable protocol are now considered \"frozen\" at " "runtime as soon as the class has been created. Monkey-patching attributes " @@ -1404,7 +1416,7 @@ msgid "" "on :func:`isinstance` checks comparing objects to the protocol. For example::" msgstr "" -#: whatsnew/3.12.rst:995 +#: whatsnew/3.12.rst:1003 msgid "" ">>> from typing import Protocol, runtime_checkable\n" ">>> @runtime_checkable\n" @@ -1425,13 +1437,13 @@ msgid "" "True" msgstr "" -#: whatsnew/3.12.rst:1012 +#: whatsnew/3.12.rst:1020 msgid "" "This change was made in order to speed up ``isinstance()`` checks against " "runtime-checkable protocols." msgstr "" -#: whatsnew/3.12.rst:1015 +#: whatsnew/3.12.rst:1023 msgid "" "The performance profile of :func:`isinstance` checks against :func:`runtime-" "checkable protocols <typing.runtime_checkable>` has changed significantly. " @@ -1442,39 +1454,39 @@ msgid "" "`74690` and :gh:`103193`.)" msgstr "" -#: whatsnew/3.12.rst:1023 +#: whatsnew/3.12.rst:1031 msgid "" "All :data:`typing.TypedDict` and :data:`typing.NamedTuple` classes now have " "the ``__orig_bases__`` attribute. (Contributed by Adrian Garcia Badaracco " "in :gh:`103699`.)" msgstr "" -#: whatsnew/3.12.rst:1027 +#: whatsnew/3.12.rst:1035 msgid "" "Add ``frozen_default`` parameter to :func:`typing.dataclass_transform`. " "(Contributed by Erik De Bonte in :gh:`99957`.)" msgstr "" -#: whatsnew/3.12.rst:1031 +#: whatsnew/3.12.rst:1039 msgid "unicodedata" msgstr "" -#: whatsnew/3.12.rst:1033 +#: whatsnew/3.12.rst:1041 msgid "" "The Unicode database has been updated to version 15.0.0. (Contributed by " "Benjamin Peterson in :gh:`96734`)." msgstr "" -#: whatsnew/3.12.rst:1581 +#: whatsnew/3.12.rst:1595 msgid "unittest" msgstr "" -#: whatsnew/3.12.rst:1039 +#: whatsnew/3.12.rst:1047 msgid "" "Add a ``--durations`` command line option, showing the N slowest test cases::" msgstr "" -#: whatsnew/3.12.rst:1041 +#: whatsnew/3.12.rst:1049 msgid "" "python3 -m unittest --durations=3 lib.tests.test_threading\n" ".....\n" @@ -1491,39 +1503,39 @@ msgid "" "OK (skipped=3)" msgstr "" -#: whatsnew/3.12.rst:1055 +#: whatsnew/3.12.rst:1063 msgid "(Contributed by Giampaolo Rodola in :gh:`48330`)" msgstr "" -#: whatsnew/3.12.rst:1058 +#: whatsnew/3.12.rst:1066 msgid "uuid" msgstr "" -#: whatsnew/3.12.rst:1060 +#: whatsnew/3.12.rst:1068 msgid "" "Add a :ref:`command-line interface <uuid-cli>`. (Contributed by Adam Chhina " "in :gh:`88597`.)" msgstr "" -#: whatsnew/3.12.rst:1065 +#: whatsnew/3.12.rst:1073 msgid "Optimizations" msgstr "" -#: whatsnew/3.12.rst:1067 +#: whatsnew/3.12.rst:1075 msgid "" "Remove ``wstr`` and ``wstr_length`` members from Unicode objects. It reduces " "object size by 8 or 16 bytes on 64bit platform. (:pep:`623`) (Contributed by " "Inada Naoki in :gh:`92536`.)" msgstr "" -#: whatsnew/3.12.rst:1071 +#: whatsnew/3.12.rst:1079 msgid "" "Add experimental support for using the BOLT binary optimizer in the build " "process, which improves performance by 1-5%. (Contributed by Kevin " "Modzelewski in :gh:`90536` and tuned by Donghee Na in :gh:`101525`)" msgstr "" -#: whatsnew/3.12.rst:1075 +#: whatsnew/3.12.rst:1083 msgid "" "Speed up the regular expression substitution (functions :func:`re.sub` and :" "func:`re.subn` and corresponding :class:`!re.Pattern` methods) for " @@ -1531,13 +1543,13 @@ msgid "" "by Serhiy Storchaka in :gh:`91524`.)" msgstr "" -#: whatsnew/3.12.rst:1080 +#: whatsnew/3.12.rst:1088 msgid "" "Speed up :class:`asyncio.Task` creation by deferring expensive string " "formatting. (Contributed by Itamar Oren in :gh:`103793`.)" msgstr "" -#: whatsnew/3.12.rst:1083 +#: whatsnew/3.12.rst:1091 msgid "" "The :func:`tokenize.tokenize` and :func:`tokenize.generate_tokens` functions " "are up to 64% faster as a side effect of the changes required to cover :pep:" @@ -1545,18 +1557,18 @@ msgid "" "Pablo Galindo in :gh:`102856`.)" msgstr "" -#: whatsnew/3.12.rst:1088 +#: whatsnew/3.12.rst:1096 msgid "" "Speed up :func:`super` method calls and attribute loads via the new :opcode:" "`LOAD_SUPER_ATTR` instruction. (Contributed by Carl Meyer and Vladimir " "Matveev in :gh:`103497`.)" msgstr "" -#: whatsnew/3.12.rst:1094 +#: whatsnew/3.12.rst:1102 msgid "CPython bytecode changes" msgstr "" -#: whatsnew/3.12.rst:1096 +#: whatsnew/3.12.rst:1104 msgid "" "Remove the :opcode:`!LOAD_METHOD` instruction. It has been merged into :" "opcode:`LOAD_ATTR`. :opcode:`LOAD_ATTR` will now behave like the old :opcode:" @@ -1564,62 +1576,62 @@ msgid "" "by Ken Jin in :gh:`93429`.)" msgstr "" -#: whatsnew/3.12.rst:1101 +#: whatsnew/3.12.rst:1109 msgid "" "Remove the :opcode:`!JUMP_IF_FALSE_OR_POP` and :opcode:`!" "JUMP_IF_TRUE_OR_POP` instructions. (Contributed by Irit Katriel in :gh:" "`102859`.)" msgstr "" -#: whatsnew/3.12.rst:1104 +#: whatsnew/3.12.rst:1112 msgid "" "Remove the :opcode:`!PRECALL` instruction. (Contributed by Mark Shannon in :" "gh:`92925`.)" msgstr "" -#: whatsnew/3.12.rst:1107 +#: whatsnew/3.12.rst:1115 msgid "" "Add the :opcode:`BINARY_SLICE` and :opcode:`STORE_SLICE` instructions. " "(Contributed by Mark Shannon in :gh:`94163`.)" msgstr "" -#: whatsnew/3.12.rst:1110 +#: whatsnew/3.12.rst:1118 msgid "" "Add the :opcode:`CALL_INTRINSIC_1` instructions. (Contributed by Mark " "Shannon in :gh:`99005`.)" msgstr "" -#: whatsnew/3.12.rst:1113 +#: whatsnew/3.12.rst:1121 msgid "" "Add the :opcode:`CALL_INTRINSIC_2` instruction. (Contributed by Irit Katriel " "in :gh:`101799`.)" msgstr "" -#: whatsnew/3.12.rst:1116 +#: whatsnew/3.12.rst:1124 msgid "" "Add the :opcode:`CLEANUP_THROW` instruction. (Contributed by Brandt Bucher " "in :gh:`90997`.)" msgstr "" -#: whatsnew/3.12.rst:1119 +#: whatsnew/3.12.rst:1127 msgid "" "Add the :opcode:`!END_SEND` instruction. (Contributed by Mark Shannon in :gh:" "`103082`.)" msgstr "" -#: whatsnew/3.12.rst:1122 +#: whatsnew/3.12.rst:1130 msgid "" "Add the :opcode:`LOAD_FAST_AND_CLEAR` instruction as part of the " "implementation of :pep:`709`. (Contributed by Carl Meyer in :gh:`101441`.)" msgstr "" -#: whatsnew/3.12.rst:1125 +#: whatsnew/3.12.rst:1133 msgid "" "Add the :opcode:`LOAD_FAST_CHECK` instruction. (Contributed by Dennis " "Sweeney in :gh:`93143`.)" msgstr "" -#: whatsnew/3.12.rst:1128 +#: whatsnew/3.12.rst:1136 msgid "" "Add the :opcode:`LOAD_FROM_DICT_OR_DEREF`, :opcode:" "`LOAD_FROM_DICT_OR_GLOBALS`, and :opcode:`LOAD_LOCALS` opcodes as part of " @@ -1628,48 +1640,48 @@ msgid "" "`LOAD_FROM_DICT_OR_DEREF`. (Contributed by Jelle Zijlstra in :gh:`103764`.)" msgstr "" -#: whatsnew/3.12.rst:1134 +#: whatsnew/3.12.rst:1142 msgid "" "Add the :opcode:`LOAD_SUPER_ATTR` instruction. (Contributed by Carl Meyer " "and Vladimir Matveev in :gh:`103497`.)" msgstr "" -#: whatsnew/3.12.rst:1137 +#: whatsnew/3.12.rst:1145 msgid "" "Add the :opcode:`RETURN_CONST` instruction. (Contributed by Wenyang Wang in :" "gh:`101632`.)" msgstr "" -#: whatsnew/3.12.rst:1140 +#: whatsnew/3.12.rst:1148 msgid "Demos and Tools" msgstr "" -#: whatsnew/3.12.rst:1142 +#: whatsnew/3.12.rst:1150 msgid "" "Remove the ``Tools/demo/`` directory which contained old demo scripts. A " "copy can be found in the `old-demos project <https://github.com/gvanrossum/" "old-demos>`_. (Contributed by Victor Stinner in :gh:`97681`.)" msgstr "" -#: whatsnew/3.12.rst:1147 +#: whatsnew/3.12.rst:1155 msgid "" "Remove outdated example scripts of the ``Tools/scripts/`` directory. A copy " "can be found in the `old-demos project <https://github.com/gvanrossum/old-" "demos>`_. (Contributed by Victor Stinner in :gh:`97669`.)" msgstr "" -#: whatsnew/3.12.rst:2139 +#: whatsnew/3.12.rst:2153 msgid "Deprecated" msgstr "" -#: whatsnew/3.12.rst:1156 deprecations/pending-removal-in-3.14.rst:11 +#: whatsnew/3.12.rst:1164 deprecations/pending-removal-in-3.14.rst:4 msgid "" ":mod:`argparse`: The *type*, *choices*, and *metavar* parameters of :class:`!" "argparse.BooleanOptionalAction` are deprecated and will be removed in 3.14. " "(Contributed by Nikita Sobolev in :gh:`92248`.)" msgstr "" -#: whatsnew/3.12.rst:1161 +#: whatsnew/3.12.rst:1169 msgid "" ":mod:`ast`: The following :mod:`ast` features have been deprecated in " "documentation since Python 3.8, now cause a :exc:`DeprecationWarning` to be " @@ -1677,37 +1689,37 @@ msgid "" "Python 3.14:" msgstr "" -#: whatsnew/3.12.rst:1165 deprecations/pending-removal-in-3.14.rst:20 +#: whatsnew/3.12.rst:1173 deprecations/pending-removal-in-3.14.rst:13 msgid ":class:`!ast.Num`" msgstr "" -#: whatsnew/3.12.rst:1166 deprecations/pending-removal-in-3.14.rst:21 +#: whatsnew/3.12.rst:1174 deprecations/pending-removal-in-3.14.rst:14 msgid ":class:`!ast.Str`" msgstr "" -#: whatsnew/3.12.rst:1167 deprecations/pending-removal-in-3.14.rst:22 +#: whatsnew/3.12.rst:1175 deprecations/pending-removal-in-3.14.rst:15 msgid ":class:`!ast.Bytes`" msgstr "" -#: whatsnew/3.12.rst:1168 deprecations/pending-removal-in-3.14.rst:23 +#: whatsnew/3.12.rst:1176 deprecations/pending-removal-in-3.14.rst:16 msgid ":class:`!ast.NameConstant`" msgstr "" -#: whatsnew/3.12.rst:1169 deprecations/pending-removal-in-3.14.rst:24 +#: whatsnew/3.12.rst:1177 deprecations/pending-removal-in-3.14.rst:17 msgid ":class:`!ast.Ellipsis`" msgstr "" -#: whatsnew/3.12.rst:1171 deprecations/pending-removal-in-3.14.rst:26 +#: whatsnew/3.12.rst:1179 deprecations/pending-removal-in-3.14.rst:19 msgid "" "Use :class:`ast.Constant` instead. (Contributed by Serhiy Storchaka in :gh:" "`90953`.)" msgstr "" -#: whatsnew/3.12.rst:1174 deprecations/pending-removal-in-3.14.rst:29 +#: whatsnew/3.12.rst:1182 deprecations/pending-removal-in-3.14.rst:22 msgid ":mod:`asyncio`:" msgstr "" -#: whatsnew/3.12.rst:1176 +#: whatsnew/3.12.rst:1184 msgid "" "The child watcher classes :class:`asyncio.MultiLoopChildWatcher`, :class:" "`asyncio.FastChildWatcher`, :class:`asyncio.AbstractChildWatcher` and :class:" @@ -1715,7 +1727,7 @@ msgid "" "3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" msgstr "" -#: whatsnew/3.12.rst:1182 deprecations/pending-removal-in-3.14.rst:37 +#: whatsnew/3.12.rst:1190 deprecations/pending-removal-in-3.14.rst:30 msgid "" ":func:`asyncio.set_child_watcher`, :func:`asyncio.get_child_watcher`, :meth:" "`asyncio.AbstractEventLoopPolicy.set_child_watcher` and :meth:`asyncio." @@ -1723,7 +1735,7 @@ msgid "" "removed in Python 3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" msgstr "" -#: whatsnew/3.12.rst:1188 deprecations/pending-removal-in-3.14.rst:43 +#: whatsnew/3.12.rst:1196 deprecations/pending-removal-in-3.14.rst:36 msgid "" "The :meth:`~asyncio.get_event_loop` method of the default event loop policy " "now emits a :exc:`DeprecationWarning` if there is no current event loop set " @@ -1731,14 +1743,14 @@ msgid "" "Rossum in :gh:`100160`.)" msgstr "" -#: whatsnew/3.12.rst:1193 deprecations/pending-removal-in-future.rst:41 +#: whatsnew/3.12.rst:1201 deprecations/pending-removal-in-future.rst:41 msgid "" ":mod:`calendar`: ``calendar.January`` and ``calendar.February`` constants " "are deprecated and replaced by :data:`calendar.JANUARY` and :data:`calendar." "FEBRUARY`. (Contributed by Prince Roshan in :gh:`103636`.)" msgstr "" -#: whatsnew/3.12.rst:1197 +#: whatsnew/3.12.rst:1205 msgid "" ":mod:`collections.abc`: Deprecated :class:`collections.abc.ByteString`. " "Prefer :class:`Sequence` or :class:`collections.abc.Buffer`. For use in " @@ -1746,7 +1758,7 @@ msgid "" "abc.Buffer`. (Contributed by Shantanu Jain in :gh:`91896`.)" msgstr "" -#: whatsnew/3.12.rst:1202 +#: whatsnew/3.12.rst:1210 msgid "" ":mod:`datetime`: :class:`datetime.datetime`'s :meth:`~datetime.datetime." "utcnow` and :meth:`~datetime.datetime.utcfromtimestamp` are deprecated and " @@ -1756,47 +1768,47 @@ msgid "" "set to :const:`datetime.UTC`. (Contributed by Paul Ganssle in :gh:`103857`.)" msgstr "" -#: whatsnew/3.12.rst:1210 +#: whatsnew/3.12.rst:1218 msgid "" ":mod:`email`: Deprecate the *isdst* parameter in :func:`email.utils." "localtime`. (Contributed by Alan Williams in :gh:`72346`.)" msgstr "" -#: whatsnew/3.12.rst:1213 +#: whatsnew/3.12.rst:1221 msgid "" ":mod:`importlib.abc`: Deprecated the following classes, scheduled for " "removal in Python 3.14:" msgstr "" -#: whatsnew/3.12.rst:1216 deprecations/pending-removal-in-3.14.rst:62 +#: whatsnew/3.12.rst:1224 deprecations/pending-removal-in-3.14.rst:55 msgid ":class:`!importlib.abc.ResourceReader`" msgstr "" -#: whatsnew/3.12.rst:1217 deprecations/pending-removal-in-3.14.rst:63 +#: whatsnew/3.12.rst:1225 deprecations/pending-removal-in-3.14.rst:56 msgid ":class:`!importlib.abc.Traversable`" msgstr "" -#: whatsnew/3.12.rst:1218 deprecations/pending-removal-in-3.14.rst:64 +#: whatsnew/3.12.rst:1226 deprecations/pending-removal-in-3.14.rst:57 msgid ":class:`!importlib.abc.TraversableResources`" msgstr "" -#: whatsnew/3.12.rst:1220 deprecations/pending-removal-in-3.14.rst:66 +#: whatsnew/3.12.rst:1228 deprecations/pending-removal-in-3.14.rst:59 msgid "Use :mod:`importlib.resources.abc` classes instead:" msgstr "" -#: whatsnew/3.12.rst:1222 deprecations/pending-removal-in-3.14.rst:68 +#: whatsnew/3.12.rst:1230 deprecations/pending-removal-in-3.14.rst:61 msgid ":class:`importlib.resources.abc.Traversable`" msgstr "" -#: whatsnew/3.12.rst:1223 deprecations/pending-removal-in-3.14.rst:69 +#: whatsnew/3.12.rst:1231 deprecations/pending-removal-in-3.14.rst:62 msgid ":class:`importlib.resources.abc.TraversableResources`" msgstr "" -#: whatsnew/3.12.rst:1225 deprecations/pending-removal-in-3.14.rst:71 +#: whatsnew/3.12.rst:1233 deprecations/pending-removal-in-3.14.rst:64 msgid "(Contributed by Jason R. Coombs and Hugo van Kemenade in :gh:`93963`.)" msgstr "" -#: whatsnew/3.12.rst:1227 +#: whatsnew/3.12.rst:1235 msgid "" ":mod:`itertools`: Deprecate the support for copy, deepcopy, and pickle " "operations, which is undocumented, inefficient, historically buggy, and " @@ -1805,7 +1817,7 @@ msgid "" "`101588`.)" msgstr "" -#: whatsnew/3.12.rst:1233 +#: whatsnew/3.12.rst:1241 msgid "" ":mod:`multiprocessing`: In Python 3.14, the default :mod:`multiprocessing` " "start method will change to a safer one on Linux, BSDs, and other non-macOS " @@ -1817,14 +1829,14 @@ msgid "" "methods <multiprocessing-start-methods>`." msgstr "" -#: whatsnew/3.12.rst:1243 +#: whatsnew/3.12.rst:1251 msgid "" ":mod:`pkgutil`: :func:`pkgutil.find_loader` and :func:`pkgutil.get_loader` " "are deprecated and will be removed in Python 3.14; use :func:`importlib.util." "find_spec` instead. (Contributed by Nikita Sobolev in :gh:`97850`.)" msgstr "" -#: whatsnew/3.12.rst:1248 +#: whatsnew/3.12.rst:1256 msgid "" ":mod:`pty`: The module has two undocumented ``master_open()`` and " "``slave_open()`` functions that have been deprecated since Python 2 but only " @@ -1832,11 +1844,11 @@ msgid "" "(Contributed by Soumendra Ganguly and Gregory P. Smith in :gh:`85984`.)" msgstr "" -#: whatsnew/3.12.rst:1253 +#: whatsnew/3.12.rst:1261 msgid ":mod:`os`:" msgstr "" -#: whatsnew/3.12.rst:1255 +#: whatsnew/3.12.rst:1263 msgid "" "The ``st_ctime`` fields return by :func:`os.stat` and :func:`os.lstat` on " "Windows are deprecated. In a future release, they will contain the last " @@ -1845,7 +1857,7 @@ msgid "" "``st_birthtime`` field. (Contributed by Steve Dower in :gh:`99726`.)" msgstr "" -#: whatsnew/3.12.rst:1261 +#: whatsnew/3.12.rst:1269 msgid "" "On POSIX platforms, :func:`os.fork` can now raise a :exc:" "`DeprecationWarning` when it can detect being called from a multithreaded " @@ -1859,32 +1871,32 @@ msgid "" "platform compatibility problem to developers." msgstr "" -#: whatsnew/3.12.rst:1271 +#: whatsnew/3.12.rst:1279 msgid "" "When this warning appears due to usage of :mod:`multiprocessing` or :mod:" "`concurrent.futures` the fix is to use a different :mod:`multiprocessing` " "start method such as ``\"spawn\"`` or ``\"forkserver\"``." msgstr "" -#: whatsnew/3.12.rst:1275 +#: whatsnew/3.12.rst:1283 msgid "" ":mod:`shutil`: The *onerror* argument of :func:`shutil.rmtree` is " "deprecated; use *onexc* instead. (Contributed by Irit Katriel in :gh:" "`102828`.)" msgstr "" -#: whatsnew/3.12.rst:1278 deprecations/pending-removal-in-3.14.rst:101 +#: whatsnew/3.12.rst:1286 deprecations/pending-removal-in-3.14.rst:94 msgid ":mod:`sqlite3`:" msgstr "" -#: whatsnew/3.12.rst:1280 +#: whatsnew/3.12.rst:1288 msgid "" ":ref:`default adapters and converters <sqlite3-default-converters>` are now " "deprecated. Instead, use the :ref:`sqlite3-adapter-converter-recipes` and " "tailor them to your needs. (Contributed by Erlend E. Aasland in :gh:`90016`.)" msgstr "" -#: whatsnew/3.12.rst:1286 +#: whatsnew/3.12.rst:1294 msgid "" "In :meth:`~sqlite3.Cursor.execute`, :exc:`DeprecationWarning` is now emitted " "when :ref:`named placeholders <sqlite3-placeholders>` are used together with " @@ -1894,39 +1906,39 @@ msgid "" "Erlend E. Aasland in :gh:`101698`.)" msgstr "" -#: whatsnew/3.12.rst:1293 +#: whatsnew/3.12.rst:1301 msgid "" ":mod:`sys`: The :data:`sys.last_type`, :data:`sys.last_value` and :data:`sys." "last_traceback` fields are deprecated. Use :data:`sys.last_exc` instead. " "(Contributed by Irit Katriel in :gh:`102778`.)" msgstr "" -#: whatsnew/3.12.rst:1297 +#: whatsnew/3.12.rst:1305 msgid "" ":mod:`tarfile`: Extracting tar archives without specifying *filter* is " "deprecated until Python 3.14, when ``'data'`` filter will become the " "default. See :ref:`tarfile-extraction-filter` for details." msgstr "" -#: whatsnew/3.12.rst:1301 +#: whatsnew/3.12.rst:1309 deprecations/pending-removal-in-3.15.rst:58 msgid ":mod:`typing`:" msgstr "" -#: whatsnew/3.12.rst:1303 +#: whatsnew/3.12.rst:1311 msgid "" ":class:`typing.Hashable` and :class:`typing.Sized`, aliases for :class:" "`collections.abc.Hashable` and :class:`collections.abc.Sized` respectively, " "are deprecated. (:gh:`94309`.)" msgstr "" -#: whatsnew/3.12.rst:1307 +#: whatsnew/3.12.rst:1315 msgid "" ":class:`typing.ByteString`, deprecated since Python 3.9, now causes a :exc:" "`DeprecationWarning` to be emitted when it is used. (Contributed by Alex " "Waygood in :gh:`91896`.)" msgstr "" -#: whatsnew/3.12.rst:1311 +#: whatsnew/3.12.rst:1319 msgid "" ":mod:`xml.etree.ElementTree`: The module now emits :exc:`DeprecationWarning` " "when testing the truth value of an :class:`xml.etree.ElementTree.Element`. " @@ -1934,7 +1946,7 @@ msgid "" "implementation emitted nothing. (Contributed by Jacob Walls in :gh:`83122`.)" msgstr "" -#: whatsnew/3.12.rst:1317 +#: whatsnew/3.12.rst:1325 msgid "" "The 3-arg signatures (type, value, traceback) of :meth:`coroutine throw() " "<coroutine.throw>`, :meth:`generator throw() <generator.throw>` and :meth:" @@ -1943,7 +1955,7 @@ msgid "" "instead. (Contributed by Ofey Chan in :gh:`89874`.)" msgstr "" -#: whatsnew/3.12.rst:1323 +#: whatsnew/3.12.rst:1331 msgid "" ":exc:`DeprecationWarning` is now raised when :attr:`~module.__package__` on " "a module differs from :attr:`__spec__.parent <importlib.machinery.ModuleSpec." @@ -1951,7 +1963,7 @@ msgid "" "Cannon in :gh:`65961`.)" msgstr "" -#: whatsnew/3.12.rst:1329 +#: whatsnew/3.12.rst:1337 msgid "" "Setting :attr:`~module.__package__` or :attr:`~module.__cached__` on a " "module is deprecated, and will cease to be set or taken into consideration " @@ -1959,7 +1971,7 @@ msgid "" "`65961`.)" msgstr "" -#: whatsnew/3.12.rst:1333 +#: whatsnew/3.12.rst:1341 msgid "" "The bitwise inversion operator (``~``) on bool is deprecated. It will throw " "an error in Python 3.16. Use ``not`` for logical negation of bools instead. " @@ -1968,12 +1980,12 @@ msgid "" "Tim Hoffmann in :gh:`103487`.)" msgstr "" -#: whatsnew/3.12.rst:1339 +#: whatsnew/3.12.rst:1347 msgid "" "Accessing :attr:`~codeobject.co_lnotab` on code objects was deprecated in " "Python 3.10 via :pep:`626`, but it only got a proper :exc:" -"`DeprecationWarning` in 3.12, therefore it will be removed in 3.14. " -"(Contributed by Nikita Sobolev in :gh:`101866`.)" +"`DeprecationWarning` in 3.12. May be removed in 3.15. (Contributed by Nikita " +"Sobolev in :gh:`101866`.)" msgstr "" #: deprecations/pending-removal-in-3.13.rst:2 @@ -2152,26 +2164,14 @@ msgstr "" msgid "Pending Removal in Python 3.14" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:4 -msgid "The import system:" -msgstr "" - -#: deprecations/pending-removal-in-3.14.rst:6 -msgid "" -"Setting :attr:`~module.__loader__` on a module while failing to set :attr:" -"`__spec__.loader <importlib.machinery.ModuleSpec.loader>` is deprecated. In " -"Python 3.14, :attr:`!__loader__` will cease to be set or taken into " -"consideration by the import system or the standard library." -msgstr "" - -#: deprecations/pending-removal-in-3.14.rst:16 +#: deprecations/pending-removal-in-3.14.rst:9 msgid "" ":mod:`ast`: The following features have been deprecated in documentation " "since Python 3.8, now cause a :exc:`DeprecationWarning` to be emitted at " "runtime when they are accessed or used, and will be removed in Python 3.14:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:31 +#: deprecations/pending-removal-in-3.14.rst:24 msgid "" "The child watcher classes :class:`~asyncio.MultiLoopChildWatcher`, :class:" "`~asyncio.FastChildWatcher`, :class:`~asyncio.AbstractChildWatcher` and :" @@ -2179,7 +2179,7 @@ msgid "" "Python 3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:48 +#: deprecations/pending-removal-in-3.14.rst:41 msgid "" ":mod:`collections.abc`: Deprecated :class:`~collections.abc.ByteString`. " "Prefer :class:`!Sequence` or :class:`~collections.abc.Buffer`. For use in " @@ -2187,23 +2187,23 @@ msgid "" "abc.Buffer`. (Contributed by Shantanu Jain in :gh:`91896`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:54 +#: deprecations/pending-removal-in-3.14.rst:47 msgid "" ":mod:`email`: Deprecated the *isdst* parameter in :func:`email.utils." "localtime`. (Contributed by Alan Williams in :gh:`72346`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:57 +#: deprecations/pending-removal-in-3.14.rst:50 msgid "" ":mod:`importlib`: ``__package__`` and ``__cached__`` will cease to be set or " "taken into consideration by the import system (:gh:`97879`)." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:60 +#: deprecations/pending-removal-in-3.14.rst:53 msgid ":mod:`importlib.abc` deprecated classes:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:73 +#: deprecations/pending-removal-in-3.14.rst:66 msgid "" ":mod:`itertools` had undocumented, inefficient, historically buggy, and " "inconsistent support for copy, deepcopy, and pickle operations. This will be " @@ -2211,7 +2211,7 @@ msgid "" "burden. (Contributed by Raymond Hettinger in :gh:`101588`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:79 +#: deprecations/pending-removal-in-3.14.rst:72 msgid "" ":mod:`multiprocessing`: The default start method will change to a safer one " "on Linux, BSDs, and other non-macOS POSIX platforms where ``'fork'`` is " @@ -2222,63 +2222,49 @@ msgid "" "``'fork'``. See :ref:`multiprocessing-start-methods`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:87 +#: deprecations/pending-removal-in-3.14.rst:80 msgid "" ":mod:`pathlib`: :meth:`~pathlib.PurePath.is_relative_to` and :meth:`~pathlib." "PurePath.relative_to`: passing additional arguments is deprecated." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:91 +#: deprecations/pending-removal-in-3.14.rst:84 msgid "" ":mod:`pkgutil`: :func:`~pkgutil.find_loader` and :func:`~pkgutil.get_loader` " "now raise :exc:`DeprecationWarning`; use :func:`importlib.util.find_spec` " "instead. (Contributed by Nikita Sobolev in :gh:`97850`.)" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:96 +#: deprecations/pending-removal-in-3.14.rst:89 msgid ":mod:`pty`:" msgstr "" -#: deprecations/pending-removal-in-3.14.rst:98 +#: deprecations/pending-removal-in-3.14.rst:91 msgid "``master_open()``: use :func:`pty.openpty`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:99 +#: deprecations/pending-removal-in-3.14.rst:92 msgid "``slave_open()``: use :func:`pty.openpty`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:103 +#: deprecations/pending-removal-in-3.14.rst:96 msgid ":data:`~sqlite3.version` and :data:`~sqlite3.version_info`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:105 +#: deprecations/pending-removal-in-3.14.rst:98 msgid "" ":meth:`~sqlite3.Cursor.execute` and :meth:`~sqlite3.Cursor.executemany` if :" "ref:`named placeholders <sqlite3-placeholders>` are used and *parameters* is " "a sequence instead of a :class:`dict`." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:109 -msgid "" -"date and datetime adapter, date and timestamp converter: see the :mod:" -"`sqlite3` documentation for suggested replacement recipes." -msgstr "" - -#: deprecations/pending-removal-in-3.14.rst:112 -msgid "" -":class:`types.CodeType`: Accessing :attr:`~codeobject.co_lnotab` was " -"deprecated in :pep:`626` since 3.10 and was planned to be removed in 3.12, " -"but it only got a proper :exc:`DeprecationWarning` in 3.12. May be removed " -"in 3.14. (Contributed by Nikita Sobolev in :gh:`101866`.)" -msgstr "" - -#: deprecations/pending-removal-in-3.14.rst:119 +#: deprecations/pending-removal-in-3.14.rst:102 msgid "" ":mod:`typing`: :class:`~typing.ByteString`, deprecated since Python 3.9, now " "causes a :exc:`DeprecationWarning` to be emitted when it is used." msgstr "" -#: deprecations/pending-removal-in-3.14.rst:122 +#: deprecations/pending-removal-in-3.14.rst:105 msgid "" ":mod:`urllib`: :class:`!urllib.parse.Quoter` is deprecated: it was not " "intended to be a public API. (Contributed by Gregory P. Smith in :gh:" @@ -2299,6 +2285,15 @@ msgid "" msgstr "" #: deprecations/pending-removal-in-3.15.rst:9 +#: deprecations/pending-removal-in-future.rst:58 +msgid ":mod:`importlib`:" +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:11 +msgid "``load_module()`` method: use ``exec_module()`` instead." +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:13 msgid "" ":class:`locale`: :func:`locale.getdefaultlocale` was deprecated in Python " "3.11 and originally planned for removal in Python 3.13 (:gh:`90817`), but " @@ -2307,21 +2302,31 @@ msgid "" "by Hugo van Kemenade in :gh:`111187`.)" msgstr "" -#: deprecations/pending-removal-in-3.15.rst:16 +#: deprecations/pending-removal-in-3.15.rst:20 msgid "" ":mod:`pathlib`: :meth:`pathlib.PurePath.is_reserved` is deprecated and " "scheduled for removal in Python 3.15. From Python 3.13 onwards, use ``os." "path.isreserved`` to detect reserved paths on Windows." msgstr "" -#: deprecations/pending-removal-in-3.15.rst:21 +#: deprecations/pending-removal-in-3.15.rst:25 msgid "" ":mod:`platform`: :func:`~platform.java_ver` is deprecated and will be " "removed in 3.15. It was largely untested, had a confusing API, and was only " "useful for Jython support. (Contributed by Nikita Sobolev in :gh:`116349`.)" msgstr "" -#: deprecations/pending-removal-in-3.15.rst:27 +#: deprecations/pending-removal-in-3.15.rst:31 +msgid ":mod:`sysconfig`:" +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:33 +msgid "" +"The *check_home* argument of :func:`sysconfig.is_python_build` has been " +"deprecated since Python 3.12." +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:36 msgid "" ":mod:`threading`: Passing any arguments to :func:`threading.RLock` is now " "deprecated. C version allows any numbers of args and kwargs, but they are " @@ -2330,11 +2335,11 @@ msgid "" "Nikita Sobolev in :gh:`102029`.)" msgstr "" -#: deprecations/pending-removal-in-3.15.rst:34 +#: deprecations/pending-removal-in-3.15.rst:43 msgid ":class:`typing.NamedTuple`:" msgstr "" -#: deprecations/pending-removal-in-3.15.rst:36 +#: deprecations/pending-removal-in-3.15.rst:45 msgid "" "The undocumented keyword argument syntax for creating :class:`!NamedTuple` " "classes (``NT = NamedTuple(\"NT\", x=int)``) is deprecated, and will be " @@ -2342,7 +2347,19 @@ msgid "" "instead." msgstr "" -#: deprecations/pending-removal-in-3.15.rst:40 +#: deprecations/pending-removal-in-3.15.rst:49 +msgid ":mod:`types`:" +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:51 +msgid "" +":class:`types.CodeType`: Accessing :attr:`~codeobject.co_lnotab` was " +"deprecated in :pep:`626` since 3.10 and was planned to be removed in 3.12, " +"but it only got a proper :exc:`DeprecationWarning` in 3.12. May be removed " +"in 3.15. (Contributed by Nikita Sobolev in :gh:`101866`.)" +msgstr "" + +#: deprecations/pending-removal-in-3.15.rst:60 msgid "" "When using the functional syntax to create a :class:`!NamedTuple` class, " "failing to pass a value to the *fields* parameter (``NT = " @@ -2353,7 +2370,7 @@ msgid "" "[])``." msgstr "" -#: deprecations/pending-removal-in-3.15.rst:47 +#: deprecations/pending-removal-in-3.15.rst:67 msgid "" ":class:`typing.TypedDict`: When using the functional syntax to create a :" "class:`!TypedDict` class, failing to pass a value to the *fields* parameter " @@ -2363,7 +2380,7 @@ msgid "" "fields, use ``class TD(TypedDict): pass`` or ``TD = TypedDict(\"TD\", {})``." msgstr "" -#: deprecations/pending-removal-in-3.15.rst:54 +#: deprecations/pending-removal-in-3.15.rst:74 msgid "" ":mod:`wave`: Deprecate the ``getmark()``, ``setmark()`` and ``getmarkers()`` " "methods of the :class:`wave.Wave_read` and :class:`wave.Wave_write` classes. " @@ -2376,16 +2393,28 @@ msgid "Pending Removal in Python 3.16" msgstr "" #: deprecations/pending-removal-in-3.16.rst:4 +msgid "The import system:" +msgstr "" + +#: deprecations/pending-removal-in-3.16.rst:6 +msgid "" +"Setting :attr:`~module.__loader__` on a module while failing to set :attr:" +"`__spec__.loader <importlib.machinery.ModuleSpec.loader>` is deprecated. In " +"Python 3.16, :attr:`!__loader__` will cease to be set or taken into " +"consideration by the import system or the standard library." +msgstr "" + +#: deprecations/pending-removal-in-3.16.rst:11 msgid "" ":mod:`array`: :class:`array.array` ``'u'`` type (:c:type:`wchar_t`): use the " "``'w'`` type instead (``Py_UCS4``)." msgstr "" -#: deprecations/pending-removal-in-3.16.rst:8 +#: deprecations/pending-removal-in-3.16.rst:15 msgid ":mod:`builtins`: ``~bool``, bitwise inversion on bool." msgstr "" -#: deprecations/pending-removal-in-3.16.rst:11 +#: deprecations/pending-removal-in-3.16.rst:18 msgid "" ":mod:`symtable`: Deprecate :meth:`symtable.Class.get_methods` due to the " "lack of interest. (Contributed by Bénédikt Tran in :gh:`119698`.)" @@ -2498,50 +2527,42 @@ msgstr "" msgid ":mod:`gettext`: Plural value must be an integer." msgstr "" -#: deprecations/pending-removal-in-future.rst:58 -msgid ":mod:`importlib`:" -msgstr "" - #: deprecations/pending-removal-in-future.rst:60 -msgid "``load_module()`` method: use ``exec_module()`` instead." -msgstr "" - -#: deprecations/pending-removal-in-future.rst:61 msgid "" ":func:`~importlib.util.cache_from_source` *debug_override* parameter is " "deprecated: use the *optimization* parameter instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:64 +#: deprecations/pending-removal-in-future.rst:63 msgid ":mod:`importlib.metadata`:" msgstr "" -#: deprecations/pending-removal-in-future.rst:66 +#: deprecations/pending-removal-in-future.rst:65 msgid "``EntryPoints`` tuple interface." msgstr "" -#: deprecations/pending-removal-in-future.rst:67 +#: deprecations/pending-removal-in-future.rst:66 msgid "Implicit ``None`` on return values." msgstr "" -#: deprecations/pending-removal-in-future.rst:69 +#: deprecations/pending-removal-in-future.rst:68 msgid "" ":mod:`mailbox`: Use of StringIO input and text mode is deprecated, use " "BytesIO and binary mode instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:72 +#: deprecations/pending-removal-in-future.rst:71 msgid "" ":mod:`os`: Calling :func:`os.register_at_fork` in multi-threaded process." msgstr "" -#: deprecations/pending-removal-in-future.rst:74 +#: deprecations/pending-removal-in-future.rst:73 msgid "" ":class:`!pydoc.ErrorDuringImport`: A tuple value for *exc_info* parameter is " "deprecated, use an exception instance." msgstr "" -#: deprecations/pending-removal-in-future.rst:77 +#: deprecations/pending-removal-in-future.rst:76 msgid "" ":mod:`re`: More strict rules are now applied for numerical group references " "and group names in regular expressions. Only sequence of ASCII digits is " @@ -2550,185 +2571,179 @@ msgid "" "underscore. (Contributed by Serhiy Storchaka in :gh:`91760`.)" msgstr "" -#: deprecations/pending-removal-in-future.rst:84 +#: deprecations/pending-removal-in-future.rst:83 msgid "" ":mod:`!sre_compile`, :mod:`!sre_constants` and :mod:`!sre_parse` modules." msgstr "" -#: deprecations/pending-removal-in-future.rst:86 +#: deprecations/pending-removal-in-future.rst:85 msgid "" ":mod:`shutil`: :func:`~shutil.rmtree`'s *onerror* parameter is deprecated in " "Python 3.12; use the *onexc* parameter instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:89 +#: deprecations/pending-removal-in-future.rst:88 msgid ":mod:`ssl` options and protocols:" msgstr "" -#: deprecations/pending-removal-in-future.rst:91 +#: deprecations/pending-removal-in-future.rst:90 msgid ":class:`ssl.SSLContext` without protocol argument is deprecated." msgstr "" -#: deprecations/pending-removal-in-future.rst:92 +#: deprecations/pending-removal-in-future.rst:91 msgid "" ":class:`ssl.SSLContext`: :meth:`~ssl.SSLContext.set_npn_protocols` and :meth:" "`!selected_npn_protocol` are deprecated: use ALPN instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:95 +#: deprecations/pending-removal-in-future.rst:94 msgid "``ssl.OP_NO_SSL*`` options" msgstr "" -#: deprecations/pending-removal-in-future.rst:96 +#: deprecations/pending-removal-in-future.rst:95 msgid "``ssl.OP_NO_TLS*`` options" msgstr "" -#: deprecations/pending-removal-in-future.rst:97 +#: deprecations/pending-removal-in-future.rst:96 msgid "``ssl.PROTOCOL_SSLv3``" msgstr "" -#: deprecations/pending-removal-in-future.rst:98 +#: deprecations/pending-removal-in-future.rst:97 msgid "``ssl.PROTOCOL_TLS``" msgstr "" -#: deprecations/pending-removal-in-future.rst:99 +#: deprecations/pending-removal-in-future.rst:98 msgid "``ssl.PROTOCOL_TLSv1``" msgstr "" -#: deprecations/pending-removal-in-future.rst:100 +#: deprecations/pending-removal-in-future.rst:99 msgid "``ssl.PROTOCOL_TLSv1_1``" msgstr "" -#: deprecations/pending-removal-in-future.rst:101 +#: deprecations/pending-removal-in-future.rst:100 msgid "``ssl.PROTOCOL_TLSv1_2``" msgstr "" -#: deprecations/pending-removal-in-future.rst:102 +#: deprecations/pending-removal-in-future.rst:101 msgid "``ssl.TLSVersion.SSLv3``" msgstr "" -#: deprecations/pending-removal-in-future.rst:103 +#: deprecations/pending-removal-in-future.rst:102 msgid "``ssl.TLSVersion.TLSv1``" msgstr "" -#: deprecations/pending-removal-in-future.rst:104 +#: deprecations/pending-removal-in-future.rst:103 msgid "``ssl.TLSVersion.TLSv1_1``" msgstr "" -#: deprecations/pending-removal-in-future.rst:106 -msgid "" -":func:`sysconfig.is_python_build` *check_home* parameter is deprecated and " -"ignored." -msgstr "" - -#: deprecations/pending-removal-in-future.rst:109 +#: deprecations/pending-removal-in-future.rst:105 msgid ":mod:`threading` methods:" msgstr "" -#: deprecations/pending-removal-in-future.rst:111 +#: deprecations/pending-removal-in-future.rst:107 msgid "" ":meth:`!threading.Condition.notifyAll`: use :meth:`~threading.Condition." "notify_all`." msgstr "" -#: deprecations/pending-removal-in-future.rst:112 +#: deprecations/pending-removal-in-future.rst:108 msgid ":meth:`!threading.Event.isSet`: use :meth:`~threading.Event.is_set`." msgstr "" -#: deprecations/pending-removal-in-future.rst:113 +#: deprecations/pending-removal-in-future.rst:109 msgid "" ":meth:`!threading.Thread.isDaemon`, :meth:`threading.Thread.setDaemon`: use :" "attr:`threading.Thread.daemon` attribute." msgstr "" -#: deprecations/pending-removal-in-future.rst:115 +#: deprecations/pending-removal-in-future.rst:111 msgid "" ":meth:`!threading.Thread.getName`, :meth:`threading.Thread.setName`: use :" "attr:`threading.Thread.name` attribute." msgstr "" -#: deprecations/pending-removal-in-future.rst:117 +#: deprecations/pending-removal-in-future.rst:113 msgid ":meth:`!threading.currentThread`: use :meth:`threading.current_thread`." msgstr "" -#: deprecations/pending-removal-in-future.rst:118 +#: deprecations/pending-removal-in-future.rst:114 msgid ":meth:`!threading.activeCount`: use :meth:`threading.active_count`." msgstr "" -#: deprecations/pending-removal-in-future.rst:120 +#: deprecations/pending-removal-in-future.rst:116 msgid ":class:`typing.Text` (:gh:`92332`)." msgstr "" -#: deprecations/pending-removal-in-future.rst:122 +#: deprecations/pending-removal-in-future.rst:118 msgid "" ":class:`unittest.IsolatedAsyncioTestCase`: it is deprecated to return a " "value that is not ``None`` from a test case." msgstr "" -#: deprecations/pending-removal-in-future.rst:125 +#: deprecations/pending-removal-in-future.rst:121 msgid "" ":mod:`urllib.parse` deprecated functions: :func:`~urllib.parse.urlparse` " "instead" msgstr "" -#: deprecations/pending-removal-in-future.rst:127 +#: deprecations/pending-removal-in-future.rst:123 msgid "``splitattr()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:128 +#: deprecations/pending-removal-in-future.rst:124 msgid "``splithost()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:129 +#: deprecations/pending-removal-in-future.rst:125 msgid "``splitnport()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:130 +#: deprecations/pending-removal-in-future.rst:126 msgid "``splitpasswd()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:131 +#: deprecations/pending-removal-in-future.rst:127 msgid "``splitport()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:132 +#: deprecations/pending-removal-in-future.rst:128 msgid "``splitquery()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:133 +#: deprecations/pending-removal-in-future.rst:129 msgid "``splittag()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:134 +#: deprecations/pending-removal-in-future.rst:130 msgid "``splittype()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:135 +#: deprecations/pending-removal-in-future.rst:131 msgid "``splituser()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:136 +#: deprecations/pending-removal-in-future.rst:132 msgid "``splitvalue()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:137 +#: deprecations/pending-removal-in-future.rst:133 msgid "``to_bytes()``" msgstr "" -#: deprecations/pending-removal-in-future.rst:139 +#: deprecations/pending-removal-in-future.rst:135 msgid "" ":mod:`urllib.request`: :class:`~urllib.request.URLopener` and :class:" "`~urllib.request.FancyURLopener` style of invoking requests is deprecated. " "Use newer :func:`~urllib.request.urlopen` functions and methods." msgstr "" -#: deprecations/pending-removal-in-future.rst:143 +#: deprecations/pending-removal-in-future.rst:139 msgid "" ":mod:`wsgiref`: ``SimpleHandler.stdout.write()`` should not do partial " "writes." msgstr "" -#: deprecations/pending-removal-in-future.rst:146 +#: deprecations/pending-removal-in-future.rst:142 msgid "" ":mod:`xml.etree.ElementTree`: Testing the truth value of an :class:`~xml." "etree.ElementTree.Element` is deprecated. In a future release it will always " @@ -2736,60 +2751,60 @@ msgid "" "instead." msgstr "" -#: deprecations/pending-removal-in-future.rst:151 +#: deprecations/pending-removal-in-future.rst:147 msgid "" ":meth:`zipimport.zipimporter.load_module` is deprecated: use :meth:" "`~zipimport.zipimporter.exec_module` instead." msgstr "" -#: whatsnew/3.12.rst:2234 +#: whatsnew/3.12.rst:2248 msgid "Removed" msgstr "" -#: whatsnew/3.12.rst:1359 +#: whatsnew/3.12.rst:1369 msgid "asynchat and asyncore" msgstr "" -#: whatsnew/3.12.rst:1361 +#: whatsnew/3.12.rst:1371 msgid "" "These two modules have been removed according to the schedule in :pep:`594`, " "having been deprecated in Python 3.6. Use :mod:`asyncio` instead. " "(Contributed by Nikita Sobolev in :gh:`96580`.)" msgstr "" -#: whatsnew/3.12.rst:1368 +#: whatsnew/3.12.rst:1378 msgid "configparser" msgstr "" -#: whatsnew/3.12.rst:1370 +#: whatsnew/3.12.rst:1380 msgid "" "Several names deprecated in the :mod:`configparser` way back in 3.2 have " "been removed per :gh:`89336`:" msgstr "" -#: whatsnew/3.12.rst:1373 +#: whatsnew/3.12.rst:1383 msgid "" ":class:`configparser.ParsingError` no longer has a ``filename`` attribute or " "argument. Use the ``source`` attribute and argument instead." msgstr "" -#: whatsnew/3.12.rst:1375 +#: whatsnew/3.12.rst:1385 msgid "" ":mod:`configparser` no longer has a ``SafeConfigParser`` class. Use the " "shorter :class:`~configparser.ConfigParser` name instead." msgstr "" -#: whatsnew/3.12.rst:1377 +#: whatsnew/3.12.rst:1387 msgid "" ":class:`configparser.ConfigParser` no longer has a ``readfp`` method. Use :" "meth:`~configparser.ConfigParser.read_file` instead." msgstr "" -#: whatsnew/3.12.rst:1381 +#: whatsnew/3.12.rst:1393 msgid "distutils" msgstr "" -#: whatsnew/3.12.rst:1383 +#: whatsnew/3.12.rst:1395 msgid "" "Remove the :py:mod:`!distutils` package. It was deprecated in Python 3.10 " "by :pep:`632` \"Deprecate distutils module\". For projects still using " @@ -2798,17 +2813,17 @@ msgid "" "Victor Stinner in :gh:`92584`.)" msgstr "" -#: whatsnew/3.12.rst:1390 +#: whatsnew/3.12.rst:1402 msgid "ensurepip" msgstr "" -#: whatsnew/3.12.rst:1392 +#: whatsnew/3.12.rst:1404 msgid "" "Remove the bundled setuptools wheel from :mod:`ensurepip`, and stop " "installing setuptools in environments created by :mod:`venv`." msgstr "" -#: whatsnew/3.12.rst:1395 +#: whatsnew/3.12.rst:1407 msgid "" "``pip (>= 22.1)`` does not require setuptools to be installed in the " "environment. ``setuptools``-based (and ``distutils``-based) packages can " @@ -2816,7 +2831,7 @@ msgid "" "the build environment it uses for building a package." msgstr "" -#: whatsnew/3.12.rst:1401 +#: whatsnew/3.12.rst:1413 msgid "" "``easy_install``, ``pkg_resources``, ``setuptools`` and ``distutils`` are no " "longer provided by default in environments created with ``venv`` or " @@ -2826,35 +2841,35 @@ msgid "" "(typically, using pip)." msgstr "" -#: whatsnew/3.12.rst:1408 +#: whatsnew/3.12.rst:1420 msgid "(Contributed by Pradyun Gedam in :gh:`95299`.)" msgstr "" -#: whatsnew/3.12.rst:1411 +#: whatsnew/3.12.rst:1423 msgid "enum" msgstr "" -#: whatsnew/3.12.rst:1413 +#: whatsnew/3.12.rst:1425 msgid "" "Remove :mod:`enum`'s ``EnumMeta.__getattr__``, which is no longer needed for " "enum attribute access. (Contributed by Ethan Furman in :gh:`95083`.)" msgstr "" -#: whatsnew/3.12.rst:1418 +#: whatsnew/3.12.rst:1430 msgid "ftplib" msgstr "" -#: whatsnew/3.12.rst:1420 +#: whatsnew/3.12.rst:1432 msgid "" "Remove :mod:`ftplib`'s ``FTP_TLS.ssl_version`` class attribute: use the " "*context* parameter instead. (Contributed by Victor Stinner in :gh:`94172`.)" msgstr "" -#: whatsnew/3.12.rst:1425 +#: whatsnew/3.12.rst:1437 msgid "gzip" msgstr "" -#: whatsnew/3.12.rst:1427 +#: whatsnew/3.12.rst:1439 msgid "" "Remove the ``filename`` attribute of :mod:`gzip`'s :class:`gzip.GzipFile`, " "deprecated since Python 2.6, use the :attr:`~gzip.GzipFile.name` attribute " @@ -2863,11 +2878,11 @@ msgid "" "`94196`.)" msgstr "" -#: whatsnew/3.12.rst:1434 +#: whatsnew/3.12.rst:1446 msgid "hashlib" msgstr "" -#: whatsnew/3.12.rst:1436 +#: whatsnew/3.12.rst:1448 msgid "" "Remove the pure Python implementation of :mod:`hashlib`'s :func:`hashlib." "pbkdf2_hmac`, deprecated in Python 3.10. Python 3.10 and newer requires " @@ -2876,150 +2891,150 @@ msgid "" "Stinner in :gh:`94199`.)" msgstr "" -#: whatsnew/3.12.rst:1470 +#: whatsnew/3.12.rst:1484 msgid "importlib" msgstr "" -#: whatsnew/3.12.rst:1445 +#: whatsnew/3.12.rst:1457 msgid "" "Many previously deprecated cleanups in :mod:`importlib` have now been " "completed:" msgstr "" -#: whatsnew/3.12.rst:1448 +#: whatsnew/3.12.rst:1460 msgid "" "References to, and support for :meth:`!module_repr` has been removed. " "(Contributed by Barry Warsaw in :gh:`97850`.)" msgstr "" -#: whatsnew/3.12.rst:1451 +#: whatsnew/3.12.rst:1463 msgid "" "``importlib.util.set_package``, ``importlib.util.set_loader`` and " "``importlib.util.module_for_loader`` have all been removed. (Contributed by " "Brett Cannon and Nikita Sobolev in :gh:`65961` and :gh:`97850`.)" msgstr "" -#: whatsnew/3.12.rst:1455 +#: whatsnew/3.12.rst:1467 msgid "" "Support for ``find_loader()`` and ``find_module()`` APIs have been removed. " "(Contributed by Barry Warsaw in :gh:`98040`.)" msgstr "" -#: whatsnew/3.12.rst:1458 +#: whatsnew/3.12.rst:1470 msgid "" "``importlib.abc.Finder``, ``pkgutil.ImpImporter``, and ``pkgutil.ImpLoader`` " "have been removed. (Contributed by Barry Warsaw in :gh:`98040`.)" msgstr "" -#: whatsnew/3.12.rst:1470 +#: whatsnew/3.12.rst:1484 msgid "imp" msgstr "" -#: whatsnew/3.12.rst:1464 +#: whatsnew/3.12.rst:1478 msgid "" "The :mod:`!imp` module has been removed. (Contributed by Barry Warsaw in :" "gh:`98040`.)" msgstr "" -#: whatsnew/3.12.rst:1467 +#: whatsnew/3.12.rst:1481 msgid "To migrate, consult the following correspondence table:" msgstr "" -#: whatsnew/3.12.rst:1472 +#: whatsnew/3.12.rst:1486 msgid "``imp.NullImporter``" msgstr "" -#: whatsnew/3.12.rst:1472 +#: whatsnew/3.12.rst:1486 msgid "Insert ``None`` into ``sys.path_importer_cache``" msgstr "" -#: whatsnew/3.12.rst:1473 +#: whatsnew/3.12.rst:1487 msgid "``imp.cache_from_source()``" msgstr "" -#: whatsnew/3.12.rst:1473 +#: whatsnew/3.12.rst:1487 msgid ":func:`importlib.util.cache_from_source`" msgstr "" -#: whatsnew/3.12.rst:1474 +#: whatsnew/3.12.rst:1488 msgid "``imp.find_module()``" msgstr "" -#: whatsnew/3.12.rst:1474 +#: whatsnew/3.12.rst:1488 msgid ":func:`importlib.util.find_spec`" msgstr "" -#: whatsnew/3.12.rst:1475 +#: whatsnew/3.12.rst:1489 msgid "``imp.get_magic()``" msgstr "" -#: whatsnew/3.12.rst:1475 -msgid ":attr:`importlib.util.MAGIC_NUMBER`" +#: whatsnew/3.12.rst:1489 +msgid ":const:`importlib.util.MAGIC_NUMBER`" msgstr "" -#: whatsnew/3.12.rst:1476 +#: whatsnew/3.12.rst:1490 msgid "``imp.get_suffixes()``" msgstr "" -#: whatsnew/3.12.rst:1476 +#: whatsnew/3.12.rst:1490 msgid "" -":attr:`importlib.machinery.SOURCE_SUFFIXES`, :attr:`importlib.machinery." -"EXTENSION_SUFFIXES`, and :attr:`importlib.machinery.BYTECODE_SUFFIXES`" +":const:`importlib.machinery.SOURCE_SUFFIXES`, :const:`importlib.machinery." +"EXTENSION_SUFFIXES`, and :const:`importlib.machinery.BYTECODE_SUFFIXES`" msgstr "" -#: whatsnew/3.12.rst:1477 +#: whatsnew/3.12.rst:1491 msgid "``imp.get_tag()``" msgstr "" -#: whatsnew/3.12.rst:1477 +#: whatsnew/3.12.rst:1491 msgid ":attr:`sys.implementation.cache_tag <sys.implementation>`" msgstr "" -#: whatsnew/3.12.rst:1478 +#: whatsnew/3.12.rst:1492 msgid "``imp.load_module()``" msgstr "" -#: whatsnew/3.12.rst:1478 +#: whatsnew/3.12.rst:1492 msgid ":func:`importlib.import_module`" msgstr "" -#: whatsnew/3.12.rst:1479 +#: whatsnew/3.12.rst:1493 msgid "``imp.new_module(name)``" msgstr "" -#: whatsnew/3.12.rst:1479 +#: whatsnew/3.12.rst:1493 msgid "``types.ModuleType(name)``" msgstr "" -#: whatsnew/3.12.rst:1480 +#: whatsnew/3.12.rst:1494 msgid "``imp.reload()``" msgstr "" -#: whatsnew/3.12.rst:1480 +#: whatsnew/3.12.rst:1494 msgid ":func:`importlib.reload`" msgstr "" -#: whatsnew/3.12.rst:1481 +#: whatsnew/3.12.rst:1495 msgid "``imp.source_from_cache()``" msgstr "" -#: whatsnew/3.12.rst:1481 +#: whatsnew/3.12.rst:1495 msgid ":func:`importlib.util.source_from_cache`" msgstr "" -#: whatsnew/3.12.rst:1482 +#: whatsnew/3.12.rst:1496 msgid "``imp.load_source()``" msgstr "" -#: whatsnew/3.12.rst:1482 +#: whatsnew/3.12.rst:1496 msgid "*See below*" msgstr "" -#: whatsnew/3.12.rst:1485 +#: whatsnew/3.12.rst:1499 msgid "Replace ``imp.load_source()`` with::" msgstr "" -#: whatsnew/3.12.rst:1487 +#: whatsnew/3.12.rst:1501 msgid "" "import importlib.util\n" "import importlib.machinery\n" @@ -3036,48 +3051,48 @@ msgid "" " return module" msgstr "" -#: whatsnew/3.12.rst:1500 +#: whatsnew/3.12.rst:1514 msgid "Remove :mod:`!imp` functions and attributes with no replacements:" msgstr "" -#: whatsnew/3.12.rst:1502 +#: whatsnew/3.12.rst:1516 msgid "Undocumented functions:" msgstr "" -#: whatsnew/3.12.rst:1504 +#: whatsnew/3.12.rst:1518 msgid "``imp.init_builtin()``" msgstr "" -#: whatsnew/3.12.rst:1505 +#: whatsnew/3.12.rst:1519 msgid "``imp.load_compiled()``" msgstr "" -#: whatsnew/3.12.rst:1506 +#: whatsnew/3.12.rst:1520 msgid "``imp.load_dynamic()``" msgstr "" -#: whatsnew/3.12.rst:1507 +#: whatsnew/3.12.rst:1521 msgid "``imp.load_package()``" msgstr "" -#: whatsnew/3.12.rst:1509 +#: whatsnew/3.12.rst:1523 msgid "" "``imp.lock_held()``, ``imp.acquire_lock()``, ``imp.release_lock()``: the " "locking scheme has changed in Python 3.3 to per-module locks." msgstr "" -#: whatsnew/3.12.rst:1511 +#: whatsnew/3.12.rst:1525 msgid "" "``imp.find_module()`` constants: ``SEARCH_ERROR``, ``PY_SOURCE``, " "``PY_COMPILED``, ``C_EXTENSION``, ``PY_RESOURCE``, ``PKG_DIRECTORY``, " "``C_BUILTIN``, ``PY_FROZEN``, ``PY_CODERESOURCE``, ``IMP_HOOK``." msgstr "" -#: whatsnew/3.12.rst:1516 +#: whatsnew/3.12.rst:1530 msgid "io" msgstr "" -#: whatsnew/3.12.rst:1518 +#: whatsnew/3.12.rst:1532 msgid "" "Remove :mod:`io`'s ``io.OpenWrapper`` and ``_pyio.OpenWrapper``, deprecated " "in Python 3.10: just use :func:`open` instead. The :func:`open` (:func:`io." @@ -3086,22 +3101,22 @@ msgid "" "`94169`.)" msgstr "" -#: whatsnew/3.12.rst:1525 +#: whatsnew/3.12.rst:1539 msgid "locale" msgstr "" -#: whatsnew/3.12.rst:1527 +#: whatsnew/3.12.rst:1541 msgid "" "Remove :mod:`locale`'s :func:`!locale.format` function, deprecated in Python " "3.7: use :func:`locale.format_string` instead. (Contributed by Victor " "Stinner in :gh:`94226`.)" msgstr "" -#: whatsnew/3.12.rst:1532 +#: whatsnew/3.12.rst:1546 msgid "smtpd" msgstr "" -#: whatsnew/3.12.rst:1534 +#: whatsnew/3.12.rst:1548 msgid "" "The ``smtpd`` module has been removed according to the schedule in :pep:" "`594`, having been deprecated in Python 3.4.7 and 3.5.4. Use the :pypi:" @@ -3109,27 +3124,27 @@ msgid "" "(Contributed by Oleg Iarygin in :gh:`93243`.)" msgstr "" -#: whatsnew/3.12.rst:1543 +#: whatsnew/3.12.rst:1557 msgid "" "The following undocumented :mod:`sqlite3` features, deprecated in Python " "3.10, are now removed:" msgstr "" -#: whatsnew/3.12.rst:1546 +#: whatsnew/3.12.rst:1560 msgid "``sqlite3.enable_shared_cache()``" msgstr "" -#: whatsnew/3.12.rst:1547 +#: whatsnew/3.12.rst:1561 msgid "``sqlite3.OptimizedUnicode``" msgstr "" -#: whatsnew/3.12.rst:1549 +#: whatsnew/3.12.rst:1563 msgid "" "If a shared cache must be used, open the database in URI mode using the " "``cache=shared`` query parameter." msgstr "" -#: whatsnew/3.12.rst:1552 +#: whatsnew/3.12.rst:1566 msgid "" "The ``sqlite3.OptimizedUnicode`` text factory has been an alias for :class:" "`str` since Python 3.3. Code that previously set the text factory to " @@ -3137,22 +3152,22 @@ msgid "" "default value which is also ``str``." msgstr "" -#: whatsnew/3.12.rst:1557 +#: whatsnew/3.12.rst:1571 msgid "(Contributed by Erlend E. Aasland in :gh:`92548`.)" msgstr "" -#: whatsnew/3.12.rst:1560 +#: whatsnew/3.12.rst:1574 msgid "ssl" msgstr "" -#: whatsnew/3.12.rst:1562 +#: whatsnew/3.12.rst:1576 msgid "" "Remove :mod:`ssl`'s :func:`!ssl.RAND_pseudo_bytes` function, deprecated in " "Python 3.6: use :func:`os.urandom` or :func:`ssl.RAND_bytes` instead. " "(Contributed by Victor Stinner in :gh:`94199`.)" msgstr "" -#: whatsnew/3.12.rst:1566 +#: whatsnew/3.12.rst:1580 msgid "" "Remove the :func:`!ssl.match_hostname` function. It was deprecated in Python " "3.7. OpenSSL performs hostname matching since Python 3.7, Python no longer " @@ -3160,7 +3175,7 @@ msgid "" "Stinner in :gh:`94199`.)" msgstr "" -#: whatsnew/3.12.rst:1572 +#: whatsnew/3.12.rst:1586 msgid "" "Remove the :func:`!ssl.wrap_socket` function, deprecated in Python 3.7: " "instead, create a :class:`ssl.SSLContext` object and call its :class:`ssl." @@ -3171,185 +3186,185 @@ msgid "" "`94199`.)" msgstr "" -#: whatsnew/3.12.rst:1583 +#: whatsnew/3.12.rst:1597 msgid "Remove many long-deprecated :mod:`unittest` features:" msgstr "" -#: whatsnew/3.12.rst:1587 +#: whatsnew/3.12.rst:1601 msgid "A number of :class:`~unittest.TestCase` method aliases:" msgstr "" -#: whatsnew/3.12.rst:1590 +#: whatsnew/3.12.rst:1604 msgid "Deprecated alias" msgstr "" -#: whatsnew/3.12.rst:1590 +#: whatsnew/3.12.rst:1604 msgid "Method Name" msgstr "" -#: whatsnew/3.12.rst:1590 +#: whatsnew/3.12.rst:1604 msgid "Deprecated in" msgstr "" -#: whatsnew/3.12.rst:1592 +#: whatsnew/3.12.rst:1606 msgid "``failUnless``" msgstr "" -#: whatsnew/3.12.rst:1599 +#: whatsnew/3.12.rst:1613 msgid ":meth:`.assertTrue`" msgstr "" -#: whatsnew/3.12.rst:1593 whatsnew/3.12.rst:1595 whatsnew/3.12.rst:1597 -#: whatsnew/3.12.rst:1598 +#: whatsnew/3.12.rst:1607 whatsnew/3.12.rst:1609 whatsnew/3.12.rst:1611 +#: whatsnew/3.12.rst:1612 msgid "3.1" msgstr "" -#: whatsnew/3.12.rst:1593 +#: whatsnew/3.12.rst:1607 msgid "``failIf``" msgstr "" -#: whatsnew/3.12.rst:1593 +#: whatsnew/3.12.rst:1607 msgid ":meth:`.assertFalse`" msgstr "" -#: whatsnew/3.12.rst:1594 +#: whatsnew/3.12.rst:1608 msgid "``failUnlessEqual``" msgstr "" -#: whatsnew/3.12.rst:1600 +#: whatsnew/3.12.rst:1614 msgid ":meth:`.assertEqual`" msgstr "" -#: whatsnew/3.12.rst:1595 +#: whatsnew/3.12.rst:1609 msgid "``failIfEqual``" msgstr "" -#: whatsnew/3.12.rst:1601 +#: whatsnew/3.12.rst:1615 msgid ":meth:`.assertNotEqual`" msgstr "" -#: whatsnew/3.12.rst:1596 +#: whatsnew/3.12.rst:1610 msgid "``failUnlessAlmostEqual``" msgstr "" -#: whatsnew/3.12.rst:1602 +#: whatsnew/3.12.rst:1616 msgid ":meth:`.assertAlmostEqual`" msgstr "" -#: whatsnew/3.12.rst:1597 +#: whatsnew/3.12.rst:1611 msgid "``failIfAlmostEqual``" msgstr "" -#: whatsnew/3.12.rst:1603 +#: whatsnew/3.12.rst:1617 msgid ":meth:`.assertNotAlmostEqual`" msgstr "" -#: whatsnew/3.12.rst:1598 +#: whatsnew/3.12.rst:1612 msgid "``failUnlessRaises``" msgstr "" -#: whatsnew/3.12.rst:1598 +#: whatsnew/3.12.rst:1612 msgid ":meth:`.assertRaises`" msgstr "" -#: whatsnew/3.12.rst:1599 +#: whatsnew/3.12.rst:1613 msgid "``assert_``" msgstr "" -#: whatsnew/3.12.rst:1600 whatsnew/3.12.rst:1602 whatsnew/3.12.rst:1604 -#: whatsnew/3.12.rst:1605 +#: whatsnew/3.12.rst:1614 whatsnew/3.12.rst:1616 whatsnew/3.12.rst:1618 +#: whatsnew/3.12.rst:1619 msgid "3.2" msgstr "" -#: whatsnew/3.12.rst:1600 +#: whatsnew/3.12.rst:1614 msgid "``assertEquals``" msgstr "" -#: whatsnew/3.12.rst:1601 +#: whatsnew/3.12.rst:1615 msgid "``assertNotEquals``" msgstr "" -#: whatsnew/3.12.rst:1602 +#: whatsnew/3.12.rst:1616 msgid "``assertAlmostEquals``" msgstr "" -#: whatsnew/3.12.rst:1603 +#: whatsnew/3.12.rst:1617 msgid "``assertNotAlmostEquals``" msgstr "" -#: whatsnew/3.12.rst:1604 +#: whatsnew/3.12.rst:1618 msgid "``assertRegexpMatches``" msgstr "" -#: whatsnew/3.12.rst:1604 +#: whatsnew/3.12.rst:1618 msgid ":meth:`.assertRegex`" msgstr "" -#: whatsnew/3.12.rst:1605 +#: whatsnew/3.12.rst:1619 msgid "``assertRaisesRegexp``" msgstr "" -#: whatsnew/3.12.rst:1605 +#: whatsnew/3.12.rst:1619 msgid ":meth:`.assertRaisesRegex`" msgstr "" -#: whatsnew/3.12.rst:1606 +#: whatsnew/3.12.rst:1620 msgid "``assertNotRegexpMatches``" msgstr "" -#: whatsnew/3.12.rst:1606 +#: whatsnew/3.12.rst:1620 msgid ":meth:`.assertNotRegex`" msgstr "" -#: whatsnew/3.12.rst:1606 +#: whatsnew/3.12.rst:1620 msgid "3.5" msgstr "" -#: whatsnew/3.12.rst:1609 +#: whatsnew/3.12.rst:1623 msgid "" "You can use https://github.com/isidentical/teyit to automatically modernise " "your unit tests." msgstr "" -#: whatsnew/3.12.rst:1612 +#: whatsnew/3.12.rst:1626 msgid "" "Undocumented and broken :class:`~unittest.TestCase` method " "``assertDictContainsSubset`` (deprecated in Python 3.2)." msgstr "" -#: whatsnew/3.12.rst:1615 +#: whatsnew/3.12.rst:1629 msgid "" "Undocumented :meth:`TestLoader.loadTestsFromModule <unittest.TestLoader." "loadTestsFromModule>` parameter *use_load_tests* (deprecated and ignored " "since Python 3.5)." msgstr "" -#: whatsnew/3.12.rst:1619 +#: whatsnew/3.12.rst:1633 msgid "" "An alias of the :class:`~unittest.TextTestResult` class: ``_TextTestResult`` " "(deprecated in Python 3.2)." msgstr "" -#: whatsnew/3.12.rst:1622 +#: whatsnew/3.12.rst:1636 msgid "(Contributed by Serhiy Storchaka in :gh:`89325`.)" msgstr "" -#: whatsnew/3.12.rst:1625 +#: whatsnew/3.12.rst:1639 msgid "webbrowser" msgstr "" -#: whatsnew/3.12.rst:1627 +#: whatsnew/3.12.rst:1641 msgid "" "Remove support for obsolete browsers from :mod:`webbrowser`. The removed " "browsers include: Grail, Mosaic, Netscape, Galeon, Skipstone, Iceape, " "Firebird, and Firefox versions 35 and below (:gh:`102871`)." msgstr "" -#: whatsnew/3.12.rst:1632 +#: whatsnew/3.12.rst:1646 msgid "xml.etree.ElementTree" msgstr "" -#: whatsnew/3.12.rst:1634 +#: whatsnew/3.12.rst:1648 msgid "" "Remove the ``ElementTree.Element.copy()`` method of the pure Python " "implementation, deprecated in Python 3.10, use the :func:`copy.copy` " @@ -3358,22 +3373,22 @@ msgid "" "Stinner in :gh:`94383`.)" msgstr "" -#: whatsnew/3.12.rst:1641 +#: whatsnew/3.12.rst:1655 msgid "zipimport" msgstr "" -#: whatsnew/3.12.rst:1643 +#: whatsnew/3.12.rst:1657 msgid "" "Remove :mod:`zipimport`'s ``find_loader()`` and ``find_module()`` methods, " "deprecated in Python 3.10: use the ``find_spec()`` method instead. See :pep:" "`451` for the rationale. (Contributed by Victor Stinner in :gh:`94379`.)" msgstr "" -#: whatsnew/3.12.rst:1649 +#: whatsnew/3.12.rst:1663 msgid "Others" msgstr "" -#: whatsnew/3.12.rst:1651 +#: whatsnew/3.12.rst:1665 msgid "" "Remove the ``suspicious`` rule from the documentation :file:`Makefile` and :" "file:`Doc/tools/rstlint.py`, both in favor of `sphinx-lint <https://github." @@ -3381,7 +3396,7 @@ msgid "" "`98179`.)" msgstr "" -#: whatsnew/3.12.rst:1656 +#: whatsnew/3.12.rst:1670 msgid "" "Remove the *keyfile* and *certfile* parameters from the :mod:`ftplib`, :mod:" "`imaplib`, :mod:`poplib` and :mod:`smtplib` modules, and the *key_file*, " @@ -3391,33 +3406,33 @@ msgid "" "in :gh:`94172`.)" msgstr "" -#: whatsnew/3.12.rst:1664 +#: whatsnew/3.12.rst:1678 msgid "" "Remove ``Jython`` compatibility hacks from several stdlib modules and tests. " "(Contributed by Nikita Sobolev in :gh:`99482`.)" msgstr "" -#: whatsnew/3.12.rst:1667 +#: whatsnew/3.12.rst:1681 msgid "" "Remove ``_use_broken_old_ctypes_structure_semantics_`` flag from :mod:" "`ctypes` module. (Contributed by Nikita Sobolev in :gh:`99285`.)" msgstr "" -#: whatsnew/3.12.rst:1999 +#: whatsnew/3.12.rst:2013 msgid "Porting to Python 3.12" msgstr "" -#: whatsnew/3.12.rst:1677 +#: whatsnew/3.12.rst:1691 msgid "" "This section lists previously described changes and other bugfixes that may " "require changes to your code." msgstr "" -#: whatsnew/3.12.rst:1681 +#: whatsnew/3.12.rst:1695 msgid "Changes in the Python API" msgstr "" -#: whatsnew/3.12.rst:1683 +#: whatsnew/3.12.rst:1697 msgid "" "More strict rules are now applied for numerical group references and group " "names in regular expressions. Only sequence of ASCII digits is now accepted " @@ -3426,7 +3441,7 @@ msgid "" "(Contributed by Serhiy Storchaka in :gh:`91760`.)" msgstr "" -#: whatsnew/3.12.rst:1690 +#: whatsnew/3.12.rst:1704 msgid "" "Remove ``randrange()`` functionality deprecated since Python 3.10. " "Formerly, ``randrange(10.0)`` losslessly converted to ``randrange(10)``. " @@ -3438,7 +3453,7 @@ msgid "" "`86388`.)" msgstr "" -#: whatsnew/3.12.rst:1698 +#: whatsnew/3.12.rst:1712 msgid "" ":class:`argparse.ArgumentParser` changed encoding and error handler for " "reading arguments from file (e.g. ``fromfile_prefix_chars`` option) from " @@ -3448,21 +3463,21 @@ msgid "" "on Windows." msgstr "" -#: whatsnew/3.12.rst:1704 +#: whatsnew/3.12.rst:1718 msgid "" "Remove the ``asyncore``-based ``smtpd`` module deprecated in Python 3.4.7 " "and 3.5.4. A recommended replacement is the :mod:`asyncio`-based :pypi:" "`aiosmtpd` PyPI module." msgstr "" -#: whatsnew/3.12.rst:1708 +#: whatsnew/3.12.rst:1722 msgid "" ":func:`shlex.split`: Passing ``None`` for *s* argument now raises an " "exception, rather than reading :data:`sys.stdin`. The feature was deprecated " "in Python 3.9. (Contributed by Victor Stinner in :gh:`94352`.)" msgstr "" -#: whatsnew/3.12.rst:1713 +#: whatsnew/3.12.rst:1727 msgid "" "The :mod:`os` module no longer accepts bytes-like paths, like :class:" "`bytearray` and :class:`memoryview` types: only the exact :class:`bytes` " @@ -3470,7 +3485,7 @@ msgid "" "`98393`.)" msgstr "" -#: whatsnew/3.12.rst:1718 +#: whatsnew/3.12.rst:1732 msgid "" ":func:`syslog.openlog` and :func:`syslog.closelog` now fail if used in " "subinterpreters. :func:`syslog.syslog` may still be used in subinterpreters, " @@ -3482,7 +3497,7 @@ msgid "" "(Contributed by Donghee Na in :gh:`99127`.)" msgstr "" -#: whatsnew/3.12.rst:1727 +#: whatsnew/3.12.rst:1741 msgid "" "The undocumented locking behavior of :func:`~functools.cached_property` is " "removed, because it locked across all instances of the class, leading to " @@ -3494,14 +3509,14 @@ msgid "" "property getter function or around multi-threaded access points." msgstr "" -#: whatsnew/3.12.rst:1740 +#: whatsnew/3.12.rst:1754 msgid "" "When extracting tar files using :mod:`tarfile` or :func:`shutil." "unpack_archive`, pass the *filter* argument to limit features that may be " "surprising or dangerous. See :ref:`tarfile-extraction-filter` for details." msgstr "" -#: whatsnew/3.12.rst:1745 +#: whatsnew/3.12.rst:1759 msgid "" "The output of the :func:`tokenize.tokenize` and :func:`tokenize." "generate_tokens` functions is now changed due to the changes introduced in :" @@ -3513,15 +3528,15 @@ msgid "" "``f\"start {1+1} end\"`` the old version of the tokenizer emitted::" msgstr "" -#: whatsnew/3.12.rst:1754 +#: whatsnew/3.12.rst:1768 msgid "1,0-1,18: STRING 'f\"start {1+1} end\"'" msgstr "" -#: whatsnew/3.12.rst:1756 +#: whatsnew/3.12.rst:1770 msgid "while the new version emits::" msgstr "" -#: whatsnew/3.12.rst:1758 +#: whatsnew/3.12.rst:1772 msgid "" "1,0-1,2: FSTRING_START 'f\"'\n" "1,2-1,8: FSTRING_MIDDLE 'start '\n" @@ -3534,54 +3549,54 @@ msgid "" "1,17-1,18: FSTRING_END '\"'" msgstr "" -#: whatsnew/3.12.rst:1768 +#: whatsnew/3.12.rst:1782 msgid "" "Additionally, there may be some minor behavioral changes as a consequence of " "the changes required to support :pep:`701`. Some of these changes include:" msgstr "" -#: whatsnew/3.12.rst:1771 +#: whatsnew/3.12.rst:1785 msgid "" "The ``type`` attribute of the tokens emitted when tokenizing some invalid " "Python characters such as ``!`` has changed from ``ERRORTOKEN`` to ``OP``." msgstr "" -#: whatsnew/3.12.rst:1774 +#: whatsnew/3.12.rst:1788 msgid "" "Incomplete single-line strings now also raise :exc:`tokenize.TokenError` as " "incomplete multiline strings do." msgstr "" -#: whatsnew/3.12.rst:1777 +#: whatsnew/3.12.rst:1791 msgid "" "Some incomplete or invalid Python code now raises :exc:`tokenize.TokenError` " "instead of returning arbitrary ``ERRORTOKEN`` tokens when tokenizing it." msgstr "" -#: whatsnew/3.12.rst:1780 +#: whatsnew/3.12.rst:1794 msgid "" "Mixing tabs and spaces as indentation in the same file is not supported " "anymore and will raise a :exc:`TabError`." msgstr "" -#: whatsnew/3.12.rst:1783 +#: whatsnew/3.12.rst:1797 msgid "" "The :mod:`threading` module now expects the :mod:`!_thread` module to have " "an ``_is_main_interpreter`` attribute. It is a function with no arguments " "that returns ``True`` if the current interpreter is the main interpreter." msgstr "" -#: whatsnew/3.12.rst:1788 +#: whatsnew/3.12.rst:1802 msgid "" "Any library or application that provides a custom ``_thread`` module should " "provide ``_is_main_interpreter()``. (See :gh:`112826`.)" msgstr "" -#: whatsnew/3.12.rst:1793 +#: whatsnew/3.12.rst:1807 msgid "Build Changes" msgstr "" -#: whatsnew/3.12.rst:1795 +#: whatsnew/3.12.rst:1809 msgid "" "Python no longer uses :file:`setup.py` to build shared C extension modules. " "Build parameters like headers and libraries are detected in ``configure`` " @@ -3590,21 +3605,21 @@ msgid "" "in :gh:`93939`.)" msgstr "" -#: whatsnew/3.12.rst:1801 +#: whatsnew/3.12.rst:1815 msgid "" "``va_start()`` with two parameters, like ``va_start(args, format),`` is now " "required to build Python. ``va_start()`` is no longer called with a single " "parameter. (Contributed by Kumar Aditya in :gh:`93207`.)" msgstr "" -#: whatsnew/3.12.rst:1806 +#: whatsnew/3.12.rst:1820 msgid "" "CPython now uses the ThinLTO option as the default link time optimization " "policy if the Clang compiler accepts the flag. (Contributed by Donghee Na " "in :gh:`89536`.)" msgstr "" -#: whatsnew/3.12.rst:1810 +#: whatsnew/3.12.rst:1824 msgid "" "Add ``COMPILEALL_OPTS`` variable in :file:`Makefile` to override :mod:" "`compileall` options (default: ``-j0``) in ``make install``. Also merged the " @@ -3613,46 +3628,46 @@ msgid "" "`99289`.)" msgstr "" -#: whatsnew/3.12.rst:1816 +#: whatsnew/3.12.rst:1830 msgid "Add platform triplets for 64-bit LoongArch:" msgstr "" -#: whatsnew/3.12.rst:1818 +#: whatsnew/3.12.rst:1832 msgid "loongarch64-linux-gnusf" msgstr "" -#: whatsnew/3.12.rst:1819 +#: whatsnew/3.12.rst:1833 msgid "loongarch64-linux-gnuf32" msgstr "" -#: whatsnew/3.12.rst:1820 +#: whatsnew/3.12.rst:1834 msgid "loongarch64-linux-gnu" msgstr "" -#: whatsnew/3.12.rst:1822 +#: whatsnew/3.12.rst:1836 msgid "(Contributed by Zhang Na in :gh:`90656`.)" msgstr "" -#: whatsnew/3.12.rst:1824 +#: whatsnew/3.12.rst:1838 msgid "``PYTHON_FOR_REGEN`` now require Python 3.10 or newer." msgstr "" -#: whatsnew/3.12.rst:1826 +#: whatsnew/3.12.rst:1840 msgid "" "Autoconf 2.71 and aclocal 1.16.4 is now required to regenerate :file:`!" "configure`. (Contributed by Christian Heimes in :gh:`89886`.)" msgstr "" -#: whatsnew/3.12.rst:1830 +#: whatsnew/3.12.rst:1844 msgid "" "Windows builds and macOS installers from python.org now use OpenSSL 3.0." msgstr "" -#: whatsnew/3.12.rst:1834 +#: whatsnew/3.12.rst:1848 msgid "C API Changes" msgstr "" -#: whatsnew/3.12.rst:1841 +#: whatsnew/3.12.rst:1855 msgid "" ":pep:`697`: Introduce the :ref:`Unstable C API tier <unstable-c-api>`, " "intended for low-level tools like debuggers and JIT compilers. This API may " @@ -3660,84 +3675,84 @@ msgid "" "contents are marked by the ``PyUnstable_`` prefix in names." msgstr "" -#: whatsnew/3.12.rst:1847 +#: whatsnew/3.12.rst:1861 msgid "Code object constructors:" msgstr "" -#: whatsnew/3.12.rst:1849 +#: whatsnew/3.12.rst:1863 msgid "``PyUnstable_Code_New()`` (renamed from ``PyCode_New``)" msgstr "" -#: whatsnew/3.12.rst:1850 +#: whatsnew/3.12.rst:1864 msgid "" "``PyUnstable_Code_NewWithPosOnlyArgs()`` (renamed from " "``PyCode_NewWithPosOnlyArgs``)" msgstr "" -#: whatsnew/3.12.rst:1852 +#: whatsnew/3.12.rst:1866 msgid "Extra storage for code objects (:pep:`523`):" msgstr "" -#: whatsnew/3.12.rst:1854 +#: whatsnew/3.12.rst:1868 msgid "" "``PyUnstable_Eval_RequestCodeExtraIndex()`` (renamed from " "``_PyEval_RequestCodeExtraIndex``)" msgstr "" -#: whatsnew/3.12.rst:1855 +#: whatsnew/3.12.rst:1869 msgid "``PyUnstable_Code_GetExtra()`` (renamed from ``_PyCode_GetExtra``)" msgstr "" -#: whatsnew/3.12.rst:1856 +#: whatsnew/3.12.rst:1870 msgid "``PyUnstable_Code_SetExtra()`` (renamed from ``_PyCode_SetExtra``)" msgstr "" -#: whatsnew/3.12.rst:1858 +#: whatsnew/3.12.rst:1872 msgid "" "The original names will continue to be available until the respective API " "changes." msgstr "" -#: whatsnew/3.12.rst:1861 +#: whatsnew/3.12.rst:1875 msgid "(Contributed by Petr Viktorin in :gh:`101101`.)" msgstr "" -#: whatsnew/3.12.rst:1863 +#: whatsnew/3.12.rst:1877 msgid "" ":pep:`697`: Add an API for extending types whose instance memory layout is " "opaque:" msgstr "" -#: whatsnew/3.12.rst:1866 +#: whatsnew/3.12.rst:1880 msgid "" ":c:member:`PyType_Spec.basicsize` can be zero or negative to specify " "inheriting or extending the base class size." msgstr "" -#: whatsnew/3.12.rst:1868 +#: whatsnew/3.12.rst:1882 msgid "" ":c:func:`PyObject_GetTypeData` and :c:func:`PyType_GetTypeDataSize` added to " "allow access to subclass-specific instance data." msgstr "" -#: whatsnew/3.12.rst:1870 +#: whatsnew/3.12.rst:1884 msgid "" ":c:macro:`Py_TPFLAGS_ITEMS_AT_END` and :c:func:`PyObject_GetItemData` added " "to allow safely extending certain variable-sized types, including :c:var:" "`PyType_Type`." msgstr "" -#: whatsnew/3.12.rst:1873 +#: whatsnew/3.12.rst:1887 msgid "" ":c:macro:`Py_RELATIVE_OFFSET` added to allow defining :c:type:`members " "<PyMemberDef>` in terms of a subclass-specific struct." msgstr "" -#: whatsnew/3.12.rst:1876 +#: whatsnew/3.12.rst:1890 msgid "(Contributed by Petr Viktorin in :gh:`103509`.)" msgstr "" -#: whatsnew/3.12.rst:1878 +#: whatsnew/3.12.rst:1892 msgid "" "Add the new :ref:`limited C API <limited-c-api>` function :c:func:" "`PyType_FromMetaclass`, which generalizes the existing :c:func:" @@ -3745,29 +3760,29 @@ msgid "" "(Contributed by Wenzel Jakob in :gh:`93012`.)" msgstr "" -#: whatsnew/3.12.rst:1883 +#: whatsnew/3.12.rst:1897 msgid "" "API for creating objects that can be called using :ref:`the vectorcall " "protocol <vectorcall>` was added to the :ref:`Limited API <stable>`:" msgstr "" -#: whatsnew/3.12.rst:1887 +#: whatsnew/3.12.rst:1901 msgid ":c:macro:`Py_TPFLAGS_HAVE_VECTORCALL`" msgstr "" -#: whatsnew/3.12.rst:1888 +#: whatsnew/3.12.rst:1902 msgid ":c:func:`PyVectorcall_NARGS`" msgstr "" -#: whatsnew/3.12.rst:1889 +#: whatsnew/3.12.rst:1903 msgid ":c:func:`PyVectorcall_Call`" msgstr "" -#: whatsnew/3.12.rst:1890 +#: whatsnew/3.12.rst:1904 msgid ":c:type:`vectorcallfunc`" msgstr "" -#: whatsnew/3.12.rst:1892 +#: whatsnew/3.12.rst:1906 msgid "" "The :c:macro:`Py_TPFLAGS_HAVE_VECTORCALL` flag is now removed from a class " "when the class's :py:meth:`~object.__call__` method is reassigned. This " @@ -3778,7 +3793,7 @@ msgid "" "`93274`.)" msgstr "" -#: whatsnew/3.12.rst:1900 +#: whatsnew/3.12.rst:1914 msgid "" "The :c:macro:`Py_TPFLAGS_MANAGED_DICT` and :c:macro:" "`Py_TPFLAGS_MANAGED_WEAKREF` flags have been added. This allows extensions " @@ -3786,32 +3801,32 @@ msgid "" "bookkeeping, using less memory and with faster access." msgstr "" -#: whatsnew/3.12.rst:1905 +#: whatsnew/3.12.rst:1919 msgid "" "API for performing calls using :ref:`the vectorcall protocol <vectorcall>` " "was added to the :ref:`Limited API <stable>`:" msgstr "" -#: whatsnew/3.12.rst:1909 +#: whatsnew/3.12.rst:1923 msgid ":c:func:`PyObject_Vectorcall`" msgstr "" -#: whatsnew/3.12.rst:1910 +#: whatsnew/3.12.rst:1924 msgid ":c:func:`PyObject_VectorcallMethod`" msgstr "" -#: whatsnew/3.12.rst:1911 +#: whatsnew/3.12.rst:1925 msgid ":c:macro:`PY_VECTORCALL_ARGUMENTS_OFFSET`" msgstr "" -#: whatsnew/3.12.rst:1913 +#: whatsnew/3.12.rst:1927 msgid "" "This means that both the incoming and outgoing ends of the vector call " "protocol are now available in the :ref:`Limited API <stable>`. (Contributed " "by Wenzel Jakob in :gh:`98586`.)" msgstr "" -#: whatsnew/3.12.rst:1917 +#: whatsnew/3.12.rst:1931 msgid "" "Add two new public functions, :c:func:`PyEval_SetProfileAllThreads` and :c:" "func:`PyEval_SetTraceAllThreads`, that allow to set tracing and profiling " @@ -3819,14 +3834,14 @@ msgid "" "(Contributed by Pablo Galindo in :gh:`93503`.)" msgstr "" -#: whatsnew/3.12.rst:1923 +#: whatsnew/3.12.rst:1937 msgid "" "Add new function :c:func:`PyFunction_SetVectorcall` to the C API which sets " "the vectorcall field of a given :c:type:`PyFunctionObject`. (Contributed by " "Andrew Frost in :gh:`92257`.)" msgstr "" -#: whatsnew/3.12.rst:1927 +#: whatsnew/3.12.rst:1941 msgid "" "The C API now permits registering callbacks via :c:func:" "`PyDict_AddWatcher`, :c:func:`PyDict_Watch` and related APIs to be called " @@ -3835,28 +3850,28 @@ msgid "" "`91052`.)" msgstr "" -#: whatsnew/3.12.rst:1933 +#: whatsnew/3.12.rst:1947 msgid "" "Add :c:func:`PyType_AddWatcher` and :c:func:`PyType_Watch` API to register " "callbacks to receive notification on changes to a type. (Contributed by Carl " "Meyer in :gh:`91051`.)" msgstr "" -#: whatsnew/3.12.rst:1937 +#: whatsnew/3.12.rst:1951 msgid "" "Add :c:func:`PyCode_AddWatcher` and :c:func:`PyCode_ClearWatcher` APIs to " "register callbacks to receive notification on creation and destruction of " "code objects. (Contributed by Itamar Oren in :gh:`91054`.)" msgstr "" -#: whatsnew/3.12.rst:1942 +#: whatsnew/3.12.rst:1956 msgid "" "Add :c:func:`PyFrame_GetVar` and :c:func:`PyFrame_GetVarString` functions to " "get a frame variable by its name. (Contributed by Victor Stinner in :gh:" "`91248`.)" msgstr "" -#: whatsnew/3.12.rst:1946 +#: whatsnew/3.12.rst:1960 msgid "" "Add :c:func:`PyErr_GetRaisedException` and :c:func:" "`PyErr_SetRaisedException` for saving and restoring the current exception. " @@ -3866,14 +3881,14 @@ msgid "" "(Contributed by Mark Shannon in :gh:`101578`.)" msgstr "" -#: whatsnew/3.12.rst:1954 +#: whatsnew/3.12.rst:1968 msgid "" "Add ``_PyErr_ChainExceptions1``, which takes an exception instance, to " "replace the legacy-API ``_PyErr_ChainExceptions``, which is now deprecated. " "(Contributed by Mark Shannon in :gh:`101578`.)" msgstr "" -#: whatsnew/3.12.rst:1958 +#: whatsnew/3.12.rst:1972 msgid "" "Add :c:func:`PyException_GetArgs` and :c:func:`PyException_SetArgs` as " "convenience functions for retrieving and modifying the :attr:`~BaseException." @@ -3881,71 +3896,71 @@ msgid "" "in :gh:`101578`.)" msgstr "" -#: whatsnew/3.12.rst:1963 +#: whatsnew/3.12.rst:1977 msgid "" "Add :c:func:`PyErr_DisplayException`, which takes an exception instance, to " "replace the legacy-api :c:func:`!PyErr_Display`. (Contributed by Irit " "Katriel in :gh:`102755`)." msgstr "" -#: whatsnew/3.12.rst:1969 +#: whatsnew/3.12.rst:1983 msgid "" ":pep:`683`: Introduce *Immortal Objects*, which allows objects to bypass " "reference counts, and related changes to the C-API:" msgstr "" -#: whatsnew/3.12.rst:1972 +#: whatsnew/3.12.rst:1986 msgid "``_Py_IMMORTAL_REFCNT``: The reference count that defines an object" msgstr "" -#: whatsnew/3.12.rst:1973 +#: whatsnew/3.12.rst:1987 msgid "as immortal." msgstr "" -#: whatsnew/3.12.rst:1974 +#: whatsnew/3.12.rst:1988 msgid "" "``_Py_IsImmortal`` Checks if an object has the immortal reference count." msgstr "" -#: whatsnew/3.12.rst:1975 +#: whatsnew/3.12.rst:1989 msgid "``PyObject_HEAD_INIT`` This will now initialize reference count to" msgstr "" -#: whatsnew/3.12.rst:1976 +#: whatsnew/3.12.rst:1990 msgid "``_Py_IMMORTAL_REFCNT`` when used with ``Py_BUILD_CORE``." msgstr "" -#: whatsnew/3.12.rst:1977 +#: whatsnew/3.12.rst:1991 msgid "``SSTATE_INTERNED_IMMORTAL`` An identifier for interned unicode objects" msgstr "" -#: whatsnew/3.12.rst:1978 +#: whatsnew/3.12.rst:1992 msgid "that are immortal." msgstr "" -#: whatsnew/3.12.rst:1979 +#: whatsnew/3.12.rst:1993 msgid "``SSTATE_INTERNED_IMMORTAL_STATIC`` An identifier for interned unicode" msgstr "" -#: whatsnew/3.12.rst:1980 +#: whatsnew/3.12.rst:1994 msgid "objects that are immortal and static" msgstr "" -#: whatsnew/3.12.rst:1981 +#: whatsnew/3.12.rst:1995 msgid "``sys.getunicodeinternedsize`` This returns the total number of unicode" msgstr "" -#: whatsnew/3.12.rst:1982 +#: whatsnew/3.12.rst:1996 msgid "" "objects that have been interned. This is now needed for :file:`refleak.py` " "to correctly track reference counts and allocated blocks" msgstr "" -#: whatsnew/3.12.rst:1985 +#: whatsnew/3.12.rst:1999 msgid "(Contributed by Eddie Elizondo in :gh:`84436`.)" msgstr "" -#: whatsnew/3.12.rst:1987 +#: whatsnew/3.12.rst:2001 msgid "" ":pep:`684`: Add the new :c:func:`Py_NewInterpreterFromConfig` function and :" "c:type:`PyInterpreterConfig`, which may be used to create sub-interpreters " @@ -3953,27 +3968,27 @@ msgid "" "(Contributed by Eric Snow in :gh:`104110`.)" msgstr "" -#: whatsnew/3.12.rst:1993 +#: whatsnew/3.12.rst:2007 msgid "" "In the limited C API version 3.12, :c:func:`Py_INCREF` and :c:func:" "`Py_DECREF` functions are now implemented as opaque function calls to hide " "implementation details. (Contributed by Victor Stinner in :gh:`105387`.)" msgstr "" -#: whatsnew/3.12.rst:2001 +#: whatsnew/3.12.rst:2015 msgid "" "Legacy Unicode APIs based on ``Py_UNICODE*`` representation has been " "removed. Please migrate to APIs based on UTF-8 or ``wchar_t*``." msgstr "" -#: whatsnew/3.12.rst:2004 +#: whatsnew/3.12.rst:2018 msgid "" "Argument parsing functions like :c:func:`PyArg_ParseTuple` doesn't support " "``Py_UNICODE*`` based format (e.g. ``u``, ``Z``) anymore. Please migrate to " "other formats for Unicode like ``s``, ``z``, ``es``, and ``U``." msgstr "" -#: whatsnew/3.12.rst:2008 +#: whatsnew/3.12.rst:2022 msgid "" "``tp_weaklist`` for all static builtin types is always ``NULL``. This is an " "internal-only field on ``PyTypeObject`` but we're pointing out the change in " @@ -3982,7 +3997,7 @@ msgid "" "necessary, the (internal-only) ``_PyObject_GET_WEAKREFS_LISTPTR()`` macro." msgstr "" -#: whatsnew/3.12.rst:2015 +#: whatsnew/3.12.rst:2029 msgid "" "This internal-only :c:member:`PyTypeObject.tp_subclasses` may now not be a " "valid object pointer. Its type was changed to :c:expr:`void *` to reflect " @@ -3990,13 +4005,13 @@ msgid "" "only field directly." msgstr "" -#: whatsnew/3.12.rst:2020 +#: whatsnew/3.12.rst:2034 msgid "" "To get a list of subclasses, call the Python method :py:meth:`~type." "__subclasses__` (using :c:func:`PyObject_CallMethod`, for example)." msgstr "" -#: whatsnew/3.12.rst:2024 +#: whatsnew/3.12.rst:2038 msgid "" "Add support of more formatting options (left aligning, octals, uppercase " "hexadecimals, :c:type:`intmax_t`, :c:type:`ptrdiff_t`, :c:type:`wchar_t` C " @@ -4005,7 +4020,7 @@ msgid "" "`98836`.)" msgstr "" -#: whatsnew/3.12.rst:2030 +#: whatsnew/3.12.rst:2044 msgid "" "An unrecognized format character in :c:func:`PyUnicode_FromFormat` and :c:" "func:`PyUnicode_FromFormatV` now sets a :exc:`SystemError`. In previous " @@ -4014,13 +4029,13 @@ msgid "" "Storchaka in :gh:`95781`.)" msgstr "" -#: whatsnew/3.12.rst:2036 +#: whatsnew/3.12.rst:2050 msgid "" "Fix wrong sign placement in :c:func:`PyUnicode_FromFormat` and :c:func:" "`PyUnicode_FromFormatV`. (Contributed by Philip Georgi in :gh:`95504`.)" msgstr "" -#: whatsnew/3.12.rst:2040 +#: whatsnew/3.12.rst:2054 msgid "" "Extension classes wanting to add a :attr:`~object.__dict__` or weak " "reference slot should use :c:macro:`Py_TPFLAGS_MANAGED_DICT` and :c:macro:" @@ -4034,7 +4049,7 @@ msgid "" "func:`PyObject_ClearWeakRefs`, as before." msgstr "" -#: whatsnew/3.12.rst:2052 +#: whatsnew/3.12.rst:2066 msgid "" "The :c:func:`PyUnicode_FSDecoder` function no longer accepts bytes-like " "paths, like :class:`bytearray` and :class:`memoryview` types: only the " @@ -4042,7 +4057,7 @@ msgid "" "Victor Stinner in :gh:`98393`.)" msgstr "" -#: whatsnew/3.12.rst:2057 +#: whatsnew/3.12.rst:2071 msgid "" "The :c:macro:`Py_CLEAR`, :c:macro:`Py_SETREF` and :c:macro:`Py_XSETREF` " "macros now only evaluate their arguments once. If an argument has side " @@ -4050,7 +4065,7 @@ msgid "" "Stinner in :gh:`98724`.)" msgstr "" -#: whatsnew/3.12.rst:2062 +#: whatsnew/3.12.rst:2076 msgid "" "The interpreter's error indicator is now always normalized. This means that :" "c:func:`PyErr_SetObject`, :c:func:`PyErr_SetString` and the other functions " @@ -4058,7 +4073,7 @@ msgid "" "(Contributed by Mark Shannon in :gh:`101578`.)" msgstr "" -#: whatsnew/3.12.rst:2067 +#: whatsnew/3.12.rst:2081 msgid "" "``_Py_RefTotal`` is no longer authoritative and only kept around for ABI " "compatibility. Note that it is an internal global and only available on " @@ -4066,25 +4081,25 @@ msgid "" "``_Py_GetGlobalRefTotal()``." msgstr "" -#: whatsnew/3.12.rst:2072 +#: whatsnew/3.12.rst:2086 msgid "" "The following functions now select an appropriate metaclass for the newly " "created type:" msgstr "" -#: whatsnew/3.12.rst:2075 +#: whatsnew/3.12.rst:2089 msgid ":c:func:`PyType_FromSpec`" msgstr "" -#: whatsnew/3.12.rst:2076 +#: whatsnew/3.12.rst:2090 msgid ":c:func:`PyType_FromSpecWithBases`" msgstr "" -#: whatsnew/3.12.rst:2077 +#: whatsnew/3.12.rst:2091 msgid ":c:func:`PyType_FromModuleAndSpec`" msgstr "" -#: whatsnew/3.12.rst:2079 +#: whatsnew/3.12.rst:2093 msgid "" "Creating classes whose metaclass overrides :c:member:`~PyTypeObject.tp_new` " "is deprecated, and in Python 3.14+ it will be disallowed. Note that these " @@ -4092,14 +4107,14 @@ msgid "" "initialization." msgstr "" -#: whatsnew/3.12.rst:2084 +#: whatsnew/3.12.rst:2098 msgid "" "Note that :c:func:`PyType_FromMetaclass` (added in Python 3.12) already " "disallows creating classes whose metaclass overrides ``tp_new`` (:meth:" "`~object.__new__` in Python)." msgstr "" -#: whatsnew/3.12.rst:2088 +#: whatsnew/3.12.rst:2102 msgid "" "Since ``tp_new`` overrides almost everything ``PyType_From*`` functions do, " "the two are incompatible with each other. The existing behavior -- ignoring " @@ -4108,17 +4123,17 @@ msgid "" "general workaround. One of the following may work for you:" msgstr "" -#: whatsnew/3.12.rst:2095 +#: whatsnew/3.12.rst:2109 msgid "If you control the metaclass, avoid using ``tp_new`` in it:" msgstr "" -#: whatsnew/3.12.rst:2097 +#: whatsnew/3.12.rst:2111 msgid "" "If initialization can be skipped, it can be done in :c:member:`~PyTypeObject." "tp_init` instead." msgstr "" -#: whatsnew/3.12.rst:2099 +#: whatsnew/3.12.rst:2113 msgid "" "If the metaclass doesn't need to be instantiated from Python, set its " "``tp_new`` to ``NULL`` using the :c:macro:" @@ -4126,20 +4141,20 @@ msgid "" "``PyType_From*`` functions." msgstr "" -#: whatsnew/3.12.rst:2104 +#: whatsnew/3.12.rst:2118 msgid "" "Avoid ``PyType_From*`` functions: if you don't need C-specific features " "(slots or setting the instance size), create types by :ref:`calling <call>` " "the metaclass." msgstr "" -#: whatsnew/3.12.rst:2108 +#: whatsnew/3.12.rst:2122 msgid "" "If you *know* the ``tp_new`` can be skipped safely, filter the deprecation " "warning out using :func:`warnings.catch_warnings` from Python." msgstr "" -#: whatsnew/3.12.rst:2111 +#: whatsnew/3.12.rst:2125 msgid "" ":c:var:`PyOS_InputHook` and :c:var:`PyOS_ReadlineFunctionPointer` are no " "longer called in :ref:`subinterpreters <sub-interpreter-support>`. This is " @@ -4147,14 +4162,14 @@ msgid "" "callbacks have no way of recovering extension module state)." msgstr "" -#: whatsnew/3.12.rst:2116 +#: whatsnew/3.12.rst:2130 msgid "" "This also avoids situations where extensions may find themselves running in " "a subinterpreter that they don't support (or haven't yet been loaded in). " "See :gh:`104668` for more info." msgstr "" -#: whatsnew/3.12.rst:2120 +#: whatsnew/3.12.rst:2134 msgid "" ":c:struct:`PyLongObject` has had its internals changed for better " "performance. Although the internals of :c:struct:`PyLongObject` are private, " @@ -4165,15 +4180,15 @@ msgid "" "a single machine word:" msgstr "" -#: whatsnew/3.12.rst:2128 +#: whatsnew/3.12.rst:2142 msgid ":c:func:`PyUnstable_Long_IsCompact`" msgstr "" -#: whatsnew/3.12.rst:2129 +#: whatsnew/3.12.rst:2143 msgid ":c:func:`PyUnstable_Long_CompactValue`" msgstr "" -#: whatsnew/3.12.rst:2131 +#: whatsnew/3.12.rst:2145 msgid "" "Custom allocators, set via :c:func:`PyMem_SetAllocator`, are now required to " "be thread-safe, regardless of memory domain. Allocators that don't have " @@ -4182,7 +4197,7 @@ msgid "" "create a new GitHub issue and CC ``@ericsnowcurrently``." msgstr "" -#: whatsnew/3.12.rst:2141 +#: whatsnew/3.12.rst:2155 msgid "" "In accordance with :pep:`699`, the ``ma_version_tag`` field in :c:type:" "`PyDictObject` is deprecated for extension modules. Accessing this field " @@ -4191,215 +4206,215 @@ msgid "" "PEP by Ken Jin.)" msgstr "" -#: whatsnew/3.12.rst:2146 +#: whatsnew/3.12.rst:2160 msgid "Deprecate global configuration variable:" msgstr "" -#: whatsnew/3.12.rst:2148 +#: whatsnew/3.12.rst:2162 msgid ":c:var:`Py_DebugFlag`: use :c:member:`PyConfig.parser_debug`" msgstr "" -#: whatsnew/3.12.rst:2149 +#: whatsnew/3.12.rst:2163 msgid ":c:var:`Py_VerboseFlag`: use :c:member:`PyConfig.verbose`" msgstr "" -#: whatsnew/3.12.rst:2150 +#: whatsnew/3.12.rst:2164 msgid ":c:var:`Py_QuietFlag`: use :c:member:`PyConfig.quiet`" msgstr "" -#: whatsnew/3.12.rst:2151 +#: whatsnew/3.12.rst:2165 msgid ":c:var:`Py_InteractiveFlag`: use :c:member:`PyConfig.interactive`" msgstr "" -#: whatsnew/3.12.rst:2152 +#: whatsnew/3.12.rst:2166 msgid ":c:var:`Py_InspectFlag`: use :c:member:`PyConfig.inspect`" msgstr "" -#: whatsnew/3.12.rst:2153 +#: whatsnew/3.12.rst:2167 msgid ":c:var:`Py_OptimizeFlag`: use :c:member:`PyConfig.optimization_level`" msgstr "" -#: whatsnew/3.12.rst:2154 +#: whatsnew/3.12.rst:2168 msgid ":c:var:`Py_NoSiteFlag`: use :c:member:`PyConfig.site_import`" msgstr "" -#: whatsnew/3.12.rst:2155 +#: whatsnew/3.12.rst:2169 msgid ":c:var:`Py_BytesWarningFlag`: use :c:member:`PyConfig.bytes_warning`" msgstr "" -#: whatsnew/3.12.rst:2156 +#: whatsnew/3.12.rst:2170 msgid ":c:var:`Py_FrozenFlag`: use :c:member:`PyConfig.pathconfig_warnings`" msgstr "" -#: whatsnew/3.12.rst:2157 +#: whatsnew/3.12.rst:2171 msgid "" ":c:var:`Py_IgnoreEnvironmentFlag`: use :c:member:`PyConfig.use_environment`" msgstr "" -#: whatsnew/3.12.rst:2158 +#: whatsnew/3.12.rst:2172 msgid "" ":c:var:`Py_DontWriteBytecodeFlag`: use :c:member:`PyConfig.write_bytecode`" msgstr "" -#: whatsnew/3.12.rst:2159 +#: whatsnew/3.12.rst:2173 msgid "" ":c:var:`Py_NoUserSiteDirectory`: use :c:member:`PyConfig.user_site_directory`" msgstr "" -#: whatsnew/3.12.rst:2160 +#: whatsnew/3.12.rst:2174 msgid "" ":c:var:`Py_UnbufferedStdioFlag`: use :c:member:`PyConfig.buffered_stdio`" msgstr "" -#: whatsnew/3.12.rst:2161 +#: whatsnew/3.12.rst:2175 msgid "" ":c:var:`Py_HashRandomizationFlag`: use :c:member:`PyConfig.use_hash_seed` " "and :c:member:`PyConfig.hash_seed`" msgstr "" -#: whatsnew/3.12.rst:2163 +#: whatsnew/3.12.rst:2177 msgid ":c:var:`Py_IsolatedFlag`: use :c:member:`PyConfig.isolated`" msgstr "" -#: whatsnew/3.12.rst:2164 +#: whatsnew/3.12.rst:2178 msgid "" ":c:var:`Py_LegacyWindowsFSEncodingFlag`: use :c:member:`PyPreConfig." "legacy_windows_fs_encoding`" msgstr "" -#: whatsnew/3.12.rst:2165 +#: whatsnew/3.12.rst:2179 msgid "" ":c:var:`Py_LegacyWindowsStdioFlag`: use :c:member:`PyConfig." "legacy_windows_stdio`" msgstr "" -#: whatsnew/3.12.rst:2166 +#: whatsnew/3.12.rst:2180 msgid "" ":c:var:`!Py_FileSystemDefaultEncoding`: use :c:member:`PyConfig." "filesystem_encoding`" msgstr "" -#: whatsnew/3.12.rst:2167 +#: whatsnew/3.12.rst:2181 msgid "" ":c:var:`!Py_HasFileSystemDefaultEncoding`: use :c:member:`PyConfig." "filesystem_encoding`" msgstr "" -#: whatsnew/3.12.rst:2168 +#: whatsnew/3.12.rst:2182 msgid "" ":c:var:`!Py_FileSystemDefaultEncodeErrors`: use :c:member:`PyConfig." "filesystem_errors`" msgstr "" -#: whatsnew/3.12.rst:2169 +#: whatsnew/3.12.rst:2183 msgid "" ":c:var:`!Py_UTF8Mode`: use :c:member:`PyPreConfig.utf8_mode` (see :c:func:" "`Py_PreInitialize`)" msgstr "" -#: whatsnew/3.12.rst:2171 +#: whatsnew/3.12.rst:2185 msgid "" "The :c:func:`Py_InitializeFromConfig` API should be used with :c:type:" "`PyConfig` instead. (Contributed by Victor Stinner in :gh:`77782`.)" msgstr "" -#: whatsnew/3.12.rst:2175 +#: whatsnew/3.12.rst:2189 msgid "" "Creating :c:data:`immutable types <Py_TPFLAGS_IMMUTABLETYPE>` with mutable " "bases is deprecated and will be disabled in Python 3.14. (:gh:`95388`)" msgstr "" -#: whatsnew/3.12.rst:2178 +#: whatsnew/3.12.rst:2192 msgid "" "The :file:`structmember.h` header is deprecated, though it continues to be " "available and there are no plans to remove it." msgstr "" -#: whatsnew/3.12.rst:2181 +#: whatsnew/3.12.rst:2195 msgid "" "Its contents are now available just by including :file:`Python.h`, with a " "``Py`` prefix added if it was missing:" msgstr "" -#: whatsnew/3.12.rst:2184 +#: whatsnew/3.12.rst:2198 msgid "" ":c:struct:`PyMemberDef`, :c:func:`PyMember_GetOne` and :c:func:" "`PyMember_SetOne`" msgstr "" -#: whatsnew/3.12.rst:2186 +#: whatsnew/3.12.rst:2200 msgid "" "Type macros like :c:macro:`Py_T_INT`, :c:macro:`Py_T_DOUBLE`, etc. " "(previously ``T_INT``, ``T_DOUBLE``, etc.)" msgstr "" -#: whatsnew/3.12.rst:2188 +#: whatsnew/3.12.rst:2202 msgid "" "The flags :c:macro:`Py_READONLY` (previously ``READONLY``) and :c:macro:" "`Py_AUDIT_READ` (previously all uppercase)" msgstr "" -#: whatsnew/3.12.rst:2191 +#: whatsnew/3.12.rst:2205 msgid "Several items are not exposed from :file:`Python.h`:" msgstr "" -#: whatsnew/3.12.rst:2193 +#: whatsnew/3.12.rst:2207 msgid ":c:macro:`T_OBJECT` (use :c:macro:`Py_T_OBJECT_EX`)" msgstr "" -#: whatsnew/3.12.rst:2194 +#: whatsnew/3.12.rst:2208 msgid ":c:macro:`T_NONE` (previously undocumented, and pretty quirky)" msgstr "" -#: whatsnew/3.12.rst:2195 +#: whatsnew/3.12.rst:2209 msgid "The macro ``WRITE_RESTRICTED`` which does nothing." msgstr "" -#: whatsnew/3.12.rst:2196 +#: whatsnew/3.12.rst:2210 msgid "" "The macros ``RESTRICTED`` and ``READ_RESTRICTED``, equivalents of :c:macro:" "`Py_AUDIT_READ`." msgstr "" -#: whatsnew/3.12.rst:2198 +#: whatsnew/3.12.rst:2212 msgid "" "In some configurations, ``<stddef.h>`` is not included from :file:`Python." "h`. It should be included manually when using ``offsetof()``." msgstr "" -#: whatsnew/3.12.rst:2201 +#: whatsnew/3.12.rst:2215 msgid "" "The deprecated header continues to provide its original contents under the " "original names. Your old code can stay unchanged, unless the extra include " "and non-namespaced macros bother you greatly." msgstr "" -#: whatsnew/3.12.rst:2206 +#: whatsnew/3.12.rst:2220 msgid "" "(Contributed in :gh:`47146` by Petr Viktorin, based on earlier work by " "Alexander Belopolsky and Matthias Braun.)" msgstr "" -#: whatsnew/3.12.rst:2209 +#: whatsnew/3.12.rst:2223 msgid "" ":c:func:`PyErr_Fetch` and :c:func:`PyErr_Restore` are deprecated. Use :c:" "func:`PyErr_GetRaisedException` and :c:func:`PyErr_SetRaisedException` " "instead. (Contributed by Mark Shannon in :gh:`101578`.)" msgstr "" -#: whatsnew/3.12.rst:2214 +#: whatsnew/3.12.rst:2228 msgid "" ":c:func:`!PyErr_Display` is deprecated. Use :c:func:`PyErr_DisplayException` " "instead. (Contributed by Irit Katriel in :gh:`102755`)." msgstr "" -#: whatsnew/3.12.rst:2217 +#: whatsnew/3.12.rst:2231 msgid "" "``_PyErr_ChainExceptions`` is deprecated. Use ``_PyErr_ChainExceptions1`` " "instead. (Contributed by Irit Katriel in :gh:`102192`.)" msgstr "" -#: whatsnew/3.12.rst:2220 +#: whatsnew/3.12.rst:2234 msgid "" "Using :c:func:`PyType_FromSpec`, :c:func:`PyType_FromSpecWithBases` or :c:" "func:`PyType_FromModuleAndSpec` to create a class whose metaclass overrides :" @@ -4739,86 +4754,86 @@ msgstr "" msgid ":c:func:`PyThread_ReInitTLS`: Unneeded since Python 3.7." msgstr "" -#: whatsnew/3.12.rst:2236 +#: whatsnew/3.12.rst:2250 msgid "" "Remove the :file:`token.h` header file. There was never any public tokenizer " "C API. The :file:`token.h` header file was only designed to be used by " "Python internals. (Contributed by Victor Stinner in :gh:`92651`.)" msgstr "" -#: whatsnew/3.12.rst:2241 +#: whatsnew/3.12.rst:2255 msgid "Legacy Unicode APIs have been removed. See :pep:`623` for detail." msgstr "" -#: whatsnew/3.12.rst:2243 +#: whatsnew/3.12.rst:2257 msgid ":c:macro:`!PyUnicode_WCHAR_KIND`" msgstr "" -#: whatsnew/3.12.rst:2244 +#: whatsnew/3.12.rst:2258 msgid ":c:func:`!PyUnicode_AS_UNICODE`" msgstr "" -#: whatsnew/3.12.rst:2245 +#: whatsnew/3.12.rst:2259 msgid ":c:func:`!PyUnicode_AsUnicode`" msgstr "" -#: whatsnew/3.12.rst:2246 +#: whatsnew/3.12.rst:2260 msgid ":c:func:`!PyUnicode_AsUnicodeAndSize`" msgstr "" -#: whatsnew/3.12.rst:2247 +#: whatsnew/3.12.rst:2261 msgid ":c:func:`!PyUnicode_AS_DATA`" msgstr "" -#: whatsnew/3.12.rst:2248 +#: whatsnew/3.12.rst:2262 msgid ":c:func:`!PyUnicode_FromUnicode`" msgstr "" -#: whatsnew/3.12.rst:2249 +#: whatsnew/3.12.rst:2263 msgid ":c:func:`!PyUnicode_GET_SIZE`" msgstr "" -#: whatsnew/3.12.rst:2250 +#: whatsnew/3.12.rst:2264 msgid ":c:func:`!PyUnicode_GetSize`" msgstr "" -#: whatsnew/3.12.rst:2251 +#: whatsnew/3.12.rst:2265 msgid ":c:func:`!PyUnicode_GET_DATA_SIZE`" msgstr "" -#: whatsnew/3.12.rst:2253 +#: whatsnew/3.12.rst:2267 msgid "" "Remove the ``PyUnicode_InternImmortal()`` function macro. (Contributed by " "Victor Stinner in :gh:`85858`.)" msgstr "" -#: whatsnew/3.12.rst:2257 +#: whatsnew/3.12.rst:2271 msgid "Notable changes in 3.12.4" msgstr "" -#: whatsnew/3.12.rst:2260 +#: whatsnew/3.12.rst:2274 msgid "ipaddress" msgstr "" -#: whatsnew/3.12.rst:2262 +#: whatsnew/3.12.rst:2276 msgid "" "Fixed ``is_global`` and ``is_private`` behavior in ``IPv4Address``, " "``IPv6Address``, ``IPv4Network`` and ``IPv6Network``." msgstr "" -#: whatsnew/3.12.rst:2267 +#: whatsnew/3.12.rst:2281 msgid "Notable changes in 3.12.5" msgstr "" -#: whatsnew/3.12.rst:2287 +#: whatsnew/3.12.rst:2301 msgid "email" msgstr "" -#: whatsnew/3.12.rst:2273 +#: whatsnew/3.12.rst:2287 msgid "Headers with embedded newlines are now quoted on output." msgstr "" -#: whatsnew/3.12.rst:2275 +#: whatsnew/3.12.rst:2289 msgid "" "The :mod:`~email.generator` will now refuse to serialize (write) headers " "that are improperly folded or delimited, such that they would be parsed as " @@ -4828,11 +4843,11 @@ msgid "" "in :gh:`121650`.)" msgstr "" -#: whatsnew/3.12.rst:2284 +#: whatsnew/3.12.rst:2298 msgid "Notable changes in 3.12.6" msgstr "" -#: whatsnew/3.12.rst:2289 +#: whatsnew/3.12.rst:2303 msgid "" ":func:`email.utils.getaddresses` and :func:`email.utils.parseaddr` now " "return ``('', '')`` 2-tuples in more situations where invalid email " @@ -4843,3 +4858,14 @@ msgid "" "check if the *strict* paramater is available. (Contributed by Thomas Dwyer " "and Victor Stinner for :gh:`102988` to improve the CVE-2023-27043 fix.)" msgstr "" + +#: whatsnew/3.12.rst:2315 +msgid "Notable changes in 3.12.8" +msgstr "" + +#: whatsnew/3.12.rst:2320 +msgid "" +"The previously undocumented special function :func:`sys.getobjects`, which " +"only exists in specialized builds of Python, may now return objects from " +"other interpreters than the one it's called in." +msgstr "" diff --git a/whatsnew/3.3.po b/whatsnew/3.3.po index ec1f61c2c..dbc68dd91 100644 --- a/whatsnew/3.3.po +++ b/whatsnew/3.3.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -1831,8 +1831,8 @@ msgstr "" #: whatsnew/3.3.rst:1150 msgid "" -"In the context templates (:class:`~decimal.DefaultContext`, :class:`~decimal." -"BasicContext` and :class:`~decimal.ExtendedContext`) the magnitude of :attr:" +"In the context templates (:const:`~decimal.DefaultContext`, :const:`~decimal." +"BasicContext` and :const:`~decimal.ExtendedContext`) the magnitude of :attr:" "`~decimal.Context.Emax` and :attr:`~decimal.Context.Emin` has changed to " "``999999``." msgstr "" diff --git a/whatsnew/3.4.po b/whatsnew/3.4.po index 81dff322e..b65054d6c 100644 --- a/whatsnew/3.4.po +++ b/whatsnew/3.4.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -1087,7 +1087,7 @@ msgid "" "LOAD_CONST (100)\n" "BINARY_ADD (23)\n" "RETURN_VALUE (83)\n" -">>> bytecode.dis().splitlines() \n" +">>> bytecode.dis().splitlines()\n" "[' 1 0 LOAD_FAST 0 (x)',\n" " ' --> 3 LOAD_CONST 1 (1)',\n" " ' 6 BINARY_ADD',\n" @@ -1428,7 +1428,7 @@ msgstr "" #: whatsnew/3.4.rst:997 msgid "" -":mod:`importlib.util` now has a :data:`~importlib.util.MAGIC_NUMBER` " +":mod:`importlib.util` now has a :const:`~importlib.util.MAGIC_NUMBER` " "attribute providing access to the bytecode version number. This replaces " "the :func:`!get_magic` function in the deprecated :mod:`!imp` module. " "(Contributed by Brett Cannon in :issue:`18192`.)" @@ -2797,7 +2797,7 @@ msgstr "" #: whatsnew/3.4.rst:1982 msgid "" -"A new opcode, :opcode:`LOAD_CLASSDEREF`, has been added to fix a bug in the " +"A new opcode, :opcode:`!LOAD_CLASSDEREF`, has been added to fix a bug in the " "loading of free variables in class bodies that could be triggered by certain " "uses of :ref:`__prepare__ <prepare>`. (Contributed by Benjamin Peterson in :" "issue:`17853`.)" diff --git a/whatsnew/3.6.po b/whatsnew/3.6.po index 9306695d5..a49a8cfe3 100644 --- a/whatsnew/3.6.po +++ b/whatsnew/3.6.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -3360,10 +3360,10 @@ msgstr "" #: whatsnew/3.6.rst:2378 msgid "" "The function call opcodes have been heavily reworked for better performance " -"and simpler implementation. The :opcode:`MAKE_FUNCTION`, :opcode:" -"`CALL_FUNCTION`, :opcode:`CALL_FUNCTION_KW` and :opcode:" -"`BUILD_MAP_UNPACK_WITH_CALL` opcodes have been modified, the new :opcode:" -"`CALL_FUNCTION_EX` and :opcode:`BUILD_TUPLE_UNPACK_WITH_CALL` have been " +"and simpler implementation. The :opcode:`MAKE_FUNCTION`, :opcode:`!" +"CALL_FUNCTION`, :opcode:`!CALL_FUNCTION_KW` and :opcode:`!" +"BUILD_MAP_UNPACK_WITH_CALL` opcodes have been modified, the new :opcode:" +"`CALL_FUNCTION_EX` and :opcode:`!BUILD_TUPLE_UNPACK_WITH_CALL` have been " "added, and ``CALL_FUNCTION_VAR``, ``CALL_FUNCTION_VAR_KW`` and " "``MAKE_CLOSURE`` opcodes have been removed. (Contributed by Demur Rumed in :" "issue:`27095`, and Serhiy Storchaka in :issue:`27213`, :issue:`28257`.)" @@ -3371,7 +3371,7 @@ msgstr "" #: whatsnew/3.6.rst:2389 msgid "" -"The new :opcode:`SETUP_ANNOTATIONS` and :opcode:`STORE_ANNOTATION` opcodes " +"The new :opcode:`SETUP_ANNOTATIONS` and :opcode:`!STORE_ANNOTATION` opcodes " "have been added to support the new :term:`variable annotation` syntax. " "(Contributed by Ivan Levkivskyi in :issue:`27985`.)" msgstr "" diff --git a/whatsnew/3.7.po b/whatsnew/3.7.po index 9e25487ba..3cba8b1fb 100644 --- a/whatsnew/3.7.po +++ b/whatsnew/3.7.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -3531,14 +3531,14 @@ msgstr "" #: whatsnew/3.7.rst:2479 msgid "" -"There are two new opcodes: :opcode:`LOAD_METHOD` and :opcode:`CALL_METHOD`. " +"There are two new opcodes: :opcode:`LOAD_METHOD` and :opcode:`!CALL_METHOD`. " "(Contributed by Yury Selivanov and INADA Naoki in :issue:`26110`.)" msgstr "" #: whatsnew/3.7.rst:2482 msgid "" -"The :opcode:`STORE_ANNOTATION` opcode has been removed. (Contributed by Mark " -"Shannon in :issue:`32550`.)" +"The :opcode:`!STORE_ANNOTATION` opcode has been removed. (Contributed by " +"Mark Shannon in :issue:`32550`.)" msgstr "" #: whatsnew/3.7.rst:2489 diff --git a/whatsnew/3.8.po b/whatsnew/3.8.po index c22cb12ce..3eff7c27b 100644 --- a/whatsnew/3.8.po +++ b/whatsnew/3.8.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-01 00:21+0000\n" +"POT-Creation-Date: 2025-04-01 00:25+0000\n" "PO-Revision-Date: 2023-02-03 17:30+0300\n" "Last-Translator: \n" "Language-Team: TURKISH <python.docs.tr@gmail.com>\n" @@ -1774,7 +1774,7 @@ msgstr "kayıt tutma" #: whatsnew/3.8.rst:939 #, fuzzy msgid "" -"Added a *force* keyword argument to :func:`logging.basicConfig` When set to " +"Added a *force* keyword argument to :func:`logging.basicConfig`. When set to " "true, any existing handlers attached to the root logger are removed and " "closed before carrying out the configuration specified by the other " "arguments." @@ -4284,12 +4284,13 @@ msgstr "" "çağırmak için açık talimatlar yayınlar." #: whatsnew/3.8.rst:2155 +#, fuzzy msgid "" -"Removed opcodes :opcode:`BREAK_LOOP`, :opcode:`CONTINUE_LOOP`, :opcode:" -"`SETUP_LOOP` and :opcode:`SETUP_EXCEPT`. Added new opcodes :opcode:" -"`ROT_FOUR`, :opcode:`BEGIN_FINALLY`, :opcode:`CALL_FINALLY` and :opcode:" -"`POP_FINALLY`. Changed the behavior of :opcode:`END_FINALLY` and :opcode:" -"`WITH_CLEANUP_START`." +"Removed opcodes :opcode:`!BREAK_LOOP`, :opcode:`!CONTINUE_LOOP`, :opcode:`!" +"SETUP_LOOP` and :opcode:`!SETUP_EXCEPT`. Added new opcodes :opcode:`!" +"ROT_FOUR`, :opcode:`!BEGIN_FINALLY`, :opcode:`!CALL_FINALLY` and :opcode:`!" +"POP_FINALLY`. Changed the behavior of :opcode:`!END_FINALLY` and :opcode:`!" +"WITH_CLEANUP_START`." msgstr "" ":opcode:`BREAK_LOOP`, :opcode:`CONTINUE_LOOP`, :opcode:`SETUP_LOOP` ve :" "opcode:`SETUP_EXCEPT` kodları kaldırıldı. Yeni :opcode:`ROT_FOUR`, :opcode:"