当前位置: 首页 > java >正文

Python3(7) 数字类型

        在 Python 编程世界里,数字类型是处理数值数据的基础。深入理解 Python3 中的数字类型,包括整型、浮点型、复数,以及相关的运算、转换和常用函数,对于编写高效且准确的代码至关重要。这篇博客将结合代码示例,对 Python3 数字相关知识进行全面总结,方便你日后复习回顾。

一、Python3 数字类型基础

(一)数字类型概述

        Python3 支持三种主要的数值类型:整型(int)、浮点型(float)和复数(complex)。数字数据类型具有不可变性,意味着修改数字的值时,会重新分配内存空间。

# 数字对象创建
var1 = 1
var2 = 10

        还可以使用del语句删除数字对象的引用,可删除单个或多个对象。

# 删除对象引用
del var1
del var2, var3  # 假设var3已定义

(二)整型(int)

        整型即整数,包括正整数、负整数,没有小数点。Python3 的整型没有大小限制,可当作 Python2 中的 Long 类型使用,并且布尔类型(bool)是整型的子类型,True等价于 1,False等价于 0。

# 整型示例
num1 = 10
num2 = -20
print(num1, num2)

        此外,Python 还支持用十六进制(前缀0x)和八进制(前缀0o)表示整数。

# 十六进制和八进制整数
hex_num = 0xA0F
oct_num = 0o37
print(hex_num)  # 输出2575
print(oct_num)  # 输出31

(三)浮点型(float)

        浮点型由整数部分和小数部分组成,也可用科学计数法表示。

# 浮点型示例
float_num1 = 2.5
float_num2 = 2.5e2  # 2.5 x 10² = 250
print(float_num1, float_num2)

(四)复数(complex)

        复数由实数部分和虚数部分构成,可表示为a + bjcomplex(a, b),实部a和虚部b都是浮点型。

# 复数示例
complex_num1 = 3 + 4j
complex_num2 = complex(5, 6)
print(complex_num1, complex_num2)

二、数字类型转换

        Python 提供了简单的函数用于数字类型转换。

# 类型转换示例
a = 1.0
int_a = int(a)  # 将浮点数转换为整数
print(int_a)  # 输出1b = 5
float_b = float(b)  # 将整数转换为浮点数
print(float_b)  # 输出5.0c = 7
complex_c = complex(c)  # 将整数转换为复数,实部为7,虚部为0
print(complex_c)  # 输出(7+0j)d = 8
e = 9
complex_d = complex(d, e)  # 将两个数字转换为复数,实部为8,虚部为9
print(complex_d)  # 输出(8+9j)

三、数字运算

(一)基本运算

        Python 解释器可当作计算器使用,支持常见的算术运算符,如+(加)、-(减)、*(乘)、/(除)、//(整除)、%(取余)和**(幂运算) 。

# 基本运算示例
print(2 + 2)  # 输出4
print(50 - 5 * 6)  # 输出20
print((50 - 5 * 6) / 4)  # 输出5.0
print(8 / 5)  # 输出1.6,除法总是返回浮点数
print(17 // 3)  # 输出5,整除返回向下取整后的结果
print(17 % 3)  # 输出2,取余操作返回除法的余数
print(5 * 3 + 2)  # 输出17
print(5 ** 2)  # 输出25,5的平方
print(2 ** 7)  # 输出128,2的7次方

        注意,不同机器上浮点运算结果可能不同,并且//运算结果的数据类型与分母分子有关。

(二)混合运算

        不同类型的数进行混合运算时,整数会转换为浮点数。

# 混合运算示例
print(3 * 3.75 / 1.5)  # 输出7.5
print(7.0 / 2)  # 输出3.5

(三)交互模式下的特殊变量_

        在交互模式中,最后输出的表达式结果会赋值给变量_,但应将其视为只读变量。

# 交互模式下_变量示例
tax = 12.5 / 100
price = 100.50
print(price * tax)  # 输出12.5625
print(price + _)  # 输出113.0625
print(round(_, 2))  # 输出113.06,四舍五入保留两位小数

四、常用数学函数

        Python 提供了丰富的数学函数,需要导入math模块来使用大部分函数(abs()等部分函数可直接使用)。

import math# 数学函数示例
print(abs(-10))  # 输出10,返回绝对值
print(math.ceil(4.1))  # 输出5,返回上入整数
# cmp()函数在Python 3中已废弃,使用(x>y)-(x<y)替换
print(math.exp(1))  # 输出2.718281828459045,返回e的x次幂
print(math.fabs(-10))  # 输出10.0,以浮点数形式返回绝对值
print(math.floor(4.9))  # 输出4,返回下舍整数
print(math.log(math.e))  # 输出1.0,自然对数
print(math.log10(100))  # 输出2.0,以10为底的对数
print(max(1, 3, 5))  # 输出5,返回最大值
print(min(2, 4, 6))  # 输出2,返回最小值
print(math.modf(5.6))  # 输出(0.6, 5.0),返回整数和小数部分
print(math.pow(2, 3))  # 输出8.0,2的3次方
print(round(3.14159, 2))  # 输出3.14,四舍五入保留两位小数
print(math.sqrt(16))  # 输出4.0,返回平方根

五、随机数函数

        在 Python 的random模块中,有许多用于生成随机数的函数,适用于数学、游戏、安全等领域。

import random# 随机数函数示例
print(random.choice(range(10)))  # 从0到9中随机挑选一个整数
print(random.randrange(1, 10, 2))  # 从1到9中,以2为步长的集合里随机获取一个数
print(random.random())  # 随机生成一个[0, 1)范围内的实数
# 改变随机数生成器的种子,不设置时Python会自动选择
random.seed(1) 
my_list = [1, 2, 3, 4, 5]
random.shuffle(my_list)  # 随机打乱列表顺序
print(my_list) 
print(random.uniform(1, 5))  # 随机生成一个[1, 5]范围内的实数

六、三角函数

        Python 的math模块还提供了三角函数相关函数,用于处理角度和弧度的计算。

import math# 三角函数示例
print(math.acos(0.5))  # 返回反余弦弧度值
print(math.asin(0.5))  # 返回反正弦弧度值
print(math.atan(1))  # 返回反正切弧度值
print(math.atan2(1, 1))  # 返回给定坐标的反正切值
print(math.cos(math.pi / 2))  # 返回余弦值
print(math.hypot(3, 4))  # 返回欧几里德范数
print(math.sin(math.pi / 2))  # 返回正弦值
print(math.tan(math.pi / 4))  # 返回正切值
print(math.degrees(math.pi / 2))  # 将弧度转换为角度
print(math.radians(90))  # 将角度转换为弧度

七、数学常量

  math模块中定义了常用的数学常量pi(圆周率)和e(自然常数)。

import math# 数学常量示例
print(math.pi)  # 输出圆周率
print(math.e)  # 输出自然常数

        通过对 Python3 数字类型及其相关知识的学习,你已经掌握了 Python 处理数值数据的核心要点。无论是基础的数字运算,还是复杂的数学函数和随机数应用,这些知识都将成为你 Python 编程道路上的有力工具。希望这篇博客能帮助你在日后的学习和工作中,快速回顾并运用这些知识,提升编程效率。


        在 Python3 中,数字类型是编程的基础元素之一,它广泛应用于各种计算和数据处理场景。本文将全面总结 Python3 中数字类型的相关知识,结合代码示例,方便大家日后复习和回顾。

八、Python3 数字类型概述

Python3 支持四种不同的数字类型,分别是:

  • 整数(int):可以是任意大小的整数,包括正整数、负整数和零,没有大小限制。
  • 浮点数(float):表示带有小数部分的数字,也可以使用科学计数法表示。
  • 复数(complex):由实数部分和虚数部分组成,形式为 a + bj,其中 a 是实数部分,b 是虚数部分。
  • 布尔(bool):只有两个值,True 和 False,在逻辑运算和条件判断中使用。

九、整数(int)

        整数是 Python 中最基本的数字类型,支持常见的数学运算。

代码示例:整数运算

# 定义两个整数
a = 10
b = 3# 加法运算
sum_result = a + b
print(f"{a} + {b} = {sum_result}")# 减法运算
sub_result = a - b
print(f"{a} - {b} = {sub_result}")# 乘法运算
mul_result = a * b
print(f"{a} * {b} = {mul_result}")# 除法运算
div_result = a / b
print(f"{a} / {b} = {div_result}")# 取整除运算
floor_div_result = a // b
print(f"{a} // {b} = {floor_div_result}")# 取模运算
mod_result = a % b
print(f"{a} % {b} = {mod_result}")# 幂运算
pow_result = a ** b
print(f"{a} ** {b} = {pow_result}")

代码解释

        上述代码展示了整数的基本运算,包括加法、减法、乘法、除法、取整除、取模和幂运算。需要注意的是,除法运算 / 的结果是浮点数,而取整除运算 // 会向下取整。


十、浮点数(float)

        浮点数用于表示带有小数部分的数字,可以使用小数形式或科学计数法表示。

代码示例:浮点数运算

# 定义两个浮点数
x = 2.5
y = 1.2# 加法运算
sum_float = x + y
print(f"{x} + {y} = {sum_float}")# 乘法运算
mul_float = x * y
print(f"{x} * {y} = {mul_float}")

代码解释

        浮点数的运算和整数类似,但由于浮点数在计算机中的存储方式,可能会出现一些精度问题。例如:

result = 0.1 + 0.2
print(result)  # 输出结果可能不是精确的 0.3

十一、复数(complex)

        复数由实数部分和虚数部分组成,使用 j 或 J 表示虚数单位。

代码示例:复数运算

# 定义两个复数
c1 = 3 + 4j
c2 = 1 + 2j# 加法运算
sum_complex = c1 + c2
print(f"{c1} + {c2} = {sum_complex}")# 乘法运算
mul_complex = c1 * c2
print(f"{c1} * {c2} = {mul_complex}")# 获取复数的实部和虚部
real_part = c1.real
imag_part = c1.imag
print(f"复数 {c1} 的实部是 {real_part},虚部是 {imag_part}")

代码解释

        上述代码展示了复数的加法和乘法运算,以及如何获取复数的实部和虚部。


十二、布尔(bool)

        布尔类型只有两个值,True 和 False,常用于逻辑运算和条件判断。

代码示例:布尔运算

# 定义两个布尔值
p = True
q = False# 逻辑与运算
and_result = p and q
print(f"{p} and {q} = {and_result}")# 逻辑或运算
or_result = p or q
print(f"{p} or {q} = {or_result}")# 逻辑非运算
not_result = not p
print(f"not {p} = {not_result}")

代码解释

        布尔类型的逻辑运算包括与(and)、或(or)和非(not)运算,这些运算在条件判断和循环控制中非常有用。


十三、数字类型的转换

        在 Python 中,可以使用内置函数进行数字类型的转换。

代码示例:数字类型转换

# 整数转换为浮点数
num_int = 5
num_float = float(num_int)
print(f"整数 {num_int} 转换为浮点数是 {num_float}")# 浮点数转换为整数
float_num = 3.7
int_num = int(float_num)  # 直接截断小数部分
print(f"浮点数 {float_num} 转换为整数是 {int_num}")# 整数转换为布尔值
int_val = 1
bool_val = bool(int_val)
print(f"整数 {int_val} 转换为布尔值是 {bool_val}")# 布尔值转换为整数
bool_var = True
int_var = int(bool_var)
print(f"布尔值 {bool_var} 转换为整数是 {int_var}")

代码解释

        上述代码展示了整数、浮点数和布尔值之间的相互转换。需要注意的是,将浮点数转换为整数时,会直接截断小数部分。


十四、数学函数和随机数生成

        Python 提供了丰富的数学函数和随机数生成函数,这些函数可以在 math 模块和 random 模块中找到。

代码示例:数学函数和随机数生成

import math
import random# 数学函数示例
num = 4
sqrt_result = math.sqrt(num)
print(f"{num} 的平方根是 {sqrt_result}")# 随机数生成示例
random_num = random.randint(1, 10)  # 生成 1 到 10 之间的随机整数
print(f"生成的随机整数是 {random_num}")

代码解释

        上述代码展示了如何使用 math 模块中的 sqrt 函数计算平方根,以及使用 random 模块中的 randint 函数生成随机整数。


总结

        Python3 中的数字类型包括整数、浮点数、复数和布尔值,每种类型都有其特点和应用场景。同时,Python 提供了丰富的运算和函数,方便我们进行数字处理和计算。通过掌握这些知识,我们可以更加高效地进行 Python 编程。希望本文能帮助大家复习和回顾 Python3 数字类型的相关内容。

http://www.xdnf.cn/news/1420.html

相关文章:

  • 穿越链路的旅程:深入理解计算机网络中的数据链路层
  • OpenVINO教程(五):实现YOLOv11+OpenVINO实时视频目标检测
  • Qt实战之将自定义插件(minGW)显示到Qt Creator列表的方法
  • Stable Baselines3 结合 gym 训练 CartPole 倒立摆
  • 【C++】vector扩容缩容
  • 2025/4/23 心得
  • 视频图片去水印处理图像 HitPaw Watermark Remover 软件工具WIN
  • MacOS中安装Python(homebrew,pyenv)
  • Java实现插入排序算法
  • 杭电oj(1087、1203、1003)题解
  • 云原生--CNCF-3-核心工具介绍(容器和编排、服务网格和通信、监控和日志、运行时和资源管理,安全和存储、CI/CD等)
  • gtest、gmock的使用
  • Google搜索技巧
  • 【官方正版,永久免费】Adobe Camera Raw 17.2 win/Mac版本 配合Adobe22-25系列软
  • 若依项目部署小结
  • OSPF的优化
  • 进程(Process)详解
  • 【自然语言处理与大模型】大模型参数规模与部署配置调查2025第一季度
  • LSA六种类型
  • VScode
  • 5.3 分布式事务
  • git lfs下载大文件限额
  • 查询Hologres或postgresql中的数据
  • php基础
  • 算法训练营第一天|704.二分查找、27.移除元素、977.有序数组的平方
  • 集结号海螺捕鱼组件搭建教程与源码结构详解(第四篇)
  • crictl 拉取镜像报错 Unimplemented desc = unknown service runtime.v1.ImageService
  • redis 使用 Docker 部署 简单的Redis 集群(包括哨兵机制)
  • 修电脑之电脑没有声音
  • 武装Burp Suite工具:xia SQL自动化测试_插件