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

4.Python 数字类型

Python 数字类型总结

文章目录

      • Python 数字类型总结
        • 1. 数字类型概述
          • 特点
        • 2. 数字类型的创建与赋值
        • 3. 数字类型转换
        • 4. 数学运算与函数
          • `math` 模块
          • `cmath` 模块
        • 5. 随机数生成
        • 6. 三角函数
        • 7. 数学常量
      • 总结

Python 提供了多种数字类型来存储和操作数值数据。这些类型包括整数、浮点数、长整数(在 Python 3 中已与整数合并)和复数。每种类型都有其特定的特性和使用场景。以下是关于 Python 数字类型的详细总结,包括它们的特点、转换方法以及常用的数学和随机数函数。

1. 数字类型概述

Python 支持以下四种主要的数字类型:

  • 整型 (int):表示整数,可以是正数或负数,没有小数部分。
  • 浮点型 (float):表示带有小数部分的实数,支持科学计数法。
  • 复数 (complex):由实部和虚部组成,用 a + bjcomplex(a, b) 表示。
  • 长整型 (long):在 Python 2 中用于表示无限大小的整数,但在 Python 3 中已被移除,统一为 int 类型。
特点
  • 不可变性:所有数字类型都是不可变的,这意味着一旦创建,它们的值就不能被修改。如果需要改变一个数字的值,实际上是创建了一个新的对象。
  • 内存管理:当一个数字对象不再被引用时,Python 的垃圾回收机制会自动释放其占用的内存。
2. 数字类型的创建与赋值
# 整型
x = 42
y = -1000# 浮点型
pi = 3.14159
e = 2.71828
inf = float('inf')  # 正无穷大
ninf = float('-inf')  # 负无穷大
nan = float('nan')  # 非数字# 复数
c = 3 + 4j
d = complex(1, 2)# 长整型(Python 3 中与 int 合并)
z = 123456789012345678901234567890  # 自动处理为 int
3. 数字类型转换

Python 提供了多种内置函数来在不同数字类型之间进行转换:

  • int(x[, base]):将 x 转换为整数,base 可选参数指定进制,默认为 10。
  • float(x):将 x 转换为浮点数。
  • complex(real[, imag]):创建一个复数,realimag 分别是实部和虚部。
  • str(x):将 x 转换为字符串。
  • repr(x):将 x 转换为表达式字符串。
  • eval(str):计算字符串中的有效 Python 表达式,并返回结果。
  • hex(x):将整数 x 转换为十六进制字符串。
  • oct(x):将整数 x 转换为八进制字符串。
# 类型转换
int_value = int(3.5)        # 输出: 3
float_value = float("12.34")  # 输出: 12.34
str_value = str(42)          # 输出: '42'
complex_value = complex(1, 2)  # 输出: (1+2j)
hex_value = hex(255)         # 输出: '0xff'
oct_value = oct(64)          # 输出: '0o100'
4. 数学运算与函数

Python 提供了丰富的数学运算函数,主要位于 mathcmath 模块中。

math 模块

math 模块提供了对浮点数的数学运算函数,如三角函数、指数函数、对数函数等。

import math# 常用数学函数
print(math.sqrt(16))      # 输出: 4.0
print(math.sin(math.pi / 2))  # 输出: 1.0
print(math.log(10))       # 输出: 2.302585092994046
print(math.exp(1))        # 输出: 2.718281828459045
print(math.floor(4.9))    # 输出: 4
print(math.ceil(4.1))     # 输出: 5
print(math.fabs(-10))     # 输出: 10.0
print(math.pow(2, 3))     # 输出: 8.0
print(math.pi)            # 输出: 3.141592653589793
print(math.e)             # 输出: 2.718281828459045
cmath 模块

cmath 模块提供了对复数的数学运算函数,类似于 math 模块,但适用于复数。

import cmath# 复数数学函数
print(cmath.sqrt(-1))     # 输出: 1j
print(cmath.sin(1))       # 输出: (0.8414709848078965+0j)
print(cmath.log10(100))   # 输出: (2+0j)
5. 随机数生成

random 模块提供了生成随机数的功能,广泛应用于模拟、游戏开发等领域。

import random# 生成随机数
print(random.random())          # 输出: [0, 1) 之间的随机浮点数
print(random.uniform(1, 10))    # 输出: [1, 10] 之间的随机浮点数
print(random.randint(1, 10))    # 输出: [1, 10] 之间的随机整数
print(random.choice(['apple', 'banana', 'cherry']))  # 随机选择一个元素
print(random.randrange(0, 10, 2))  # 从 0 到 10 之间按步长 2 选择一个随机整数
items = [1, 2, 3, 4, 5]
random.shuffle(items)           # 随机打乱列表顺序
print(items)
6. 三角函数

math 模块还提供了常见的三角函数,用于角度和弧度之间的转换以及三角运算。

import math# 三角函数
print(math.sin(math.pi / 2))  # 输出: 1.0
print(math.cos(math.pi / 2))  # 输出: 6.123233995736766e-17 (接近 0)
print(math.tan(math.pi / 4))  # 输出: 0.9999999999999999 (接近 1)
print(math.degrees(math.pi))   # 输出: 180.0
print(math.radians(180))       # 输出: 3.141592653589793
7. 数学常量

math 模块中定义了一些常用的数学常量:

  • math.pi:圆周率 π,约等于 3.141592653589793。
  • math.e:自然常数 e,约等于 2.718281828459045。
import mathprint(math.pi)  # 输出: 3.141592653589793
print(math.e)   # 输出: 2.718281828459045

总结

通过上述详细的解释,我们全面介绍了 Python 中的数字类型及其特点、类型转换方法、数学运算函数、随机数生成和三角函数等内容。这些知识不仅涵盖了 Python 数字类型的使用,还包括了许多实用的内置模块和函数,帮助你在编程中更高效地处理数值数据。

如果你有任何具体问题或需要进一步的解释,请随时告诉我!

http://www.lryc.cn/news/504111.html

相关文章:

  • MacOs 日常故障排除troubleshooting
  • (补)算法刷题Day19:BM55 没有重复项数字的全排列
  • golang中的值传递与引用传递,如何理解结构体的方法?
  • linux部署ansible自动化运维
  • docker—私有仓库搭建
  • 【SpringAOP】深入浅出SpringAOP从原理到源码
  • Java 从查询超时到性能提升 (实战讲解)
  • 《C 语言携手 PaddlePaddle C++ API:开启深度学习开发新征程》
  • Mysql之存储过程
  • XV6 开发环境搭建
  • Windows 系统下 Python 环境安装
  • VMware Workstation的有线连接消失了
  • 73页车企大数据平台规划与数据价值挖掘应用咨询项目方案解读
  • MIF格式详解,javascript加载导出 MIF文件示例
  • 若依实现图片上传时自动添加水印
  • 用于日语词汇学习的微信小程序+ssm
  • 【信息系统项目管理师】高分论文:论信息系统项目的范围管理(融媒体发布系统)
  • Kaggler日志--Day5
  • VScode MAC按任意键关闭终端 想要访问桌面文件
  • 小粑记故乡的记忆
  • git使用小记
  • Python实现办公自动化——自动编写word文档
  • 番外篇 | BGF-YOLO:引入双层路由注意力、广义特征金字塔网络和第四检测头,提高YOLOv8检测性能
  • Python运维自动化之字典Dict
  • axios请求拦截器和响应拦截器,封装naive-ui的 Loading Bar加载条和useMessage消息提示
  • 9.Python 条件语句和循环语句
  • 智能家居控制系统设计
  • Windows系统word插入公式自动编号并交叉引用
  • 0.基础语法
  • mysql命令行界面(黑框)的登录