python3基础知识学习之------基础编程

1.迭代器

迭代器是一个可以记住遍历的位置的对象。

迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。

迭代器有两个基本的方法:iter() 和 next()

字符串,列表或元组对象都可用于创建迭代器.

list=[1,2,3,4]
A = iter(list)    # 创建迭代器对象
print (next(A))
#输出为:1
print (next(A))
#输出为:2
#--------------------创造一个迭代器----------------------------
class MyNumbers:
    def __iter__(self):
        self.a=1
        return self

    def __next__(self):
        if self.a<5:
           x=self.a
           self.a +=1
           return(x)
        else:
           raise StopIteration


A = MyNumbers()
B = iter(A)

for x in B:
    print(x)

# 输出为:1 2 3 4

2.生成器

在 Python 中,使用了 yield 的函数被称为生成器(generator)。

跟普通函数不同的是,生成器是一个返回迭代器的函数,只能用于迭代操作,更简单点理解生成器就是一个迭代器。

import sys
def fibonacci(n):  # 生成器函数 - 斐波那契
    a, b, counter = 0, 1, 0
    while True:
        if (counter > n):
            return
        yield a
        a, b = b, a + b
        counter += 1


f = fibonacci(10)  # f 是一个迭代器,由生成器返回生成

while True:
    try:
        print(next(f), end=" ")
    except StopIteration:
        sys.exit()

3.定义一个函数

def max(a,b):
    if a>b:
       return a
    else:
       return b
    
print(max(2,3))
# 输出为:3

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值