Python3enumrate和range对比及示例详解

yipeiwu_com5年前Python基础

前言

在Python中,enumrate和range都常用于for循环中,enumrate函数用于同时循环列表和元素,而range()函数可以生成数值范围变化的列表,而能够用于for循环即都是可迭代的。

range概述

range是用于产生连续或者带步长的数字元素组成的列表,下面是一些基本使用及场景示例。

产生数字序列

# 产生0-9的序列
for i in range(0, 10):
 print(i)
print('-' * 40)
# 产生0-20,步进(间隔)为3的数字元素组成的序列 
for j in range(0, 21, 3):
 print(j)

示例结果:

0
1
2
3
4
5
6
7
8
9
----------------------------------------
0
3
6
9
12
15
18

利用range遍历修改列表

range最多的使用场景就是修改循环修改列表,即利用range构建列表的索引循环修改列表。

L = [1,2,3,4,5]
for i in range(len(L)):
 L[i] = L[i] ** 2
 print(L[i])

示例结果:

1
4
9
16
25

enumrate概述

当我们即想获取序列的索引和序列元素呢? 我们可以利用enumrate同时迭代序列的索引和元素。

L = [1,2,3,4,5]
for i, value in enumerate(L):
 print(i, '-->',value)
0 --> 1
1 --> 2
2 --> 3
3 --> 4
4 --> 5

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

编写自定义的Django模板加载器的简单示例

Djangos 内置的模板加载器(在先前的模板加载内幕章节有叙述)通常会满足你的所有的模板加载需求,但是如果你有特殊的加载需求的话,编写自己的模板加载器也会相当简单。 比如:你可以从数据...

python访问纯真IP数据库的代码

核心代码: #!/usr/bin/env python # -*- coding: utf-8 -*- from bisect import bisect _LIST1,...

python基于queue和threading实现多线程下载实例

本文实例讲述了python基于queue和threading实现多线程下载的方法,分享给大家供大家参考。具体方法如下: 主代码如下: #download worker qu...

Python 函数基础知识汇总

一、函数基础 简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运行。Python中的函数在其他语言中也叫做过程或子例程,那么这些被包装起来的语句通过一个函...

Django使用Celery异步任务队列的使用

Django使用Celery异步任务队列的使用

1 Celery简介 Celery是异步任务队列,可以独立于主进程运行,在主进程退出后,也不影响队列中的任务执行。 任务执行异常退出,重新启动后,会继续执行队列中的其他任务,同...