Python数据类型转换详解

python3的数据类型及数据类型转换实例详解 在本文里小编给大家分享的是关于python3的数据类型及数据类型转换以及相关实例内容,有兴趣的朋友们可以学习下 之前介绍过python开发工具Jupyter的使用,今天继续讲解python的数据类型,python中有整型、浮点型、字符串、布尔类型,我们重点介绍布尔类型的运算,以及不同数据类型之间的转换。使用Jupyter运行的时候有两个快捷键,Shift + Enter执行本单元,并且光标会移动到... 阅读详情

1. Python的数据类型

上一遍博文已经详细地介绍了Python的数据类型,详见链接Python的变量命名及数据类型。

在这里总结一下Python的数据类型:

  • 字符串类型 String
  • 数字类型 Number:

整形 int

浮点型 float

复数 complex

  • 布尔类型 Bool列
  • 表类型 List
  • 元组类型 Tuple
  • 字典类型 Dictionary
  • 集合类型 Set

可变数据类型:列表,字典,集合

不可变数据类型:字符串,数字类型,布尔类型,元组

容器类型数据:字符串,列表,元组,字典,集合

非容器类型数据:数字类型,布尔类型

2. Python数据类型转换

由于不同的数据类型之间是不能进行运算的,所以我们需要数据类型转换。Python中的数据类型转换有两种,一种是自动类型转换,即Python在计算中会自动地将不同类型的数据转换为同类型数据来进行计算;另一种是强制类型转换,即需要我们基于不同的开发需求,强制地将一个数据类型转换为另一个数据类型。

2.1 自动类型转换

当两个不同类型的数据进行运算时,结果会像更高精度进行计算,精度等级:布尔 < 整型 < 浮点型 < 复数。

1

2

3

4

5

6

7

8

9

10

11

12

a = 10

b = True

print(a + b) # 11

'''

在和数字运算时,True转为1,False转为0

'''

a = 10

b = 3.14

print(a + b) # 13.14

'''

整型与浮点型运算时,整型转化为浮点型,结果也为浮点型

'''

2.2 强制类型转换

  • str( ):可以把其他类型数据转化为字符串类型
  • int( ):可以把其他类型数据转化为整型
  • float( ):可以把其他类型数据转化为浮点型
  • bool( ):可以把其他类型数据转化为布尔类型
  • list( ):可以把其他类型数据转化为列表类型
  • tuple( ):可以把其他类型数据转化为元组类型
  • dict( ):可以把其他类型数据转化为字典类型
  • set( ):可以把其他类型数据转化为集合类型

2.2.1 其他转字符串

所有类型都可以转化为字符串类型。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

a = 123 # int

res = str(a)

print(res, type(res)) # 123 <class 'str'>

a = True # bool

res = str(a)

print(res, type(res)) # True <class 'str'>

a = [1, 2, 3] # list

res = str(a)

print(res, type(res)) # [1, 2, 3] <class 'str'>

a = (1, 2, 3) # tuple

res = str(a)

print(res, type(res)) # (1, 2, 3) <class 'str'>

a = {1, 2, 3} # set

res = str(a) # {1, 2, 3}

print(res, type(res)) # {1, 2, 3} <class 'str'>

a = {1: 'a', 2: 'b'} # dict

res = str(a)

print(res, type(res)) # {1: 'a', 2: 'b'} <class 'str'>

2.2.2 其他转数字类型

数字类型之间可以相互转换,但容器类型中只有字符串可以转换为数字类型,并且字符串中的元素必须为纯数字,否则无法转换。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

'''

1. 数字类型之间相互转换

'''

a = 123 # int

res = float(a)

print(res, type(res)) # 123.0 <class 'float'>

a = True # bool

res = float(a)

print(res, type(res)) # 1.0 <class 'float'>

'''

2. 字符串类型转数字类型

'''

a = '123' # str

res = int(a)

print(res, type(res)) # 123 <class 'int'>

a = '123abc' # str

res = int(a)

print(res, type(res)) # 此时python会报错,报错类型为TypeError

a = [1, 2, 3] # list

res = int(a)

print(res, type(res)) # 此时同样会报错,因为除了字符串以外的其他容器类型都不可以转换成数字类型

其他类型转数字类型中有一个特殊情况,就是其他类型转布尔类型。 bool( ) 可以把其他类型转为True或False。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

'''

1. 容器类型转布尔类型:

   容器中为空 --> False

   容器中有元素 --> True

'''

a = '' # 空字符串

res = bool(a)

print(res, type(res)) # False <class 'bool'>

a = '0' # 字符串中有元素

res = bool(a)

print(res, type(res)) # True <class 'bool'>

a = [] # 空列表

res = bool(a)

print(res, type(res)) # False <class 'bool'>

a = [1, 2, 3] # 列表中有元素

res = bool(a)

print(res, type(res)) # True <class 'bool'>

a = tuple() # 空元组

res = bool(a)

print(res, type(res)) # False <class 'bool'>

a = dict() # 空字典

res = bool(a)

print(res, type(res)) # False <class 'bool'>

a = set() # 空集合

res = bool(a)

print(res, type(res)) # False <class 'bool'>

'''

2. 数字类型转布尔类型:

   int类型中,0为False,其他为真

   float类型中,0.0为False,其他为真

'''

a = 0 # int

res = bool(a)

print(res, type(res)) # False <class 'bool'>

a = 0.0 # float

res = bool(a)

print(res, type(res)) # False <class 'bool'>

a = 0.345 # float

res = bool(a)

print(res, type(res)) # True <class 'bool'>

2.2.3 其他转列表类型

1.数字类型是非容器类型,不能转换为列表

2.字符串转列表时,会把字符串中的每一个字符当作列表的元素

3.元组转列表时,会把字符串中的每一个字符当作列表的元素

4.字典转列表时,只保留字典中的键

5.集合转列表时,结果是无序的,因为集合本身就是无序的

1

2

3

4

5

6

7

8

9

10

11

12

a = '123' # str

res = list(a)

print(res, type(res)) # ['1', '2', '3'] <class 'list'>

a = (1, 2, 3) # tuple

res = list(a)

print(res, type(res)) # ['1', '2', '3'] <class 'list'>

a = {'name': 'Alice', 'Age': 5, 'Sex': 'Female'} # dict

res = list(a)

print(res, type(res)) # ['name', 'Age, 'Sex'] <class 'list'>

a = {'a', 'b', 1, 2, 'c'} # set

res = print(a)

print(res, type(res)) # ['b', 2, 1, 'a', 'c'] <class 'list>

2.2.4 其他转元组类型

其他类型数据转元组类型与其他类型数据转列表类型的规则相同。

1

2

3

4

5

6

7

8

9

10

11

12

a = 'abc' # str

res = tuple(a)

print(res, type(res)) # ('a', 'b', 'c') <class 'tuple>

a = [1, 2, 3] # list

res = tuple(a)

print(res, type(res)) # (1, 2, 3) <class 'tuple>

a = {'name': 'Alice', 'Age': 5, 'Sex': 'Female'} # dict

res = tuple(a)

print(res, type(res)) # ('name', 'Age, 'Sex') <class 'tuple>

a = {'a', 'b', 1, 2, 'c'} # set

res = tuple(a)

print(res, type(res)) # ('b', 2, 1, 'a', 'c') <class 'tuple>

2.2.5 其他转集合类型

1.数字类型是非容器类型,不能转换为集合

2.字符串转集合时,结果是无序的

3.列表转集合时,结果是无序的

4.元组转集合时,结果是无序的

5.字典转集合时,只保字典中的键,结果是无序的

1

2

3

4

5

6

7

8

9

10

11

12

a = '123' # str

res = set(a)

print(res, type(res)) # {'3', '2', '1'} <class 'set'>

a = ['a', 'b', 2, 1] # list

res = set(a)

print(res, type(res)) # {2, 1, 'b', 'a'} <class 'set'>

a = ('a', 'b', 2, 1) # tuple

res = set(a)

print(res, type(res)) # {2, 1, 'b', 'a'} <class 'set'>

a = {'name': 'Alice', 'Age': 5, 'Sex': 'Female'} # dict

res = set(a)

print(res, type(res)) # {'Age', 'name', 'Sex'} <class 'tuple>

2.2.6 其他转字典类型

1.数字类型是非容器类型,不能转换为字典

2.字符串不能转字典类型,因为字符串不能生成二级容器

3.列表类型转字典类型,列表必须为等长二级容器,子容器中的元素个数必须为2

4.元组类型转字典类型,列表必须为等长二级容器,子容器中的元素个数必须为2集

5.合不能转字典类型,因为集合不支持哈希

1

2

3

4

5

6

7

8

9

10

11

12

a = '123' # str

res = dict(a)

print(res, type(res)) # 此时python会报错:ValueError: dictionary update sequence element #0 has length 1; 2 is required

a = [[1, 2], ['a','b']] # 等长二级列表

res = dict(a)

print(res, type(res)) # {1: 2, 'a': 'b'} <class 'dict'>

a = ((1, 2), (3, 4), (5, 6)) # 等长二级元组

res = dict(a)

print(res, type(res)) # {1: 2, 3: 4, 5: 6} <class 'tuple'>

a = {{1, 2}, {3, 4}} # 等长二级集合

res = dict(a)

print(res,type(res)) # 此时python会报错:TypeError: unhashable type: 'set'

总结

本篇文章就到这里了,希望能够给你带来帮助

Python数据类型转换 python各种数据类型之间的转换方法 阅读详情

相关推荐

基于STM32F407标准库与SimpleFOC实现无刷电机2804位置闭环控制的实战解析

本文详细解析了基于STM32F407标准库与SimpleFOC算法实现2804无刷电机位置闭环控制的实战过程。通过硬件选型、速度闭环调试到位置环PID参数整定,提供了完整的工程实现方案和抗饱和策略,帮助开发者掌握高精度电机控制技术。

oauth7security的博客 916

浅谈Python中的类型转换

在各种编程语言中,不同的数据类型之间都是可以进行转换的,Python也不例外。本篇中我将简单列举下四种类型转换的方式。

zyypjc的博客 8635

洪水风险图制作全流程:HEC-RAS 与 ArcGIS 的耦合应用

本文系统介绍HEC-RAS水动力模拟软件在水利工程中的应用技术。内容涵盖:1)软件理论与安装;2)一维地形数据导入与河网构建;3)恒定流/非恒定流计算及模型调试要点;4)构筑物建模技术(桥梁、堰闸等);5)二维水动力模拟与溃坝分析;6)洪水风险图绘制。重点讲解水面线调试、糙率选取、报错分析等实操难点,通过案例教学实现从基础到工程应用的全流程技术掌握。该培训适用于防洪评价、河道治理等水利工程数值模拟需求。

2403_89974123的博客 1050

Python常见类型转换合集

近期在工作中常常接触到各种转换,如字符串转byte,byte转字符串,还有byte数组转成报文能接纳的格式(bin格式的十六进制)。故有必要系统的总结一下Python中常见的类型转换。

ftzchina的博客 3562

深入解析docx4j:从Word到PDF的高保真转换实战

本文深入解析了如何使用纯Java开源库docx4j实现Word到PDF的高保真转换。针对中文环境,重点讲解了字体映射原理、Linux服务器字体部署方案,并提供了完整的代码示例和配置方法。同时,文章涵盖了表格、图片处理、性能优化及生产环境部署指南,帮助Java开发者构建稳定、可控的文档转换服务。

weixin_29237635的博客 670

OpenClaw使用ClawHub安装skill网络不稳定?Rate limit exceeded报错?试试这个国内高速镜像工具!

使用 ClawHub 安装 Skill 时遇到 🌐 网络不稳、❌ Rate limit 或命令不可用?使用这个镜像工具,轻松解决skill安装问题,⚡

XiaoqiangClub的博客 1260

Python 笔记 — 数据类型转换

数据类型转换

记录学习过程,欢迎讨论交流~ 7368

【异常检测】【EfficientAD】论文简单梳理与代码实现

EfficientAD作为较近的一篇异常检测网络,主要还是从S-T网络入手,对齐进行了相关改进。修改特征提取器引入自动编码器hard loss以及惩罚项。

胡侃有料的博客 2850

完整篇-Python数据类型转换

my_path = os.path.join(*my_list) # 使用os.path.join来创建跨平台的文件路径。my_str = str(sorted(my_dict.items())) # 将键值对排序。my_list = os.path.split(my_path) # 分割路径为头部和尾部。my_list = my_str.split(':') # 使用':'作为分隔符。my_str = ':'.join(my_list) # 使用':'作为分隔符。

zhangzx36的博客 1904

杰理SDK入门教程(一):SDK的四种编译方式的使用

杰理SDK提供了四种主要编译方式:1) JL Studio官方IDE,适合初学者;2) VS Code轻量级编辑器,需在SDK根目录打开;3) 命令行/脚本编译,灵活支持自动化;4) Code::Blocks开源IDE。每种方式都有详细操作指南,开发者可根据需求选择,初学者推荐从JL Studio开始熟悉编译流程。环境配置注意事项和编译成功标识均有明确说明,确保开发效率。

qq_42014563的博客 1146

ProcessingJoy —— 最简单的实时流体模拟【JAVA】

实现基于非常非常经典的 Paper ——Jos Stam 的Real-Time Fluid Dynamics for Games 代码和注释 float visc = 0.0f; float diff = 0.0f; int N = 250; int size = (N + 2) * (N + 2); float[] u = new float[size]; // 速度, 水平/竖直 float[] v = new float[size]; float[] u_prev = new fl...

ShaderJoy 的兴趣技术杂货铺 2813

【python系列】Python数据类型转换详解

python常见数据类型转换

学习学习再学习 1365

uniapp [安卓苹果App端] - 实现获取请求手机位置权限+开启定位获取经纬度/省市区地址等,检测权限手机定位是否开启并引导用户同意授权,uniApp app端调用本机开启本机定位权限及IP属地

uni-app,手机定位权限,安卓Android,苹果ios,uniapp获取本机位置权限,uni-app获取用户定位数据,uniapp APP获取用户IP属地定位,判断权限,权限被拒绝了怎么办,苹果ios系统无法开启定位,获取定位权限报错,uniapp定位获取省市区,UNI-APP如何开启手机定位功能并获取经纬度,不依赖地图第三方插件组件,打包上架后如何获取,真机运行无法获取定位,安卓和ios权限获取,判断权限检查,正式打包,详细教程,根据获取当前经纬度,再根据经纬度去定位具体省市区,自定义基座打包能成功

🏆 前端领域优质创作者 1万+

Python 数据类型转换详解

Python是一种动态类型语言,因此它需要复杂的数据类型转换以实现各种编程任务。Python提供了许多内置函数和方法来完成数据类型转换,这些函数和方法使用起来相对简单明了。程序员可以轻松地将数据从一种格式转换成另一种格式。数据类型转换是将一个数据类型转换为另一个数据类型的过程。在Python中,数据类型转换是一个重要的操作,因为Python中的变量可以存储不同类型的数据。当有需要时,对变量的字段类型进行转换是十分必要的。

naer_chongya的博客 4559

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Python数据类型转换详解——《跟老吕学Python编程》附录资料

Python数据类型转换是一个基础且重要的概念。了解各种内置函数和显式转换语法可以帮助开发者更灵活、高效地处理数据。同时,在进行类型转换时,也需要注意可能的数据丢失和格式错误问题,以确保程序的正确性和稳定性。👨‍💻博主Python老吕评论,您的举手之劳将对我提供了无限的写作动力!🤞🔥精品付费专栏:《跟老吕学Python编程》《跟老吕学Python编程·附录资料》🌐《跟老吕学HTML》《XHTML》《CSS》《Vue》💻《跟老吕学C语言》《C++》《Java》《R》《Ruby》《PHP》《Go》

Python老吕的博客 1276

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

python如何强制转换数据类型_python数据类型强制转换实例详解

如果是字符串进行强制转换, 仅仅就是在原数据类型的两边套上引号2.list : 强制转换成列表"""如果是字符串,会把每一个字符都单独作为一个元素放到新的列表中如果是字典,只保留键,形成一套新的列表.如果是其他容器,只是单纯的在原数据的两边套上[]"""res=list(tuplevar)res=list(setvar)res=list(strvar)res=list(dictva...

weixin_39639518的博客 271

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

python数字形式转换详解_Python常见数据类型转换操作示例

本文实例讲述了Python常见数据类型转换操作。分享给大家供大家参考,具体如下:类型转换主要针对几种存储工具:list、tuple、dict、set特殊之处:dict是用来存储键值对的。1、list 转换为setl1 = [1, 2, 4, 5]s1 = set(l1)print(type(s1))print(s1)输出:{1, 2, 4, 5}2、set转换为lists1 = set([1, 2...

weixin_39534780的博客 899

【Python】 数据类型转换详解

关注隐式转换可能带来的精度损失。字符串转数字时先使用。

qq_56574928的博客 778

python数据类型的转换_详解Python3中的数据类型转换:显式类型转换,隐式类型转换...

教程引言:系统地讲解计算机基础知识,Python的基础知识, 高级知识。关注微信公众号[薯条编程],领取该教程的PDF电子书:《Python零基础入门指南》。8.3.1 理解数据类型转换数据类型转换,顾名思义,是从一种数据类型转换为另一种数据类型。常说的“取整”,就暗含类型转换的意思,即,将浮点小数转换为整数。我们在日常生活中,也常于各类角色之间进行转换,在企业中是老板或职员,在家中是丈夫或妻子,...

weixin_39733948的博客 743

Python3 数据类型转换详解

在 Python 中,数据类型转换是将一个数据类型的值转换为另一种数据类型的过程。Python 提供了许多内置函数,可以帮助我们在不同的数据类型之间进行转换。本文将详细介绍 Python3 中常见的数据类型转换方法。1. 整数类型转换在 Python 中,可以使用 int() 函数将其他数据类型转换为整数类型。例如:登录后...

测试0901-1 492

Python数据类型转换详解:从基础到实践

Python的数据类型转换是连接不同数据形态的桥梁,掌握其规则能让你更灵活地处理数据。区分隐式转换(自动完成)和显式转换(手动触发)熟悉基本类型转换函数(int()float()str()bool())的使用场景和限制理解容器类型转换的特性(尤其是集合的去重和字典的特殊要求)注意转换过程中可能出现的错误,做好异常处理在实际开发中,合理的类型转换能让代码更健壮、更易维护。多练习不同场景下的转换操作,你会逐渐形成对数据类型的直觉性理解。

William Chen's knowledge base 817

python中数据类型转换原理_python数据类型强制转换实例详解

1.字符强转一切如果是字符串进行强制转换, 仅仅就是在原数据类型的两边套上引号2.list : 强制转换成列表"""如果是字符串,会把每一个字符都单独作为一个元素放到新的列表中如果是字典,只保留键,形成一套新的列表.如果是其他容器,只是单纯的在原数据的两边套上[]"""res = list(tuplevar)res = list(setvar)res = list(strvar)res = lis...

weixin_39607710的博客 102

python数据类型详解及类型转换函数

文章目录前言一、数据类型1.number2.string3.list4.tuple5.set6.dictionary二、内置类型转换函数1.数据类型做函数名2.ascii转换和进制转换三、不常用类型转换函数1.repr()2.eval(str)3.frozenset() 前言 python3中的标准数据类型可以简单划分为可变和不可变两种,其中不可变类型包括数字(number),字符串(str),元组(tuple); 可变类型包括列表(list),集合(set),字典(dic)。以下详细介绍各种数据类型及相

weixin_46447549的博客 3079

Python学习(六):python数据类型转换【详解】

repr是representation的简写,它会将对象在在python中的描述。repr()函数的返回结果可以还原为对象本身,即:obj==eval(repr(obj)) 这个等式是成立的。2、repr()将对象转成字符串显示,repr() 函数将对象转化为供解释器读取的形式。python中,通过一系列的转换函数,可以将一种数据类型转换成另一种数据类型。unichr(x)是python2函数,python3采用chr(x)函数。1、str()将数值转成字符串,str()函数返回的结果字符串可读性好。

china_sirius的博客 1072
上一篇: SAP ABAP Netweaver 里的用户会话概念
下一篇: Python判断一个数是否为小数
SAPmatinal
博客等级 码龄12年 3万+粉丝 2291原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值