Est-il possible de définir une classe avec un __getitem__
qui prend un argument tuple
en utilisant l'API C de Python? Le membre sq_item
du membre tp_as_sequence
d'un PyTypeObject
doit être un ssizeargfunc
, donc je ne vois pas comment le faire. (Mais je suppose que le NumPy ndarray
le fait.)__getitem__ méthode avec argument tuple utilisant Python C-API
3
A
Répondre
4
Oui, utilisez tp_as_mapping
à la place.
Son mp_subscript
prend un PyObject *
de sorte que vous pouvez utiliser n'importe quoi comme index/clé.
Pour comprendre comment ils se rapportent, vous pouvez jeter un oeil à la source de PyObject_GetItem()
qui (comme le dit le document) est l'équivalent de l'expression Python o[key]
. Vous verrez qu'il essaie d'abord tp_as_mapping
et si ce n'est pas là et la clé est int
, il essaie tp_as_sequence
.
Questions connexes
- 1. python utilisation __getitem__ pour une méthode
- 2. argument de python __init__ devient un tuple
- 3. Python - Dictionnaire - Modifier __getitem__?
- 4. méthode python Décore avec argument optionnel
- 5. tuple comme argument de fonction
- 6. Comment passer le tuple comme argument en Python?
- 7. Problèmes utilisant self comme argument de méthode dans python
- 8. PyArg_ParseTuple SegFaults dans CApi
- 9. HTTPS utilisant cURL, using openssl avec le moteur capi
- 10. Python utilisant self comme argument
- 11. Subclassing Python tuple avec plusieurs arguments __init__
- 12. python class __getitem__ traitement d'index négatif
- 13. openssl versus windows capi
- 14. Argument de méthode dans le chemin Python
- 15. passe comme argument tuple d'entrée pour scipy.optimize.curve_fit
- 16. C++ Embedded Python: passe le Tuple déclaré en C++ à une méthode d'une classe python
- 17. Accès côté client CAPI
- 18. MS CAPI PRIVATEKEYBLOB RSA *
- 19. Python: TypeError: objet 'NoneType' n'a pas d'attribut '__getitem__'
- 20. python problème d'impression tuple
- 21. en utilisant une méthode avec un argument func dans System.Linq.Dynamic.DynamicQueryable
- 22. Groupement liste tuple Python
- 23. Tuple ascii Python
- 24. Python - Liste de compréhension avec tuple déballer
- 25. Mysql clause SELECT IN avec tuple Python
- 26. Liste 2D avec tuple en Python
- 27. Tuple comparer en python
- 28. Opérations de Tuple Python
- 29. tuple vérification en python
- 30. tuple python à dict