Python 3 整数类型 ( Number )

Python 所有的数字都是 Nunber 类型

数据类型是不允许改变的,如果改变了 Number 数据类型的值,将重新分配内存空间

下面的代码在变量赋值时 Number 对象将被创建

var1 = 1
var2 = 10

创建的 Number 对象可以使用 del 语句删除其引用

del var1[,var2[,var3[....,varN]]]]

del 可以同时删除单个或多个对象

del var
del var_a, var_b

数值类型

Python 支持三种不同的数值类型

类型 描述
整型 ( int ) 通常被称为是整型或整数,是正或负整数,不带小数点
浮点型 ( float ) 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示 ( 2.5e2 = 2.5 x 102= 250 )
复数( complex ) 复数由实数部分和虚数部分构成,可以用 a + bj,或者 complex(a,b) 表示, 复数的实部 a 和虚部 b 都是浮点型

我们可以使用十六进制和八进制来代表整数:

>>> number = 0xA0F # 十六进制
>>> number
2575
>>> number=0o37 # 八进制
>>> number
31

范例

int float complex
10 0.0 3.14j
100 15.20 45.j
-786 -21.9 9.322e-36j
080 32.3+e18 .876j
-0490 -90. -.6545+0J
-0x260 -32.54e100 3e+26J
0x69 70.2-E12 4.53e-7j

Python 还支持复数,复数由实数部分和虚数部分构成,可以用 a+bj,或者 complex(a,b) 表示, 复数的实部 a 和虚部 b 都是浮点型

Python 数字运算

Python 解释器可以作为一个简单的计算器

我们可以在解释器里输入一个表达式,它将输出表达式的值

表达式的语法很直白: +, -, * 和 /

>>> 2 + 2
4
>>> 50 - 5*6
20
>>> (50 - 5*6) / 4
5.0
>>> 8 / 5  # 总是返回一个浮点数
1.6

在不同的机器上浮点运算的结果可能会不一样

在整数除法中,除法 (/ ) 总是返回一个浮点数,如果只想得到整数的结果,丢弃可能的分数部分,可以使用运算符 //

>>> 17 / 3  # 整数除法返回浮点型
5.666666666666667
>>>
>>> 17 // 3  # 整数除法返回向下取整后的结果
5
>>> 17 % 3  # %操作符返回除法的余数
2
>>> 5 * 3 + 2 
17

等号(=)用于给变量赋值。赋值之后,除了下一个提示符,解释器不会显示任何结果

>>> width = 20
>>> height = 5*9
>>> width * height
900

Python 可以使用 ** 操作来进行幂运算

>>> 5 ** 2  # 5 的平方
25
>>> 2 ** 7  # 2的7次方
128

变量在使用前必须先"定义"(即赋予变量一个值),否则会出现错误

>>> n   # 尝试访问一个未定义的变量
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'n' is not defined

不同类型的数混合运算时会将整数转换为浮点数

>>> 3 * 3.75 / 1.5
7.5
>>> 7.0 / 2
3.5

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

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

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

Python Number 类型转换函数

下表列出了 Python 内置的类型转换函数

函数 说明
int( x [,base ]) 将 x 转换为一个整数
float( x ) 将 x 转换到一个浮点数
complex( real [,imag ]) 创建一个复数
str( x ) 将对象 x 转换为字符串
repr( x ) 将对象 x 转换为表达式字符串
eval( str ) 用来计算在字符串中的有效 Python 表达式,并返回一个对象
tuple( s ) 将序列 s 转换为一个元组
list( s ) 将序列 s 转换为一个列表
chr( x ) 将一个整数转换为一个字符
unichr( x ) 将一个整数转换为 Unicode 字符
ord( x ) 将一个字符转换为它的整数值
hex( x ) 将一个整数转换为一个十六进制字符串
oct( x ) 将一个整数转换为一个八进制字符串

Python 数学函数

导入模块

import math

下表列出了 Python math 模块提供的数学函数

函数 描述
abs(x) 返回数字的绝对值,如abs(-10) 返回 10
ceil(x) 返回数字的上入整数,如math.ceil(4.1) 返回 5
cmp(x, y) 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1
exp(x) 返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045
fabs(x) 返回数字的绝对值,如math.fabs(-10) 返回10.0
floor(x) 返回数字的下舍整数,如math.floor(4.9)返回 4
log(x) 如math.log(math.e)返回1.0,math.log(100,10)返回2.0
log10(x) 返回以10为基数的x的对数,如math.log10(100)返回 2.0
max(x1, x2,...) 返回给定参数的最大值,参数可以为序列
min(x1, x2,...) 返回给定参数的最小值,参数可以为序列
modf(x) 返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示
pow(x, y) xy 运算后的值
round(x [,n]) 返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数
sqrt(x) 返回数字x的平方根

Python 随机数函数

Python random 模块提供了许多的随机数生成函数

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

导入模块

import random

下表列出了 random 模块提供的随机数函数

函数 描述
random.choice(seq) 从序列的元素中随机挑选一个元素,比如 choice(range(10)),从0到9中随机挑选一个整数
random.randrange ([start,] stop [,step]) 从指定范围内,按指定基数递增的集合中获取一个随机数,基数缺省值为1
random.random() 随机生成下一个实数,它在[0,1)范围内
random.seed([x]) 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择 seed
random.shuffle(lst) 将序列的所有元素随机排序
random.uniform(x, y) 随机生成下一个实数,它在[x,y]范围内

Python math 模块中的三角函数

导入模块

import math

下表列出了 math 模块提供的三角函数

函数 描述
math.acos(x) 返回x的反余弦弧度值
math.asin(x) 返回x的反正弦弧度值
math.atan(x) 返回x的反正切弧度值
math.atan2(y, x) 返回给定的 X 及 Y 坐标值的反正切值
math.cos(x) 返回x的弧度的余弦值
math.hypot(x, y) 返回欧几里德范数 sqrt(xx + yy)
math.sin(x) 返回的x弧度的正弦值
math.tan(x) 返回x弧度的正切值
math.degrees(x) 将弧度转换为角度,如 degrees (math.pi/2) , 返回 90.0
math.radians(x) 将角度转换为弧度

Python math 模块常量

导入模块

import math
常量 描述
math.pi 数学常量 pi ( 圆周率,一般以 π 来表示 )
math.e 数学常量 e,e 即自然常数(自然常数)

Python3 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.