Python列表遍历的5种常用方法及文件遍历技巧
本文总结了Python中遍历列表的五种主要方法,包括基础的for循环、while循环、索引访问、iter()迭代器以及enumerate()枚举器,并详细解析了各方法的代码示例与运行结果。此外,文章还扩展介绍了在验证码识别等场景下,利用os模块进行文件遍历的三种实现方式,涵盖listdir、path.walk及os.walk的使用差异与注意事项。
在Python编程中,遍历列表是常见操作,主要包含以下几种实现方式:
一、使用for循环进行遍历
lists = ["m1", 1900, "m2", 2000]
for item in lists:
print(item)
lists = ["m1", 1900, "m2", 2000]
for item in lists:
item = 0;
print(lists)
运行结果:
['m1', 1900, 'm2', 2000]
二、使用while循环进行遍历
lists = ["m1", 1900, "m2", 2000]
count = 0
while count < len(lists):
print(lists[count])
count = count + 1
三、通过索引进行遍历
for index in range(len(lists)):
print(lists[index])
四、使用iter()函数进行遍历
for val in iter(lists):
print(val)
五、使用enumerate()方法进行遍历
for i, val in enumerate(lists):
print(i, val)
运行结果:
0 m1
1 1900
2 m2
3 2000
若需从非0起始的下标开始遍历元素,可采用如下方法实现:
for i, el in enumerate(lists, 1):
print(i, el)
运行结果:
1 m1
2 1900
3 m2
4 2000
扩展阅读
Python中遍历文件的方法
在验证码识别场景中,系统需将待识别图片与库中图片进行比对,以找到最相似的图片。通常做法是使用与图片内容一致的字符命名文件,进而读取文件名作为验证码。基于网络资料总结,以下是三种文件遍历的实现方式:前两种方法较为相似,而第三种方法存在显著差异。
首先需要获取文件夹路径。本文示例针对特定文件夹下的文件进行遍历,并需去除文件后缀。注:num为示例中创建的文件夹名称。
import os # 需要用到os包
s = os.sep # s区分在linux或windows系统下的分割符"/"或"\"
root = "C:\Users\XXX\Desktop" + s + "num" + s # 文件路径
mode = [] # 用mode进行去掉后缀的文件名存储。
# 遍历文件的第一种方式:
sname = os.listdir(root) # 获取文件夹下文件或文件夹的名称,获取到的sname的格式为('1.jpg')。
for f in sname:
fname = os.path.splitext(f) # 对f中的文件名进行分割,分割后显示为['1','jpg']
mode.append(fname[0]) # fname[0],取序列中的第一值,即['1']
# 遍历文件第二种方法(python2支持,python3不支持)
def func(args, dire, fis):
for f in fis:
fname = os.path.splitext(f) # splitext分割文件名和文件后缀
mode.append(fname[0])
os.path.walk(root, func, ()) # 通过调用函数进行文件的遍历,这种方法只能获取到文件夹下的文件名,不能获取到子文件夹下的其他内容
# 使用os.walk-遍历文件的第三种方法:
for rt, dirs, files in os.walk(root): # 通过os.walk进行文件遍历,可以获得文件夹下子文件内的内容,dirs为递归查出的所有文件夹,files为递归查出的所有文件
for f in files:
fname = os.path.splitext(f)
mode.append(fname[0])
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













