Python中的浮点数:分步指南

已发表: 2021-08-31

程序员使用不同的数据类型(字符串、整数、复数、浮点数)来存储值,具体取决于他们希望如何操作一个值。 例如,您可能想要运行数学运算,但如果您的数据类型是字符串,则会导致错误。 同样,如果您使用十进制数作为输入,则不能使用整数。

作为编程的原始元素,Python 允许程序员创建浮点对象。 Python 中的内置函数 float() 可让您将整数或字符串等数据类型转换为浮点数。

在本文中,我们将了解 Python 中的 float 是如何工作的,并通过示例探索不同的 float 方法。 我们还将研究如何使用 Python 舍入浮点数在舍入时包含其他参数,并了解如何生成 Python 随机浮点数。 那么,让我们开始吧。

目录

Python中的浮点数是什么?

在计算机科学中,浮点数是一种以十进制格式表示分数或数字的数据类型。 与整数相比,它允许程序员更高程度的精度

在 Python 中,当输入为任意指定值、字符串或数字时,我们使用 float() 方法返回浮点数据类型

句法

float(value) // 其中 value 是字符串或数字

如果要传递参数,它是可选的。 float() 的默认值为 0.0。 如果内置 float() 方法无法从字符串或数字返回浮点数,则会引发 ValueError。 如果您传递的整数超出 Python float() 范围,它也会返回错误。

浮点数在编程中发挥着重要作用,尤其是在表示货币时。 它们在提供广泛使用的图形库中的处理能力方面非常高效。 由于它可以容忍高达七位数的精度引起的舍入误差,因此 float 可以帮助您编写更精确且易于访问的代码。

从世界顶级大学在线学习数据科学课程获得行政 PG 课程、高级证书课程或硕士课程,以加快您的职业生涯。

Python 中的浮点数是如何工作的? Float() 方法示例

以下是您可以在浮动上执行的不同功能:

1. 在 Python 中将整数转换为浮点数

在 Python 中将整数转换为浮点数很简单。 这是一个例子

float_no = 浮动(15)

打印(float_no)

输出:15.0。

2. 在 Python 中将字符串转换为浮点数

Python 中的字符串被认为是字符的集合。 要使用 float() 方法将字符串转换为浮点数,字符串必须以数字格式表示。 这是一个例子:

float_str = 浮动(“15”)

打印(float_str)

输出:15.0。

如果将正 (+) 或负 (-) 符号添加到字符串,该方法会将字符串分别转换为正浮点数或负浮点数

您是否希望将字符串转换为正浮点数或负浮点数。 例如:

float_str = float(“-15”)

打印(float_str)

输出:-15.0

浮点数也可以用科学计数法表示,其中 E 或 e 表示 10 的幂。例如,1.5e3 = 1.5 x 10 3 = 1500)。

这是一个例子:

打印(浮动(2e-002))

打印(浮动(“2e-002”))

打印(浮动('+1E3'))

输出:

0.02

0.02

1000.0

您还可以在字符串中包含无效数字或无穷大值:NaN、无穷大或 inf。

例如:

打印(“真:”,浮动(真))

打印(“假:”,浮动(假))

打印(“南:”,浮动('南'))

打印(“无穷大:”,浮动('inf'))

输出

真:1.0

错误:0.0

楠:楠

无穷大:inf

3. 使用 Float() 进行类型转换

我们现在将使用 float() 来了解它如何处理字符串和整数。 在下面的程序中,我们将类型从整数转换为浮点数:

s=100

打印(“s =”,s)

打印(“之前:”,类型)

s=浮点数

打印(“s =”,s)

打印(“之后:”,类型)

输出

s= 100

之前:<class 'int'>

s= 100.0

之后:<class 'float'>

如果输入不是整数而是字符串,它仍会将其转换为浮点数。 但是,如果字符串包含字符,则会导致 ValueError。

4. Python 中的舍入浮点数

如果您想要一个不太精确的浮点数的近似值,您可以将其四舍五入到您需要的小数点。 例如,将浮点数四舍五入到 5.1235,四舍五入到百分之一是 5.12。

在 Python 中,有一个内置函数 Round() 可以帮助您对浮点数进行舍入。 Python round float 返回一个根据您提供的输入四舍五入的浮点数。 如果未指定小数位,Python 会将其设为 0,然后将其四舍五入为最接近的整数。

语法: round(float_num, num_of_decimals)

  • 两个参数 float_num 和 num_of_decimals 分别表示要舍入的浮点数和要舍入到的小数位。
  • 正如我们上面提到的,num_of_decimals 是可选的。
  • 如果 num_of_decimals 是负整数,Python round float 函数会将其四舍五入到小数点之前的数字。

让我们通过一个例子来理解这一点:

float_num1 = 11.7

float_num2 = 11.4

float_num3 = 11.2345

float_num4 = 11.5678

float_num5= 123.45

打印(圆形(float_num1))

打印(圆形(float_num2))

打印(圆形(float_num3, 2))

打印(圆形(float_num4, 2))

打印(圆形(float_num5,-1))

输出:

12

11

11.23

11.57

120.0

5. 生成 Python 随机浮点数

您可以使用 Python 中的 random() 和 uniform() 方法在您指定的范围内生成随机浮点数。

假设我们的范围是 0 到 1,我们想要生成 3 个随机浮点数:

随机导入

x = random.random()

对于范围内的 i (3):

打印(随机。随机())

跑步

输出

0.54134241344332134

0.13142525490547756

0.75132452526261544

接下来,我们将使用 uniform() 方法指定一个范围以生成随机浮点数。 您的范围可以是 1 到 10 或 32.5 到 52.5,依此类推。

语法:random.uniform(开始,停止)

  • uniform() 函数中的两个参数都是强制性的。 跳过任何人都会导致 TypeError uniform()。
  • start 表示范围的下限。 默认情况下,它假定该值为 0。
  • stop 表示范围内的上限或最后一个数字。

这是一个解释 Python 随机浮点生成的简短程序:

随机导入

打印(随机。统一(10.5,75.5))

打印(随机。统一(10, 100))

输出

27.23469913175497

81.77036292015993

以下是一些需要记住的要点:

  • 如果 start 小于或等于 stop,则会生成一个随机浮点数,即 <= 停止号且 >= 开始号。
  • 如果 stop 大于或等于 start,则 Python 随机浮点数将 >= 停止数和 <= 开始数。

这实质上意味着无论您将范围指定为 1 到 10 还是 10 到 1,random.uniform() 函数都会将其视为相同。

学习 Python 以提升您在数据科学领域的职业发展

与 R、Matlab 和 Stata 等语言相比,Python 具有高度可扩展性,是最快的处理语言之一,因此在数据科学中发挥着不可或缺的作用。 它提供了以多种方式解决给定问题的灵活性和多功能性。 因此,如果您希望在数据科学领域建立职业生涯,强烈建议您通过学习适用于实际场景的编程语言的基本和高级概念来建立 Python 专业知识。 这是如何做:

享受升级学习体验!

我们来自 IIIT 班加罗尔的数据科学执行 PG 计划为期 12 个月,专为新生和中层管理人员设计。 学生将根据他们选择的专业课程的课程,按需教授与行业相关的技能:数据科学通才、深度学习、自然语言处理、商业智能/数据分析、商业分析和数据工程。

更令人印象深刻的是 upGrad 的 40,000 名付费学习者分布在 85 多个国家/地区。 它在全球网络和点对点学习中的重要性是不可否认的。 当您与来自不同背景的同行互动时,您的知识库将不可避免地扩大! 该课程提供超过 400 小时的学习内容和 20 多个现场课程和来自领先教师和行业领导者的专家会议,他们还提供 360 度的职业帮助。

double 和 float 有什么区别?

Float 是 32 位,而 double 是 64 位。 它具有更大的尾数,并显着降低了精度误差。

Python 比 R 更好吗?

两种编程语言都有其独特的优势。 虽然 R 是统计学习的绝佳选择,但 Python 更适合人工智能和机器学习以及数据分析。 它允许您开发大型应用程序。

数据科学是一个很好的职业选择吗?

数据科学在美国被公认为有前途的工作角色,据报道,职位空缺激增了 56%。 这也是收入最高的工作之一。 数据科学家的平均年薪为 120,092 美元。