python编程导论 week 3

2018-07-23  本文已影响4人  猪蹄炖粥

数据化类型

注:反斜杠:表示下一行是上一行的延续

理解生成器和迭代器

#迭代器实现斐波那契数列
class Fib:
    def __init__(self):
        self.prev = 0
        self.curr = 1

    def __iter__(self):
        return self

    def __next__(self):
        value = self.curr
        self.curr += self.prev
        self.prev = value
        return value

# f = Fib()
# list(islice(f, 0, 10))
#[1, 1, 2, 3, 5, 8, 13, 21, 34, 55]

练习 map/reduce 、filter 、 sorted以及匿名函数

def fn(x, y):
    return x * 10 + y

 def char2num(s):
     return {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9}[s]
 reduce(fn, map(char2num, '13579'))
#13579

视频中的错题总结

x = [1, 2, [3, 'John', 4], 'Hi'] 
x[0:1]
type(x[0:1]) #list
print(x[0:1]) #[1]
x = range(3, 10)
type(x) #list
上一篇 下一篇

猜你喜欢

热点阅读