Python学习笔记之字典推导式

    选择打赏方式

# 字典推导式
# 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)
版权声明:若无特殊注明,本文皆为《 张宇童 》原创,转载请保留文章出处。
本文链接:Python学习笔记之字典推导式 https://www.zyt8.cn/w/158.html
正文到此结束

热门推荐

发表吐槽

你肿么看?

你还可以输入 250 / 250 个字

嘻嘻 大笑 可怜 吃惊 害羞 调皮 鄙视 示爱 大哭 开心 偷笑 嘘 奸笑 委屈 抱抱 愤怒 思考 日了狗 胜利 不高兴 阴险 乖 酷 滑稽

评论信息框

吃奶的力气提交吐槽中...


既然没有吐槽,那就赶紧抢沙发吧!