Edit

笔记内容:Number对象

笔记日期:2017-10-23


之前也介绍过Number的简单用法,现在介绍一些Number的一些其他用法和一些相关函数。

  • 数字类型转换

  • 数字运算

  • 数学函数

  • 随机数函数

  • 三角函数

  • 数学常量


数字类型转换

有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可,转换函数如下:

  • int(x) 将x转换为一个整数。

  • float(x) 将x转换到一个浮点数。

  • complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0。

  • complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式。
    代码示例:

a = 20.0
b = 20

print("a转换后的值为:", int(a))
print("此时a的类型为:", type(int(a)))
print("b转换后的值为:", float(b))
print("此时b的类型为:", type(float(b)))
print("a转换后的表达式为:", complex(a))
print("此时a的类型为:", type(complex(a)))
print("a和b转换后的表达式为:", complex(a, b))
print("此时a和b的类型为:", type(complex(a, b)))

运行结果:

 a转换后的值为:20
 此时a的类型为:<class 'int'>
 b转换后的值为:20.0
 此时b的类型为:<class 'float'>
 a转换后的表达式为:(20+0j)
 此时a的类型为:<class 'complex'>
 a和b转换后的表达式为:(20+20j)
 此时a和b的类型为:<class 'complex'>



数字运算

至于运算符之前已经介绍过了,在这里只是介绍一下经过运算后发生的类型转换情况。
当我们使用除法运算符进行运算时,会将运算的结果值自动转换成浮点类型
注意:在不同的机器上浮点运算的结果可能会不一样。
代码示例:

a = 10
b = 20

print(type(a/b))

运行结果:

<class 'float'>

当使用一个整型和一个浮点型的值进行混合运算时,结果值也是浮点类型。
代码示例:

a = 12.33
b = 20

print(type(a/b))

运行结果:

<class 'float'>

在交互模式中,最后被输出的表达式结果被赋值给变量 _ 。例如:

>>> tax = 12.5 / 100
>>> price = 100.50
>>> price * tax
12.5625
>>> price + _
113.0625
>>> round(_, 2)
113.06

此处, _ 变量应被用户视为只读变量。



数学函数

数学函数是用来进行数学相关的计算的,如图:

Alt text


下面演示几个平时有可能用到的函数,代码示例:

import math  # 需要导入math模块

a = 12.33
b = 20

print("b的绝对值是:", abs(b))
print("a舍去小数后的值是:", math.floor(a))
print("b的平方根是:", math.sqrt(b))
print("最大值是:", max(12, 5, 54, 65, 87, 12, 51, 3, 6, 9))
print("最小值是:", min(12, 5, 54, 65, 87, 12, 51, 3, 6, 9))
print("a四舍五入后的值为:", math.ceil(a))

运行结果:

 b的绝对值是: 20
 a舍去小数后的值是: 12
 b的平方根是: 4.47213595499958
 最大值是: 87
 最小值是: 3
 a四舍五入后的值为: 13


随机数函数

随机数可以用于数学,游戏,安全等领域中,还经常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。
Python包含以下常用随机数函数:

Alt text

常用的生成随机数代码示例:

import random

a = random.choice(range(10))
print("生成了一个10以内的随机数:", a)
print("生成了一个0-99的随机整数:",random.randint(0,99))
print("生成了一个1-10的随机浮点数:", random.uniform(1, 10))
print("生成了一个0-1的随机数:", random.random())
print("随机挑选了一个choice里的字符串:", random.choice(['apple', 'pear', 'peach', 'orange', 'lemon']))

运行结果:

 生成了一个10以内的随机数: 4
 生成了一个0-99的随机整数: 7
 生成了一个1-10的随机浮点数: 2.7335927673824765
 生成了一个0-1的随机数: 0.7715090099371151
 随机挑选了一个choice里的字符串: lemon


三角函数

Python包括以下三角函数:

Alt text


数学常量

Alt text