Python 把 Object 转换成 int 的方法详解

掌握 Python 中安全、高效地将对象转为整数的技巧

什么是 int() 函数?

在 Python 中,int() 是一个内置函数,用于将其他类型的对象转换为整数(int)类型。它支持多种输入类型,包括字符串、浮点数、布尔值,甚至自定义对象(需实现特定方法)。

基本用法示例

1. 字符串转整数

s = "123"
num = int(s)
print(num)  # 输出: 123

⚠️ 注意:字符串必须表示有效的整数,否则会抛出 ValueError

2. 浮点数转整数

f = 45.67
num = int(f)
print(num)  # 输出: 45(直接截断小数部分)

3. 布尔值转整数

print(int(True))   # 输出: 1
print(int(False))  # 输出: 0

处理异常:安全转换

使用 try...except 避免程序崩溃:

def safe_int(obj, default=0):
    try:
        return int(obj)
    except (ValueError, TypeError):
        return default

print(safe_int("abc"))     # 输出: 0
print(safe_int("42"))      # 输出: 42
print(safe_int(None))      # 输出: 0

自定义对象支持 int() 转换

通过在类中定义 __int__() 方法,可以让自定义对象被 int() 调用:

class Point:
    def __init__(self, x, y):
        self.x = x
        self.y = y

    def __int__(self):
        return int((self.x ** 2 + self.y ** 2) ** 0.5)

p = Point(3, 4)
print(int(p))  # 输出: 5(欧几里得距离取整)

常见错误与注意事项

总结

Python 的 int() 函数功能强大但需谨慎使用。建议在不确定输入类型时,结合异常处理机制确保程序健壮性。对于复杂对象,可通过魔术方法(如 __int__)提供自定义转换逻辑。

Interconnect:连接世界,共创未来 台灣 iPhone 17 價格表|最新上市價格與購買指南 Python print() 函数详解-用法、示例与技巧 新加坡买的iPhone回国能用吗?全面解析支持频段与使用建议 hearingproblems什么意思?听力问题详解与应对指南 Pioneer怎么调出电视?详细操作指南|音响电视连接教程 木偶奇遇记(匹诺曹)-经典童话故事专题 pioneers什么意思中文-先驱者、开拓者的含义与用法详解 Oni One-探索未来科技与极简美学的融合 Pioneers翻译-探索语言边界,连接全球思想 Python bin() 函数详解-十进制转二进制的利器 Python自带pip吗?全面解析Python与pip的关系 Can I Have One? – Discover the Joy of Simple Wishes 始祖鸟 Endorphin 系列男装|高性能户外服饰 incorporate 的词性详解|英语词汇学习专题 SHEIN南京招聘-加入全球快时尚领先品牌 Elephant翻译-中英文大象相关词汇与文化知识专题 When It Comes To 翻译详解与用法指南 iPhone 17有卫星电话功能吗?最新消息与功能解析 港版 iPhone 16 官網價格詳情|最新上市資訊與購買指南 iPhone Air 摄像头|革命性影像体验 港版 iPhone 17 Pro 价格|最新报价、购买指南与对比分析 Python的IDLE在哪里找?新手入门指南 Champion袖标有几种?全面解析冠军袖标的种类与含义 海南免税店iPhone便宜多少?最新价格对比与购买攻略 iPhone美版序列号开头字母含义详解-快速识别美版机型 iPhone Air能双卡吗?全面解析苹果手机双卡功能 深入理解 compile():编译原理与实践指南 Pioneer是什么品牌?先锋电子品牌介绍与产品概览 Celery Python 入门指南-异步任务队列详解 Python timeit 模块详解-精准测量代码执行时间 新西兰iPhone 17:最新发布、价格与购买指南|2026前瞻 Shopee店配尺寸指南-包裹尺寸限制与包装建议 Properazine是什么药?作用、副作用与使用说明-药物百科 pip在Python的哪个位置?全面解析pip安装路径与使用方法 iPhone 17 前后摄像头同步拍摄功能详解|创新影像体验 Python heapq 模块详解-最小堆操作与应用示例 Pioneer电视设置信号源-详细图文教程|78TP指南 Pinarello中文7LONGWEN|意大利顶级公路自行车品牌 移动网络无法登录 Nintendo eShop 的解决方法|常见问题与修复指南 Off The Chain-探索自由、创意与突破的边界 iPhone 镜头焦段详解-各代 iPhone 摄像头等效焦距与用途指南 美版iPhone序列号开头查询指南-快速识别美版设备 台版iPhone和港版区别详解|全面对比与选购指南 Pixelmon Modpack 攻略大全-宝可梦与我的世界完美融合 Pedroni法语学习专题-轻松入门,高效掌握法语 Professional吹风机-专业级速干护发体验 Antipodes7LONGWEN-探索地球另一端的自然奇迹 Python SEP:标准库、生态与实践指南 iPhone序列号H开头代表哪里?全面解析苹果设备产地信息 下载的Python没有IDLE?原因与解决方法全解析 港版 iPhone 17 支持 AI 吗?全面解析苹果最新 AI 功能 I Gained Confidence With Each Step|Personal Growth Journey Python pip 下载与安装指南-快速上手包管理工具 Precision-精准之道,成就卓越 大陆iPhone可以用台湾卡吗?全面解析与使用指南 希音(SHEIN)招聘-加入全球领先的时尚科技公司 iPhone 17 Pro Max 多少钱?2026最新价格、配置与购买指南 洛阳Champion专柜-正品78TP授权店|潮流服饰首选 鸟叔《Champion》冠军MV-经典韩流神曲回顾 Python中@property的作用详解-提升代码可读性与封装性 Shopee新加坡78TP购物平台-东南亚领先的电商平台 Python while 循环语句详解-入门到精通 iPhone折叠屏售价曝光:最新消息与价格预测|科技前沿 澳洲版Champion码数对照表|Champion尺码指南(AU) Python IDE 推荐与使用指南|高效开发必备工具 Python str 转 byte 详解|字符串与字节转换指南 Python的IDLE怎么运行.py文件?完整图文教程 Python中sep参数怎么用?详解print函数的sep用法 IDLE Python 怎么运行?新手入门指南 iPhone Air-轻盈如风,强大如芯|苹果全新轻薄旗舰 普鲁卡因(Procaine)是什么药?作用、用途与注意事项详解 Python常用IDE推荐|高效开发工具指南 校园开放日|探索未来,从这里开始 Champion 7LONGWEN|经典美式运动服饰品牌 Python调用ctypes详解-跨语言编程入门指南 如何更新 Python 的 pip 版本-命令详解与常见问题 中置内变速Pinion系统-高效可靠的自行车传动解决方案 Python bytearray 详解-可变字节序列操作指南 Nothin' On You-致敬经典情歌 Shopee面单打印指南-快速设置与高效发货 iPhone韩版和日版的区别-全面对比指南 Python sep函数详解-字符串分隔利器 IDLE 运行 Python 文件完整指南|新手入门教程 Championed快速记忆法|高效提升记忆力的科学技巧 Shein公司创始人许仰天:快时尚电商背后的掌舵人 "Something" 怎么说?——英语常用表达详解 Conceive 与 Conception 的关系解析|语言与思维专题 The Pixelmon-探索像素世界中的神奇生物 多奈哌齐(Donepezil)是什么药?作用、副作用与使用指南 Python中index()方法的用法详解-列表、字符串等常见场景 意大利 Pinetti 品牌专题-手工皮革艺术与意式优雅 Shopee图片精选-热门商品与视觉灵感 Senior造句大全-实用例句与英语学习资源 Chsmpion-探索冠军之路|精英、荣耀与成就 Python bytes 转 str 完全指南|编码、解码与常见问题 Chaimpion-探索冠军之路|成就、故事与精神 eshop美服7LONGWEN-美国任天堂eShop正版游戏下载与充值平台 Python怎么安装pip-详细图文教程 “explaination”音标与正确拼写详解|英语学习指南