# SOME DESCRIPTIVE TITLE. # Copyright (C) 2001 Python Software Foundation # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # # Translators: # python-doc bot, 2025 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.14\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2026-10-19 03:08+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: python-doc bot, 2025\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" "Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../c-api/unicode.rst:6 msgid "Unicode Objects and Codecs" msgstr "Unicode Objekte und Codecs" #: ../../c-api/unicode.rst:12 msgid "Unicode Objects" msgstr "Unicode Objekte" #: ../../c-api/unicode.rst:14 msgid "" "Since the implementation of :pep:`393` in Python 3.3, Unicode objects " "internally use a variety of representations, in order to allow handling the " "complete range of Unicode characters while staying memory efficient. There " "are special cases for strings where all code points are below 128, 256, or " "65536; otherwise, code points must be below 1114112 (which is the full " "Unicode range)." msgstr "" "Seit der Umsetzung von :pep:`393` in Python 3.3 verwenden Unicode Objekte " "intern eine Vielzahl von Repräsentationen, um die gesamte Bandbreite der " "Unicode Zeichen verarbeiten zu können und dabei speichereffizient zu " "bleiben. Es gibt Spezialfälle für Zeichenketten, deren Codepunkte alle unter " "128, 256 oder 65536 liegen; andernfalls müssen Codepunkte unterhalb von " "1114112 sein (gesamter Unicode Bereich)." #: ../../c-api/unicode.rst:20 msgid "" "UTF-8 representation is created on demand and cached in the Unicode object." msgstr "" #: ../../c-api/unicode.rst:24 msgid "" "The internal buffer always includes an extra trailing null character for " "compatibility with null terminated C strings. This extra character is not " "counted in :c:func:`PyUnicode_GetLength` nor in the various *size* arguments " "of the functions below." msgstr "" #: ../../c-api/unicode.rst:30 msgid "" "The :c:type:`Py_UNICODE` representation has been removed since Python 3.12 " "with deprecated APIs. See :pep:`623` for more information." msgstr "" #: ../../c-api/unicode.rst:36 msgid "Unicode Type" msgstr "" #: ../../c-api/unicode.rst:38 msgid "" "These are the basic Unicode object types used for the Unicode implementation " "in Python:" msgstr "" #: ../../c-api/unicode.rst:43 msgid "" "This instance of :c:type:`PyTypeObject` represents the Python Unicode type. " "It is exposed to Python code as :py:class:`str`." msgstr "" #: ../../c-api/unicode.rst:49 msgid "" "This instance of :c:type:`PyTypeObject` represents the Python Unicode " "iterator type. It is used to iterate over Unicode string objects." msgstr "" #: ../../c-api/unicode.rst:57 msgid "" "These types are typedefs for unsigned integer types wide enough to contain " "characters of 32 bits, 16 bits and 8 bits, respectively. When dealing with " "single Unicode characters, use :c:type:`Py_UCS4`." msgstr "" #: ../../c-api/unicode.rst:68 msgid "" "These subtypes of :c:type:`PyObject` represent a Python Unicode object. In " "almost all cases, they shouldn't be used directly, since all API functions " "that deal with Unicode objects take and return :c:type:`PyObject` pointers." msgstr "" #: ../../c-api/unicode.rst:75 msgid "" "The structure of a particular object can be determined using the following " "macros. The macros cannot fail; their behavior is undefined if their " "argument is not a Python Unicode object." msgstr "" #: ../../c-api/unicode.rst:84 msgid "True if *o* uses the :c:struct:`PyCompactUnicodeObject` structure." msgstr "" #: ../../c-api/unicode.rst:91 msgid "True if *o* uses the :c:struct:`PyASCIIObject` structure." msgstr "" #: ../../c-api/unicode.rst:96 msgid "" "The following APIs are C macros and static inlined functions for fast checks " "and access to internal read-only data of Unicode objects:" msgstr "" #: ../../c-api/unicode.rst:101 msgid "" "Return true if the object *obj* is a Unicode object or an instance of a " "Unicode subtype. This function always succeeds." msgstr "" #: ../../c-api/unicode.rst:107 msgid "" "Return true if the object *obj* is a Unicode object, but not an instance of " "a subtype. This function always succeeds." msgstr "" #: ../../c-api/unicode.rst:113 msgid "" "Return the length of the Unicode string, in code points. *unicode* has to " "be a Unicode object in the \"canonical\" representation (not checked)." msgstr "" #: ../../c-api/unicode.rst:123 msgid "" "Return a pointer to the canonical representation cast to UCS1, UCS2 or UCS4 " "integer types for direct character access. No checks are performed if the " "canonical representation has the correct character size; use :c:func:" "`PyUnicode_KIND` to select the right function." msgstr "" #: ../../c-api/unicode.rst:135 msgid "Return values of the :c:func:`PyUnicode_KIND` macro." msgstr "" #: ../../c-api/unicode.rst:139 msgid "``PyUnicode_WCHAR_KIND`` has been removed." msgstr "" #: ../../c-api/unicode.rst:145 msgid "" "Return one of the PyUnicode kind constants (see above) that indicate how " "many bytes per character this Unicode object uses to store its data. " "*unicode* has to be a Unicode object in the \"canonical\" representation " "(not checked)." msgstr "" #: ../../c-api/unicode.rst:154 msgid "" "Return a void pointer to the raw Unicode buffer. *unicode* has to be a " "Unicode object in the \"canonical\" representation (not checked)." msgstr "" #: ../../c-api/unicode.rst:163 msgid "" "Write the code point *value* to the given zero-based *index* in a string." msgstr "" #: ../../c-api/unicode.rst:165 msgid "" "The *kind* value and *data* pointer must have been obtained from a string " "using :c:func:`PyUnicode_KIND` and :c:func:`PyUnicode_DATA` respectively. " "You must hold a reference to that string while calling :c:func:`!" "PyUnicode_WRITE`. All requirements of :c:func:`PyUnicode_WriteChar` also " "apply." msgstr "" #: ../../c-api/unicode.rst:171 msgid "" "The function performs no checks for any of its requirements, and is intended " "for usage in loops." msgstr "" #: ../../c-api/unicode.rst:179 msgid "" "Read a code point from a canonical representation *data* (as obtained with :" "c:func:`PyUnicode_DATA`). No checks are performed." msgstr "" #: ../../c-api/unicode.rst:184 ../../c-api/unicode.rst:198 msgid "" "Accept reading the trailing null character at index :c:func:" "`PyUnicode_GetLength`." msgstr "" #: ../../c-api/unicode.rst:192 msgid "" "Read a character from a Unicode object *unicode*, which must be in the " "\"canonical\" representation. This is less efficient than :c:func:" "`PyUnicode_READ` if you do multiple consecutive reads." msgstr "" #: ../../c-api/unicode.rst:206 msgid "" "Return the maximum code point that is suitable for creating another string " "based on *unicode*, which must be in the \"canonical\" representation. This " "is always an approximation but more efficient than iterating over the string." msgstr "" #: ../../c-api/unicode.rst:215 msgid "" "Return ``1`` if the string is a valid identifier according to the language " "definition, section :ref:`identifiers`. Return ``0`` otherwise." msgstr "" #: ../../c-api/unicode.rst:218 msgid "" "The function does not call :c:func:`Py_FatalError` anymore if the string is " "not ready." msgstr "" #: ../../c-api/unicode.rst:225 msgid "" "Return true if the string only contains ASCII characters. Equivalent to :py:" "meth:`str.isascii`." msgstr "" #: ../../c-api/unicode.rst:232 msgid "Unicode Character Properties" msgstr "" #: ../../c-api/unicode.rst:234 msgid "" "Unicode provides many different character properties. The most often needed " "ones are available through these macros which are mapped to C functions " "depending on the Python configuration." msgstr "" #: ../../c-api/unicode.rst:241 msgid "" "Return ``1`` or ``0`` depending on whether *ch* is a whitespace character." msgstr "" #: ../../c-api/unicode.rst:246 msgid "" "Return ``1`` or ``0`` depending on whether *ch* is a lowercase character." msgstr "" #: ../../c-api/unicode.rst:251 msgid "" "Return ``1`` or ``0`` depending on whether *ch* is an uppercase character." msgstr "" #: ../../c-api/unicode.rst:256 msgid "" "Return ``1`` or ``0`` depending on whether *ch* is a titlecase character." msgstr "" #: ../../c-api/unicode.rst:261 msgid "" "Return ``1`` or ``0`` depending on whether *ch* is a linebreak character." msgstr "" #: ../../c-api/unicode.rst:266 msgid "Return ``1`` or ``0`` depending on whether *ch* is a decimal character." msgstr "" #: ../../c-api/unicode.rst:271 msgid "Return ``1`` or ``0`` depending on whether *ch* is a digit character." msgstr "" #: ../../c-api/unicode.rst:276 msgid "Return ``1`` or ``0`` depending on whether *ch* is a numeric character." msgstr "" #: ../../c-api/unicode.rst:281 msgid "" "Return ``1`` or ``0`` depending on whether *ch* is an alphabetic character." msgstr "" #: ../../c-api/unicode.rst:286 msgid "" "Return ``1`` or ``0`` depending on whether *ch* is an alphanumeric character." msgstr "" #: ../../c-api/unicode.rst:291 msgid "" "Return ``1`` or ``0`` depending on whether *ch* is a printable character, in " "the sense of :meth:`str.isprintable`." msgstr "" #: ../../c-api/unicode.rst:295 msgid "These APIs can be used for fast direct character conversions:" msgstr "" #: ../../c-api/unicode.rst:300 msgid "Return the character *ch* converted to lower case." msgstr "" #: ../../c-api/unicode.rst:305 msgid "Return the character *ch* converted to upper case." msgstr "" #: ../../c-api/unicode.rst:310 msgid "Return the character *ch* converted to title case." msgstr "" #: ../../c-api/unicode.rst:315 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:321 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:327 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:331 msgid "These APIs can be used to work with surrogates:" msgstr "" #: ../../c-api/unicode.rst:335 msgid "Check if *ch* is a surrogate (``0xD800 <= ch <= 0xDFFF``)." msgstr "" #: ../../c-api/unicode.rst:339 msgid "Check if *ch* is a high surrogate (``0xD800 <= ch <= 0xDBFF``)." msgstr "" #: ../../c-api/unicode.rst:343 msgid "Check if *ch* is a low surrogate (``0xDC00 <= ch <= 0xDFFF``)." msgstr "" #: ../../c-api/unicode.rst:347 msgid "" "Return the high UTF-16 surrogate (``0xD800`` to ``0xDBFF``) for a Unicode " "code point in the range ``[0x10000; 0x10FFFF]``." msgstr "" #: ../../c-api/unicode.rst:352 msgid "" "Return the low UTF-16 surrogate (``0xDC00`` to ``0xDFFF``) for a Unicode " "code point in the range ``[0x10000; 0x10FFFF]``." msgstr "" #: ../../c-api/unicode.rst:357 msgid "" "Join two surrogate code points and return a single :c:type:`Py_UCS4` value. " "*high* and *low* are respectively the leading and trailing surrogates in a " "surrogate pair. *high* must be in the range ``[0xD800; 0xDBFF]`` and *low* " "must be in the range ``[0xDC00; 0xDFFF]``." msgstr "" #: ../../c-api/unicode.rst:364 msgid "Creating and accessing Unicode strings" msgstr "" #: ../../c-api/unicode.rst:366 msgid "" "To create Unicode objects and access their basic sequence properties, use " "these APIs:" msgstr "" #: ../../c-api/unicode.rst:371 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:375 msgid "On error, set an exception and return ``NULL``." msgstr "" #: ../../c-api/unicode.rst:377 msgid "" "After creation, the string can be filled by :c:func:`PyUnicode_WriteChar`, :" "c:func:`PyUnicode_CopyCharacters`, :c:func:`PyUnicode_Fill`, :c:func:" "`PyUnicode_WRITE` or similar. Since strings are supposed to be immutable, " "take care to not “use” the result while it is being modified. In particular, " "before it's filled with its final contents, a string:" msgstr "" #: ../../c-api/unicode.rst:384 msgid "must not be hashed," msgstr "" #: ../../c-api/unicode.rst:385 msgid "" "must not be :c:func:`converted to UTF-8 `, or " "another non-\"canonical\" representation," msgstr "" #: ../../c-api/unicode.rst:387 msgid "must not have its reference count changed," msgstr "" #: ../../c-api/unicode.rst:388 msgid "must not be shared with code that might do one of the above." msgstr "" #: ../../c-api/unicode.rst:390 msgid "" "This list is not exhaustive. Avoiding these uses is your responsibility; " "Python does not always check these requirements." msgstr "" #: ../../c-api/unicode.rst:393 msgid "" "To avoid accidentally exposing a partially-written string object, prefer " "using the :c:type:`PyUnicodeWriter` API, or one of the ``PyUnicode_From*`` " "functions below." msgstr "" #: ../../c-api/unicode.rst:404 msgid "" "Create a new Unicode object with the given *kind* (possible values are :c:" "macro:`PyUnicode_1BYTE_KIND` etc., as returned by :c:func:" "`PyUnicode_KIND`). The *buffer* must point to an array of *size* units of " "1, 2 or 4 bytes per character, as given by the kind." msgstr "" #: ../../c-api/unicode.rst:409 msgid "" "If necessary, the input *buffer* is copied and transformed into the " "canonical representation. For example, if the *buffer* is a UCS4 string (:c:" "macro:`PyUnicode_4BYTE_KIND`) and it consists only of codepoints in the UCS1 " "range, it will be transformed into UCS1 (:c:macro:`PyUnicode_1BYTE_KIND`)." msgstr "" #: ../../c-api/unicode.rst:415 msgid "" "All characters must be in range [U+0000; U+10ffff]. If *kind* is :c:macro:" "`PyUnicode_4BYTE_KIND` and the string contains invalid characters, the " "behavior is undefined." msgstr "" #: ../../c-api/unicode.rst:424 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 " "object. The return value might be a shared object, i.e. modification of the " "data is not allowed." msgstr "" #: ../../c-api/unicode.rst:430 msgid "This function raises :exc:`SystemError` when:" msgstr "" #: ../../c-api/unicode.rst:432 msgid "*size* < 0," msgstr "" #: ../../c-api/unicode.rst:433 msgid "*str* is ``NULL`` and *size* > 0" msgstr "" #: ../../c-api/unicode.rst:435 msgid "*str* == ``NULL`` with *size* > 0 is not allowed anymore." msgstr "" #: ../../c-api/unicode.rst:441 msgid "" "Create a Unicode object from a UTF-8 encoded null-terminated char buffer " "*str*." msgstr "" #: ../../c-api/unicode.rst:447 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 " "return a string with the values formatted into it. The variable arguments " "must be C types and must correspond exactly to the format characters in the " "*format* ASCII-encoded string." msgstr "" #: ../../c-api/unicode.rst:453 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:456 msgid "The ``'%'`` character, which marks the start of the specifier." msgstr "" #: ../../c-api/unicode.rst:458 msgid "" "Conversion flags (optional), which affect the result of some conversion " "types." msgstr "" #: ../../c-api/unicode.rst:461 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:" "`int`, and the object to convert comes after the minimum field width and " "optional precision." msgstr "" #: ../../c-api/unicode.rst:466 msgid "" "Precision (optional), given as a ``'.'`` (dot) followed by the precision. If " "specified as ``'*'`` (an asterisk), the actual precision is given in the " "next argument, which must be of type :c:expr:`int`, and the value to convert " "comes after the precision." msgstr "" #: ../../c-api/unicode.rst:471 msgid "Length modifier (optional)." msgstr "" #: ../../c-api/unicode.rst:473 msgid "Conversion type." msgstr "" #: ../../c-api/unicode.rst:475 msgid "The conversion flag characters are:" msgstr "" #: ../../c-api/unicode.rst:480 msgid "Flag" msgstr "" #: ../../c-api/unicode.rst:480 msgid "Meaning" msgstr "" #: ../../c-api/unicode.rst:482 msgid "``0``" msgstr "" #: ../../c-api/unicode.rst:482 msgid "The conversion will be zero padded for numeric values." msgstr "" #: ../../c-api/unicode.rst:484 msgid "``-``" msgstr "" #: ../../c-api/unicode.rst:484 msgid "" "The converted value is left adjusted (overrides the ``0`` flag if both are " "given)." msgstr "" #: ../../c-api/unicode.rst:488 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:495 msgid "Modifier" msgstr "" #: ../../c-api/unicode.rst:495 msgid "Types" msgstr "" #: ../../c-api/unicode.rst:497 msgid "``l``" msgstr "" #: ../../c-api/unicode.rst:497 msgid ":c:expr:`long` or :c:expr:`unsigned long`" msgstr "" #: ../../c-api/unicode.rst:499 msgid "``ll``" msgstr "" #: ../../c-api/unicode.rst:499 msgid ":c:expr:`long long` or :c:expr:`unsigned long long`" msgstr "" #: ../../c-api/unicode.rst:501 msgid "``j``" msgstr "" #: ../../c-api/unicode.rst:501 msgid ":c:type:`intmax_t` or :c:type:`uintmax_t`" msgstr "" #: ../../c-api/unicode.rst:503 msgid "``z``" msgstr "" #: ../../c-api/unicode.rst:503 msgid ":c:type:`size_t` or :c:type:`ssize_t`" msgstr "" #: ../../c-api/unicode.rst:505 msgid "``t``" msgstr "" #: ../../c-api/unicode.rst:505 msgid ":c:type:`ptrdiff_t`" msgstr "" #: ../../c-api/unicode.rst:508 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:511 msgid "The conversion specifiers are:" msgstr "" #: ../../c-api/unicode.rst:517 msgid "Conversion Specifier" msgstr "" #: ../../c-api/unicode.rst:518 msgid "Type" msgstr "" #: ../../c-api/unicode.rst:519 msgid "Comment" msgstr "" #: ../../c-api/unicode.rst:521 msgid "``%``" msgstr "" #: ../../c-api/unicode.rst:522 msgid "*n/a*" msgstr "" #: ../../c-api/unicode.rst:523 msgid "The literal ``%`` character." msgstr "" #: ../../c-api/unicode.rst:525 msgid "``d``, ``i``" msgstr "" #: ../../c-api/unicode.rst:526 ../../c-api/unicode.rst:530 #: ../../c-api/unicode.rst:534 ../../c-api/unicode.rst:538 #: ../../c-api/unicode.rst:542 msgid "Specified by the length modifier" msgstr "" #: ../../c-api/unicode.rst:527 msgid "The decimal representation of a signed C integer." msgstr "" #: ../../c-api/unicode.rst:529 msgid "``u``" msgstr "" #: ../../c-api/unicode.rst:531 msgid "The decimal representation of an unsigned C integer." msgstr "" #: ../../c-api/unicode.rst:533 msgid "``o``" msgstr "" #: ../../c-api/unicode.rst:535 msgid "The octal representation of an unsigned C integer." msgstr "" #: ../../c-api/unicode.rst:537 msgid "``x``" msgstr "" #: ../../c-api/unicode.rst:539 msgid "The hexadecimal representation of an unsigned C integer (lowercase)." msgstr "" #: ../../c-api/unicode.rst:541 msgid "``X``" msgstr "" #: ../../c-api/unicode.rst:543 msgid "The hexadecimal representation of an unsigned C integer (uppercase)." msgstr "" #: ../../c-api/unicode.rst:545 msgid "``c``" msgstr "" #: ../../c-api/unicode.rst:546 msgid ":c:expr:`int`" msgstr "" #: ../../c-api/unicode.rst:547 msgid "A single character." msgstr "" #: ../../c-api/unicode.rst:549 msgid "``s``" msgstr "" #: ../../c-api/unicode.rst:550 msgid ":c:expr:`const char*` or :c:expr:`const wchar_t*`" msgstr "" #: ../../c-api/unicode.rst:551 msgid "A null-terminated C character array." msgstr "" #: ../../c-api/unicode.rst:553 msgid "``p``" msgstr "" #: ../../c-api/unicode.rst:554 msgid ":c:expr:`const void*`" msgstr "" #: ../../c-api/unicode.rst:555 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:560 msgid "``A``" msgstr "" #: ../../c-api/unicode.rst:561 ../../c-api/unicode.rst:565 #: ../../c-api/unicode.rst:575 ../../c-api/unicode.rst:579 #: ../../c-api/unicode.rst:583 ../../c-api/unicode.rst:588 msgid ":c:expr:`PyObject*`" msgstr "" #: ../../c-api/unicode.rst:562 msgid "The result of calling :func:`ascii`." msgstr "" #: ../../c-api/unicode.rst:564 msgid "``U``" msgstr "" #: ../../c-api/unicode.rst:566 msgid "A Unicode object." msgstr "" #: ../../c-api/unicode.rst:568 msgid "``V``" msgstr "" #: ../../c-api/unicode.rst:569 msgid ":c:expr:`PyObject*`, :c:expr:`const char*` or :c:expr:`const wchar_t*`" msgstr "" #: ../../c-api/unicode.rst:570 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:574 msgid "``S``" msgstr "" #: ../../c-api/unicode.rst:576 msgid "The result of calling :c:func:`PyObject_Str`." msgstr "" #: ../../c-api/unicode.rst:578 msgid "``R``" msgstr "" #: ../../c-api/unicode.rst:580 msgid "The result of calling :c:func:`PyObject_Repr`." msgstr "" #: ../../c-api/unicode.rst:582 msgid "``T``" msgstr "" #: ../../c-api/unicode.rst:584 msgid "" "Get the fully qualified name of an object type; call :c:func:" "`PyType_GetFullyQualifiedName`." msgstr "" #: ../../c-api/unicode.rst:587 msgid "``#T``" msgstr "" #: ../../c-api/unicode.rst:589 msgid "" "Similar to ``T`` format, but use a colon (``:``) as separator between the " "module name and the qualified name." msgstr "" #: ../../c-api/unicode.rst:592 msgid "``N``" msgstr "" #: ../../c-api/unicode.rst:593 ../../c-api/unicode.rst:598 msgid ":c:expr:`PyTypeObject*`" msgstr "" #: ../../c-api/unicode.rst:594 msgid "" "Get the fully qualified name of a type; call :c:func:" "`PyType_GetFullyQualifiedName`." msgstr "" #: ../../c-api/unicode.rst:597 msgid "``#N``" msgstr "" #: ../../c-api/unicode.rst:599 msgid "" "Similar to ``N`` format, but use a colon (``:``) as separator between the " "module name and the qualified name." msgstr "" #: ../../c-api/unicode.rst:603 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 " "the length modifier ``l`` is used) for ``\"%s\"`` and ``\"%V\"`` (if the " "``PyObject*`` argument is ``NULL``), and a number of characters for " "``\"%A\"``, ``\"%U\"``, ``\"%S\"``, ``\"%R\"`` and ``\"%V\"`` (if the " "``PyObject*`` argument is not ``NULL``)." msgstr "" #: ../../c-api/unicode.rst:611 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:615 msgid "Support for ``\"%lld\"`` and ``\"%llu\"`` added." msgstr "" #: ../../c-api/unicode.rst:618 msgid "Support for ``\"%li\"``, ``\"%lli\"`` and ``\"%zi\"`` added." msgstr "" #: ../../c-api/unicode.rst:621 msgid "" "Support width and precision formatter for ``\"%s\"``, ``\"%A\"``, " "``\"%U\"``, ``\"%V\"``, ``\"%S\"``, ``\"%R\"`` added." msgstr "" #: ../../c-api/unicode.rst:625 msgid "" "Support for conversion specifiers ``o`` and ``X``. Support for length " "modifiers ``j`` and ``t``. Length modifiers are now applied to all integer " "conversions. Length modifier ``l`` is now applied to conversion specifiers " "``s`` and ``V``. Support for variable width and precision ``*``. Support for " "flag ``-``." msgstr "" #: ../../c-api/unicode.rst:633 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:637 msgid "Support for ``%T``, ``%#T``, ``%N`` and ``%#N`` formats added." msgstr "" #: ../../c-api/unicode.rst:643 msgid "" "Identical to :c:func:`PyUnicode_FromFormat` except that it takes exactly two " "arguments." msgstr "" #: ../../c-api/unicode.rst:649 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:653 msgid "" "Objects other than Unicode or its subtypes will cause a :exc:`TypeError`." msgstr "" #: ../../c-api/unicode.rst:658 msgid "Create a Unicode Object from the given Unicode code point *ordinal*." msgstr "" #: ../../c-api/unicode.rst:660 msgid "" "The ordinal must be in ``range(0x110000)``. A :exc:`ValueError` is raised in " "the case it is not." msgstr "" #: ../../c-api/unicode.rst:667 msgid "Decode an encoded object *obj* to a Unicode object." msgstr "" #: ../../c-api/unicode.rst:669 msgid "" ":class:`bytes`, :class:`bytearray` and other :term:`bytes-like objects " "` are decoded according to the given *encoding* and using " "the error handling defined by *errors*. Both can be ``NULL`` to have the " "interface use the default values (see :ref:`builtincodecs` for details)." msgstr "" #: ../../c-api/unicode.rst:675 msgid "" "All other objects, including Unicode objects, cause a :exc:`TypeError` to be " "set." msgstr "" #: ../../c-api/unicode.rst:678 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:684 msgid "" "Append the string *right* to the end of *p_left*. *p_left* must point to a :" "term:`strong reference` to a Unicode object; :c:func:`!PyUnicode_Append` " "releases (\":term:`steals `\") this reference." msgstr "" #: ../../c-api/unicode.rst:689 msgid "On error, set *\\*p_left* to ``NULL`` and set an exception." msgstr "" #: ../../c-api/unicode.rst:691 msgid "On success, set *\\*p_left* to a new strong reference to the result." msgstr "" #: ../../c-api/unicode.rst:696 msgid "" "The function is similar to :c:func:`PyUnicode_Append`, with the only " "difference being that it decrements the reference count of *right* by one." msgstr "" #: ../../c-api/unicode.rst:702 msgid "" "Return a mapping suitable for decoding a custom single-byte encoding. Given " "a Unicode string *string* of up to 256 characters representing an encoding " "table, returns either a compact internal mapping object or a dictionary " "mapping character ordinals to byte values. Raises a :exc:`TypeError` and " "return ``NULL`` on invalid input." msgstr "" #: ../../c-api/unicode.rst:713 msgid "" "Return the name of the default string encoding, ``\"utf-8\"``. See :func:" "`sys.getdefaultencoding`." msgstr "" #: ../../c-api/unicode.rst:716 msgid "" "The returned string does not need to be freed, and is valid until " "interpreter shutdown." msgstr "" #: ../../c-api/unicode.rst:722 msgid "Return the length of the Unicode object, in code points." msgstr "" #: ../../c-api/unicode.rst:724 msgid "On error, set an exception and return ``-1``." msgstr "" #: ../../c-api/unicode.rst:728 msgid "The length does not count the trailing null character." msgstr "" #: ../../c-api/unicode.rst:739 msgid "" "Copy characters from one Unicode object into another. This function " "performs character conversion when necessary and falls back to :c:func:`!" "memcpy` if possible. Returns ``-1`` and sets an exception on error, " "otherwise returns the number of copied characters." msgstr "" #: ../../c-api/unicode.rst:744 ../../c-api/unicode.rst:774 #: ../../c-api/unicode.rst:794 msgid "" "The string must not have been “used” yet. See :c:func:`PyUnicode_New` for " "details." msgstr "" #: ../../c-api/unicode.rst:752 msgid "" "Resize a Unicode object *\\*unicode* to the new *length* in code points." msgstr "" #: ../../c-api/unicode.rst:754 msgid "" "Try to resize the string in place (which is usually faster than allocating a " "new string and copying characters), or create a new string." msgstr "" #: ../../c-api/unicode.rst:757 msgid "" "*\\*unicode* is modified to point to the new (resized) object and ``0`` is " "returned on success. Otherwise, ``-1`` is returned and an exception is set, " "and *\\*unicode* is left untouched." msgstr "" #: ../../c-api/unicode.rst:761 msgid "" "The function doesn't check string content, the result may not be a string in " "canonical representation." msgstr "" #: ../../c-api/unicode.rst:768 msgid "" "Fill a string with a character: write *fill_char* into ``unicode[start:" "start+length]``." msgstr "" #: ../../c-api/unicode.rst:771 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:777 msgid "" "Return the number of written characters, or return ``-1`` and raise an " "exception on error." msgstr "" #: ../../c-api/unicode.rst:786 msgid "" "Write a *character* to the string *unicode* at the zero-based *index*. " "Return ``0`` on success, ``-1`` on error with an exception set." msgstr "" #: ../../c-api/unicode.rst:789 msgid "" "This function checks that *unicode* is a Unicode object, that the index is " "not out of bounds, and that the object's reference count is one. See :c:func:" "`PyUnicode_WRITE` for a version that skips these checks, making them your " "responsibility." msgstr "" #: ../../c-api/unicode.rst:802 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:806 msgid "Return character on success, ``-1`` on error with an exception set." msgstr "" #: ../../c-api/unicode.rst:810 msgid "" "Do not accept reading the trailing null character at index :c:func:" "`PyUnicode_GetLength`." msgstr "" #: ../../c-api/unicode.rst:819 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:829 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 " "particular, a :exc:`SystemError` if *buflen* is smaller than the length of " "*unicode*). *buffer* is returned on success." msgstr "" #: ../../c-api/unicode.rst:839 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:" "`MemoryError` set. The returned buffer always has an extra null code point " "appended." msgstr "" #: ../../c-api/unicode.rst:848 msgid "Locale Encoding" msgstr "" #: ../../c-api/unicode.rst:850 msgid "" "The current locale encoding can be used to decode text from the operating " "system." msgstr "" #: ../../c-api/unicode.rst:857 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 " "``\"strict\"`` and ``\"surrogateescape\"`` (:pep:`383`). The decoder uses " "``\"strict\"`` error handler if *errors* is ``NULL``. *str* must end with a " "null character but cannot contain embedded null characters." msgstr "" #: ../../c-api/unicode.rst:864 msgid "" "Use :c:func:`PyUnicode_DecodeFSDefaultAndSize` to decode a string from the :" "term:`filesystem encoding and error handler`." msgstr "" #: ../../c-api/unicode.rst:867 ../../c-api/unicode.rst:902 msgid "This function ignores the :ref:`Python UTF-8 Mode `." msgstr "" #: ../../c-api/unicode.rst:871 ../../c-api/unicode.rst:987 msgid "The :c:func:`Py_DecodeLocale` function." msgstr "" #: ../../c-api/unicode.rst:875 msgid "" "The function now also uses the current locale encoding for the " "``surrogateescape`` error handler, except on Android. Previously, :c:func:" "`Py_DecodeLocale` was used for the ``surrogateescape``, and the current " "locale encoding was used for ``strict``." msgstr "" #: ../../c-api/unicode.rst:884 msgid "" "Similar to :c:func:`PyUnicode_DecodeLocaleAndSize`, but compute the string " "length using :c:func:`!strlen`." msgstr "" #: ../../c-api/unicode.rst:892 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 " "``\"strict\"`` and ``\"surrogateescape\"`` (:pep:`383`). The encoder uses " "``\"strict\"`` error handler if *errors* is ``NULL``. Return a :class:" "`bytes` object. *unicode* cannot contain embedded null characters." msgstr "" #: ../../c-api/unicode.rst:899 msgid "" "Use :c:func:`PyUnicode_EncodeFSDefault` to encode a string to the :term:" "`filesystem encoding and error handler`." msgstr "" #: ../../c-api/unicode.rst:906 ../../c-api/unicode.rst:1018 msgid "The :c:func:`Py_EncodeLocale` function." msgstr "" #: ../../c-api/unicode.rst:910 msgid "" "The function now also uses the current locale encoding for the " "``surrogateescape`` error handler, except on Android. Previously, :c:func:" "`Py_EncodeLocale` was used for the ``surrogateescape``, and the current " "locale encoding was used for ``strict``." msgstr "" #: ../../c-api/unicode.rst:919 msgid "File System Encoding" msgstr "" #: ../../c-api/unicode.rst:921 msgid "" "Functions encoding to and decoding from the :term:`filesystem encoding and " "error handler` (:pep:`383` and :pep:`529`)." msgstr "" #: ../../c-api/unicode.rst:924 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:" msgstr "" #: ../../c-api/unicode.rst:930 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:942 msgid "" "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:947 ../../c-api/unicode.rst:974 msgid "Accepts a :term:`path-like object`." msgstr "" #: ../../c-api/unicode.rst:950 msgid "" "To decode file names to :class:`str` during argument parsing, the ``\"O&\"`` " "converter should be used, passing :c:func:`!PyUnicode_FSDecoder` as the " "conversion function:" msgstr "" #: ../../c-api/unicode.rst:956 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:969 msgid "" "If *obj* is ``NULL``, release the strong reference to the object referred to " "by *result* and return ``1``." msgstr "" #: ../../c-api/unicode.rst:980 msgid "Decode a string from the :term:`filesystem encoding and error handler`." msgstr "" #: ../../c-api/unicode.rst:982 msgid "" "If you need to decode a string from the current locale encoding, use :c:func:" "`PyUnicode_DecodeLocaleAndSize`." msgstr "" #: ../../c-api/unicode.rst:989 ../../c-api/unicode.rst:1002 #: ../../c-api/unicode.rst:1022 msgid "" "The :term:`filesystem error handler ` " "is now used." msgstr "" #: ../../c-api/unicode.rst:996 msgid "" "Decode a null-terminated string from the :term:`filesystem encoding and " "error handler`." msgstr "" #: ../../c-api/unicode.rst:999 msgid "" "If the string length is known, use :c:func:" "`PyUnicode_DecodeFSDefaultAndSize`." msgstr "" #: ../../c-api/unicode.rst:1009 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:1013 msgid "" "If you need to encode a string to the current locale encoding, use :c:func:" "`PyUnicode_EncodeLocale`." msgstr "" #: ../../c-api/unicode.rst:1027 msgid "wchar_t Support" msgstr "" #: ../../c-api/unicode.rst:1029 msgid ":c:type:`wchar_t` support for platforms which support it:" msgstr "" #: ../../c-api/unicode.rst:1033 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 " "itself compute the length, using :c:func:`!wcslen`. Return ``NULL`` on " "failure." msgstr "" #: ../../c-api/unicode.rst:1041 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 " "trailing null termination character). Return the number of :c:type:" "`wchar_t` characters copied or ``-1`` in case of an error." msgstr "" #: ../../c-api/unicode.rst:1046 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:1049 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:" "expr:`wchar_t*` string is null-terminated in case this is required by the " "application. Also, note that the :c:expr:`wchar_t*` string might contain " "null characters, which would cause the string to be truncated when used with " "most C functions." msgstr "" #: ../../c-api/unicode.rst:1059 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 " "number of wide characters (excluding the trailing null termination " "character) into *\\*size*. Note that the resulting :c:type:`wchar_t` string " "might contain null characters, which would cause the string to be truncated " "when used with most C functions. If *size* is ``NULL`` and the :c:expr:" "`wchar_t*` string contains null characters a :exc:`ValueError` is raised." msgstr "" #: ../../c-api/unicode.rst:1067 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:1074 msgid "" "Raises a :exc:`ValueError` if *size* is ``NULL`` and the :c:expr:`wchar_t*` " "string contains null characters." msgstr "" #: ../../c-api/unicode.rst:1082 msgid "Built-in Codecs" msgstr "" #: ../../c-api/unicode.rst:1084 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:1087 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:1091 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 " "encoding file names. This uses the :term:`filesystem encoding and error " "handler` internally." msgstr "" #: ../../c-api/unicode.rst:1096 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:1100 msgid "" "The codecs all use a similar interface. Only deviations from the following " "generic ones are documented for simplicity." msgstr "" #: ../../c-api/unicode.rst:1105 msgid "Generic Codecs" msgstr "" #: ../../c-api/unicode.rst:1107 msgid "The following macro is provided:" msgstr "" #: ../../c-api/unicode.rst:1112 msgid "The Unicode code point ``U+FFFD`` (replacement character)." msgstr "" #: ../../c-api/unicode.rst:1114 msgid "" "This Unicode character is used as the replacement character during decoding " "if the *errors* argument is set to \"replace\"." msgstr "" #: ../../c-api/unicode.rst:1118 msgid "These are the generic codec APIs:" msgstr "" #: ../../c-api/unicode.rst:1124 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 " "the same name in the :func:`str` built-in function. The codec to be used is " "looked up using the Python codec registry. Return ``NULL`` if an exception " "was raised by the codec." msgstr "" #: ../../c-api/unicode.rst:1134 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 " "name in the Unicode :meth:`~str.encode` method. The codec to be used is " "looked up using the Python codec registry. Return ``NULL`` if an exception " "was raised by the codec." msgstr "" #: ../../c-api/unicode.rst:1142 msgid "UTF-8 Codecs" msgstr "" #: ../../c-api/unicode.rst:1144 msgid "These are the UTF-8 codec APIs:" msgstr "" #: ../../c-api/unicode.rst:1149 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:1156 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeUTF8`. If " "*consumed* is not ``NULL``, trailing incomplete UTF-8 byte sequences will " "not be treated as an error. Those bytes will not be decoded and the number " "of bytes that have been decoded will be stored in *consumed*." msgstr "" #: ../../c-api/unicode.rst:1164 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:1168 ../../c-api/unicode.rst:1183 msgid "" "The function fails if the string contains surrogate code points (``U+D800`` " "- ``U+DFFF``)." msgstr "" #: ../../c-api/unicode.rst:1174 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* " "argument can be ``NULL``; in this case no size will be stored. The returned " "buffer always has an extra null byte appended (not included in *size*), " "regardless of whether there are any other null code points." msgstr "" #: ../../c-api/unicode.rst:1180 msgid "" "On error, set an exception, set *size* to ``-1`` (if it's not NULL) and " "return ``NULL``." msgstr "" #: ../../c-api/unicode.rst:1186 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 " "is not responsible for deallocating the buffer. The buffer is deallocated " "and pointers to it become invalid when the Unicode object is garbage " "collected." msgstr "" #: ../../c-api/unicode.rst:1193 ../../c-api/unicode.rst:1215 msgid "The return type is now ``const char *`` rather than ``char *``." msgstr "" #: ../../c-api/unicode.rst:1196 msgid "This function is a part of the :ref:`limited API `." msgstr "" #: ../../c-api/unicode.rst:1202 msgid "As :c:func:`PyUnicode_AsUTF8AndSize`, but does not store the size." msgstr "" #: ../../c-api/unicode.rst:1206 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:1220 msgid "UTF-32 Codecs" msgstr "" #: ../../c-api/unicode.rst:1222 msgid "These are the UTF-32 codec APIs:" msgstr "" #: ../../c-api/unicode.rst:1228 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:1232 ../../c-api/unicode.rst:1282 msgid "" "If *byteorder* is non-``NULL``, the decoder starts decoding using the given " "byte order::" msgstr "" #: ../../c-api/unicode.rst:1235 ../../c-api/unicode.rst:1285 msgid "" "*byteorder == -1: little endian\n" "*byteorder == 0: native order\n" "*byteorder == 1: big endian" msgstr "" #: ../../c-api/unicode.rst:1239 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 " "is not copied into the resulting Unicode string. If ``*byteorder`` is " "``-1`` or ``1``, any byte order mark is copied to the output." msgstr "" #: ../../c-api/unicode.rst:1244 msgid "" "After completion, *\\*byteorder* is set to the current byte order at the end " "of input data." msgstr "" #: ../../c-api/unicode.rst:1247 ../../c-api/unicode.rst:1298 msgid "If *byteorder* is ``NULL``, the codec starts in native order mode." msgstr "" #: ../../c-api/unicode.rst:1249 ../../c-api/unicode.rst:1300 msgid "Return ``NULL`` if an exception was raised by the codec." msgstr "" #: ../../c-api/unicode.rst:1255 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeUTF32`. If " "*consumed* is not ``NULL``, :c:func:`PyUnicode_DecodeUTF32Stateful` will not " "treat trailing incomplete UTF-32 byte sequences (such as a number of bytes " "not divisible by four) as an error. Those bytes will not be decoded and the " "number of bytes that have been decoded will be stored in *consumed*." msgstr "" #: ../../c-api/unicode.rst:1264 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:1270 msgid "UTF-16 Codecs" msgstr "" #: ../../c-api/unicode.rst:1272 msgid "These are the UTF-16 codec APIs:" msgstr "" #: ../../c-api/unicode.rst:1278 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:1289 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 " "is not copied into the resulting Unicode string. If ``*byteorder`` is " "``-1`` or ``1``, any byte order mark is copied to the output (where it will " "result in either a ``\\ufeff`` or a ``\\ufffe`` character)." msgstr "" #: ../../c-api/unicode.rst:1295 msgid "" "After completion, ``*byteorder`` is set to the current byte order at the end " "of input data." msgstr "" #: ../../c-api/unicode.rst:1306 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeUTF16`. If " "*consumed* is not ``NULL``, :c:func:`PyUnicode_DecodeUTF16Stateful` will not " "treat trailing incomplete UTF-16 byte sequences (such as an odd number of " "bytes or a split surrogate pair) as an error. Those bytes will not be " "decoded and the number of bytes that have been decoded will be stored in " "*consumed*." msgstr "" #: ../../c-api/unicode.rst:1315 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:1321 msgid "UTF-7 Codecs" msgstr "" #: ../../c-api/unicode.rst:1323 msgid "These are the UTF-7 codec APIs:" msgstr "" #: ../../c-api/unicode.rst:1328 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:1335 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeUTF7`. If " "*consumed* is not ``NULL``, trailing incomplete UTF-7 base-64 sections will " "not be treated as an error. Those bytes will not be decoded and the number " "of bytes that have been decoded will be stored in *consumed*." msgstr "" #: ../../c-api/unicode.rst:1342 msgid "Unicode-Escape Codecs" msgstr "" #: ../../c-api/unicode.rst:1344 msgid "These are the \"Unicode Escape\" codec APIs:" msgstr "" #: ../../c-api/unicode.rst:1350 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:1356 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:1362 msgid "Raw-Unicode-Escape Codecs" msgstr "" #: ../../c-api/unicode.rst:1364 msgid "These are the \"Raw Unicode Escape\" codec APIs:" msgstr "" #: ../../c-api/unicode.rst:1370 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:1376 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:1382 msgid "Latin-1 Codecs" msgstr "" #: ../../c-api/unicode.rst:1384 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:1390 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:1396 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:1402 msgid "ASCII Codecs" msgstr "" #: ../../c-api/unicode.rst:1404 msgid "" "These are the ASCII codec APIs. Only 7-bit ASCII data is accepted. All " "other codes generate errors." msgstr "" #: ../../c-api/unicode.rst:1410 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:1416 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:1422 msgid "Character Map Codecs" msgstr "" #: ../../c-api/unicode.rst:1424 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 " "codecs included in the :mod:`!encodings` package). The codec uses mappings " "to encode and decode characters. The mapping objects provided must support " "the :meth:`~object.__getitem__` mapping interface; dictionaries and " "sequences work well." msgstr "" #: ../../c-api/unicode.rst:1430 msgid "These are the mapping codec APIs:" msgstr "" #: ../../c-api/unicode.rst:1435 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:1439 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 " "strings, integers (which are then interpreted as Unicode ordinals) or " "``None``. Unmapped data bytes -- ones which cause a :exc:`LookupError`, as " "well as ones which get mapped to ``None``, ``0xFFFE`` or ``'\\ufffe'``, are " "treated as undefined mappings and cause an error." msgstr "" #: ../../c-api/unicode.rst:1450 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:1454 msgid "" "The *mapping* object must map Unicode ordinal integers to bytes objects, " "integers in the range from 0 to 255 or ``None``. Unmapped character " "ordinals (ones which cause a :exc:`LookupError`) as well as mapped to " "``None`` are treated as \"undefined mapping\" and cause an error." msgstr "" #: ../../c-api/unicode.rst:1460 msgid "The following codec API is special in that maps Unicode to Unicode." msgstr "" #: ../../c-api/unicode.rst:1464 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:1468 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:1471 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:1475 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:1480 msgid "MBCS codecs for Windows" msgstr "" #: ../../c-api/unicode.rst:1482 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 " "MBCS (or DBCS) is a class of encodings, not just one. The target encoding " "is defined by the user settings on the machine running the codec." msgstr "" #: ../../c-api/unicode.rst:1489 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:1496 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeMBCS`. If " "*consumed* is not ``NULL``, :c:func:`PyUnicode_DecodeMBCSStateful` will not " "decode trailing lead byte and the number of bytes that have been decoded " "will be stored in *consumed*." msgstr "" #: ../../c-api/unicode.rst:1505 msgid "" "Similar to :c:func:`PyUnicode_DecodeMBCSStateful`, except uses the code page " "specified by *code_page*." msgstr "" #: ../../c-api/unicode.rst:1511 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:1518 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:1528 msgid "Methods and Slot Functions" msgstr "" #: ../../c-api/unicode.rst:1530 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:1534 msgid "They all return ``NULL`` or ``-1`` if an exception occurs." msgstr "" #: ../../c-api/unicode.rst:1539 msgid "Concat two strings giving a new Unicode string." msgstr "" #: ../../c-api/unicode.rst:1544 msgid "" "Split a string giving a list of Unicode strings. If *sep* is ``NULL``, " "splitting will be done at all whitespace substrings. Otherwise, splits " "occur at the given separator. At most *maxsplit* splits will be done. If " "negative, no limit is set. Separators are not included in the resulting " "list." msgstr "" #: ../../c-api/unicode.rst:1549 ../../c-api/unicode.rst:1559 #: ../../c-api/unicode.rst:1580 ../../c-api/unicode.rst:1593 msgid "On error, return ``NULL`` with an exception set." msgstr "" #: ../../c-api/unicode.rst:1551 msgid "Equivalent to :py:meth:`str.split`." msgstr "" #: ../../c-api/unicode.rst:1556 msgid "" "Similar to :c:func:`PyUnicode_Split`, but splitting will be done beginning " "at the end of the string." msgstr "" #: ../../c-api/unicode.rst:1561 msgid "Equivalent to :py:meth:`str.rsplit`." msgstr "" #: ../../c-api/unicode.rst:1566 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:1573 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:1578 ../../c-api/unicode.rst:1591 msgid "*sep* must not be empty." msgstr "" #: ../../c-api/unicode.rst:1582 msgid "Equivalent to :py:meth:`str.partition`." msgstr "" #: ../../c-api/unicode.rst:1587 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:1595 msgid "Equivalent to :py:meth:`str.rpartition`." msgstr "" #: ../../c-api/unicode.rst:1600 msgid "" "Join a sequence of strings using the given *separator* and return the " "resulting Unicode string." msgstr "" #: ../../c-api/unicode.rst:1607 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:1615 msgid "" "Return the first position of *substr* in ``unicode[start:end]`` using the " "given *direction* (*direction* == ``1`` means to do a forward search, " "*direction* == ``-1`` a backward search). The return value is the index of " "the first match; a value of ``-1`` indicates that no match was found, and " "``-2`` indicates that an error occurred and an exception has been set." msgstr "" #: ../../c-api/unicode.rst:1625 msgid "" "Return the first position of the character *ch* in ``unicode[start:end]`` " "using the given *direction* (*direction* == ``1`` means to do a forward " "search, *direction* == ``-1`` a backward search). The return value is the " "index of the first match; a value of ``-1`` indicates that no match was " "found, and ``-2`` indicates that an error occurred and an exception has been " "set." msgstr "" #: ../../c-api/unicode.rst:1633 msgid "" "*start* and *end* are now adjusted to behave like ``unicode[start:end]``." msgstr "" #: ../../c-api/unicode.rst:1640 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:1647 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:1654 msgid "" "Compare two strings and return ``-1``, ``0``, ``1`` for less than, equal, " "and greater than, respectively." msgstr "" #: ../../c-api/unicode.rst:1657 msgid "" "This function returns ``-1`` upon failure, so one should call :c:func:" "`PyErr_Occurred` to check for errors." msgstr "" #: ../../c-api/unicode.rst:1662 msgid "The :c:func:`PyUnicode_Equal` function." msgstr "" #: ../../c-api/unicode.rst:1667 msgid "Test if two strings are equal:" msgstr "" #: ../../c-api/unicode.rst:1669 msgid "Return ``1`` if *a* is equal to *b*." msgstr "" #: ../../c-api/unicode.rst:1670 msgid "Return ``0`` if *a* is not equal to *b*." msgstr "" #: ../../c-api/unicode.rst:1671 msgid "" "Set a :exc:`TypeError` exception and return ``-1`` if *a* or *b* is not a :" "class:`str` object." msgstr "" #: ../../c-api/unicode.rst:1674 msgid "The function always succeeds if *a* and *b* are :class:`str` objects." msgstr "" #: ../../c-api/unicode.rst:1676 msgid "" "The function works for :class:`str` subclasses, but does not honor custom " "``__eq__()`` method." msgstr "" #: ../../c-api/unicode.rst:1681 msgid "The :c:func:`PyUnicode_Compare` function." msgstr "" #: ../../c-api/unicode.rst:1688 msgid "" "Compare a Unicode object with a char buffer which is interpreted as being " "UTF-8 or ASCII encoded and return true (``1``) if they are equal, or false " "(``0``) otherwise. If the Unicode object contains surrogate code points " "(``U+D800`` - ``U+DFFF``) or the C string is not valid UTF-8, false (``0``) " "is returned." msgstr "" #: ../../c-api/unicode.rst:1695 ../../c-api/unicode.rst:1716 msgid "This function does not raise exceptions." msgstr "" #: ../../c-api/unicode.rst:1702 msgid "" "Similar to :c:func:`PyUnicode_EqualToUTF8AndSize`, but compute *string* " "length using :c:func:`!strlen`. If the Unicode object contains null " "characters, false (``0``) is returned." msgstr "" #: ../../c-api/unicode.rst:1711 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 " "pass only ASCII-encoded strings, but the function interprets the input " "string as ISO-8859-1 if it contains non-ASCII characters." msgstr "" #: ../../c-api/unicode.rst:1721 msgid "Rich compare two Unicode strings and return one of the following:" msgstr "" #: ../../c-api/unicode.rst:1723 msgid "``NULL`` in case an exception was raised" msgstr "" #: ../../c-api/unicode.rst:1724 msgid ":c:data:`Py_True` or :c:data:`Py_False` for successful comparisons" msgstr "" #: ../../c-api/unicode.rst:1725 msgid ":c:data:`Py_NotImplemented` in case the type combination is unknown" msgstr "" #: ../../c-api/unicode.rst:1727 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:1733 msgid "" "Return a new string object from *format* and *args*; this is analogous to " "``format % args``." msgstr "" #: ../../c-api/unicode.rst:1739 msgid "" "Check whether *substr* is contained in *unicode* and return true or false " "accordingly." msgstr "" #: ../../c-api/unicode.rst:1742 msgid "" "*substr* has to coerce to a one element Unicode string. ``-1`` is returned " "if there was an error." msgstr "" #: ../../c-api/unicode.rst:1748 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. " "If there is an existing interned string that is the same as :c:expr:" "`*p_unicode`, it sets :c:expr:`*p_unicode` to it (releasing the reference to " "the old string object and creating a new :term:`strong reference` to the " "interned string object), otherwise it leaves :c:expr:`*p_unicode` alone and " "interns it." msgstr "" #: ../../c-api/unicode.rst:1755 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; " "after the call you no longer own the passed-in reference, but you newly own " "the result.)" msgstr "" #: ../../c-api/unicode.rst:1760 msgid "" "This function never raises an exception. On error, it leaves its argument " "unchanged without interning it." msgstr "" #: ../../c-api/unicode.rst:1763 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:1767 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:1773 msgid "" "A combination of :c:func:`PyUnicode_FromString` and :c:func:" "`PyUnicode_InternInPlace`, meant for statically allocated strings." msgstr "" #: ../../c-api/unicode.rst:1776 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:1780 msgid "" "Python may keep a reference to the result, or make it :term:`immortal`, " "preventing it from being garbage-collected promptly. For interning an " "unbounded number of different strings, such as ones coming from user input, " "prefer calling :c:func:`PyUnicode_FromString` and :c:func:" "`PyUnicode_InternInPlace` directly." msgstr "" #: ../../c-api/unicode.rst:1789 msgid "" "Return a non-zero value if *str* is interned, zero if not. The *str* " "argument must be a string; this is not checked. This function always " "succeeds." msgstr "" #: ../../c-api/unicode.rst:1795 msgid "" "A non-zero return value may carry additional information about *how* the " "string is interned. The meaning of such non-zero values, as well as each " "specific string's intern-related details, may change between CPython " "versions." msgstr "" #: ../../c-api/unicode.rst:1802 msgid "PyUnicodeWriter" msgstr "" #: ../../c-api/unicode.rst:1804 msgid "" "The :c:type:`PyUnicodeWriter` API can be used to create a Python :class:" "`str` object." msgstr "" #: ../../c-api/unicode.rst:1811 msgid "A Unicode writer instance." msgstr "" #: ../../c-api/unicode.rst:1813 msgid "" "The instance must be destroyed by :c:func:`PyUnicodeWriter_Finish` on " "success, or :c:func:`PyUnicodeWriter_Discard` on error." msgstr "" #: ../../c-api/unicode.rst:1816 msgid "" "The API is **not thread safe**. To share a writer with multiple threads, a " "critical section or a lock is needed." msgstr "" #: ../../c-api/unicode.rst:1821 msgid "Create a Unicode writer instance." msgstr "" #: ../../c-api/unicode.rst:1823 msgid "*length* must be greater than or equal to ``0``." msgstr "" #: ../../c-api/unicode.rst:1825 msgid "" "If *length* is greater than ``0``, preallocate an internal buffer of " "*length* characters." msgstr "" #: ../../c-api/unicode.rst:1828 ../../c-api/unicode.rst:1834 msgid "Set an exception and return ``NULL`` on error." msgstr "" #: ../../c-api/unicode.rst:1832 msgid "" "Return the final Python :class:`str` object and destroy the writer instance." msgstr "" #: ../../c-api/unicode.rst:1836 ../../c-api/unicode.rst:1844 msgid "The writer instance is invalid after this call." msgstr "" #: ../../c-api/unicode.rst:1840 msgid "Discard the internal Unicode buffer and destroy the writer instance." msgstr "" #: ../../c-api/unicode.rst:1842 msgid "If *writer* is ``NULL``, no operation is performed." msgstr "" #: ../../c-api/unicode.rst:1848 msgid "Write the single Unicode character *ch* into *writer*." msgstr "" #: ../../c-api/unicode.rst:1850 ../../c-api/unicode.rst:1860 #: ../../c-api/unicode.rst:1875 ../../c-api/unicode.rst:1885 #: ../../c-api/unicode.rst:1897 ../../c-api/unicode.rst:1904 #: ../../c-api/unicode.rst:1917 ../../c-api/unicode.rst:1932 #: ../../c-api/unicode.rst:1939 ../../c-api/unicode.rst:1958 msgid "" "On success, return ``0``. On error, set an exception, leave the writer " "unchanged, and return ``-1``." msgstr "" #: ../../c-api/unicode.rst:1855 msgid "" "Decode the string *str* from UTF-8 in strict mode and write the output into " "*writer*." msgstr "" #: ../../c-api/unicode.rst:1857 ../../c-api/unicode.rst:1869 #: ../../c-api/unicode.rst:1947 msgid "" "*size* is the string length in bytes. If *size* is equal to ``-1``, call " "``strlen(str)`` to get the string length." msgstr "" #: ../../c-api/unicode.rst:1863 msgid "See also :c:func:`PyUnicodeWriter_DecodeUTF8Stateful`." msgstr "" #: ../../c-api/unicode.rst:1867 msgid "Write the ASCII string *str* into *writer*." msgstr "" #: ../../c-api/unicode.rst:1872 msgid "" "*str* must only contain ASCII characters. The behavior is undefined if *str* " "contains non-ASCII characters." msgstr "" #: ../../c-api/unicode.rst:1880 msgid "Write the wide string *str* into *writer*." msgstr "" #: ../../c-api/unicode.rst:1882 msgid "" "*size* is a number of wide characters. If *size* is equal to ``-1``, call " "``wcslen(str)`` to get the string length." msgstr "" #: ../../c-api/unicode.rst:1890 msgid "Write the UCS4 string *str* into *writer*." msgstr "" #: ../../c-api/unicode.rst:1892 msgid "*size* is a number of UCS4 characters." msgstr "" #: ../../c-api/unicode.rst:1894 msgid "" "All characters must be in range [U+0000; U+10ffff]. If the string contains " "invalid characters, the behavior is undefined." msgstr "" #: ../../c-api/unicode.rst:1902 msgid "" "Call :c:func:`PyObject_Str` on *obj* and write the output into *writer*." msgstr "" #: ../../c-api/unicode.rst:1907 msgid "" "To write a :class:`str` subclass which overrides the :meth:`~object.__str__` " "method, :c:func:`PyUnicode_FromObject` can be used to get the original " "string." msgstr "" #: ../../c-api/unicode.rst:1913 msgid "" "Call :c:func:`PyObject_Repr` on *obj* and write the output into *writer*." msgstr "" #: ../../c-api/unicode.rst:1915 msgid "If *obj* is ``NULL``, write the string ``\"\"`` into *writer*." msgstr "" #: ../../c-api/unicode.rst:1922 msgid "Added support for ``NULL``." msgstr "" #: ../../c-api/unicode.rst:1926 msgid "Write the substring ``str[start:end]`` into *writer*." msgstr "" #: ../../c-api/unicode.rst:1928 msgid "" "*str* must be Python :class:`str` object. *start* must be greater than or " "equal to 0, and less than or equal to *end*. *end* must be less than or " "equal to *str* length." msgstr "" #: ../../c-api/unicode.rst:1937 msgid "" "Similar to :c:func:`PyUnicode_FromFormat`, but write the output directly " "into *writer*." msgstr "" #: ../../c-api/unicode.rst:1944 msgid "" "Decode the string *str* from UTF-8 with *errors* error handler and write the " "output into *writer*." msgstr "" #: ../../c-api/unicode.rst:1950 msgid "" "*errors* is an :ref:`error handler ` name, such as " "``\"replace\"``. If *errors* is ``NULL``, use the strict error handler." msgstr "" #: ../../c-api/unicode.rst:1953 msgid "" "If *consumed* is not ``NULL``, set *\\*consumed* to the number of decoded " "bytes on success. If *consumed* is ``NULL``, treat trailing incomplete UTF-8 " "byte sequences as an error." msgstr "" #: ../../c-api/unicode.rst:1961 msgid "See also :c:func:`PyUnicodeWriter_WriteUTF8`." msgstr "" #: ../../c-api/unicode.rst:1964 msgid "Deprecated API" msgstr "" #: ../../c-api/unicode.rst:1966 msgid "The following API is deprecated." msgstr "" #: ../../c-api/unicode.rst:1970 msgid "" "This is a typedef of :c:type:`wchar_t`, which is a 16-bit type or 32-bit " "type depending on the platform. Please use :c:type:`wchar_t` directly " "instead." msgstr "" #: ../../c-api/unicode.rst:1974 msgid "" "In previous versions, this was a 16-bit type or a 32-bit type depending on " "whether you selected a \"narrow\" or \"wide\" Unicode version of Python at " "build time." msgstr "" #: ../../c-api/unicode.rst:1984 msgid "" "Do nothing and return ``0``. This API is kept only for backward " "compatibility, but there are no plans to remove it." msgstr "" #: ../../c-api/unicode.rst:1990 msgid "" "This API does nothing since Python 3.12. Previously, this needed to be " "called for each string created using the old API (:c:func:`!" "PyUnicode_FromUnicode` or similar)." msgstr "" #: ../../c-api/unicode.rst:1998 msgid "" "Do nothing and return ``1``. This API is kept only for backward " "compatibility, but there are no plans to remove it." msgstr "" #: ../../c-api/unicode.rst:2004 msgid "" "This API does nothing since Python 3.12. Previously, this could be called to " "check if :c:func:`PyUnicode_READY` is necessary." msgstr ""