马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
Hello,大家好,我是漫星闪,是一个最近很高产,并准备冲击一波实习版主的Up主(温馨提示:我不介意先评分再看哦 )。
欸嘿,先放张温迪图养养眼。
今天当题目是不是非常高大上呢,是不是让你感受到了数学老师关爱的眼神,不用担心,这些内容非常简单(比下次还填非常简单还简单呢),只要有小学三年级水平就能轻松掌握哦。
Python呢,一共三种数字类型:整数、浮点数、复数。除了复数之外,都是人人都会哒。
1.整数
所谓整数,在Python中还是很简单的,不像C语言一样,什么 short int ,int ,long int ,long long int。一大堆杂七杂八的,在Python中,整数类型可以有无限大,随你怎么算(想当年我用Python计算12131343**7347673,差点把学校电脑卡崩大家别笑我啊 ),而整数类型在Python中用 int 表示。
2.浮点数
所谓浮点数,顾名思义有个点,哪种数字类型有点呢?还用想吗,当然是小数啰!不过为了考察大家的数学基础,小甲鱼老湿自然是出了一道千古难题:0.1 + 0.2 等于多少,经过我慎密的计算,我发现答案竟然是 0.3,欸嘿,不过我相信一定有小伙伴作弊了吧,看看Python如何看待这个问题吧,答案是:0.30000000000000004?!这就非常,敬伟大的数学家,Python,它引发了一起数学危机!
开玩笑的,这是怎么回事呢,难不成是一个BUG,话不多说,你们在作几个浮点数的运算试试?啊这,莫非Python进化了,有了自己的想法!当然不是,原因其实是因为Python用的是IEEE754标准存储浮点数的,而这个标准经常有误差,而且浮点数有着无限多的小数位,有限的内存怎么可能存放无限大的精度呢?
有解决办法吗?必须得有,不然那么多金融处理都用Python,岂不乱套了?我也要拿出祖产秘方了,调用模块:decimal,十进制模块!
首先导入decimal模块
然后操作对象
a = decimal.Decimal('0.1')
b = decimal.Decimal('0.2')
a + b
Decimal('0.3')
上面就是一个例子。这样虽然很麻烦,不过精准嘛!
当然,还有一点,E记法,即科学计数法,比如我们在Python中输入
0.00000000000000000000000008
8e-26
Python就选择用E记法来表示,因为它太小了。
3.复数
复数即一个实部和一个虚部组成的数。虚部单位有 i , j等,表现形式通常为:1 + 2j,可以通过 x.real 获取实部数值,x.imag 获取虚部数值。
没有评分的快过来评分!!!
|