当前位置: 首页 > news >正文

python---类型转换

文章目录

  • 1. 基本类型转换函数
    • int() - 转换为整数
    • float() - 转换为浮点数
    • str() - 转换为字符串
    • bool() - 转换为布尔值
  • 2. 其他类型转换
    • list() - 转换为列表
    • tuple() - 转换为元组
    • set() - 转换为集合(去重)
    • dict() - 转换为字典
  • 3. 注意事项
    • 1. 兼容性:转换必须逻辑合理,否则会报错。
    • 2. 进制转换:int() 支持字符串的进制转换。
    • 3. 隐式类型转换:Python 在某些操作中会自动转换类型(如整数和浮点数运算时转为浮点)。

在 Python 中,类型转换(Type Conversion)是指将一种数据类型转换为另一种数据类型。Python 提供了内置函数来实现常见的类型转换操作。

1. 基本类型转换函数

int() - 转换为整数

强制转换可以直接得到复数。

x = int(3.9)     # 浮点数转整数(截断小数部分)→ 3
y = int("123")   # 字符串转整数 → 123
z = int(True)    # 布尔值转整数 → 1
w = int('+10')
h = int('-10')

float() - 转换为浮点数

x = float(3)      # 整数转浮点数 → 3.0
y = float("3.14") # 字符串转浮点数 → 3.14
z = float(False)  # 布尔值转浮点数 → 0.0

str() - 转换为字符串

x = str(123)      # 整数转字符串 → "123"
y = str(3.14)     # 浮点数转字符串 → "3.14"
z = str(True)     # 布尔值转字符串 → "True"

bool() - 转换为布尔值

1、非零数字、非空字符串/列表/字典等会转换为 True。

2、0、“”、[]、None 等会转换为 False。

x = bool(1)       # True
y = bool(0)       # False
z = bool("Hello") # True
w = bool("")      # False

2. 其他类型转换

list() - 转换为列表

list(dict),强制转换字典,默认转换键名为列表的值。

x = list("abc")       # 字符串转列表 → ['a', 'b', 'c']
y = list((1, 2, 3))   # 元组转列表 → [1, 2, 3]

tuple() - 转换为元组

x = tuple([1, 2, 3])  # 列表转元组 → (1, 2, 3)

set() - 转换为集合(去重)

先去重再转换

x = set([1, 2, 2, 3]) # 列表转集合 → {1, 2, 3}

dict() - 转换为字典

x = dict([("a", 1), ("b", 2)])  # 列表(键值对元组)转字典 → {'a': 1, 'b': 2}

3. 注意事项

1. 兼容性:转换必须逻辑合理,否则会报错。

int("3.14")   # ❌ 错误,需先转 float 再转 int
int(float("3.14"))  # ✅ 先转浮点再转整数 → 3

2. 进制转换:int() 支持字符串的进制转换。

int("1010", 2)  # 二进制字符串转整数 → 10
int("FF", 16)    # 十六进制字符串转整数 → 255

3. 隐式类型转换:Python 在某些操作中会自动转换类型(如整数和浮点数运算时转为浮点)。

x = 3 + 4.5  # 结果为 7.5(float)
http://www.dtcms.com/a/301367.html

相关文章:

  • Milvus 实战全流程
  • Deja Vu: 利用上下文稀疏性提升大语言模型推理效率
  • Spring 解析 XML 配置文件的过程(从读取 XML 到生成 BeanDefinition)
  • 扩展组件(uni-ui)之uni-group
  • 「iOS」————消息传递和消息转发
  • 26.删除有序数组中的重复项
  • MyBatis-Plus高效开发实战
  • 内存管理和垃圾收集-02: 操作系统如何管理内存?
  • Linux驱动开发笔记(五)——设备树(中)——节点的标准属性
  • 益莱储:明智地投资测试仪器
  • S7-1500 与 S7-1200 存储区域保持性设置特点详解
  • 电子板原理功能区解析与PlantUML图示
  • 3,Windows11安装docker保姆级教程
  • 轻量化多模态文档处理利器SmolDocling:技术原理与场景落地引言:文档智能处理的范式革命
  • 数据结构基础内容(第六篇:二叉搜索与平衡二叉树)
  • MySQL锁机制与MVCC原理剖析
  • 直播带货工具About v1.5.10 免费版
  • GEO优化实战:如何在DeepSeek、豆包等AI平台抢占推荐位?
  • MOE架构详解:原理、应用与PyTorch实现
  • 计算圆周率(π)代码实现【c++】
  • Java中排序规则详解
  • cJSON在STM32单片机上使用遇到解析数据失败问题
  • 计算柱状图中最大的矩形【单调栈】
  • Dify 本地化部署深度解析与实战指南
  • 蜣螂优化算法的华丽转身:基于Streamlit的MSIDBO算法可视化平台
  • 【ESP32设备通信】-W5500与ESP32 /ESP32 S3集成
  • MySQL - 性能优化
  • Java面试实战:电商高并发与分布式事务处理
  • maven optional 功能详解
  • Java进阶7:Junit单元测试