Python中元组、列表、字典的遍历和相互转化
一、元组,列表,字典的遍历
1.1 元组的遍历
元组的遍历借助 range() 函数,基本思想是通过元组的长度使用for循环进行遍历,代码如下:
fruits=("apple","banana","orange")
for i in range(len(fruits)):
print(fruits[i])
* 注意:元组是无法进行重新赋值的,需要将元组进行转换后在进行重新赋值,如转换为list,下面会展示如何转换。
1.2 列表的遍历
列表的遍历可以直接使用for循环,也可以借助 range() 函数,代码如下:
#直接遍历
fruit_list = ['apple','banana','orange']
for fruit in fruit_list:
print(fruit)
#借助range()函数进行遍历
fruit_list = ['apple','banana','orange']
for i in range(len(fruit_list)):
print(fruit_list[i])
1.3 字典的遍历
字典的遍历主要借助于字典中的key值,代码如下:
fruit_dict = {'apple':1, 'banana':2, 'orange':3}
for key in fruit_dict:
print(fruit_dict[key])
上面介绍的是这三者最简单的遍历方法,还有其他的遍历方法没有涉及到,当然,无论怎么变化,都可以使用这几种方法进行处理。
二、元组,列表,字典之间的转换
这三者之间的转换并不复杂,但字典的转换由于有key的关系,因此其他二者不能转换为字典 。
2.1 对元组进行转换
fruits = ('apple','banana','orange')
#元组转换为列表:
list(fruit)
#元组不能直接转换为字典,附:
#元组转换为字符串:
fruits.__str__()
2.2 对列表的转换
fruit_list = ['apple','banana','orange']
#列表转换为元组:
tuple(fruit_list)
#列表不能直接转换为字典,附:
#列表转换为字符串:
str(fruit_list)
2.3 对字典的转换
可以使用函数 tuple() 和 list() 将字典转换为元组和列表,但要注意的是,这里的转换后和之前的元素顺序是不同的,因为字典类似于散列,列表 类似于链表,元组类似于列表只是元素无法改变,所以,要把散列转换为链表而顺序不变是不可行的。但可以借助于有序字典OrderedDict,有序字 典是字典的子类,它可以记住元素添加的顺序,从而得到有序的字典。有序字典这里就不深入探讨,给出普通字典的例子参考,代码如下:
fruit_dict = {'apple':1, 'banana':2, 'orange':3}
#将字典的key转换为元组:
tuple(fruit_dict)
#将字典的value转换为元组:
tuple(fruit_dict.value())
#将字典的key转换为列表:
list(fruit_dict)
#将字典的value转换为列表:
list(fruit_dict.value())
#附:
#将字典转换为字符串:
str(fruit_dict)
2.4 附:对字符串的转换
要将字符串转换为指定的数据结构,那么字符串就必须符合指定数据结构的格式,并借助于 eval() 函数
#将字符串转换为元组:
str = "(1,2,3)"
tuple(eval(str))
#将字符串转换为列表:
str = "(1,2,3)"
list(eval(str))
#将字符串转换为字典:
str = "{'a':1 ,'b',2}"
eval(str)
上面只是对Python3种常见的数据结构进行的比较浅显的总结,还有还多知识需要学习,忙完这一阵再进行相关的整理。
---------------------
本文来自 nielinqi520 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/nielinqi520/article/details/82356462?utm_source=copy
Python中元组、列表、字典的遍历和相互转化的更多相关文章
- python中元组/列表/字典/集合
转自:https://blog.csdn.net/lobo_seeworld/article/details/79404566
- python字符串/元组/列表/字典互转
#-*-coding:utf-8-*- #1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} #字典转为字符串,返回:<type ' ...
- 转:python字符串/元组/列表/字典互转
#-*-coding:utf-8-*- #1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} #字典转为字符串,返回:<type ...
- python 小白(无编程基础,无计算机基础)的开发之路,辅助知识6 python字符串/元组/列表/字典互转
神奇的相互转换,小白同学可以看看,很有帮助 #1.字典dict = {'name': 'Zara', 'age': 7, 'class': 'First'} #字典转为字符串,返回:<type ...
- 【转】python字符串/元组/列表/字典互转
#-*-coding:utf-8-*- #1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} #字典转为字符串,返回:<type ' ...
- Python中的列表,元组,字符串之间的相互转化
Python中的列表元组和字符串之间的相互转化需要利用,tuple(),list(),str(). 示例如下: >>> the_string = "hello I'am x ...
- 逗号分隔的字符串转换为Python中的列表 split
将逗号分隔的字符串转换为Python中的列表 给定一个字符串: 它是由逗号分隔的几个值的序列: mStr = '192.168.1.1,192.168.1.2,192.168.1.3' 如何将字符 ...
- julia与python中的列表解析.jl
julia与python中的列表解析.jl #=julia与python中的列表解析.jl 2016年3月16日 07:30:47 codegay julia是一门很年轻的科学计算语言 julia文档 ...
- python中的列表及numpy数组排序
一.列表排序 # python中对列表排序有sort.sorted两种方法,其中sort是列表内置方法,其帮助文档如下:In [1]: help(sorted) Help on built-in f ...
- Python中的列表解析和生成器表达式
Python中的列表解析和生成器表达式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.列表解析案例 #!/usr/bin/env python #_*_coding:utf-8 ...
随机推荐
- 【IAP支付之三】苹果IAP安全支付与防范 receipt收据验证
这里网上的朋友已经介绍的很详细了,具体的链接已经无法找到了. 这里主要说几点本人在开发中遇到的问题: 1.漏单必须要处理,玩家花RMB购买的东西却丢失了,是绝对不能容忍的.所谓的漏单就是玩家已经正常付 ...
- oo作业总结报告2
第五次作业 多线程电梯 多线程同步和控制的设计策略 明确类和对象,以及是否区分对象实例.具体类可以从类图中看出: 明确线程的类型和数量.输入作为一个线程,调度作为一个线程,三个电梯独立工作,互不影响, ...
- Saiku连接mysql数据库(二)
Saiku连接Mysql数据库展示数据 参考链接:https://www.cnblogs.com/shirui/p/8573491.html 官方文档:https://media.readthedoc ...
- 图的关键路径,AOE,完整实现,C++描述
body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...
- vue-router-8-路由组件传参
在组件中使用$route会使之与其对应路由形成高度耦合,使用props解耦 const User = { props: ['id'], template: '<div>User{{ id ...
- 使用MYSQL数据库实现编程----第二章第三章课堂知识小总结
第二章1:创建数据库create database myschool 2.数据类型 1.整型 int 2.小数 double 精确度要求高的 ----Decimal(18,4) 2222222 ...
- linux命令学习 随笔
linux命令随笔 linux命令随笔 用户操作 搜索命令 PATH环境变量 Linux中的通配符 文件搜索命令locate 搜索命令的命令whereis与which 文件搜索命令find(最强大的哦 ...
- Cracking The Coding Interview 5.6
//Write a program to swap odd and even bits in an integer with as few instructions as possible (e.g. ...
- PM2报错‘Spawning PM2 daemon with pm2_home...’的解决方案
问题 在某次因为SRE升级域名问题,导致了Node服务器代码死循环了,产生的504(Gateway timeout)错误. 登录到机器上看,正在用pm2查问题的原因中,突然发现错误从504变成的502 ...
- React 新 Context API 在前端状态管理的实践
本文转载至:今日头条技术博客 众所周知,React的单向数据流模式导致状态只能一级一级的由父组件传递到子组件,在大中型应用中较为繁琐不好管理,通常我们需要使用Redux来帮助我们进行管理,然而随着Re ...