python笔记-3.1章_迭代

#自学Python的学习笔记

概览

如果给定一个list或tuple,我们可以通过for循环进行遍历这个list或tuple,这种遍历我们称之为迭代(lteration)

 

只要是可迭代对象,无论有无下标都可以迭代,比如:dict、str、generator(生成器)

 

在python中,迭代是通过for ... in来完成

 

1.1、 字典的迭代

默认情况下,dict迭代是key。

#  定义一个字典

d = {'a':1, 'b':2, 'c':3}
#  迭代字典的key

for key in d:

#  迭代字典的value

for

value in d.values():

#迭代键值对

for k, v in d.items()

 

1.2、字符串的迭代

for ch in 'ABC'

 

1.3  list迭代

#定义一个list

L = [1, 2, 3]

迭代list的下标

for i in L:

 

    print(L.index(i))

 迭代list的值

for i  in L:

 

    print(i)

当我们使用for循环时,只要作用于一个可迭代对象,for循环就可以正常运行

通过collections模块的的 Iterable类型判断一个对象是否是可迭代对象:

# 判断对象是否是可迭代对象
from collections.abc import Iterable
I = isinstance(123, Iterable)
print(I)

对list实现下标循环:Python内置的enumerate函数可以把一个list变成索引-元素对,这样就可以在for循环中同时迭代索引和元素本身

for i, value in enumerate(['A', 'B', 'C']):
    print(i, value)

 

两个变量的迭代:

#两个变量的迭代
for x, y in [(1,2), (3, 4), (5, 6)]:
    print(x, y)

 

作业:

请使用迭代查找一个list中最小和最大值,并返回一个tuple:

#请使用迭代查找一个list中最小和最大值,并返回一个tu

def findMinAndMax(L):

    if len(L) == 0:
        return (None, None)


    Min = L[0]
    Max = L[0]

    for value in L:
        if value < Min:
            Min = value
        if value > Max:
            Max = value
    return (Max, Min)
    

L = [9,8,4,6,5,1]
print(findMinAndMax(L))

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值