吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 946|回复: 5
收起左侧

[学习记录] 原创 数据类型转换

[复制链接]
甜萝 发表于 2022-6-2 21:14
本帖最后由 paypojie 于 2022-6-3 11:20 编辑

                                 突然想写一篇数据类型转换的文章  哈哈 感兴趣的可以看看

python有六个数据类型 分别是 数字 字符串 列表 元组 字典 集合 接下来 看看它们之间的相互转换 先看看数字转换为其他数据类型 下面使用的是官方的集成环境 IDLE (Python 3.9 64-bit) 运行的结果

Python 3.9.9 (tags/v3.9.9:ccb0e6a, Nov 15 2021, 18:08:50) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>> str(1)
'1'
>>>

数字只能转换为字符串 不能转换成 列表 元组 字典 集合 (之所以没有对数字尝试其它方法 是因为上网课时 回忆中是不能转的)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
接下来看看字符串能转几种数据类型

>>> int('1')
1
>>> int('a')
Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    int('a')
ValueError: invalid literal for int() with base 10: 'a'
>>> list('a')
['a']
>>> tuple('a')
('a',)  
>>> set('a')
{'a'}
>>> dic('a')
Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    dic('a')
NameError: name 'dic' is not defined
>>>

字符串可以转换为数字 但是引号内的字符串必须为纯数字 还可以转换为列表 元组 集合 不能转换成字典
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
然后看看列表转换成其他五种数据类型的结果

>>> int([1])
Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    int([1])
TypeError: int() argument must be a string, a bytes-like object or a number, not 'list'
>>> str([1])
'[1]'
>>> tuple([1])
(1,)
>>> dict([1])
Traceback (most recent call last):
  File "<pyshell#3>", line 1, in <module>
    dict([1])
TypeError: cannot convert dictionary update sequence element #0 to a sequence
>>> set([1])
{1}
>>>

列表不能转换成数字 字典 可以转换为字符串 元组 集合
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
再看看元组的转换


>>> int(('a',))
Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    int(('a',))
TypeError: int() argument must be a string, a bytes-like object or a number, not 'tuple'
>>> str(('a',))
"('a',)"
>>> list(('a',))
['a']
>>> dict(('a',))
Traceback (most recent call last):
  File "<pyshell#4>", line 1, in <module>
    dict(('a',))
ValueError: dictionary update sequence element #0 has length 1; 2 is required
>>> set(('a',))
{'a'}
>>>

元组可以转换为字符串 列表 集合 不能转换为数字 字典
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
字典的转换

>>> int({'a':1})
Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    int({'a':1})
TypeError: int() argument must be a string, a bytes-like object or a number, not 'dict'
>>> str({'a':1})
"{'a': 1}"
>>> list({'a':1})
['a']
>>> tuple({'a':1})
('a',)
>>> set({'a':1})
{'a'}
>>>

字典可以转换为字符串 列表 元组 集合 不能转换为数字
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
最后 看看集合

>>> int({1})
Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    int({1})
TypeError: int() argument must be a string, a bytes-like object or a number, not 'set'
>>> str({1})
'{1}'
>>> list({1})
[1]
>>> tuple({1})
(1,)
>>> dict({1})
Traceback (most recent call last):
  File "<pyshell#4>", line 1, in <module>
    dict({1})
TypeError: cannot convert dictionary update sequence element #0 to a sequence
>>>

集合不能转换为数字 字典 可以转换为字符串 列表 元组
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
总结:

数字只能转换为字符串

字符串可以转换为数字 (但要求字符串是纯数字 比如 '1'这种字符串) 列表 元组 集合
列表只能转换为字符串 元组 集合
元组只能转换为字符串 列表 集合
字典只能转换为字符串 列表 元组 集合

集合只能转换为字符串 列表 元组

数据转换之间的关系

uTools_1654170444569.png

可以看出 数字只能转换为字符串这一种类型, 字符串可以转换为数字 (但字符串必须是纯数字) 列表 元组 集合,列表 元组 集合这三种数据类型之间可以互相转换,字典可以被转换为字符串 列表 元组 集合 但是其他五种数据不能转换为字典。

如有错误 请在评论区指出 谢谢

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| 甜萝 发表于 2022-6-2 21:35
每个评论争取都回复
cwzy8 发表于 2022-6-3 01:08
twdfg 发表于 2022-6-3 01:29
 楼主| 甜萝 发表于 2022-6-3 10:32
cwzy8 发表于 2022-6-3 01:08
python是个好工具,一起来学习咯

确实 嘿嘿
 楼主| 甜萝 发表于 2022-6-3 10:33
twdfg 发表于 2022-6-3 01:29
很适合正在学python的来看。

python入门不难
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 11:48

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表