Python 入门必看:彻底搞懂数据类型、进制转换与类型转换

📅 2026/7/9 2:58:54
Python 入门必看:彻底搞懂数据类型、进制转换与类型转换
前言各位大佬大家早中晚上好喵~Python 作为一门简洁、强大且易于学习的编程语言其灵活的数据类型系统是初学者入门和开发者高效编程的基石。理解 Python 的基本数据类型、掌握不同进制整数的表示与转换方法以及熟练运用数据类型转换函数是编写健壮、清晰代码的关键步骤。本文旨在系统性地梳理这三个核心知识点通过清晰的分类、实用的代码示例和关键注意事项帮助您构建扎实的 Python 基础。无论您是刚刚接触 Python还是希望巩固相关知识都能从中获得清晰的指引和实用的参考。一、Python 基本数据类型Python 作为一门动态类型语言其数据类型是构建程序的基础。本章聚焦最核心的基本 5 种数据类型以及与之配套的基础函数帮助初学者快速建立清晰的知识框架。1.1 数字int整数没有小数部分的数字支持多种进制表示十进制如10、-5、0二进制以0b开头如0b1010十六进制以0x开头如0xFF八进制以0o开头如0o10float浮点数带有小数部分的数字如3.14、2.0、-0.001。1.2 字符串 str由字符组成的不可变序列使用单引号或双引号包裹如Hello、Python。1.3 布尔值 bool表示逻辑真或假只有两个值True表示真False表示假1.4 空值 NoneNone表示空值或无值是NoneType的唯一值。1.5 基础函数以下是与上述基本数据类型紧密相关的基础函数在日常编程中频繁使用input()接收用户输入返回字符串。print()输出内容到控制台。type()查看对象的类型。int()将值转换为整数。float()将值转换为浮点数。bool()将值转换为布尔值。str()将值转换为字符串。bin()将整数转换为二进制字符串带0b前缀。oct()将整数转换为八进制字符串带0o前缀。hex()将整数转换为十六进制字符串带0x前缀。二、Python 整数进制转换Python 支持十进制、二进制、八进制和十六进制整数的表示与相互转换。2.1 不同进制的字面量表示运行结果示例注type()代码可以查看变量的数据类型。2.2 进制转换函数十进制数可通过特定的代码转换为其他各进制字符串如下bin(x)将整数转换为二进制字符串带0b前缀。oct(x)将整数转换为八进制字符串带0o前缀。hex(x)将整数转换为十六进制字符串带0x前缀。同时其他各进制字符串也可以反向转换为十进制int(x, base2)将字符串x按二进制转换为十进制整数。int(x, base8)将字符串x按八进制转换为十进制整数。int(x, base16)将字符串x按十六转换为十进制整数。注意字符串x需要是对应进制的字符串例如想要二进制转换为十进制x的值应为1010。另外如果想要自己计算各个进制转十进制的话有一个万能公式同样举一个示例假如想要计算二级制数值1010为十进制的话那么转换的一个思路就是从右往左数发现第二个和第四个位置分别有m1那么第四个位置n4,是几进制底数就为几那么就是1*2的4-1次方得出8然后再算第二个位置的n就是1*2的2-1次方得2相加即得出最终答案10。2.3 进制转换示例运行结果示例可以看到bin,oct,hex函数在转换进制之后会在对应数值前方带上进制独有的缩写例如二进制为0b八进制为0o十六进制为0x。三、Python 数据类型转换函数在 Python 中不同数据类型之间可以通过内置函数进行显式转换。本章围绕int、float、bool、str四种核心转换函数展开结合具体的代码示例帮助大家快速掌握类型转换的用法和常见坑点。3.1 int() —— 转换为整数int()可以将数字类型的字符串、浮点数或布尔值转换为整数。将数字字符串转换为整数int(10)返回10。如果字符串表示的是其他进制数字可以通过base参数指定如int(10abcd, base16)会按十六进制解析 10abcd 并返回对应的十进制整数。将浮点数转换为整数int(3.99)返回3转换时会直接截断小数部分不是四舍五入而是向下取整。将布尔值转换为整数int(True)返回1int(False)返回0。示例代码运行结果3.2 float() —— 转换为浮点数float()可以将数字类型的字符串最多包含一个小数点、整数或布尔值转换为浮点数。将数字字符串转换为浮点数float(111)返回111.0。将整数转换为浮点数float(777)返回777.0。将布尔值转换为浮点数float(True)返回1.0float(False)返回0.0。示例代码运行结果3.3 bool() —— 转换为布尔值bool()可以将任意类型的值转换为布尔值。转换规则如下几乎所有值在转换为布尔值时只有0、0.0、空字符串、None、空列表[]、空元组()、空字典{}等空值为False其余非空值都为True。示例代码运行结果3.4 str() —— 转换为字符串转换为字符串与转换为布尔值用着相似的规则同样是所有类型都能转换为字符串甚至在某些方面我认为比布尔值更“自由”因为万物皆能为字符串嘛。这边就不再粘贴字符串相关的代码截图了。3.5 转换注意事项转换可能引发异常如int(abc)会抛出ValueError因为abc不是合法的数字字符串。浮点数转整数时截断小数部分向下取整不会四舍五入。并非所有类型之间都能直接转换转换前需确保操作是合理且有定义的。使用int()配合base参数时字符串中的字符必须符合对应进制的表示规则。结语小A在这里祝各位大佬无论是学习还是工作中的大佬都能心想事成步步升高关注小A喵关注小A谢谢喵~