一、元组,列表,字典的遍历

1.1 元组的遍历

元组的遍历借助 range() 函数,基本思想是通过元组的长度使用for循环进行遍历,代码如下:

 
 
  1. fruits=("apple","banana","orange")

  2. for i in range(len(fruits)):

  3. print(fruits[i])

* 注意:元组是无法进行重新赋值的,需要将元组进行转换后在进行重新赋值,如转换为list,下面会展示如何转换。

1.2 列表的遍历

列表的遍历可以直接使用for循环,也可以借助 range() 函数,代码如下:

 
 
  1. #直接遍历

  2. fruit_list = ['apple','banana','orange']

  3. for fruit in fruit_list:

  4. print(fruit)

  5. #借助range()函数进行遍历

  6. fruit_list = ['apple','banana','orange']

  7. for i in range(len(fruit_list)):

  8. print(fruit_list[i])

1.3 字典的遍历

字典的遍历主要借助于字典中的key值,代码如下:

 
 
  1. fruit_dict = {'apple':1, 'banana':2, 'orange':3}

  2. for key in fruit_dict:

  3. print(fruit_dict[key])

上面介绍的是这三者最简单的遍历方法,还有其他的遍历方法没有涉及到,当然,无论怎么变化,都可以使用这几种方法进行处理。

二、元组,列表,字典之间的转换

这三者之间的转换并不复杂,但字典的转换由于有key的关系,因此其他二者不能转换为字典 。

2.1 对元组进行转换

 
 
  1. fruits = ('apple','banana','orange')

  2. #元组转换为列表:

  3. list(fruit)

  4. #元组不能直接转换为字典,附:

  5. #元组转换为字符串:

  6. fruits.__str__()

2.2 对列表的转换

 
 
  1. fruit_list = ['apple','banana','orange']

  2. #列表转换为元组:

  3. tuple(fruit_list)

  4. #列表不能直接转换为字典,附:

  5. #列表转换为字符串:

  6. str(fruit_list)

2.3 对字典的转换

可以使用函数 tuple() 和 list() 将字典转换为元组和列表,但要注意的是,这里的转换后和之前的元素顺序是不同的,因为字典类似于散列,列表     类似于链表,元组类似于列表只是元素无法改变,所以,要把散列转换为链表而顺序不变是不可行的。但可以借助于有序字典OrderedDict,有序字     典是字典的子类,它可以记住元素添加的顺序,从而得到有序的字典。有序字典这里就不深入探讨,给出普通字典的例子参考,代码如下:

 
 
  1. fruit_dict = {'apple':1, 'banana':2, 'orange':3}

  2. #将字典的key转换为元组:

  3. tuple(fruit_dict)

  4. #将字典的value转换为元组:

  5. tuple(fruit_dict.value())

  6. #将字典的key转换为列表:

  7. list(fruit_dict)

  8. #将字典的value转换为列表:

  9. list(fruit_dict.value())

  10. #附:

  11. #将字典转换为字符串:

  12. str(fruit_dict)

2.4 附:对字符串的转换

要将字符串转换为指定的数据结构,那么字符串就必须符合指定数据结构的格式,并借助于 eval() 函数

 
 
  1. #将字符串转换为元组:

  2. str = "(1,2,3)"

  3. tuple(eval(str))

  4. #将字符串转换为列表:

  5. str = "(1,2,3)"

  6. list(eval(str))

  7. #将字符串转换为字典:

  8. str = "{'a':1 ,'b',2}"

  9. eval(str)

上面只是对Python3种常见的数据结构进行的比较浅显的总结,还有还多知识需要学习,忙完这一阵再进行相关的整理。

---------------------

本文来自 nielinqi520 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/nielinqi520/article/details/82356462?utm_source=copy

Python中元组、列表、字典的遍历和相互转化的更多相关文章

  1. python中元组/列表/字典/集合

    转自:https://blog.csdn.net/lobo_seeworld/article/details/79404566

  2. python字符串/元组/列表/字典互转

    #-*-coding:utf-8-*- #1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} #字典转为字符串,返回:<type ' ...

  3. 转:python字符串/元组/列表/字典互转

    #-*-coding:utf-8-*-  #1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} #字典转为字符串,返回:<type ...

  4. python 小白(无编程基础,无计算机基础)的开发之路,辅助知识6 python字符串/元组/列表/字典互转

    神奇的相互转换,小白同学可以看看,很有帮助 #1.字典dict = {'name': 'Zara', 'age': 7, 'class': 'First'} #字典转为字符串,返回:<type ...

  5. 【转】python字符串/元组/列表/字典互转

    #-*-coding:utf-8-*- #1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} #字典转为字符串,返回:<type ' ...

  6. Python中的列表,元组,字符串之间的相互转化

    Python中的列表元组和字符串之间的相互转化需要利用,tuple(),list(),str(). 示例如下: >>> the_string = "hello I'am x ...

  7. 逗号分隔的字符串转换为Python中的列表 split

    将逗号分隔的字符串转换为Python中的列表   给定一个字符串: 它是由逗号分隔的几个值的序列: mStr = '192.168.1.1,192.168.1.2,192.168.1.3' 如何将字符 ...

  8. julia与python中的列表解析.jl

    julia与python中的列表解析.jl #=julia与python中的列表解析.jl 2016年3月16日 07:30:47 codegay julia是一门很年轻的科学计算语言 julia文档 ...

  9. python中的列表及numpy数组排序

    一.列表排序  # python中对列表排序有sort.sorted两种方法,其中sort是列表内置方法,其帮助文档如下:In [1]: help(sorted) Help on built-in f ...

  10. Python中的列表解析和生成器表达式

    Python中的列表解析和生成器表达式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.列表解析案例 #!/usr/bin/env python #_*_coding:utf-8 ...

随机推荐

  1. Oracle shrink space

    一.开启表的行迁移 alter table table_name enable row movement; select 'alter table '||s.owner||'.'||s.table_n ...

  2. jenkins部署java项目在本地(三)

    (1)新建maven构建的java项目 pom.xml的配置 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns ...

  3. Netty完成网络通信(二)

    Netty是基于NIO的框架,完善了NIO的一些缺陷,因此可以用Netty替代NIO Netty实现通信步骤: 1.创建两个NIO线程组,一个专门用于网络事件处理(接受客户端的连接),另一个则进行网络 ...

  4. 《Python》常用模块之collections模块

    内置的数据类型: int  float  complex str  list  tuple dict  set 基础数据类型: int  float  complex str  list  tuple ...

  5. oracle数据导入导出数据与编码格式不正确

     1.导入dmp文件 imp ZHCG/ZHCG@ORCL file=E:\20160902.1007.dmp full=y 2.导出数据 exp system/manager@ORCL file ...

  6. Linux音频驱动学习之:(2)移植wm8976声卡驱动(linux-3.4.2)

    1.wm8976驱动程序: /* * wm8976.h -- WM8976 Soc Audio driver * * This program is free software; you can re ...

  7. C++基础知识:操作符重载

    1.C++标准库: C++标准库并不是C++语言的一部分C++标准库是由C++语言编写而成的类库和函数的集合C++标准库中定义的类和对象都位于std命名空间中C++标准库的头文件都不带.h后缀C++标 ...

  8. 玩转X-CTR100 l STM32F4 l 定时器时间测量

    我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器 使用处理器内部硬件定 ...

  9. Centos7部署kubernetes集群CA证书创建和分发(二)

    1.解压软件包 [root@linux-node1 ~]# cd /usr/local/src/ [root@linux-node1 src]# ls k8s-v1.10.1-manual.zip [ ...

  10. IEDA中彻底删除项目

    删除项目一向比较奇葩,因为当你点击到 该项目名称-->右键 时,并没有 delete 选项,导致我们不知道怎么删除,查找多方文档,得到以下解决: (1)将鼠标移到要删除的 项目名称 上,单击并按 ...