一、python enumerate用法

先出一个题目:

1.有一 list= [1, 2, 3, 4, 5, 6]
请打印输出:
0, 1
1, 2
2, 3
3, 4
4, 5
5, 6
打印输出,
2.将 list 倒序成 [6, 5, 4, 3, 2, 1]
3.将a 中的偶数挑出 *2 ,结果为 [4, 8, 12]

这个例子用到了python中enumerate的用法。顺便说一下enumerate在for循环中得到计数的用法,enumerate参数为可遍历的变量,如 字符串,列表等; 返回值为enumerate类。

示例代码如下所示:

问题1.2.3.一同解决,代码如下:

list=[1,2,3,4,5,6]

for i ,j in enumerate(list)

  print(i,j)

list2=list[::-1]

list3=[i*2 for i in list if  not i%2 ] //i%2==0证明i为偶数,not 0说明为真,也就是说i为偶数的时候i*2

print(list2,list3)

>>>0,1

>>>1,2

>>>2,3

>>>3,4

>>>4,5

>>>5,6

>>>[6,5,4,3,2,1]

>>>[4,8,12]

在同时需要index和value值的时候可以使用 enumerate。下列分别将字符串,数组,列表与字典遍历序列中的元素以及它们的下标:

一,字符串:

for i,j in enumerate('abcde'):  

   print i,j  

>>>0,a

>>>1,b

>>>2,c

>>>3,d

>>>4,e

二,数组:

for i,j in enumerate(('a','b','c')):  

  print i,j  

>>>0,a 

>>>1,b

>>>2,c

三,列表:

for i,j in enumerate(['a','b','c']):
print(i,j) #输出
0 a
1 b
2 c

四,字典:

for i,j in enumerate({'a':1,'b':2}):  

  print i,j  

>>>0,a 

>>>1,b

二、python map用法

map()函数用于将指定序列中的所有元素作为参数调用指定函数,并将结果构成一个新的序列返回。

1.map函数语法

  结果序列 = map(映射函数,[序列1,序列2,...])

  在map()函数的参数中,可以有多个序列,这取决于映射函数的参数数量。序列1、序列2等序列中元素会按顺序作为映射函数的参数,映射函数的返回值将作为map()函数的返回序列的元素。

2.实例

  使用map()函数处理两个序列

arr = map(lambda x,y: x + y, [1, 3, 5, 7, 9] ,[2, 4, 6, 8, 10])
for e in enumerate(arr): #enumerate枚举
print(e)

结果:

(0, 3)
(1, 7)
(2, 11)
(3, 15)
(4, 19)

参考:http://www.cnblogs.com/rourou1/p/6178070.html#undefined

     python基础教程,P110页

作者:今孝

出处:http://www.cnblogs.com/jinxiao-pu/p/6760686.html

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。

enumerate()和map()函数用法的更多相关文章

  1. python中enumerate()函数用法

    python中enumerate()函数用法 先出一个题目:1.有一 list= [1, 2, 3, 4, 5, 6]  请打印输出:0, 1 1, 2 2, 3 3, 4 4, 5 5, 6 打印输 ...

  2. map函数用法详解

    map函数是Python内置的高阶函数,它是一个典型的函数式编程例子.它的参数为: 一个函数function.一个或多个sequence.通过把函数function依次作用在sequence的每个元素 ...

  3. python 3 map函数用法

    公式 f是定义的函数,l是你的list,所有功能都在f函数里完成, map(f,l) 有些网址爬虫出来的链接是一部分,省略了前端通用的,这时我们需要补充进去, 这时就用到了map函数,批量补充网址, ...

  4. python3中map()函数用法

    python源码解释如下:map(func, *iterables) --> map objectMake an iterator that computes the function usin ...

  5. Python的range、enumerate和zip函数用法

    range函数可创建一个整数列表.如果需要知道当前元素在列表中的索引,推荐用enumerate代替range.zip函数用于同时遍历多个迭代器. 一.range 函数 range函数可创建一个整数列表 ...

  6. python列表中enumerate和zip函数用法

    enumerate: 定义:enumerate() 函数用于将一个可遍历的数据对象(如列表.元组或字符串)组合为一个索引序列,同时列出数据和数据下标 例子: list1 =[89,98,00,75,6 ...

  7. map()函数用法

    需求:已知两个列表,现在要一个列表中的元素,分别全部插入另一个列表中,新列表是[[0, 9, 1], [0, 9, 2], [0, 9, 3], [0, 9, 4], [0, 9, 5], [0, 9 ...

  8. Python中的map()函数和reduce()函数的用法

    Python中的map()函数和reduce()函数的用法 这篇文章主要介绍了Python中的map()函数和reduce()函数的用法,代码基于Python2.x版本,需要的朋友可以参考下   Py ...

  9. python 函数enumerate(x,y)的用法

    enumerate(x,y)函数是把元组tuple.字符串str.列表list里面的元素遍历和索引组合,其用法与range()函数很相似, 下面示例enumerate(x,y)用法以及range(x) ...

随机推荐

  1. windows下MySQL 5.7+ 解压缩版安装配置方法--转载

    方法来自伟大的互联网. 1.去官网下载https://dev.mysql.com/downloads/mysql/.zip格式的MySQL Server的压缩包,根据需要选择x86或x64版.注意:下 ...

  2. Vue DatePicker和不可用

    input控件可以直接设置disabled为不可用状态: DatePicker要想不可编辑,设置readonly属性即可 <DatePicker type="date" v- ...

  3. 字符串:SAM

    HDU4622:区间查询不同子串个数 用后缀自动机预处理出所有区间的不同子串个数 建立n次后缀自动机 #include <stdio.h> #include <string.h> ...

  4. 【CODEVS】2800 送外卖

    [算法]最短路(floyd)+状态压缩型动态规划 [题解] 经典的TSP问题(货郎担问题):求最小权哈密顿回路(遍历全图点一次且仅一次).本题稍作改动,先说原TSP问题解法:状压DP. 状态用二进制表 ...

  5. 【BZOJ】4555: [Tjoi2016&Heoi2016]求和 排列组合+多项式求逆 或 斯特林数+NTT

    [题意]给定n,求Σi=0~nΣj=1~i s(i,j)*2^j*j!,n<=10^5. [算法]生成函数+排列组合+多项式求逆 [题解]参考: [BZOJ4555][Tjoi2016& ...

  6. 【Linux 命令】fping ping 包间隔时间详解

    服务器间检查会用到fping的命令,期间遇到了一个问题,需要将ping包间的间隔时间设置为100毫秒,查看fping -h看下,找到了-i和-p两个参数: 看到这两个参数,我当时的表情是这样的: 看不 ...

  7. Solaris 系统命令使用说明

    1. 查看进程  --  pgreproot@UA4300D-spa:~# pgrep fmd133095root@UA4300D-spa:~# pgrep -l fmd133095 fmdroot@ ...

  8. 安装node-sass的正确姿势【转】

    安装 node-sass 的时候总是会各种不成功,今天我琢磨了一会儿总算知道要怎么解决了. 首先要知道的是,安装 node-sass 时在 node scripts/install 阶段会从 gith ...

  9. Deploy Openstack with RDO and Change VNC console to Spice

    Deploy Openstack with RDO and Change VNC console to Spice host os: centOS 7 server config network an ...

  10. 获取AD用户名

    var wshNetwork = new ActiveXObject("WScript.Network"); alert("域名 = "+ wshNetwork ...