美文网首页
Python 基础知识全篇-数字(Numbers)

Python 基础知识全篇-数字(Numbers)

作者: BABYMISS | 来源:发表于2020-05-19 20:39 被阅读0次

    整数

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

    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.comdecimal 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)

    相关文章

      网友评论

          本文标题:Python 基础知识全篇-数字(Numbers)

          本文链接:https://www.haomeiwen.com/subject/uueiohtx.html