J'utilise wrapper rasade de openbabel (écrit en C++, et de fournir un emballage de python par rasade)Comment stringfy un objet matrice rasade en python
Ci-dessous je viens de l'utiliser pour lire un fichier de structure moléculaire et obtenir la propriété unitcell de celui-ci.
import pybel
for molecule in pybel.readfile('pdb','./test.pdb'):
unitcell = molecule.unitcell
print unitcell
|..>
|..>
<openbabel.OBUnitCell; proxy of <Swig Object of type 'OpenBabel::OBUnitCell *' at 0x17b390c0> >
Le unitcell a la fonction CellMatrix(),
unitcell.GetCellMatrix()
<22> <openbabel.matrix3x3; proxy of <Swig Object of type 'OpenBabel::matrix3x3 *' at 0x17b3ecf0> >
le OpenBabel :: MATRIX3X3 est quelque chose comme:
1 2 3
4 5 6
7 8 9
Je me demande comment imprimer le contenu du Matrix3 * 3. J'ai essayé __str__
et __repr__
avec elle.
Une manière générale de filtrer le contenu d'une matrice enveloppée par swing en python?
grâce
Deux problèmes avec cette réponse: 1. La mémoire pointée sur est libérée avant que vous reveniez de votre fonction et 2. SWIG supporte 'std :: string', mais vous devez d'abord faire'% include '. –
Flexo