【python系列】python数据类型之数字类型

devtools/2024/11/17 0:30:57/

1.定义

数字类型是编程中最常用的数据类型。什么是数字类型,下面是数字类型官方文档的解释:https://docs.python.org/zh-cn/3.10/library/stdtypes.html?highlight=str%20join#numeric-types-int-float-complex
在这里插入图片描述

以上可以知道:

  • 数字类型包括:整数、浮点数以及复数
  • 布尔值属于整数的子类型
  • 数字是由数字字面值或内置函数与运算符的结果来创建的

2. 数字类型的操作

2.1 整数类型(int)

在 Python 中,整数类型(int)表示没有小数部分的数字。Python 的 int 类型是有符号的,这意味着它可以表示正整数、负整数和零。

示例:

python">a = 10
b = -5
c = 0
  • 无限大整数:Python 的整数类型没有固定的大小限制,因此你可以创建非常大的整数,甚至超过硬件限制。

示例:

python">large_number = 1234567890123456789012345678901234567890
print(large_number)

2.2 浮点数类型(float)

浮点数类型(float)表示包含小数部分的数字。它是 Python 中用于表示实数的数据类型,通常使用十进制表示。

示例:

python">a = 3.14
b = -0.001
c = 2.0
  • 精度问题:浮点数在计算机中以二进制形式存储,因此存在一定的精度误差。例如,0.1 在 Python 中的表示可能不是精确的 0.1。

示例:

python">print(0.1 + 0.2)  # 输出 0.30000000000000004

为了避免浮点数的精度误差,通常使用 Decimal 类型(decimal 模块)来进行高精度计算。

2.3 复数类型(complex)

复数类型(complex)用于表示复数。复数有实部和虚部,Python 使用 j 或 J 来表示虚部。

示例:

python">a = 3 + 4j
b = 1 - 2j

复数运算:可以对复数进行加、减、乘、除等运算,也可以提取复数的实部和虚部。

示例:

python"># 复数相加
c = a + b
print(c)  # 输出 (4+2j)# 获取实部和虚部
real_part = a.real
imaginary_part = a.imag
print(real_part, imaginary_part)  # 输出 3.0 4.0

2.4 数字类型的转换

在 Python 中,你可以很方便地将一种数字类型转换为另一种数字类型。

示例:

python"># 从浮点数转换为整数
x = 3.9
y = int(x)  # 结果为 3# 从整数转换为浮点数
a = 5
b = float(a)  # 结果为 5.0

注意:当从浮点数转换为整数时,Python 会直接截断小数部分,而不是四舍五入。

2.5 常见的数学操作

Python 提供了大量的数学运算符和函数来处理数字类型。常见的数学操作包括加法、减法、乘法、除法、取余等。

示例:

python">x = 10
y = 3print(x + y)  # 加法
print(x - y)  # 减法
print(x * y)  # 乘法
print(x / y)  # 除法(结果为浮点数)
print(x // y) # 整数除法(结果为整数)
print(x % y)  # 取余

补充:https://docs.python.org/zh-cn/3.10/library/stdtypes.html?highlight=str%20join#numeric-types-int-float-complex
在这里插入图片描述

2.6 数学模块

Python 提供了 math 模块,里面包含了许多数学相关的函数,比如求平方根、指数运算、三角函数等。

示例:

python">import mathprint(math.sqrt(16))  # 4.0
print(math.pow(2, 3))  # 8.0
print(math.sin(math.radians(90)))  # 1.0

2.7 数字类型的常见问题与解决方案

  • 精度误差:浮点数的精度误差是常见的问题。如果需要高精度计算,可以使用 decimal 模块或 fractions 模块。
  • 类型转换:在进行数学运算时,数据类型之间的隐式转换可能导致意外结果。建议显式地转换数据类型,避免意外的行为发生。

3.总结

Python 的数字类型包括整数、浮点数和复数,满足了大部分数学计算的需求。掌握这些基本的数据类型和运算方式是学习 Python 编程的基础。通过灵活使用 Python 内置的运算符和 math 模块,你可以在编程中高效地处理数字类型。


http://www.ppmy.cn/devtools/134574.html

相关文章

回调函数的概念、意义和应用场景

概念 回调函数,就是使用者自己定义一个函数,并实现函数的内容,然后把这个函数作为参数传入其它函数中,由其它函数在运行时来调用。 换句话说,函数是你实现的,但由别人的函数在运行时通过参数传递的方式调用…

flutter下拉刷新上拉加载的简单实现方式三

使用 CustomScrollView 结合 SliverList 实现了一个支持下拉刷新和上拉加载更多功能的滚动列表,对下面代码进行解析学习。 import dart:math;import package:flutter/material.dart;import custom_pull/gsy_refresh_sliver.dart; import package:flutter/cupertino…

hhdb数据库介绍(9-14)

SQL语法支持 DML语句 在关系集群数据库中,DML语句的逻辑将变的更为复杂。计算节点将DML语句分为两大类:单库DML语句与跨库DML语句。 单库DML语句,指SQL语句只需在一个节点上运行,即可计算出正确结果。假设分片表customer分片字…

杨中科 .Net Core 笔记 DI 依赖注入2

ServiceCollection services new ServiceCollection();//定义一个承放服务的集合 services.AddScoped<iGetRole, GetRole>();using (ServiceProvider serviceProvider services.BuildServiceProvider()) {var list serviceProvider.GetServices(typeof(iGetRole));//获…

力扣题目解析--合并两个链表

题目 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1&#xff1a; 输入&#xff1a;l1 [1,2,4], l2 [1,3,4] 输出&#xff1a;[1,1,2,3,4,4]示例 2&#xff1a; 输入&#xff1a;l1 [], l2 [] 输出&#xff…

Java基础:内部类

欢迎来到“雪碧聊技术”CSDN博客&#xff01; 在这里&#xff0c;您将踏入一个专注于Java开发技术的知识殿堂。无论您是Java编程的初学者&#xff0c;还是具有一定经验的开发者&#xff0c;相信我的博客都能为您提供宝贵的学习资源和实用技巧。作为您的技术向导&#xff0c;我将…

密码学在网络安全中的应用

密码学作为网络安全领域的核心技术之一&#xff0c;发挥着举足轻重的作用。以下是对密码学在网络安全中应用的详细阐述&#xff1a; 一、数据加密密码学通过加密算法将明文转换为密文&#xff0c;以防止未经授权的个人或机构获取敏感信息。这主要包括&#xff1a;对称加密&…

正点原子IMX6ULL--嵌入式Linux开发板学习中常用命令和笔记记录

学习路线图 传驱动文件 sudo cp chrdevbase.ko chrdevbaseApp /home/txj/linux/nfs/rootfs/lib/modules/4.1.15/ -f bootcmd setenv bootcmd tftp 80800000 zImage;tftp 83000000 imx6ull-alientek-emmc.dtb;bootz 80800000 - 83000000 setenv bootcmd tftp 80800000 zImag…