So fädeln Sie ein swig-Matrix-Objekt in Python ein
Ich benutze Swig Wrapper vonopenbabel (geschrieben in C ++, und liefern Sie einen Python-Wrapper durch swig)
Unten benutze ich es nur, um eine Molekülstrukturdatei zu lesen und die Unitcell-Eigenschaft davon zu erhalten.
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> >
Die Elementarzelle hat die Funktion CellMatrix (),
unitcell.GetCellMatrix()
<22> <openbabel.matrix3x3; proxy of <Swig Object of type 'OpenBabel::matrix3x3 *' at 0x17b3ecf0> >
Das OpenBabel :: matrix3x3 ist so etwas wie:
1 2 3
4 5 6
7 8 9
Ich frage mich, wie ich den Inhalt der Matrix3 * 3 ausdrucken soll. Ich habe versucht__str__
und__repr__
damit.
Gibt es eine allgemeine Möglichkeit, den Inhalt einer Matrix, die von Swing in Python umhüllt wird, zu fassen?
Vielen Dank