Python(三)数据类型转换


程序员的公众号:源1024,获取更多资料, 无加密无套路!

最近整理了一份大厂面试资料《史上最全大厂面试题》,Springboot、微服务、算法、数据结构、Zookeeper、Mybatis、Dubbo、linux、Kafka、Elasticsearch、数据库等等
获取方式: 关注公众号并回复 666 领取,更多内容持续奉上


数据类型转换

1、隐式类型转换

python 复制代码
a = 12
b = 1.2
c = a + b

print("a 数据类型为:",type(a))
print("b 数据类型为:",type(b))

print("c 值为:",c)
print("c 数据类型为:",type(c))

#输出
a 数据类型为: <class 'int'>
b 数据类型为: <class 'float'>
c 值为: 13.2
c 数据类型为: <class 'float'>

int类型与float类型计算结果是float类型,Python 会将较小的数据类型转换为较大的数据类型,以避免数据丢失。

python 复制代码
a = 123
b = "456"

print("a 数据类型为:",type(a))
print("b 数据类型为:",type(b))
print(a+b)
#输出

a 数据类型为: <class 'int'>
b 数据类型为: <class 'str'>
Traceback (most recent call last):
    print(a+b)
TypeError: unsupported operand type(s) for +: 'int' and 'str'

整型和字符串类型运算结果会报错,输出 TypeError。 Python 在这种情况下无法使用隐式转换,Python 提供了一种解决方案,称为显式转换

2、显式类型转换

显式类型转换中,可以使用预定义函数将对象的数据类型转换为所需的数据类型。

|------------------------------------------------------------------------------------------------------------|----------------------------------|
| 函数 | 描述 |
| int(x ,base) | 将x转换为一个整数 |
| float(x) | 将x转换到一个浮点数 |
| complex(real ,imag) | 创建一个复数 |
| str(x) | 将对象 x 转换为字符串 |
| repr(x) | 将对象 x 转换为表达式字符串 |
| eval(str) | 用来计算在字符串中的有效Python表达式,并返回一个对象 |
| tuple(s) | 将序列 s 转换为一个元组 |
| list(s) | 将序列 s 转换为一个列表 |
| set(s) | 转换为可变集合 |
| dict(d) | 创建一个字典。d 必须是一个 (key, value)元组序列。 |
| frozenset(s) | 转换为不可变集合 |
| chr(x) | 将一个整数转换为一个字符 |
| ord(x) | 将一个字符转换为它的整数值 |
| hex(x) | 将一个整数转换为一个十六进制字符串 |
| oct(x) | 将一个整数转换为一个八进制字符串 |

int() 强制转换为整型

python 复制代码
a = int(2.3)
b = int("12")
print(a)   #输出 2
print(b)   #输出 12

float() 强制转换为浮点型

python 复制代码
a = float(11)    
b = float(2.2)  
c = float("13")   
d = float("3.14") 

print(a)
print(b)
print(c)
print(d)

#输出
11.0
2.2
13.0
3.14

str() 强制转换为字符串类型

python 复制代码
a = str("aa") 
b = str(23)    
c = str(3.14)  

print(a)
print(b)
print(c)

#输出
aa
23
3.14

不同类型进行计算

python 复制代码
a = 123
b = "456"

print("a 数据类型为:",type(a))
print("b 数据类型为:",type(b))
print(a + int(b))

#输出
a 数据类型为: <class 'int'>
b 数据类型为: <class 'str'>
579

其他函数使用:

python 复制代码
print(chr(65))
print(ord('A'))
print(hex(11))
print(oct(11))

#输出
A
65
0xb
0o13
相关推荐
apcipot_rain1 小时前
C++转Java日记(04)
java·开发语言·c++
特立独行的猫A2 小时前
我给女儿写了个打字练习:一边敲键盘,一边把小学英语单词记牢
java·后端·python
cpolar技术支持2 小时前
「我这边连不上你那个服务」—— 用清单驱动的 TCP 连通性只读看板,cpolar 让远端同事自己取证
python·内网穿透·tcp·cpolar·网络诊断
云和数据.ChenGuang3 小时前
LangGraph 异步 Node 的设计与写法实践
开发语言·人工智能·python·机器学习·php
天诰4 小时前
SA-K-11 检索会消失吗与四个未解问题
java·服务器·人工智能·python·机器学习·ai编程
benchmark_cc4 小时前
用 QuantDash 读取美股行情:AAPL.US 的运行前检查、排错顺序与数据校验清单
python·数据分析·pandas·量化交易·股票数据·quantdash
蜗牛一步步往上爬6 小时前
第十六章 C++语言在深度学习中的应用
开发语言·c++·深度学习
羲云网络8 小时前
GPT Image 2.6 接入指南:Flare、Sunburst 怎么选,编辑失败如何排查
人工智能·python·aigc·图像生成·acedatacloud
张张123y8 小时前
DSH 插件调试避坑:client.js 设置面板、热重载与高频报错排查表
开发语言·javascript·人工智能·开源·ecmascript·后端开发·ai agent
冻柠檬飞冰走茶11 小时前
字母移动游戏题解:贪心求最长可保留连续子串(附 C 实现)
c语言·开发语言·数据结构·算法·动态规划