You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中带浮点数格式的字符串转整数报错问题求助

问题解决:带小数点的字符串转整数报错

核心原因:int()的参数要求

不管是Python 2.7还是Python 3,int()函数接收字符串参数时,仅支持纯整数格式的字符串(不能包含小数点)。这就是你运行int('3.3')或int('3.0')时报错的原因——这些字符串不符合整数字面量的规范。

正确的转换方式

要把带小数点的字符串转为整数,需要先将字符串转为浮点数,再转换为整数(转换时会自动截断小数部分):

typConvInt = int(float('3.3'))
print(typConvInt)  # 输出 3

针对'3.0'的情况,同样适用这个方法:

conv2 = int(float('3.0'))
print(conv2)  # 输出 3

参考文档翻译(Python 3 标准类型文档)

class int(x=0)
class int(x, base=10)
返回一个由数字或字符串x构造的整数对象,未传参时默认返回0。若x是字符串,它必须是可选符号前缀('+'/'-')后跟指定进制(默认10进制)的整数数字组成的合法字符串。参数base可取0或2-36之间的整数;若base为0,则根据字符串前缀判断进制:'0b'/'0B'代表二进制,'0o'/'0O'代表八进制,'0x'/'0X'代表十六进制,无前缀则默认十进制。

关于教程的疑问

你提到的教程称int('3.3')应返回3,这大概率是教程描述有误,正确流程必须包含先转浮点数的步骤。

内容的提问来源于stack exchange,提问作者Sunil G.V.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 12:05:00