# 字典推导式 # enumerate(iterable, [start = 0]) ''' 参数 iterable 可迭代数据(容器类型,range,迭代器) start 可以选择索引号 (默认从0开始) 返回值: 迭代器 ''' listvar = ['a','b','c'] res = enumerate(listvar) print(res) # <enumerate object at 0x103313280> from collections.abc import Iterable, Iterator print(isinstance(res, Iterator)) # True print(list(res)) # [(0, 'a'), (1, 'b'), (2, 'c')] res = {a:b for a,b in enumerate(listvar)} print(res) # {0: 'a', 1: 'b', 2: 'c'} # zip # 可以将多个具有iterable的数据拼接成元组 放到list中里 # example from collections.abc import Iterable,Iterator list1 = ['name','age','sex'] list2 = ['张宇童','18','保密'] res = zip(list1,list2) print(isinstance(res, Iterable)) # True print(isinstance(res, Iterator)) # True print(list(res)) # [('name', '张宇童'), ('age', '18'), ('sex', '保密')] print(dict(res)) # {'name': '张宇童', 'age': '18', 'sex': '保密'} res = {a:b for a,b in zip(list1,list2)} print(res) # {'name': '张宇童', 'age': '18', 'sex': '保密'} # example 2 dictvar = {'zyt': '张宇童', 'content': '博客内容'} dictvar2 = {0: '前沿技术博客', 1: '都是原创'} res1 = dictvar.values() res2 = dictvar2.values() res = zip(res1,res2) print(dict(res)) # {'张宇童': '前沿技术博客', '博客内容': '都是原创'} # example 3 list1 = [1,2,3,4,5,6,7,8,9] # print((list1.index(3)+1)) res = [(i,list1[list1.index(i)]) for i in list1 if list1.index(i) % 2 == 0] print(res)
版权属于:
emer
文章声明:
本文版权内容属于《快乐小窝》转载请标明出处
评论一下?