一、字符串的转化

1、字符串转换成列表

字符串转换成list 的时候,str可以作为迭代对象,直接放入;也可以使用split对字符串进行切割。然后返回list

 s = '1a1b1c'
print(list(s))
print(s.split(''))
 ['', 'a', '', 'b', '', 'c']
['', 'a', 'b', 'c']

2、字符串转化成元祖

 s = '1a1b1c'
print(tuple(s))
 ('', 'a', '', 'b', '', 'c')

3、字符串转换成字典

 a='a1b1c1'
b=''
print(zip(a,b))
print(dict(zip(a,b)))
 <zip object at 0x00000231AF32D1C8>
{'a': '', '': '', 'b': '', 'c': ''}
 a='a1b2c3d4e5'
b=''
print(zip(a,b))
print(dict(zip(a,b)))
<zip object at 0x000002745544D208>
{'a': '', '': '', 'b': '', '': '', 'c': '', '': ''}

4、字符串转换成列表

注重去重

 a='a1b1c1'
print(set(a))
 {'c', '', 'b', 'a'}

二、列表的转化

1、列表转换成字符串

注:列表里如果有int类型,字典,元祖,列表,则join方法不可用

 list = ["","a","bb"]
print("".join(list))
print(" ".join(list))
print("!".join(list))
1abb
1 a bb
1!a!bb

2、列表转换成元祖

 list = ['','','','','a',(1,2,3),1,[1,2],{"a":1}]
print(tuple(list))
('', '', '', '', 'a', (1, 2, 3), 1, [1, 2], {'a': 1})

3、列表转换成字典

 list1 = ['','','','','a',(1,2,3),5,6]
list2 = ['a','b','c','d','e','f',[1,2],{"g":"h"}]
dict1 = dict(zip(list1,list2))
print(dict1)
{'': 'a', '': 'b', '': 'c', '': 'd', 'a': 'e', (1, 2, 3): 'f', 5: [1, 2], 6: {'g': 'h'}}

4、列表转换成集合

无序的,去重的

 list = ['','','','']
print(set(list))
{'', '', ''}

三、元祖的转换

1、转换成字符串

 tuple = ('','','','','','','a')
print(''.join(tuple))
123452a

2、转换成列表

 tuple = (1,2,3,4,5,'','a')
print(list(tuple))
[1, 2, 3, 4, 5, '', 'a']

3、转换成字典

 tuple1 = ('', '', '', '',111,(11,22,33),"")
tuple2 = ('a', 'b', 'c', 'd','e','f','h','g','i','j','k')
dict1 = dict(zip(tuple1, tuple2))
print(dict1)
{'': 'a', '': 'b', '': 'c', '': 'd', 111: 'e', (11, 22, 33): 'f', '': 'h'}

4、转换成集合

 tuple1 = ('','','','',4,'')
print(set(tuple1))
{'', 4, '', '', ''}

四、字典的转化

1、转换成字符串

对于生成字符串,需要先生成list和tuple,然后再由list和tuple生成str

2、转换成列表/元祖/集合

字典可以使用 dict.keys() 和dict.values()返回迭代器,通过list和tuple直接生成列表和元祖

 dict1 = {1:'a',2:'b',3:'c'}
print(list(dict1.keys()))
print(list(dict1.values()))
print(tuple(dict1.keys()))
print(tuple(dict1.values()))
print(set(dict1.keys()))
print(set(dict1.values()))
print(tuple(dict1.items())) #生成元祖为单位的元祖
print(list(dict1.items())) #生成元祖为单位的列表
print(set(dict1.items())) #生成元祖为单位的集合
[1, 2, 3]
['a', 'b', 'c']
(1, 2, 3)
('a', 'b', 'c')
{1, 2, 3}
{'b', 'c', 'a'}
((1, 'a'), (2, 'b'), (3, 'c'))
[(1, 'a'), (2, 'b'), (3, 'c')]
{(2, 'b'), (3, 'c'), (1, 'a')}

五、集合的转换

1、转换成字符串

列表无序,每次转换成的字符串值都不一定一样,也可以先转为列表或者元祖,再转换成字符串

 set1 = {"","","aaa"}
print("".join(set1))
print(type("".join(set1)))
aaa12
<class 'str'>

2、转换成列表/元祖

 set1 = {1,2,3,4,5,6}
print(list(set1))
print(tuple(set1))
[1, 2, 3, 4, 5, 6]
(1, 2, 3, 4, 5, 6)

3、转换成字典

无意义的映射,不推荐

dict(zip(set1,set2))

常用转换方法总结:

转换成字符串:"".join()

转换成列表:list()

转换成元祖:tuple()

转换成字典:dict(zip(a,b))

转换成集合:set()

欢迎补充,谢谢~

干货!Python中字符串、列表、元祖、字典,集合之间的转换的更多相关文章

  1. Python学习笔记---切片 列表 元祖 字典 集合

    列表[1,2,3,2]#[] 元祖(1,2,3,2)#() 字典{1:2,3:2}#{} 集合{1,2,3,2}#{} 1,集合与列表的区别,集合里不能有重复元素 2.字典与集合的区别,都是用花括号表 ...

  2. python-基础-字符串-列表-元祖-字典2

    接上:http://www.cnblogs.com/liu-wang/p/8973273.html 3 元组 4 字典 4.1 字典的介绍 <2>软件开发中的字典 变量info为字典类型: ...

  3. Python基础5:列表 元祖 字典 集合

    [ 列表] 列表(list)是Python以及其他语言中最常用到的数据结构之一.Python使用使用中括号 [ ] 来解析列表. 列表是可变的(mutable)——即:可以改变列表的内容. 相关操作: ...

  4. Python基础5:列表 元祖 字典 集合 Json

    [ 列表] 列表(list)是Python以及其他语言中最常用到的数据结构之一.Python使用使用中括号 [ ] 来解析列表. 列表是可变的(mutable)——即:可以改变列表的内容. 相关操作: ...

  5. python学习之列表,元祖,字典

    python基础 列表  [ ] stats =[1,2,3,4,5] 元素1,2,3,4,5 下标,索引,角标,初始从0开始 增加 stats.append(7)#append方法添加 stats. ...

  6. python学习-字符串 列表 元祖

    目录 Python翻转字符串(reverse string) 简单的步长为-1, 即字符串的翻转(常用) 递归反转 借用列表,使用reverse()方法 字符串常用操作 index split 切片 ...

  7. python-基础-字符串-列表-元祖-字典

    1 字符串 1.1 下标和切片 1.2 切片 1.3 字符串常见操作 如有字符串mystr = 'hello world itcast and itcastcpp',以下是常见的操作 <1> ...

  8. python 中的 字符串 列表 元祖 字典

    str 1 格式化输出 %法 第一种 %s+tuple %d+tuple name = input('请输入你的姓名:') age = input('请输入你的年龄:') hobby = input( ...

  9. Python字符串列表元祖字典的公共方法

    运算符 运算符 Python 表达式 结果 描述 支持的数据类型 + [1, 2] + [3, 4] [1, 2, 3, 4] 合并 字符串.列表.元组 * 'Hi!' * 4 ['Hi!', 'Hi ...

  10. python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍

    目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...

随机推荐

  1. 数据库(sqlserver 2005)优化排查之路

    查找问题过程是痛苦的,解决完问题是快乐! 兄弟帮助一个公司开发了一个旅游网站(asp.net+sqlsever2005),一直还算稳定,但是最近网站却慢的可以,让人头疼.登录服务器,进入任务管理器,发 ...

  2. iOS 状态栏显示/隐藏

    iOS 10为止,将在plist文件中将 View controller-based status bar appearance 设置为NO,就可以用UIApplication设置状态栏. 注意,要在 ...

  3. iOS 图片圆角性能

    通常设置圆角方式 imageView.clipsToBounds = YES; imageView.layer.cornerRadius = 50; 这样设置会触发离屏渲染,比较消耗性能.比如当一个页 ...

  4. 解决Pycharm导入当前项目的.py文件错误

    如图所示错误,由左边导航栏可见.py文件存在: 解决办法:右键单击导包错误文件所在目录,选择[Mark Directory as]+[Sources Root] 错误已解决:

  5. 安装 MySQL 过程记录

    最近安装 MySQL 时 遇到了许多问题,记录一下安装过程以及遇到的问题. 第一步:在官网上下载适合自己版本的 MySQL,我选择的是 Windows 64 位免安装版的:    官网地址:https ...

  6. 关于HashCode和equals方法在HashSet中的使用

    Object类是类层次结构的根类,故所有的类都是先该类的方法,其中HashCode()和equals()方法也是该类的方法. 1.HashCode()方法 Object类中HashCode()方法实现 ...

  7. C语言 刷新缓冲区

    fflush int fflush(FILE* stream); 用于清空文件缓冲区,如果文件是以写的方式打开 的,则把缓冲区内容写入文件. eg: 1. #include <stdio.h&g ...

  8. Flask 入门(十三)

    上文提到的Blueprint和厉害吧? 可是有个缺点,就是,还不够框架,因为一个功能不可能就一个文件啊?多文件怎么解决? 还和上文项目架构一样 1.新建两个目录,admin,function 2.ad ...

  9. bootstraptable 必备知识点

    1.如何动态刷新表中数据? (1).无参刷新: $("#table").bootstrapTable('refresh'); (2).带参刷新: var opt = { url: ...

  10. Go gRPC进阶-超时设置(六)

    前言 gRPC默认的请求的超时时间是很长的,当你没有设置请求超时时间时,所有在运行的请求都占用大量资源且可能运行很长的时间,导致服务资源损耗过高,使得后来的请求响应过慢,甚至会引起整个进程崩溃. 为了 ...