评估字符串时遇到溢出

问题描述 投票:0回答:1

当我尝试根据给定的 x1、x2、...从字符串中计算表达式 f(x1、x2、...) 时出现此错误

I = eval(string)

<string>:1: RuntimeWarning: overflow encountered in long_scalars

字符串代表一个很长的表达式(~ MBs in txt 文件)并且包含巨大的数字(> int32),我想知道我该如何解决这个问题?有没有办法为 eval 中涉及的计算定义数据类型(我猜 int64 可能有效)?

谢谢!

python python-3.x string overflow eval
1个回答
1
投票

是的,

int64
会起作用。

请把你的

int32
改成
int64
.

一个

int32
中可存储的最大值是
2**31-1

© www.soinside.com 2019 - 2024. All rights reserved.