zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Python基本数据类型-Number

Python number 基本 数据类型
2023-06-13 09:12:13 时间

一、分类

  • 整数
  • 浮点数
  • 布尔
  • 复数

二、整数

说明

python可以处理任意大小的整数,包含复数

普通定义

# 普通定义
num1 = 10
# id(变量名):可以查看变量的内存地址
# hex(十进制数字):将十进制数字转为十六进制数字(0x为开头,不是数据内容部分)
print(id(num1), hex(id(num1)))
# type(变量名):可以查看变量的类型,int表示整数数字
print(type(num1))

连续定义

# 连续定义
num2 = num3 = num4 = 5

交互定义

# 交互定义
num5, num6 = 1, 2

探究地址问题

# 探究地址问题(小整数对象【-5~256】)
# 多个变量等于小整数对象,则这些变量的地址相同,因为小整数经常使用,这样的话可以节省空间和提升效率
num7 = 1
num8 = 1
print(id(num7), id(num8)) #地址相同
num9 = 501
num10 = 501
print(id(num9), id(num10)) #地址不相同,需要在Linux下执行

三、浮点数

说明

由整数部分和小数部分组成

注意

运算可能有四舍五入的误差

示例

num1 = 0.123434645
num2 = 0.2
print(num1 + num2)
print(type(num1), hex(id(num1)))
print(num1)

四、布尔值

说明:一个布尔类型的变量只有True、False两种值

作用:作为真假的判断

a = True
b = False
print(a, b)

五、print补充

height = 173.555
print("zutuanxue is a good man!His height is %f"%(height))
print("zutuanxue is a good man!His height is %.2f"%(height))
age = 18
print("zutuanxue is a nice man!He is *%d* years old"%(age))
print("zutuanxue is a nice man!He is *%4d* years old"%(age))
print("zutuanxue is a nice man!He is *%-4d* years old"%(age))

六、数学函数

说明:操作数字的运算

abs

# 求绝对值
num1 = 5
num2 = abs(num1)
print("num2 = %s"%(num2))

max

# 求多个数中的最大值
num3 = max(2,3,5,6,1,5,77,54,2)
print("num3 = %s"%(num3))

min

# 求多个数中的最小值
print(min(2,3,5,6,1,5,77,54,2))

pow

# 求x的y次方   pow(x, y)
print(pow(2,3))

round

# 四舍五入  
# round(x[, n])  【round(x)   round(x, n)】
# 对x进行四舍五入,n表示保留小数点后的多少位
print(round(3.1415926))
print(round(3.1415926, 4))

math.ceil

# 导入数学模块
import math

math.floor

# 向下取整
print(math.floor(10.9))

math.modf

# 得到浮点数的小数部分和整数部分
# 得到的是一个元组,元组的第一个元素为小数部分,第二个元素为整数部分
print(math.modf(10.3))

math.sqrt

# 开平方
print(math.sqrt(10))

七、随机函数

导入随机模块

# 导入随机模块
import random

random.choice

# choice(seq)  
# 从序列(集合)中随机获取一个元素
print(random.choice([1,2,4,3,5,6,7,8,9,0]))

random.randrange

# randrange([start,]stop[,step])
# randrange(start,stop,step)
# randrange(start,stop)
# randrange(stop)
# start:指定范围的开始值,包含在范围内,默认从0开始
# stop:指定范围的结束值,不包含在范围内
# step:指定阶跃值,默认为1
print(random.randrange(1, 10, 2))
print(random.randrange(1, 10))

random.random

# random()
# 随机生成一个实数,范围在[0, 1)之间,得到的是浮点数
print(random.random())

random.uniform

# uniform(x, y)
# 随机生成一个实数,范围在[x, y]之间,得到一个浮点数
print(random.uniform(3, 7))

random.randint

# randint(start, stop)
# 在指定范围[start, stop]内得到一个整数
print(random.randint(1, 4))