Python数据类型间的转换(隐式、显式)

本文介绍了Python中的数据类型转换,包括隐式转换(如整数与浮点数运算)和显式转换(如使用int(),float(),str()等函数),以及各种类型之间的转换示例。
摘要由CSDN通过智能技术生成

上一篇文章,我们讲了Python的基本数据类型,包括:(数值(Numbers)、字符串(String)、列表(List)、元组(Tuple)、字典(Dictionary)和集合(Set)。

这么多数据类型,数据类型转换就成了一种常见操作,也就是将一种数据类型转变为另一种。由于Python是一种动态类型语言,可以在程序运行时更改变量的类型。有时,我们可能希望将一个数据类型的变量视为另一种数据类型,例如,将数字作为字符串处理,或将复杂的数据结构如列表或字典用作其他类型的容器。这就是数据类型转换的重要性所在。

在Python中,数据类型之间的转换可以分为两种方式:隐式转换和显式转换

1. 隐式转换

隐式转换(也称为类型升级)是指在表达式运算过程中,Python自动将数据类型转换为另一种数据类型。这种转换通常发生在不同类型的数据混合使用时,Python会根据一定的规则自动转换数据类型以完成运算。

例如,整数和浮点数之间的运算会导致隐式转换:

num_int = 123  # 整数类型
num_flo = 1.23  # 浮点类型
num_new = num_int + num_flo
print("num_int 数据类型为:", type(num_int))
print("num_flo 数据类型为:", type(num_flo))
print("num_new 值为:", num_new)

输出: 

num_int 数据类型为: <class 'int'>
num_flo 数据类型为: <class 'float'>
num_new 值为: 124.23

在这个例子中,整数 num_int 隐式地转换为浮点数,以避免数据丢失。
 

2. 显式转换

显式转换是通过调用特定的函数来实现的,将一个数据类型转换为另一个数据类型。以下是一些常用的类型转换函数:

  • int(x [, base]):将 x 转换为整数。
  • float(x):将 x 转换为浮点数。
  • complex(real [, imag]):创建一个复数。
  • str(x):将对象 x 转换为字符串。
  • tuple(s):将序列 s 转换为元组。
  • list(s):将序列 s 转换为列表。
  • set(s):将序列 s 转换为集合。
  • dict(d):创建一个字典。

a. 转为整数:`int()`

x = 10.5
x_int = int(x)
print(x_int)  # 输出: 10

b. 转为浮点数:`float()`

y = 20
y_float = float(y)
print(y_float)  # 输出: 20.0

c. 转为字符串:`str()`

z = 100
z_str = str(z)
print(z_str)  # 输出: "100"

d. 转为布尔值:`bool()`

a = 0
b = 10
bool_a = bool(a)
bool_b = bool(b)
print(bool_a)  # 输出: False
print(bool_b)  # 输出: True

e. 转为列表:`list()`

tuple_data = (1, 2, 3)
list_data = list(tuple_data)
print(list_data)  # 输出: [1, 2, 3]

f. 转为元组:`tuple()`

list_data = [4, 5, 6]
tuple_data = tuple(list_data)
print(tuple_data)  # 输出: (4, 5, 6)

除此之外,还有其他类型转换函数,例如将整数转换为十六进制字符串、将字符转换为整数值等。

大家只需要记住:

隐式转换是在表达式运算中由Python自动进行的,而显式转换则是通过函数调用明确指定的。

 

希望这篇博客能帮助你更好地理解Python中的数据类型转换。

如果感觉阅读对您还有些作用,可以评论留言,关注我。谢谢您的阅读!

 往期学习:

Python安装教程(版本3.8.10)windows10

Linux系统:安装Conda(miniconda)

Conda快速安装的解决方法(Mamba安装)

VSCode安装教程(版本:1.87.0)Windows10

Python基础语法:从入门到精通的必备指南

Python的基本数据类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TiYong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值