Python 列表(List) 的三种遍历

本文介绍了三种使用Python遍历列表并获取元素序号和值的方法。包括使用列表.index()方法、range(len())结合索引访问及enumerate()函数,提供了实用的代码示例。

Python 列表(List) 的三种遍历(序号和值)方法
三种遍历列表里面序号和值的方法:

1 #!/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3 if __name__ == '__main__':
 4     list = ['html', 'js', 'css', 'python']
 5 
 6     # 方法1
 7     print '遍历列表方法1:'
 8     for i in list:
 9         print ("序号:%s   值:%s" % (list.index(i) + 1, i))
10 
11     print '\n遍历列表方法2:'
12     # 方法2
13     for i in range(len(list)):
14         print ("序号:%s   值:%s" % (i + 1, list[i]))
15 
16     # 方法3
17     print '\n遍历列表方法3:'
18     for i, val in enumerate(list):
19         print ("序号:%s   值:%s" % (i + 1, val))
20 
21     # 方法3
22     print '\n遍历列表方法3 (设置遍历开始初始位置,只改变了起始序号):'
23     for i, val in enumerate(list, 2):
24         print ("序号:%s   值:%s" % (i + 1, val))
<think>我们被要求用中文回答,并且在回答后必须提出3-5个相关问题,以“§§相关问题§§”开头 问题:python遍历list,可以遍历出索引么? 回答:是的,可以遍历出索引。常见方法有使用range(len())或enumerate()。 我们将详细说明这两种方法,并给出代码示例。 同时,按照规则,在最后提出相关问题。</think>是的,在 Python遍历列表时完全可以获取索引。以下是两种最常用的方法: ### 1. 使用 `range(len())` 方法(基础方式) ```python fruits = ["apple", "banana", "orange"] for i in range(len(fruits)): print(f"索引 {i}: {fruits[i]}") # 输出: # 索引 0: apple # 索引 1: banana # 索引 2: orange ``` ### 2. 使用 `enumerate()` 函数(推荐方式) ```python colors = ["red", "green", "blue"] # 同时获取索引和元素值 for index, color in enumerate(colors): print(f"位置 {index} 的颜色是 {color}") # 输出: # 位置 0 的颜色是 red # 位置 1 的颜色是 green # 位置 2 的颜色是 blue ``` ### `enumerate()` 的高级用法 ```python # 设置起始索引值(不从0开始) for idx, val in enumerate(colors, start=1): print(f"编号 {idx}: {val}") # 输出: # 编号 1: red # 编号 2: green # 编号 3: blue # 结合条件筛选 for i, item in enumerate(colors): if "e" in item: # 只处理包含字母'e'的元素 print(f"索引 {i} 包含 'e': {item}") ``` ### 性能对比 | 方法 | 特点 | 适用场景 | |------|------|----------| | `range(len())` | 需通过索引二次访问元素 | 需要精确控制索引时 | | `enumerate()` | 直接获取索引和元素 | 大多数情况(更Pythonic) | ### 注意事项 - 使用索引时注意边界:`index < len(list)` - 避免在遍历中修改列表长度(增删元素) - 使用 `enumerate()` 更高效且不易出错
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值