3.10 Python数据类型转换

Python类型转换,Python数据类型转换函数大全

虽然 Python 是弱类型编程语言,不需要像Java或 C 语言那样还要在使用变量前声明变量的类型,但在一些特定场景中,仍然需要用到类型转换。

比如说,我们想通过使用 print() 函数输出信息"您的身高:"以及浮点类型 height 的值,如果在交互式解释器中执行如下代码:

python 复制代码
>>> height = 70.0
>>> print("您的身高"+height)
Traceback (most recent call last):
 File "<pyshell#1>", line 1, in <module>
  print("您的身高"+height)
TypeError: must be str, not float

你会发现这是错误的,解释器提示我们字符串和浮点类型变量不能直接相连,需要提前将浮点类型变量 height 转换为字符串才可以。

庆幸的是,Python 已经为我们提供了多种可实现数据类型转换的函数,如表 1 所示。

函 数 作 用
int(x) 将 x 转换成整数类型
float(x) 将 x 转换成浮点数类型
complex(real,[,imag]) 创建一个复数
str(x) 将 x 转换为字符串
repr(x) 将 x 转换为表达式字符串
eval(str) 计算在字符串中的有效 Python 表达式,并返回一个对象
chr(x) 将整数 x 转换为一个字符
ord(x) 将一个字符 x 转换为它对应的整数值
hex(x) 将一个整数 x 转换为一个十六进制字符串
oct(x) 将一个整数 x 转换为一个八进制的字符串

需要注意的是,在使用类型转换函数时,提供给它的数据必须是有意义的。例如,int() 函数无法将一个非数字字符串转换成整数:

python 复制代码
>>> int("123") #转换成功
123
>>> int("123个") #转换失败
Traceback (most recent call last):
 File "<pyshell#3>", line 1, in <module>
  int("123个")
ValueError: invalid literal for int() with base 10: '123个'
>>>
相关推荐
小李不想输啦1 小时前
什么是微服务、微服务如何实现Eureka,网关是什么,nacos是什么
java·spring boot·微服务·eureka·架构
张铁铁是个小胖子1 小时前
微服务学习
java·学习·微服务
ggs_and_ddu1 小时前
Android--java实现手机亮度控制
android·java·智能手机
敲代码娶不了六花3 小时前
jsp | servlet | spring forEach读取不了对象List
java·spring·servlet·tomcat·list·jsp
Yhame.3 小时前
深入理解 Java 中的 ArrayList 和 List:泛型与动态数组
java·开发语言
Dovir多多3 小时前
Python数据处理——re库与pydantic的使用总结与实战,处理采集到的思科ASA防火墙设备信息
网络·python·计算机网络·安全·网络安全·数据分析
是小崔啊4 小时前
开源轮子 - EasyExcel02(深入实践)
java·开源·excel
myNameGL4 小时前
linux安装idea
java·ide·intellij-idea
青春男大4 小时前
java栈--数据结构
java·开发语言·数据结构·学习·eclipse
HaiFan.5 小时前
SpringBoot 事务
java·数据库·spring boot·sql·mysql