For循环是Python中最常用的一种循环结构了,相信大家都对For循环的常规操作非常熟悉了,所以在这里我就不介绍For循环的基本用法了,仅介绍一些非常规的操作供大家参考学习。

1. 非穷尽遍历(遍历过程中跳过元素)--range()和分片

>>> a = [1, 2, 3, 4, 5, 6]
# 若想访问a中的第奇数个元素# Method 1: range()
>>> for i in range(0, len(a), 2):print(a[i], end=' ')
1 3 5 # Method 2: 分片
>>> for i in a[::2]:print(i, end=' ')
1 3 5

显然第二种分片的方法要简单得多,推荐大家使用。

2. 并行遍历 --Zip

zip()函数可以让我们利用for循环并行访问多个序列:zip()函数的输入参数为一个或多个序列,它的返回值是这些序列并排的元素配对得到的元组列表

>>> a = [1, 2, 3, 4]
>>> b = ['a', 'b', 'c', 'd']>>> list(zip(a, b))
[(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd')]>>> for (x, y) in zip(a, b):
...     print(x, y)
1 a
2 b
3 c
4 d

注意:zip()函数返回的元组长度以输入的各序列中最短的为准。

>>> a = [1, 2, 3, 4]
>>> b = ['a', 'b', 'c', 'd', 'e', 'f']>>> list(zip(a, b))
[(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd')]

3. enumerate()同时给出偏移量和元素

enumerate()函数会返回一个生成器对象,这个对象可以在循环的每次迭代返回一个(index, value)的元素,因此可以同时得到偏移量和元素:

>>> a =  ['a', 'b', 'c', 'd', 'e']
>>> for ind,item in enumerate(a):
...     print('index:{}, item:{}'.format(ind, item))
index:0, item:a
index:1, item:b
index:2, item:c
index:3, item:d
index:4, item:e

for循环中gets_Python中for循环的一些非常规操作相关推荐

  1. java循环中的do……while循环

    do--while循环格式: 初始化语句 : do { 循环体语句 : 条件控制语句 : } while( 条件判断语句 ): 基本格式: do { 循环体语句: } while(条件判断语句): 执 ...

  2. java for循环中map_Java中用for循环取Map

    根据JDK5的新特性,Java中用for循环取Map,例如循环Map的Key view sourceprint? 1 for(String dataKey : paraMap.keySet())   ...

  3. java for循环中map_Java用For循环Map

    欢迎进入Java社区论坛,与200万技术人员互动交流 >>进入 根据JDK的新特性,用For循环Map,例如循环Map的Key java 代码 for(String dataKey : p ...

  4. python循环语句-详解Python中的循环语句的用法

    一.简介 Python的条件和循环语句,决定了程序的控制流程,体现结构的多样性.须重要理解,if.while.for以及与它们相搭配的 else. elif.break.continue和pass语句 ...

  5. for循环在c++中的用法_C ++中的循环

    for循环在c++中的用法 Loops come into picture when we need to execute a particular action in a repeated mann ...

  6. Python中的循环的用法——for循环和while循环

    文章目录 前言 一.循环是什么? 二.while循环 三.for循环 四.range函数 总结 前言 主要介绍循环是什么.循环的两种方式while循环和for循环,以及其具体用法,介绍了range函数 ...

  7. python的for语句-详解Python中的循环语句的用法

    一.简介 Python的条件和循环语句,决定了程序的控制流程,体现结构的多样性.须重要理解,if.while.for以及与它们相搭配的 else. elif.break.continue和pass语句 ...

  8. RF中for循环要加END?

    (未解决)RF中for循环要加END? python版本3.7.4 网上RF教程中关于FOR循环要求:要以 ':FOR' 开头,其余同python中for循环要求 但实际操作后发现FOR循环不需要以' ...

  9. oracle双重for循环sql,Oracle 11g中for循环中的PL / SQL限制

    我有一个大约有3000万条记录的表,并且我想像这样循环遍历表中存在的记录: FOR i IN (SELECT * FROM tbl_items it Left join location lo ON ...

最新文章

  1. 小型软件项目开发流程探讨
  2. BZOJ3083: 遥远的国度(树链剖分)
  3. timthumb.php外链,如何解决WordPress多站点不支持timthumb.php?
  4. 您的UX库不只是书籍
  5. 事业单位计算机技术岗工资,事业单位新入职的人员在管理岗位和技术岗位工资待遇是否有区别?...
  6. python中osgeo库使用教程链接
  7. 【jQuery】学习整理(一) 认识jQuery
  8. android 应用置顶到最前端_uniApp / 小程序实现一个view滚动到一定高度置顶显示
  9. java getnextentry_java.util.zip.ZipInputStream.getNextEntry()方法示例
  10. [译]Flask教程--将表单数据发送到模板
  11. selenium所有检测点和绕过方式[运行命令后被检测/打开就被检测/环境检测]
  12. Web前端课程设计-疫情解读网页
  13. wso2 mysql_WSO2
  14. Pr-快速上手-基本操作-教程
  15. vue + element插件Popover弹出框
  16. ps 提示暂存满,不能导入文件
  17. .woff2/svg/woff文件报404错误
  18. 腾讯魏巍:Eunomia云原生资源编排优化
  19. 保护 iOS 用户数据安全: Keychain 和 Touch ID
  20. 【C语言】形参实参以及参数传递

热门文章

  1. 访问日志不记录静态文件、访问日志切割、静态元素过期时间
  2. 机器学习论文泛读总结
  3. 介绍两款API管理工具
  4. 主成分分析中特征值分解与SVD(奇异值分解)的比较及其相关R语言的实现
  5. BDI Agent模型结构
  6. ORACLE数据库恢复
  7. toString、equals方法进阶
  8. 信息学奥赛一本通 1053:最大数输出 | OpenJudge NOI 1.4 15
  9. 18 WM配置-策略-激活仓位类型搜索(Bin Type Search)
  10. 字符串数组的排序c++_Java——数组相关知识点及练习演绎