# 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.15\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2026-10-01 19:07+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: python-doc bot, 2025\n" "Language-Team: Japanese (https://app.transifex.com/python-doc/teams/5390/" "ja/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: ja\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../../c-api/object.rst:6 msgid "Object Protocol" msgstr "オブジェクトプロトコル (object protocol)" #: ../../c-api/object.rst:11 msgid "Get a :term:`strong reference` to a constant." msgstr "" #: ../../c-api/object.rst:13 msgid "Set an exception and return ``NULL`` if *constant_id* is invalid." msgstr "" #: ../../c-api/object.rst:15 msgid "*constant_id* must be one of these constant identifiers:" msgstr "" #: ../../c-api/object.rst:20 msgid "Constant Identifier" msgstr "" #: ../../c-api/object.rst:20 msgid "Value" msgstr "値" #: ../../c-api/object.rst:20 msgid "Returned object" msgstr "" #: ../../c-api/object.rst:22 ../../c-api/object.rst:27 msgid "``0``" msgstr "``0``" #: ../../c-api/object.rst:22 msgid ":py:data:`None`" msgstr "" #: ../../c-api/object.rst:23 ../../c-api/object.rst:28 msgid "``1``" msgstr "``1``" #: ../../c-api/object.rst:23 msgid ":py:data:`False`" msgstr "" #: ../../c-api/object.rst:24 msgid "``2``" msgstr "``2``" #: ../../c-api/object.rst:24 msgid ":py:data:`True`" msgstr "" #: ../../c-api/object.rst:25 msgid "``3``" msgstr "``3``" #: ../../c-api/object.rst:25 msgid ":py:data:`Ellipsis`" msgstr "" #: ../../c-api/object.rst:26 msgid "``4``" msgstr "``4``" #: ../../c-api/object.rst:26 msgid ":py:data:`NotImplemented`" msgstr "" #: ../../c-api/object.rst:27 msgid "``5``" msgstr "``5``" #: ../../c-api/object.rst:28 msgid "``6``" msgstr "``6``" #: ../../c-api/object.rst:29 msgid "``7``" msgstr "``7``" #: ../../c-api/object.rst:29 msgid "``''``" msgstr "" #: ../../c-api/object.rst:30 msgid "``8``" msgstr "``8``" #: ../../c-api/object.rst:30 msgid "``b''``" msgstr "" #: ../../c-api/object.rst:31 msgid "``9``" msgstr "``9``" #: ../../c-api/object.rst:31 msgid "``()``" msgstr "" #: ../../c-api/object.rst:34 msgid "" "Numeric values are only given for projects which cannot use the constant " "identifiers." msgstr "" #: ../../c-api/object.rst:42 msgid "In CPython, all of these constants are :term:`immortal`." msgstr "" #: ../../c-api/object.rst:47 msgid "" "Similar to :c:func:`Py_GetConstant`, but return a :term:`borrowed reference`." msgstr "" #: ../../c-api/object.rst:50 msgid "" "This function is primarily intended for backwards compatibility: using :c:" "func:`Py_GetConstant` is recommended for new code." msgstr "" #: ../../c-api/object.rst:53 msgid "" "The reference is borrowed from the interpreter, and is valid until the " "interpreter finalization." msgstr "" #: ../../c-api/object.rst:61 msgid "" "The ``NotImplemented`` singleton, used to signal that an operation is not " "implemented for the given type combination." msgstr "" "与えられたオブジェクトとメソッドの引数の型の組み合わせの処理が未実装である印" "として使われる、 ``未実装 (NotImplemented)`` シングルトン。" #: ../../c-api/object.rst:67 msgid "" "Properly handle returning :c:data:`Py_NotImplemented` from within a C " "function (that is, create a new :term:`strong reference` to :const:" "`NotImplemented` and return it)." msgstr "" #: ../../c-api/object.rst:74 msgid "" "Flag to be used with multiple functions that print the object (like :c:func:" "`PyObject_Print` and :c:func:`PyFile_WriteObject`). If passed, these " "functions use the :func:`str` of the object instead of the :func:`repr`." msgstr "" #: ../../c-api/object.rst:82 msgid "" "Print an object *o*, on file *fp*. Returns ``-1`` on error. The flags " "argument is used to enable certain printing options. The only option " "currently supported is :c:macro:`Py_PRINT_RAW`; if given, the :func:`str` of " "the object is written instead of the :func:`repr`." msgstr "" #: ../../c-api/object.rst:90 msgid "" "Dump an object *op* to ``stderr``. This should only be used for debugging." msgstr "" #: ../../c-api/object.rst:92 msgid "" "The output is intended to try dumping objects even after memory corruption:" msgstr "" #: ../../c-api/object.rst:94 msgid "" "Information is written starting with fields that are the least likely to " "crash when accessed." msgstr "" #: ../../c-api/object.rst:96 msgid "" "This function can be called without an :term:`attached thread state`, but " "it's not recommended to do so: it can cause deadlocks." msgstr "" #: ../../c-api/object.rst:98 msgid "" "An object that does not belong to the current interpreter may be dumped, but " "this may also cause crashes or unintended behavior." msgstr "" #: ../../c-api/object.rst:100 msgid "" "Implement a heuristic to detect if the object memory has been freed. Don't " "display the object contents in this case, only its memory address." msgstr "" #: ../../c-api/object.rst:102 msgid "The output format may change at any time." msgstr "" #: ../../c-api/object.rst:104 msgid "Example of output:" msgstr "" #: ../../c-api/object.rst:106 msgid "" "object address : 0x7f80124702c0\n" "object refcount : 2\n" "object type : 0x9902e0\n" "object type name: str\n" "object repr : 'abcdef'" msgstr "" #: ../../c-api/object.rst:119 msgid "" "Returns ``1`` if *o* has the attribute *attr_name*, and ``0`` otherwise. " "This is equivalent to the Python expression ``hasattr(o, attr_name)``. On " "failure, return ``-1``." msgstr "" #: ../../c-api/object.rst:128 msgid "" "This is the same as :c:func:`PyObject_HasAttrWithError`, but *attr_name* is " "specified as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " "a :c:expr:`PyObject*`." msgstr "" #: ../../c-api/object.rst:137 msgid "" "Returns ``1`` if *o* has the attribute *attr_name*, and ``0`` otherwise. " "This function always succeeds." msgstr "" #: ../../c-api/object.rst:142 msgid "" "Exceptions that occur when this calls :meth:`~object.__getattr__` and :meth:" "`~object.__getattribute__` methods aren't propagated, but instead given to :" "func:`sys.unraisablehook`. For proper error handling, use :c:func:" "`PyObject_HasAttrWithError`, :c:func:`PyObject_GetOptionalAttr` or :c:func:" "`PyObject_GetAttr` instead." msgstr "" #: ../../c-api/object.rst:151 msgid "" "This is the same as :c:func:`PyObject_HasAttr`, but *attr_name* is specified " "as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" "`PyObject*`." msgstr "" #: ../../c-api/object.rst:157 msgid "" "Exceptions that occur when this calls :meth:`~object.__getattr__` and :meth:" "`~object.__getattribute__` methods or while creating the temporary :class:" "`str` object are silently ignored. For proper error handling, use :c:func:" "`PyObject_HasAttrStringWithError`, :c:func:`PyObject_GetOptionalAttrString` " "or :c:func:`PyObject_GetAttrString` instead." msgstr "" #: ../../c-api/object.rst:167 msgid "" "Retrieve an attribute named *attr_name* from object *o*. Returns the " "attribute value on success, or ``NULL`` on failure. This is the equivalent " "of the Python expression ``o.attr_name``." msgstr "" "オブジェクト *o* から、名前 *attr_name* の属性を取得します。成功すると属性値" "を返し失敗すると ``NULL`` を返します。この関数は Python の式 ``o.attr_name`` " "と同じです。" #: ../../c-api/object.rst:171 msgid "" "If the missing attribute should not be treated as a failure, you can use :c:" "func:`PyObject_GetOptionalAttr` instead." msgstr "" #: ../../c-api/object.rst:177 msgid "" "This is the same as :c:func:`PyObject_GetAttr`, but *attr_name* is specified " "as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" "`PyObject*`." msgstr "" #: ../../c-api/object.rst:181 msgid "" "If the missing attribute should not be treated as a failure, you can use :c:" "func:`PyObject_GetOptionalAttrString` instead." msgstr "" #: ../../c-api/object.rst:187 msgid "" "Variant of :c:func:`PyObject_GetAttr` which doesn't raise :exc:" "`AttributeError` if the attribute is not found." msgstr "" #: ../../c-api/object.rst:190 msgid "" "If the attribute is found, return ``1`` and set *\\*result* to a new :term:" "`strong reference` to the attribute. If the attribute is not found, return " "``0`` and set *\\*result* to ``NULL``; the :exc:`AttributeError` is " "silenced. If an error other than :exc:`AttributeError` is raised, return " "``-1`` and set *\\*result* to ``NULL``." msgstr "" #: ../../c-api/object.rst:202 msgid "" "This is the same as :c:func:`PyObject_GetOptionalAttr`, but *attr_name* is " "specified as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " "a :c:expr:`PyObject*`." msgstr "" #: ../../c-api/object.rst:210 msgid "" "Generic attribute getter function that is meant to be put into a type " "object's ``tp_getattro`` slot. It looks for a descriptor in the dictionary " "of classes in the object's MRO as well as an attribute in the object's :attr:" "`~object.__dict__` (if present). As outlined in :ref:`descriptors`, data " "descriptors take preference over instance attributes, while non-data " "descriptors don't. Otherwise, an :exc:`AttributeError` is raised." msgstr "" "型オブジェクトの ``tp_getattro`` スロットに置かれる、属性を取得する総称的な関" "数です。この関数は、 (もし存在すれば) オブジェクトの属性 :attr:`~object." "__dict__` に加え、オブジェクトの MRO にあるクラスの辞書にあるデスクリプタを探" "します。 :ref:`descriptors` で概要が述べられている通り、データのデスクリプタ" "はインスタンスの属性より優先され、非データデスクリプタは後回しにされます。見" "付からなかった場合は :exc:`AttributeError` を送出します。" #: ../../c-api/object.rst:220 msgid "" "Set the value of the attribute named *attr_name*, for object *o*, to the " "value *v*. Raise an exception and return ``-1`` on failure; return ``0`` on " "success. This is the equivalent of the Python statement ``o.attr_name = v``." msgstr "" "オブジェクト *o* の *attr_name* という名の属性に、値 *v* を設定します。\n" "失敗すると例外を送出し ``-1`` を返します; 成功すると ``0`` を返します。\n" "この関数は Python の式 ``o.attr_name = v`` と同じです。" #: ../../c-api/object.rst:225 msgid "" "If *v* is ``NULL``, the attribute is deleted. This behaviour is deprecated " "in favour of using :c:func:`PyObject_DelAttr`, but there are currently no " "plans to remove it." msgstr "" "*v* が ``NULL`` のとき、アトリビュートは削除されます。この動作は :c:func:" "`PyObject_DelAttr` のため、非推奨となっていますが、削除される予定はありませ" "ん。" #: ../../c-api/object.rst:229 ../../c-api/object.rst:246 msgid "" "The function must not be called with a ``NULL`` *v* and an exception set. " "This case can arise from forgetting ``NULL`` checks and would delete the " "attribute." msgstr "" #: ../../c-api/object.rst:233 ../../c-api/object.rst:258 msgid "Must not be called with NULL value if an exception is set." msgstr "" #: ../../c-api/object.rst:239 msgid "" "This is the same as :c:func:`PyObject_SetAttr`, but *attr_name* is specified " "as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" "`PyObject*`." msgstr "" #: ../../c-api/object.rst:243 msgid "" "If *v* is ``NULL``, the attribute is deleted, but this feature is deprecated " "in favour of using :c:func:`PyObject_DelAttrString`." msgstr "" "*v* が ``NULL`` の場合は属性が削除されますが、この機能は非推奨であり :c:func:" "`PyObject_DelAttrString` を使うのが望ましいです。" #: ../../c-api/object.rst:250 msgid "" "The number of different attribute names passed to this function should be " "kept small, usually by using a statically allocated string as *attr_name*. " "For attribute names that aren't known at compile time, prefer calling :c:" "func:`PyUnicode_FromString` and :c:func:`PyObject_SetAttr` directly. For " "more details, see :c:func:`PyUnicode_InternFromString`, which may be used " "internally to create a key object." msgstr "" #: ../../c-api/object.rst:264 msgid "" "Generic attribute setter and deleter function that is meant to be put into a " "type object's :c:member:`~PyTypeObject.tp_setattro` slot. It looks for a " "data descriptor in the dictionary of classes in the object's MRO, and if " "found it takes preference over setting or deleting the attribute in the " "instance dictionary. Otherwise, the attribute is set or deleted in the " "object's :attr:`~object.__dict__` (if present). On success, ``0`` is " "returned, otherwise an :exc:`AttributeError` is raised and ``-1`` is " "returned." msgstr "" "属性の設定と削除を行う汎用的な関数で、型オブジェクトの :c:member:" "`~PyTypeObject.tp_setattro` スロットに置かれます。\n" "オブジェクトの MRO にあるクラスの辞書からデータディスクリプタを探し、見付かっ" "た場合はインスタンスの辞書にある属性の設定や削除よりも優先されます。\n" "そうでない場合は、(もし存在すれば) オブジェクトの :attr:`~object.__dict__` に" "属性を設定もしくは削除します。\n" "成功すると ``0`` が返され、そうでない場合は :exc:`AttributeError` が送出され " "``-1`` が返されます。" #: ../../c-api/object.rst:276 msgid "" "Delete attribute named *attr_name*, for object *o*. Returns ``-1`` on " "failure. This is the equivalent of the Python statement ``del o.attr_name``." msgstr "" "オブジェクト *o* の *attr_name* という名の属性を削除します。失敗すると " "``-1`` を返します。この関数は Python の文 ``del o.attr_name`` と同じです。" #: ../../c-api/object.rst:282 msgid "" "This is the same as :c:func:`PyObject_DelAttr`, but *attr_name* is specified " "as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" "`PyObject*`." msgstr "" #: ../../c-api/object.rst:286 msgid "" "The number of different attribute names passed to this function should be " "kept small, usually by using a statically allocated string as *attr_name*. " "For attribute names that aren't known at compile time, prefer calling :c:" "func:`PyUnicode_FromString` and :c:func:`PyObject_DelAttr` directly. For " "more details, see :c:func:`PyUnicode_InternFromString`, which may be used " "internally to create a key object for lookup." msgstr "" #: ../../c-api/object.rst:297 msgid "" "A generic implementation for the getter of a ``__dict__`` descriptor. It " "creates the dictionary if necessary." msgstr "" "``__dict__`` デスクリプタの getter の総称的な実装です。必要な場合は、辞書を作" "成します。" #: ../../c-api/object.rst:300 msgid "" "This function may also be called to get the :py:attr:`~object.__dict__` of " "the object *o*. Pass ``NULL`` for *context* when calling it. Since this " "function may need to allocate memory for the dictionary, it may be more " "efficient to call :c:func:`PyObject_GetAttr` when accessing an attribute on " "the object." msgstr "" #: ../../c-api/object.rst:306 msgid "On failure, returns ``NULL`` with an exception set." msgstr "" #: ../../c-api/object.rst:313 msgid "" "A generic implementation for the setter of a ``__dict__`` descriptor. This " "implementation does not allow the dictionary to be deleted." msgstr "" "``__dict__`` デスクリプタの setter の総称的な実装です。この実装では辞書を削除" "することは許されていません。" #: ../../c-api/object.rst:321 msgid "" "Return a pointer to :py:attr:`~object.__dict__` of the object *obj*. If " "there is no ``__dict__``, return ``NULL`` without setting an exception." msgstr "" #: ../../c-api/object.rst:324 msgid "" "This function may need to allocate memory for the dictionary, so it may be " "more efficient to call :c:func:`PyObject_GetAttr` when accessing an " "attribute on the object." msgstr "" #: ../../c-api/object.rst:331 msgid "" "Compare the values of *o1* and *o2* using the operation specified by *opid*, " "which must be one of :c:macro:`Py_LT`, :c:macro:`Py_LE`, :c:macro:`Py_EQ`, :" "c:macro:`Py_NE`, :c:macro:`Py_GT`, or :c:macro:`Py_GE`, corresponding to " "``<``, ``<=``, ``==``, ``!=``, ``>``, or ``>=`` respectively. This is the " "equivalent of the Python expression ``o1 op o2``, where ``op`` is the " "operator corresponding to *opid*. Returns the value of the comparison on " "success, or ``NULL`` on failure." msgstr "" #: ../../c-api/object.rst:341 msgid "" "Compare the values of *o1* and *o2* using the operation specified by *opid*, " "like :c:func:`PyObject_RichCompare`, but returns ``-1`` on error, ``0`` if " "the result is false, ``1`` otherwise." msgstr "" #: ../../c-api/object.rst:346 msgid "" "If *o1* and *o2* are the same object, :c:func:`PyObject_RichCompareBool` " "will always return ``1`` for :c:macro:`Py_EQ` and ``0`` for :c:macro:`Py_NE`." msgstr "" #: ../../c-api/object.rst:351 msgid "" "Format *obj* using *format_spec*. This is equivalent to the Python " "expression ``format(obj, format_spec)``." msgstr "" #: ../../c-api/object.rst:354 msgid "" "*format_spec* may be ``NULL``. In this case the call is equivalent to " "``format(obj)``. Returns the formatted string on success, ``NULL`` on " "failure." msgstr "" #: ../../c-api/object.rst:362 msgid "" "Compute a string representation of object *o*. Returns the string " "representation on success, ``NULL`` on failure. This is the equivalent of " "the Python expression ``repr(o)``. Called by the :func:`repr` built-in " "function." msgstr "" "オブジェクト *o* の文字列表現を計算します。成功すると文字列表現を返し、失敗す" "ると ``NULL`` を返します。 Python 式 ``repr(o)`` と同じです。この関数は組み込" "み関数 :func:`repr` の処理で呼び出されます。" #: ../../c-api/object.rst:366 ../../c-api/object.rst:382 #: ../../c-api/object.rst:394 msgid "If argument is ``NULL``, return the string ``''``." msgstr "" #: ../../c-api/object.rst:368 ../../c-api/object.rst:396 msgid "" "This function now includes a debug assertion to help ensure that it does not " "silently discard an active exception." msgstr "" "アクティブな例外を黙って捨てないことを保証するのに便利なように、この関数はデ" "バッグアサーションを含むようになりました。" #: ../../c-api/object.rst:376 msgid "" "As :c:func:`PyObject_Repr`, compute a string representation of object *o*, " "but escape the non-ASCII characters in the string returned by :c:func:" "`PyObject_Repr` with ``\\x``, ``\\u`` or ``\\U`` escapes. This generates a " "string similar to that returned by :c:func:`PyObject_Repr` in Python 2. " "Called by the :func:`ascii` built-in function." msgstr "" ":c:func:`PyObject_Repr` と同様、オブジェクト *o* の文字列表現を計算します" "が、 :c:func:`PyObject_Repr` によって返された文字列に含まれる非 ASCII 文字" "を、エスケープ文字 ``\\x`` 、 ``\\u`` 、 ``\\U`` でエスケープします。この関数" "は Pythoh 2 の :c:func:`PyObject_Repr` が返す文字列と同じ文字列を生成しま" "す。 :func:`ascii` によって呼び出されます。" #: ../../c-api/object.rst:389 msgid "" "Compute a string representation of object *o*. Returns the string " "representation on success, ``NULL`` on failure. This is the equivalent of " "the Python expression ``str(o)``. Called by the :func:`str` built-in " "function and, therefore, by the :func:`print` function." msgstr "" "オブジェクト *o* の文字列表現を計算します。成功すると文字列表現を返し、失敗す" "ると ``NULL`` を返します。 Python 式 ``str(o)`` と同じです。この関数は組み込" "み関数 :func:`str` や、 :func:`print` 関数の処理で呼び出されます。" #: ../../c-api/object.rst:405 msgid "" "Compute a bytes representation of object *o*. ``NULL`` is returned on " "failure and a bytes object on success. This is equivalent to the Python " "expression ``bytes(o)``, when *o* is not an integer. Unlike ``bytes(o)``, a " "TypeError is raised when *o* is an integer instead of a zero-initialized " "bytes object." msgstr "" "オブジェクト *o* のバイト列表現を計算します。失敗すると ``NULL`` を返し、成功" "すると bytes オブジェクトを返します。 *o* が整数でないときの、 Python 式 " "``bytes(o)`` と同じです。 ``bytes(o)`` と違って、 *o* が整数のときには、ゼロ" "で初期化された bytes オブジェクトを返すのではなく TypeError が送出されます。" #: ../../c-api/object.rst:411 msgid "" "If argument is ``NULL``, return the :class:`bytes` object ``b''``." msgstr "" #: ../../c-api/object.rst:416 msgid "" "Return ``1`` if the class *derived* is identical to or derived from the " "class *cls*, otherwise return ``0``. In case of an error, return ``-1``." msgstr "" "クラス *derived* がクラス *cls* と同一であるか、そこから派生したクラスである" "場合は ``1`` を返し、そうでない場合は ``0`` を返します。\n" "エラーが起きた場合は ``-1`` を返します。" #: ../../c-api/object.rst:419 ../../c-api/object.rst:438 msgid "" "If *cls* is a tuple, the check will be done against every entry in *cls*. " "The result will be ``1`` when at least one of the checks returns ``1``, " "otherwise it will be ``0``." msgstr "" "*cls* がタプルの場合、 *cls* の全ての要素に対してチェックします。\n" "少なくとも1つのチェックで ``1`` が返ったとき、結果は ``1`` となり、それ以外の" "とき ``0`` になります。" #: ../../c-api/object.rst:423 msgid "" "If *cls* has a :meth:`~type.__subclasscheck__` method, it will be called to " "determine the subclass status as described in :pep:`3119`. Otherwise, " "*derived* is a subclass of *cls* if it is a direct or indirect subclass, i." "e. contained in :attr:`cls.__mro__ `." msgstr "" #: ../../c-api/object.rst:428 msgid "" "Normally only class objects, i.e. instances of :class:`type` or a derived " "class, are considered classes. However, objects can override this by having " "a :attr:`~type.__bases__` attribute (which must be a tuple of base classes)." msgstr "" #: ../../c-api/object.rst:435 msgid "" "Return ``1`` if *inst* is an instance of the class *cls* or a subclass of " "*cls*, or ``0`` if not. On error, returns ``-1`` and sets an exception." msgstr "" "*inst* がクラス *cls* もしくは *cls* の子クラスのインスタンスである場合に " "``1`` を返し、そうでない場合に ``0`` を返します。\n" "エラーが起きると ``-1`` を返し例外を設定します。" #: ../../c-api/object.rst:442 msgid "" "If *cls* has a :meth:`~type.__instancecheck__` method, it will be called to " "determine the subclass status as described in :pep:`3119`. Otherwise, " "*inst* is an instance of *cls* if its class is a subclass of *cls*." msgstr "" #: ../../c-api/object.rst:446 msgid "" "An instance *inst* can override what is considered its class by having a :" "attr:`~object.__class__` attribute." msgstr "" #: ../../c-api/object.rst:449 msgid "" "An object *cls* can override if it is considered a class, and what its base " "classes are, by having a :attr:`~type.__bases__` attribute (which must be a " "tuple of base classes)." msgstr "" #: ../../c-api/object.rst:458 msgid "" "Compute and return the hash value of an object *o*. On failure, return " "``-1``. This is the equivalent of the Python expression ``hash(o)``." msgstr "" "オブジェクト *o* のハッシュ値を計算して返します。失敗すると ``-1`` を返しま" "す。 Python の式 ``hash(o)`` と同じです。" #: ../../c-api/object.rst:461 msgid "" "The return type is now Py_hash_t. This is a signed integer the same size " "as :c:type:`Py_ssize_t`." msgstr "" "返り値の型が Py_hash_t になりました。この型は、 :c:type:`Py_ssize_t` と同じサ" "イズをもつ符号付き整数です。" #: ../../c-api/object.rst:468 msgid "" "Set a :exc:`TypeError` indicating that ``type(o)`` is not :term:`hashable` " "and return ``-1``. This function receives special treatment when stored in a " "``tp_hash`` slot, allowing a type to explicitly indicate to the interpreter " "that it is not hashable." msgstr "" #: ../../c-api/object.rst:476 msgid "" "Returns ``1`` if the object *o* is considered to be true, and ``0`` " "otherwise. This is equivalent to the Python expression ``not not o``. On " "failure, return ``-1``." msgstr "" "*o* が真を表すとみなせる場合には ``1`` を、そうでないときには ``0`` を返しま" "す。 Python の式 ``not not o`` と同じです。失敗すると ``-1`` を返します。" #: ../../c-api/object.rst:483 msgid "" "Returns ``0`` if the object *o* is considered to be true, and ``1`` " "otherwise. This is equivalent to the Python expression ``not o``. On " "failure, return ``-1``." msgstr "" "*o* が真を表すとみなせる場合には ``0`` を、そうでないときには ``1`` を返しま" "す。 Python の式 ``not o`` と同じです。失敗すると ``-1`` を返します。" #: ../../c-api/object.rst:492 msgid "" "When *o* is non-``NULL``, returns a type object corresponding to the object " "type of object *o*. On failure, raises :exc:`SystemError` and returns " "``NULL``. This is equivalent to the Python expression ``type(o)``. This " "function creates a new :term:`strong reference` to the return value. There's " "really no reason to use this function instead of the :c:func:`Py_TYPE()` " "function, which returns a pointer of type :c:expr:`PyTypeObject*`, except " "when a new :term:`strong reference` is needed." msgstr "" #: ../../c-api/object.rst:504 msgid "" "Return non-zero if the object *o* is of type *type* or a subtype of *type*, " "and ``0`` otherwise. Both parameters must be non-``NULL``." msgstr "" #: ../../c-api/object.rst:513 msgid "" "Return the length of object *o*. If the object *o* provides either the " "sequence and mapping protocols, the sequence length is returned. On error, " "``-1`` is returned. This is the equivalent to the Python expression " "``len(o)``." msgstr "" "*o* の長さを返します。ただしオブジェクト *o* がシーケンス型プロトコルとマップ" "型プロトコルの両方を提供している場合、シーケンスとしての長さを返します。エ" "ラーが生じると ``-1`` を返します。 Python の式 ``len(o)`` と同じです。" #: ../../c-api/object.rst:520 msgid "" "Return an estimated length for the object *o*. First try to return its " "actual length, then an estimate using :meth:`~object.__length_hint__`, and " "finally return the default value. On error return ``-1``. This is the " "equivalent to the Python expression ``operator.length_hint(o, " "defaultvalue)``." msgstr "" "オブジェクト *o* の概算の長さを返します。\n" "最初に実際の長さを、次に :meth:`~object.__length_hint__` を使って概算の長さ" "を、そして最後にデフォルトの値を返そうとします。\n" "この関数は Python の式 ``operator.length_hint(o, defaultvalue)`` と同じです。" #: ../../c-api/object.rst:530 msgid "" "Return element of *o* corresponding to the object *key* or ``NULL`` on " "failure. This is the equivalent of the Python expression ``o[key]``." msgstr "" "オブジェクト *key* に対応する *o* の要素を返します。失敗すると ``NULL`` を返" "します。Python の式 ``o[key]`` と同じです。" #: ../../c-api/object.rst:536 msgid "" "Map the object *key* to the value *v*. Raise an exception and return ``-1`` " "on failure; return ``0`` on success. This is the equivalent of the Python " "statement ``o[key] = v``. This function *does not* steal a reference to *v*." msgstr "" "オブジェクト *key* を値 *v* に対応付けます。\n" "失敗すると、例外を送出し ``-1`` を返します。成功すると ``0`` を返します。\n" "これは Python の文 ``o[key] = v`` と同等です。\n" "この関数は *v* への参照を *盗み取りません* 。" #: ../../c-api/object.rst:544 msgid "" "Remove the mapping for the object *key* from the object *o*. Return ``-1`` " "on failure. This is equivalent to the Python statement ``del o[key]``." msgstr "" "オブジェクト *o* から *key* に関する対応付けを削除します。失敗すると ``-1`` " "を返します。Python の文 ``del o[key]`` と同じです。" #: ../../c-api/object.rst:550 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:557 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 " "the Python ``dir()``, returning the names of the current locals; in this " "case, if no execution frame is active then ``NULL`` is returned but :c:func:" "`PyErr_Occurred` will return false." msgstr "" "この関数は Python の式 ``dir(o)`` と同じで、オブジェクトの変数名に割り当てて" "いる文字列からなるリスト (空の場合もあります) を返します。エラーの場合には " "``NULL`` を返します。引数を ``NULL`` にすると、Python における ``dir()`` と同" "様に、現在のローカルな名前を返します; この場合、アクティブな実行フレームがな" "ければ ``NULL`` を返しますが、 :c:func:`PyErr_Occurred` は偽を返します。" #: ../../c-api/object.rst:566 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 " "already an iterator. Raises :exc:`TypeError` and returns ``NULL`` if the " "object cannot be iterated." msgstr "" "Python の式 ``iter(o)`` と同じです。引数にとったオブジェクトに対する新たなイ" "テレータか、オブジェクトがすでにイテレータの場合にはオブジェクト自身を返しま" "す。オブジェクトが反復処理不可能であった場合には :exc:`TypeError` を送出して " "``NULL`` を返します。" #: ../../c-api/object.rst:574 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:580 msgid "" "This is the equivalent to the Python expression ``aiter(o)``. Takes an :" "class:`AsyncIterable` object and returns an :class:`AsyncIterator` for it. " "This is typically a new iterator but if the argument is an :class:" "`AsyncIterator`, this returns itself. Raises :exc:`TypeError` and returns " "``NULL`` if the object cannot be iterated." msgstr "" #: ../../c-api/object.rst:590 msgid "Get a pointer to subclass-specific data reserved for *cls*." msgstr "" #: ../../c-api/object.rst:592 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:596 msgid "On error, set an exception and return ``NULL``." msgstr "" #: ../../c-api/object.rst:602 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:605 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:608 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:612 msgid "On error, set an exception and return a negative value." msgstr "" #: ../../c-api/object.rst:618 msgid "" "Get a pointer to per-item data for a class with :c:macro:" "`Py_TPFLAGS_ITEMS_AT_END`." msgstr "" #: ../../c-api/object.rst:621 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." msgstr "" #: ../../c-api/object.rst:629 msgid "Visit the managed dictionary of *obj*." msgstr "" #: ../../c-api/object.rst:631 msgid "" "This function must only be called in a traverse function of the type which " "has the :c:macro:`Py_TPFLAGS_MANAGED_DICT` flag set." msgstr "" #: ../../c-api/object.rst:638 msgid "Clear the managed dictionary of *obj*." msgstr "" #: ../../c-api/object.rst:640 msgid "" "This function must only be called in a clear function of the type which has " "the :c:macro:`Py_TPFLAGS_MANAGED_DICT` flag set." msgstr "" #: ../../c-api/object.rst:647 msgid "" "Enable `deferred reference counting `_ on *obj*, if supported by the runtime. In " "the :term:`free-threaded ` build, this allows the " "interpreter to avoid reference count adjustments to *obj*, which may improve " "multi-threaded performance. The tradeoff is that *obj* will only be " "deallocated by the tracing garbage collector, and not when the interpreter " "no longer has any references to it." msgstr "" #: ../../c-api/object.rst:654 msgid "" "This function returns ``1`` if deferred reference counting is enabled on " "*obj*, and ``0`` if deferred reference counting is not supported or if the " "hint was ignored by the interpreter, such as when deferred reference " "counting is already enabled on *obj*. This function is thread-safe, and " "cannot fail." msgstr "" #: ../../c-api/object.rst:659 msgid "" "This function does nothing on builds with the :term:`GIL` enabled, which do " "not support deferred reference counting. This also does nothing if *obj* is " "not an object tracked by the garbage collector (see :func:`gc.is_tracked` " "and :c:func:`PyObject_GC_IsTracked`)." msgstr "" #: ../../c-api/object.rst:664 msgid "" "This function is intended to be used soon after *obj* is created, by the " "code that creates it, such as in the object's :c:member:`~PyTypeObject." "tp_new` slot." msgstr "" #: ../../c-api/object.rst:672 msgid "" "Check if *obj* is a unique temporary object. Returns ``1`` if *obj* is known " "to be a unique temporary object, and ``0`` otherwise. This function cannot " "fail, but the check is conservative, and may return ``0`` in some cases even " "if *obj* is a unique temporary object." msgstr "" #: ../../c-api/object.rst:678 msgid "" "If an object is a unique temporary, it is guaranteed that the current code " "has the only reference to the object. For arguments to C functions, this " "should be used instead of checking if the reference count is ``1``. Starting " "with Python 3.14, the interpreter internally avoids some reference count " "modifications when loading objects onto the operands stack by :term:" "`borrowing ` references when possible, which means that " "a reference count of ``1`` by itself does not guarantee that a function " "argument uniquely referenced." msgstr "" #: ../../c-api/object.rst:687 msgid "" "In the example below, ``my_func`` is called with a unique temporary object " "as its argument::" msgstr "" #: ../../c-api/object.rst:690 msgid "my_func([1, 2, 3])" msgstr "" #: ../../c-api/object.rst:692 msgid "" "In the example below, ``my_func`` is **not** called with a unique temporary " "object as its argument, even if its refcount is ``1``::" msgstr "" #: ../../c-api/object.rst:695 msgid "" "my_list = [1, 2, 3]\n" "my_func(my_list)" msgstr "" #: ../../c-api/object.rst:698 msgid "See also the function :c:func:`Py_REFCNT`." msgstr "" #: ../../c-api/object.rst:704 msgid "" "This function returns non-zero if *obj* is :term:`immortal`, and zero " "otherwise. This function cannot fail." msgstr "" #: ../../c-api/object.rst:709 msgid "" "Objects that are immortal in one CPython version are not guaranteed to be " "immortal in another." msgstr "" #: ../../c-api/object.rst:716 msgid "" "Increments the reference count of *obj* if it is not zero. Returns ``1`` if " "the object's reference count was successfully incremented. Otherwise, this " "function returns ``0``." msgstr "" #: ../../c-api/object.rst:720 msgid "" ":c:func:`PyUnstable_EnableTryIncRef` must have been called earlier on *obj* " "or this function may spuriously return ``0`` in the :term:`free-threaded " "build`." msgstr "" #: ../../c-api/object.rst:724 msgid "" "This function is logically equivalent to the following C code, except that " "it behaves atomically in the :term:`free-threaded build`::" msgstr "" #: ../../c-api/object.rst:727 msgid "" "if (Py_REFCNT(op) > 0) {\n" " Py_INCREF(op);\n" " return 1;\n" "}\n" "return 0;" msgstr "" #: ../../c-api/object.rst:733 msgid "" "This is intended as a building block for managing weak references without " "the overhead of a Python :ref:`weak reference object `." msgstr "" #: ../../c-api/object.rst:736 msgid "" "Typically, correct use of this function requires support from *obj*'s " "deallocator (:c:member:`~PyTypeObject.tp_dealloc`). For example, the " "following sketch could be adapted to implement a \"weakmap\" that works like " "a :py:class:`~weakref.WeakValueDictionary` for a specific type:" msgstr "" #: ../../c-api/object.rst:742 msgid "" "PyMutex mutex;\n" "\n" "PyObject *\n" "add_entry(weakmap_key_type *key, PyObject *value)\n" "{\n" " PyUnstable_EnableTryIncRef(value);\n" " weakmap_type weakmap = ...;\n" " PyMutex_Lock(&mutex);\n" " weakmap_add_entry(weakmap, key, value);\n" " PyMutex_Unlock(&mutex);\n" " Py_RETURN_NONE;\n" "}\n" "\n" "PyObject *\n" "get_value(weakmap_key_type *key)\n" "{\n" " weakmap_type weakmap = ...;\n" " PyMutex_Lock(&mutex);\n" " PyObject *result = weakmap_find(weakmap, key);\n" " if (PyUnstable_TryIncRef(result)) {\n" " // `result` is safe to use\n" " PyMutex_Unlock(&mutex);\n" " return result;\n" " }\n" " // if we get here, `result` is starting to be garbage-collected,\n" " // but has not been removed from the weakmap yet\n" " PyMutex_Unlock(&mutex);\n" " return NULL;\n" "}\n" "\n" "// tp_dealloc function for weakmap values\n" "void\n" "value_dealloc(PyObject *value)\n" "{\n" " weakmap_type weakmap = ...;\n" " PyMutex_Lock(&mutex);\n" " weakmap_remove_value(weakmap, value);\n" "\n" " ...\n" " PyMutex_Unlock(&mutex);\n" "}" msgstr "" #: ../../c-api/object.rst:790 msgid "" "Enables subsequent uses of :c:func:`PyUnstable_TryIncRef` on *obj*. The " "caller must hold a :term:`strong reference` to *obj* when calling this." msgstr "" #: ../../c-api/object.rst:797 msgid "Determine if *op* only has one reference." msgstr "" #: ../../c-api/object.rst:799 msgid "" "On GIL-enabled builds, this function is equivalent to :c:expr:`Py_REFCNT(op) " "== 1`." msgstr "" #: ../../c-api/object.rst:802 msgid "" "On a :term:`free-threaded build`, this checks if *op*'s :term:`reference " "count` is equal to one and additionally checks if *op* is only used by this " "thread. :c:expr:`Py_REFCNT(op) == 1` is **not** thread-safe on free-threaded " "builds; prefer this function." msgstr "" #: ../../c-api/object.rst:807 msgid "" "The caller must hold an :term:`attached thread state`, despite the fact that " "this function doesn't call into the Python interpreter. This function cannot " "fail." msgstr "" #: ../../c-api/object.rst:815 msgid "" "Marks the object *op* :term:`immortal`. The argument should be uniquely " "referenced by the calling thread. This is intended to be used for reducing " "reference counting contention in the :term:`free-threaded build` for objects " "which are shared across threads." msgstr "" #: ../../c-api/object.rst:819 msgid "" "This is a one-way process: objects can only be made immortal; they cannot be " "made mortal once again. Immortal objects do not participate in reference " "counting and will never be garbage collected. If the object is GC-tracked, " "it is untracked." msgstr "" #: ../../c-api/object.rst:823 msgid "" "This function is intended to be used soon after *op* is created, by the code " "that creates it, such as in the object's :c:member:`~PyTypeObject.tp_new` " "slot. Returns 1 if the object was made immortal and returns 0 if it was not. " "This function cannot fail." msgstr "" #: ../../c-api/object.rst:360 ../../c-api/object.rst:374 #: ../../c-api/object.rst:403 ../../c-api/object.rst:456 #: ../../c-api/object.rst:490 ../../c-api/object.rst:511 msgid "built-in function" msgstr "組み込み関数" #: ../../c-api/object.rst:360 msgid "repr" msgstr "repr" #: ../../c-api/object.rst:374 msgid "ascii" msgstr "ascii" #: ../../c-api/object.rst:384 msgid "string" msgstr "string" #: ../../c-api/object.rst:384 msgid "PyObject_Str (C function)" msgstr "PyObject_Str (C 関数)" #: ../../c-api/object.rst:403 msgid "bytes" msgstr "bytes" #: ../../c-api/object.rst:456 msgid "hash" msgstr "hash" #: ../../c-api/object.rst:490 msgid "type" msgstr "type" #: ../../c-api/object.rst:511 msgid "len" msgstr "len"