字符串型的数字相加减_Python 基础知识全篇-数字(Numbers)

b1b1c60e7d2cf25b15f1c166a5674397.png

整数

整数的基本操作如你预想的那样,相对直观简洁。相加和相减就用加号和减号,乘法用星号,除法用斜杠,幂乘用双星号

print(3+2)
print(3-2)
print(3*2)
print(3/2)
print(3**2)

也可以用括号改变计算顺序。


standard_order = 2+3*4
print(standard_order)
my_order = (2+3)*4
print(my_order)

浮点型数字

浮点型数字指代的是带小数点的数字。大多数情况下,你可以把浮点型数字想象成小数。

print(0.1+0.1)

但是有时候得到的答案并不如预想的那样。如下所示:

print(0.1+0.2)

事实上,这跟 Python 无关。生活中我们常用十进制来算术,但是计算机是用二进制来计算的。0.1 和 0.2 都要换算成二进制的才能进行计算,得到的结果也是二进制的。在二进制中,没有表示0.3的确切的数字,也就变成了我们看到的结果。

不要担心这种事情,Python 为我们解决了这个问题,稍后会讲。

你可以用其他计算得到同样的结果:

print(3 * 0.1)
3 * 0.1 == 0.3

Decimal 模块

decimal 模块提供了修正十进制浮点数的运算。它的优点如下:

  • Decimal 模块可以使小数精确表示。
  • 用户可自定义修改精度。
  • 模块设计主要围绕三个概念:十进制数、算术上下文和信号。

参阅

What Every Computer Scientist Should Know About Floating-Point Arithmetic​docs.oracle.com decimal module​docs.python.org

decimal 实例

from decimal import Decimal, getcontext
getcontext().prec = 17
result = 3 * Decimal(0.1)
print(type(result))
print(3 * Decimal(0.1))
print(3 * 0.1)

动手试一试

Arithmetic

  • 动手写一个程序,在程序中进行加,减,乘,除,幂乘等基本运算。

Order of Operations

  • 写出一个算术表达式。
  • 利用圆括号打印不同顺序下的表达式结果。

Long Decimals

  • 你已经知道在 Python 中,0.1+0.2=0.30000000000000004。找出另外几种能够得到一个很长小数的运算。
# Ex : Arithmetic
a = 6
b = 5
print("a + b = ", end='')
o = a+b
print(o)
# Ex : Order of Operations
result = (3*4)+2
print('The result of the calculation of (3*4)+2', result, sep=' = ')
# Ex : Long Decimals
print(3.125 / 0.2)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值