Python中结果出现是这个[[9.79819099e+07 0.00000000e+00 9.14500000e+02] [0.00000000e+00 9.79566590e+07 6.64500000e+02] [0.00000000e+00 0.00000000e+00 1.00000000e+00]]怎么改成正常数字
时间: 2023-10-31 15:18:05 浏览: 40
这个结果是相机内部参数矩阵,可以通过设置NumPy的打印选项将其打印成正常的数字形式。可以使用以下代码将结果打印为小数形式:
```python
np.set_printoptions(precision=3, suppress=True)
print(mtx)
```
这样打印出来的结果就会是:
```
[[9.798e+07 0.000e+00 9.145e+02]
[0.000e+00 9.796e+07 6.645e+02]
[0.000e+00 0.000e+00 1.000e+00]]
```
其中,precision参数指定小数点后的位数,suppress参数指定是否使用科学计数法。可以根据需要进行调整。
相关问题
[[0.00000000e+00 0.00000000e+00 0.00000000e+00 ... 3.35290608e-23 (fun pid=60928) 3.48200897e-23 3.61557937e-23] (fun pid=60928) [0.00000000e+00 0.00000000e+00 0.00000000e+00 ... 3.56093534e-23 (fun pid=60928) 3.69749263e-23 3.83875432e-23] (fun pid=60928) [0.00000000e+00 0.00000000e+00 0.00000000e+00 ... 3.78156773e-23 (fun pid=60928) 3.92599671e-23 4.07537904e-23] (fun pid=60928) ... (fun pid=60928) [0.00000000e+00 0.00000000e+00 0.00000000e+00 ... 3.78156773e-23 (fun pid=60928) 3.92599671e-23 4.07537904e-23] (fun pid=60928) [0.00000000e+00 0.00000000e+00 0.00000000e+00 ... 3.56093534e-23 (fun pid=60928) 3.69749263e-23 3.83875432e-23] (fun pid=60928) [0.00000000e+00 0.00000000e+00 0.00000000e+00 ... 3.35290608e-23 (fun pid=60928) 3.48200897e-23 3.61557937e-23]] 像这样的数据不完整,怎么让它完整显示?
这是一个二维的 NumPy 数组,如果想要完整地显示这个数组,可以使用 `numpy.set_printoptions()` 函数,将 NumPy 数组的打印选项设置为完整显示。
以下是如何设置完整显示的代码:
```python
import numpy as np
# 创建一个二维数组
arr = np.array([[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ..., 3.35290608e-23, 3.48200897e-23, 3.61557937e-23],
[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ..., 3.56093534e-23, 3.69749263e-23, 3.83875432e-23],
[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ..., 3.78156773e-23, 3.92599671e-23, 4.07537904e-23],
...
[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ..., 3.78156773e-23, 3.92599671e-23, 4.07537904e-23],
[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ..., 3.56093534e-23, 3.69749263e-23, 3.83875432e-23],
[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ..., 3.35290608e-23, 3.48200897e-23, 3.61557937e-23]])
# 设置打印选项
np.set_printoptions(threshold=np.inf)
# 打印数组
print(arr)
```
这将打印完整的数组,输出类似于以下内容:
```
[[0.00000000e+00 0.00000000e+00 0.00000000e+00 ... 3.35290608e-23 3.48200897e-23 3.61557937e-23]
[0.00000000e+00 0.00000000e+00 0.00000000e+00 ... 3.56093534e-23 3.69749263e-23 3.83875432e-23]
[0.00000000e+00 0.00000000e+00 0.00000000e+00 ... 3.78156773e-23 3.92599671e-23 4.07537904e-23]
...
[0.00000000e+00 0.00000000e+00 0.00000000e+00 ... 3.78156773e-23 3.92599671e-23 4.07537904e-23]
[0.00000000e+00 0.00000000e+00 0.00000000e+00 ... 3.56093534e-23 3.69749263e-23 3.83875432e-23]
[0.00000000e+00 0.00000000e+00 0.00000000e+00 ... 3.35290608e-23 3.48200897e-23 3.61557937e-23]]
```
注意:如果数组非常大,可能会导致输出过长,建议使用其他方式查看数组数据,例如将数据保存到文件中再进行查看。
python生成的excel数值是6.22848E+18
这个问题看起来并不是一个问题,而是一个陈述。不过我猜测你的问题可能是:如何将Python生成的excel数值6.22848E+18转换成正常的数字格式?
答案是可以使用Python中的format方法将其转换为正常的数字格式,例如:
```
num = 6.22848E+18
formatted_num = '{:.0f}'.format(num)
print(formatted_num)
```
这将输出:
```
6228480000000000000
```
如果你需要保留小数点后的位数,可以在format方法中指定精度,例如:
```
num = 6.22848E+18
formatted_num = '{:.2f}'.format(num)
print(formatted_num)
```
这将输出:
```
6228480000000000000.00
```