python 溢出 overflowerror: integer division result too large for a float
当除法的结果太大时,会出现 python 溢出错误 “overflowerror: integer division result too large for a float”。 使用floor除法 //
运算符来解决错误,例如 result = large_num // 5
。
下面是一个产生该错误的示例
large_num = 5**1000
# ⛔️ overflowerror: integer division result too large for a float
result = large_num / 5
除法运算符 /
总是产生一个浮点值,但是浮点数总是占用相同的空间。
为了解决这个错误,我们可以使用 floor 除法//
。
large_num = 5**1000
# ✅ 使用 floor 除法
result = large_num // 5
print(result)
整数的除法 /
产生一个浮点数,而整数的 floor 除法 //
产生一个整数。
使用 floor 除法运算符的结果是数学除法,其中 floor() 函数应用于结果。
只要我们有所需的可用内存,整数就可以存储可变数量的空间。
说明差异的一个好方法是使用带有整数和浮点数的 sys.getsizeof()
方法。
import sys
print(sys.getsizeof(1000)) # 👉️ 28
print(sys.getsizeof(10000000000)) # 👉️ 32
print(sys.getsizeof(3.0)) # 👉️ 24
print(sys.getsizeof(3.00000000000)) # 👉️ 24
sys.getsizeof
方法以字节为单位返回对象的大小。
请注意,整数的大小随着位数的增加而增长,而浮点数占用相同数量的空间,而不管数字由多少位数组成。
转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处
本文地址:
相关文章
pandas dataframe dataframe.shift() 函数
发布时间:2024/04/24 浏览次数:133 分类:python
-
dataframe.shift() 函数是将 dataframe 的索引按指定的周期数进行移位。
python pandas.pivot_table() 函数
发布时间:2024/04/24 浏览次数:82 分类:python
-
python pandas pivot_table()函数通过对数据进行汇总,避免了数据的重复。
pandas read_csv()函数
发布时间:2024/04/24 浏览次数:254 分类:python
-
pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 dataframe 中。
pandas 多列合并
发布时间:2024/04/24 浏览次数:628 分类:python
-
本教程介绍了如何在 pandas 中使用 dataframe.merge()方法合并两个 dataframes。
pandas loc vs iloc
发布时间:2024/04/24 浏览次数:837 分类:python
-
本教程介绍了如何使用 python 中的 loc 和 iloc 从 pandas dataframe 中过滤数据。
在 python 中将 pandas 系列的日期时间转换为字符串
发布时间:2024/04/24 浏览次数:894 分类:python
-
了解如何在 python 中将 pandas 系列日期时间转换为字符串