数字类型


数字的介绍— “于高山之巅,方见大河奔涌,于群峰之上,更觉长风浩荡”

在 Python中,数字是一种基本的数据类型,用于表示数值或者进行数值计算。Python 提供了几种不同的数字类型,包括整数、浮点数、复数。

在开始这节课之前,我们需要先了解一个概念叫 内置函数 ,内置函数指的是系统自带的函数功能,可以在程序中直接使用,比如我们之前接触到的 print 函数就是一个内置函数,其功能是将括号里的内容打印在输入框中, 还有很多其他的内置函数比如:

内置函数名称 描述
type 获取目标对象的类型
int 将目标对象强制转换成整数
len 返回序列对象(如字符串、列表、元组等)的长度。
input 用于从用户输入获取数据。
abs 返回数值的绝对值。
range 生成一个整数序列

以上是一些内置函数的例子。在这里可以做粗略了解,后面的教程中我们会详细学习这些内置函数对应的功能。


整数

Python 中的整数和数学中的整数概念是一样的,也就是没有小数部分的数字,整数可以是正数、负数或零。【牧旗教程】

在 Python 中可以通过赋值或公式计算的方式创建整数型变量,例如:

x = 5
y = - 8
z = 0
a = 4 + 6
b = 2 * 5
c = 8 / 4

另外,使用内置函数 int 可以将其他类型的数字转换成整数,int 函数会取数字的整数部分,并不是四舍五入。要注意的是,如果遇到无法换成的数据类型,那么程序运行时会产生报错。

# 创建一个浮点数类型的数据,浮点数就是带小数的数据
number = 3.14
 
# 使用 int 函数强制转换成整数
new_number = int(number)
 
# 输出结果
print(new_number)

运行程序结果如下:

3

此时我们使用 type 内置函数检查一下 new_number 的变量类型:

print(type(new_number))

执行结果如下,可见 new_number 目前的数字类型已经变成了 int 整数类型。【牧旗教程】

<class 'int'>

Python 中的整数是无限精度 ,这意味着它们可以表示任意大或任意小的整数值。相比于其他编程语言中的整数类型, Python 的整数类型可以在需要时动态调整其大小,以适应计算所需的精度。你可以在 Python 中处理非常大的整数,甚至超出其他编程语言所能表示的范围。

比如下面的计算:

# 计算 10 的 100 次方
x = 10 ** 100

在其他编程软件中,10的100次方是一个非常大的数字,通常会发生溢出错误或者精度损失,但在 Python 中却可以精确的呈现出来,这种无限精度整数类型在科学计算、大数计算和精确计算等领域非常有用。


浮点数

浮点数是一种数值类型,用于表示带有小数点的数值。浮点数由整数部分和小数部分组成,可以用于表示非整数和较大范围的数值。

Python 中的浮点数类型是 float ,可以用小数或者指数形式(科学计数法来表示)。

number1 = 3.1415
number2 = 1.23e-4 # 科学计数法
number3 = float(100) # 使用 float 函数将其他类型的数字强制转化成浮点数
print(number1)
print(number2)
print(number3)

运行结果如下:

3.1415
0.000123
100.0

 浮点数在计算机编程中的用途非常广泛,在图形和可视化编程中常用于描述坐标、颜色、光照强度等参数。在游戏开发中经常使用浮点数来表示角色位置、速度、旋转角度、碰撞检测等物理属性。在科学和工程领域,浮点数用于模拟物理过程、数值模型求解、仿真实验等。 在金融计算机领域用于进行利率计算、投资回报率计算、货币兑换、风险评估等。在数据科学和统计分析领域,浮点数用于表示实数数据,例如测量数据、传感器数据、统计数据等。


复数

Python 中的复数和数学中的概念是一样的,用于表示具有实部和虚部的数值。复数的形式为 a + bj,其中 a 是实部,b 是虚部,j 是虚数单位。可以在 Python 中进行快速的运算。

在 Python 中,复数的数据类型是 complex

# 使用虚部+实部来创建复数
z1 = 2 + 3j
z2 = 3 + 5j
 
# 使用 complex 内置函数来创建复数
z3 = complex(2 , 6)
 
# 进行复数的运算,运算的逻辑和数学中是一样的
result1 = z1 + z2
result2 = z2 * z3
 
# 输出结果
print(result1)
print(result2)

运行后结果如下:

5 + 8j
-24 + 28j

例题

假如某个程序要求用户输入一个三位数的整数,然后将该整数的百位、十位和个位数字分别提取出来,并计算它们的和。需要如何设计这个程序呢?【牧旗教程】

input 内置函数可以来获取用户的输入,当程序运行到该函数的位置时会等待用户输入内容,并将输入的内容捕捉到程序中,用户输入完内容后需要按回车键让程序继续执行。

【思路】使用 input 函数可以捕捉到用户输入的内容,将其转化为整数格式后赋予给一个变量,接下来我们依次来计算这个变量的百位、十位、个位的数字。

从数学的逻辑可以得知,计算百位数字可以将这个三位数除 100 后取整数 ,计算十位数字可以将这个三位数除 100 后取余数,再除 10 后取整,计算个位数可以将这个三位数除 10 后取余数。最后将三个结果相加就可以得到最后结果。

根据上面的逻辑可以如下开发代码:

# 将用户输入的三位数转化为整数形式
number = int(input("请输入一个三位数的整数 :"))
 
# 计算个位数字 %是除后取余数的意思
dight_1 = number % 10
 
# # 计算十位的数字 %是除后取余数,//是除后取整数
dight_10 = (number % 100) // 10
 
# 计算百位的数字 %是除后取余数,//是除后取整数
dight_100 = number // 100
 
# 计算总和
sum_all = dight_1 + dight_10 + dight_100
 
# 输出结果
print("该整数的个位数是:", dight_1)
print("该整数的十位数是:", dight_10)
print("该整数的百位数是:", dight_100)
print("该整数的位数总和是:", sum_all)

运行程序,此时会出现一个输入框等待我们手动输入。

请输入一个三位数的整数 :

此时我们随意输入一个三位数字:。

请输入一个三位数的整数 :123

按下【回车键】,输出结果:

该整数的个位数是: 3
该整数的十位数是: 2
该整数的百位数是: 1
该整数的位数总和是: 6

关注公众号【牧旗教程】,回复“更多例题”,获取更多题型进行训练~

您的打赏将帮助维护网站服务器的正常运营,并为作者的后续更新提供更多的动力。

无法显示 无法显示