मैं वर्तमान में निम्नलिखित स्निपेट है:मैं एक numpy मैट्रिक्स का एक अच्छा आउटपुट कैसे बना सकता हूं?
#!/usr/bin/python
# -*- coding: utf-8 -*-
import numpy
from numpy import linalg
A = [[1,2,47,11],[3,2,8,15],[0,0,3,1],[0,0,8,1]]
S = [[113,49,2,283],[-113,0,3,359],[0,5,0,6],[0,20,0,12]]
A = numpy.matrix(A)
S = numpy.matrix(S)
numpy.set_printoptions(precision=2, suppress=True, linewidth=120)
print("S^{-1} * A * S")
print(linalg.inv(S) * A * S)
जो इस उत्पादन का उत्पादन:
वहाँ एक मानक तरीका एक आउटपुट निम्न के समान निर्माण करने के लिए है? मैं यह आउटपुट कैसे प्राप्त कर सकता हूं?
[[ -1 -0.33 0 0]
[ 0 1 0 0]
[ 0 -648 4 0]
[ 0 6.67 0 5]]
क्या अलग है?
- कम से कम स्तंभ
i
का अंतिम वर्ण और स्तंभi+1
का पहला वर्ण के बीच रिक्त स्थान दो, लेकिन यह करता है, तो अधिक की जरूरत है और अधिक हो सकता है - डॉट्स गठबंधन कर रहे हैं ((NumPy उत्पादन दो रिक्त स्थान बनाता है) गठबंधन हैं, लेकिन
BetterPythonConsole
यह भोजनालयों तक) - नहीं
-0
लेकिन0
- नहीं
0.
लेकिन0
के फ़ॉन्ट सेटिंग
संपादित: यह रूप में अगर अजगर कंसोल, जो gEdits के साथ शुरू हो जाता है जब मैं टर्मिनल से इसे शुरू BetterPythonConsole प्लगइन, कुछ अजगर से अलग करता है लगता है।
यह
[email protected]:~/Desktop$ python matrixScript.py
S^{-1} * A * S
[[ -1. -0.33 0. -0. ]
[ 0. -1. -0. 0. ]
[ 0. -648. 4. -0. ]
[ 0. 6.67 0. 5. ]]
ऊपर स्क्रिप्ट के पाठ के रूप में उत्पादन prettyprint के साथ है:
S^{-1} * A * S
matrix([[ -1. , -0.33, 0. , -0. ],
[ 0. , -1. , -0. , 0. ],
[ 0. , -648. , 4. , -0. ],
[ 0. , 6.67, 0. , 5. ]])
यह defenitely भी बदतर है, लेकिन यह एक कोशिश के लायक था।
[numpy.array की सुंदर प्रिंटिंग] के संभावित डुप्लिकेट (http://stackoverflow.com/questions/2891790/pretty-printing-of-numpy-array) – Chris
यह डुप्लिकेट नहीं है। मैंने इस प्रश्न (और उत्तर) को पढ़ा है, लेकिन यह पर्याप्त स्वरूपण प्रदान नहीं करता है। –
क्या आपने 'pprint' की कोशिश की? http://stackoverflow.com/questions/1523660/how-to-print-a-list-in-python-nicely –