python 输出数字,如何不以科学计数法输出?
概述
利用numpy设置输出选项即可
代码解析
1、未使用numpy设置:
import time # time 时间类
print(time*time*1000) #输出一个非常大的数字
#out:
6.30e1352
由此可以看到,默认输出是以科学计数方式输出
2、使用numpy设置print的输出选项:
import numpy as np
import time
np.set_printoptions(suppress=True) #设置print选项的参数
print(time*time*1000)
#out
6301829436782946134
拓展内容
numpy
NumPy是Python语言的一个扩充程序库。支持高阶大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。NumPy的前身Numeric最早是由Jim Hugunin与其它协作者共同开发,2005年,Travis Oliphant在Numeric中结合了另一个同性质的程序库Numarray的特色,并加入了其它扩展而开发了NumPy。NumPy为开放源代码并且由许多协作者共同维护开发。
NumPy引用CPython(一个使用字节码的解释器),而在这个Python实现解释器上所写的数学算法代码通常远比编译过的相同代码要来得慢。为了解决这个难题,NumPy引入了多维数组以及可以直接有效率地操作多维数组的函数与运算符。因此在NumPy上只要能被表示为针对数组或矩阵运算的算法,其运行效率几乎都可以与编译过的等效C语言代码一样快。
1、可以用python的numpy包
NumPy是使用Python进行科学计算的基础包。它包含其他内容:
一个强大的N维数组对象
复杂的(广播)功能
用于集成C / C ++和Fortran代码的工具
有用的线性代数,傅里叶变换和随机数功能
除了明显的科学用途外,NumPy还可以用作通用数据的高效多维容器。可以定义任意数据类型。这使NumPy能够无缝快速地与各种数据库集成。
2、安装numpy
pip install numpy
3、代码如下:
import numpy
import time
numpy.set_printoptions(suppress=True)
print(time.time()*1000)
4、效果
'{:g}'.format(num)
用这个,它会自动判断是否以科学计数法输出
'{:E}'.format(num) #以科学计数法输出
跑一下就明白了
import time
a = time.time()*1000
print a
print type(a)
print int(a)
print long(a)
a = 8889785324231242352352343241232131231314353244234432523634513123243243634745734531231432436345
print type(a)
2015-12-02
就算是string类型 你还可以float(b) 在得到float
这样的话,得到的就不是用科学计数法表示的数了