Python 数字模块

来源:互联网 发布:织梦cms gbk utf8 编辑:程序博客网 时间:2024/06/03 16:20

Python 数字模块

首先申明下,本文为笔者学习《Python学习手册》的笔记,并加入笔者自己的理解和归纳总结。

1、math模块

(1) math模块包括pi和e等常量。
>>> import math>>> math.pi3.141592653589793>>> math.e2.718281828459045
(2) math模块包括sqrt()、pow()、floor()、trunc()等方法。
>>> math.sqrt(144)                       # 平方根函数12.0>>> math.pow(2, 8)                       # 幂函数256.0>>> math.pow(16, 0.5)                    # 幂函数可以为浮点4.0>>> math.floor(2.3), math.floor(2.5)     # 正数时向下取整,返回浮点型(2.0, 2.0)>>> math.floor(-2.3), math.floor(-2.5)   # 负数时向下取整,返回浮点型(-3.0, -3.0)>>> math.trunc(2.3), math.trunc(2.5)     # 正数时向下取整,返回整型(2, 2)>>> math.trunc(-2.3), math.trunc(-2.5)   # 负数时向上取整,返回整型(-2, -2)
(3) math模块还包括正弦等三角函数。
>>> math.sin(math.pi/4)                  # 正弦函数0.7071067811865475>>> math.cos(math.pi)                    # 余弦函数-1.0

2、random模块

random模块用来取随机数。
>>> import random>>> random.random()                      # random()方法取0到1之间的值。0.3788712019895373>>> random.randint(3, 8)                 # randint()方法取两者之间的值。6>>> random.choice([1, 3, 5, 7])          # choice()方法取列表中的某个值。3>>> random.choice(["a", 'b', 'c', 'd'])  # choice()方法支持其他类型列表。'b'

3、Decimal模块

(1) Decimal模块用于高精度计算。
>>> 0.1 + 0.1 + 0.1 - 0.3                # 并没有返回预期中的值0.05.551115123125783e-17>>> from decimal import Decimal          # 从decimal模块中导入Decimal>>> Decimal("0.1") + Decimal("0.1") + Decimal("0.1") - Decimal("0.3")Decimal('0.0')
(2) 设置精度小数位。
>>> import decimal>>> decimal.Decimal(1) / decimal.Decimal(3)Decimal('0.3333333333333333333333333333')>>> decimal.getcontext().prec = 6        # 设置6位小数精度>>> decimal.Decimal(1) / decimal.Decimal(3)Decimal('0.333333')

4、Fraction模块

Fraction模块实现了分数类型。
>>> from fractions import Fraction       # 从fractions模块中导入Fraction>>> Fraction(1, 3)                       # 1/3Fraction(1, 3)>>> Fraction(18, 24)                     # Fraction简化Fraction(3, 4)>>> Fraction("1.25"), Fraction("0.0625") # 转化浮点型(Fraction(5, 4), Fraction(1, 16))>>> Fraction(1, 3) + Fraction(5, 12)     # 分数支持简单操作Fraction(3, 4)

0 0