Comment récupérer un objet Python à partir de son identifiant ?

Susan Sarandon
Libérer: 2024-11-14 11:54:01
original
431 Les gens l'ont consulté

How to Recover a Python Object from Its ID?

Récupérer un objet Python à partir de son ID

Lorsque vous travaillez avec des objets Python, l'obtention de leurs identifiants uniques à l'aide de id() fournit des informations précieuses. Cependant, récupérer l’objet lui-même en fonction de son identifiant peut sembler difficile. Cette question explique comment y parvenir.

Solution utilisant ctypes

Pour récupérer un objet à partir de son ID, le module ctypes de Python propose une solution. Si l'objet existe toujours en mémoire, l'extrait de code suivant montre comment le récupérer :

import ctypes
a = "hello world"
print(ctypes.cast(id(a), ctypes.py_object).value)
Copier après la connexion

Ce code convertit l'ID de l'objet (id(a)) en un objet Python à l'aide de ctypes.cast( ). L'objet résultant peut ensuite être consulté et affiché, comme le montre l'exemple ci-dessous :

hello world
Copier après la connexion

Attention

Il est important de noter que cette approche repose sur l'hypothèse que l'objet est toujours présent en mémoire. Toute tentative de récupération d'un objet supprimé ou récupéré entraînera un comportement indéfini. Par conséquent, soyez prudent lorsque vous appliquez cette technique.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal