# _*_ coding: utf-8 _*_ from fn import _ from operator import add from functools import partial, reduce # å表解æ a_list = [item**2 for item in range(5)] print(a_list) # åå ¸è§£æ a_dict = {"%d^2" % item: item**2 for item in range(5)} print(a_dict) # çæå¨ a_generator = (item**2 for item in range(5)) print(a_generator) print(next(a_generator)) print(next(a_generator)) # iter彿°ånext彿° a_list_generator = iter(a_list) print(next(a_list_generator)) print(next(a_list_generator)) print(type(a_list), type(a_list_generator)) # lambdaè¡¨è¾¾å¼ a_func = lambda x, y: x**y print(a_func(2, 3)) # map彿° print(map(abs, range(-4, 5))) print(list(map(abs, range(-4, 5)))) print(list(map(lambda x: x**2, range(5)))) print(list(map(lambda x, y: x**y, range(1, 5), range(1, 5)))) # reduce彿° print(reduce(lambda x, y: x+y, range(10))) print(reduce(lambda x, y: x+y, range(10), 100)) print(reduce(lambda x, y: x+y, [[1, 2], [3, 4]], [0])) # filter彿° print(filter(None, range(-4, 5))) print(list(filter(None, range(-4, 5)))) print(list(filter(lambda x: x > 0, range(-4, 5)))) # allãany彿° print(all([0, 1, 2])) print(any([0, 1, 2])) # enumerate彿° for index, item in enumerate(range(5)): print("%d: %d" % (index, item)) # zip彿° for a, b in zip([1, 2, 3], ["a", "b", "c"]): print(a, b) a_dict = dict(zip([1, 2, 3], ["a", "b", "c"])) print(a_dict) # partial彿° print(int("10010", base=2)) int_base_2 = partial(int, base=2) print(int_base_2("10010")) # operator.add彿° print(reduce(lambda x, y: x+y, range(10))) print(reduce(add, range(10))) # fnçä½¿ç¨ add_func_1 = (_ + 2) print(add_func_1(1)) add_func_2 = (_ + _ * _) print(add_func_2(1, 2, 3))