关于字典的推导式

字典推导式:

dic={i:j for i in [1,2,3] for j in [‘a‘,‘b‘,‘c‘]}

理论上来说会生成{1:‘a‘,1:‘b‘,1:‘c‘,2:‘a‘,2:‘b‘,2:‘c‘,3:‘a‘,3:‘b‘,3:‘c‘}这样一个字典

但是实际上输出:

因为字典的key是唯一的,所以1:a,1:b,2:a,2:c,3:a,3:b被后面的1:c,2:c,3:c给覆盖了

如果想要生成两个列表一一对应式的字典,可以采用以下方式:

>>> a=[1,2,3]
>>> b=[‘x‘,‘y‘,‘z‘]
>>> dic=dict(zip(a,b))

或者:

>>> dic={i:j for i,j in zip(a,b)}

此时输出的结果是:

{1: ‘x‘, 2: ‘y‘, 3: ‘z‘}

时间: 2024-10-13 12:57:33

关于字典的推导式的相关文章

Python:enumerate函数、introspection对象自省、推导式(列表(list)推导式、字典(dict)推导式、集合(set)推导式)

枚举(enumerate)是Python内置函数.它允许我们遍历数据并?动计数,例如下面这样:for counter, value in enumerate(some_list): print(counter, value)不只如此,enumerate也接受?些可选参数,这使它更有?.例如:for counter, value in enumerate(some_list,1): # 指定从1开始计数 print(counter, value)还可以?来创建包含索引的元组列表. 1 # 指定索引

python数据类型详解及列表字典集合推导式详解

一.运算符 Python语言支持以下类型的运算符: 算术运算符 如: #!/usr/bin/env python # -*- coding:utf-8 -*- a = 5 b = 6 print(a + b) 比较运算符 例: #!/usr/bin/env python # -*- coding:utf-8 -*- a = 5 b = 6 if a < b: print(True) else: print(False) 赋值运算符 例: #!/usr/bin/env python # -*- c

python的各种推导式(列表推导式、字典推导式、集合推导式)

推导式comprehensions(又称解析式),是Python的一种独有特性.推导式是可以从一个数据序列构建另一个新的数据序列的结构体. 共有三种推导,在Python2和3中都有支持: 列表(list)推导式 字典(dict)推导式 集合(set)推导式 一.列表推导式 1.使用[]生成list 基本格式 variable = [out_exp_res for out_exp in input_list if out_exp == 2] out_exp_res: 列表生成元素表达式,可以是有返

(一)Python入门-4控制语句:10推导式创建序列-列表推导式-字典推导式-集合推导式-生成器推导式

推导式创建序列: 推导式是从一个或者多个迭代器快速创建序列的一种方法.它可以将循环和条件判断结合, 从而避免冗长的代码.推导式是典型的Python 风格,会使用它代表你已经超过Python初 学者的水平. 一:列表推导式 列表推导式生成列表对象,语法如下: [表达式 for item in 可迭代对象 ] 或者:{表达式 for item in 可迭代对象 if 条件判断} 1 #列表推导式 2 x = [x for x in range(1,5)] 3 print(x) 4 5 x = [x*

python函数知识五 推导式和内置函数一(了解)

17.推导式: 推导式:将for循环多行变成一行 list推导式:[] #普通模式 print([i for i in range(20)]) #循环模式 #[变量 for i in range(20)] print([i+1 for i in range(10)]) #筛选模式 #[变量(加工后) for i in range(20)] print([i for i in range(20) if i % 2 == 1]) 生成器表达器:() #普通模式 print((i for i in r

Python—推导式

推导式 推导式:comprehensions(又称解析式),是Python的一种独有特性,相当于语法糖的存在,推导式是可以从一个数据序列构建另一个新的数据序列的结构体. 共有三种推导,在Python2和3中都有支持: 列表(list)推导式 集合(set)推导式 字典(dict)推导式 列表推导式 randint 基本格式: 变量名 = [expression1 for variable in sequence[, if expression2]] expression1 : 列表生成元素表达式

字典推导式

字典推导式 可能你见过列表推导时,却没有见过字典推导式,在2.7中才加入的: d = {key: value for (key, value) in iterable}

列表推导式,字典推导式,集合推导式

1 推导式:两种语法 2 [每一个元素或者是和元素相关的操作 for 元素 in 可迭代数据类型 ] #遍历之后挨个处理 3 [满足条件的元素相关的操作 for 元素 in 可迭代数据类型 if 元素相关的条件 ] 4 5 g = (i*i for i in range(10)) #生成器推导式 6 print(g.__next__()) 7 for i in g: 8 print(i) 9 10 返回30以内能被3整除的数的平方 11 ret = [i*i for i in range(30)

列表推导式和字典推导式

列表推导式 urllist = ["http://www.zhuangxiule.cn/c{}p{}/".format(i,x) for i in range(16,26) for x in range(0,25)] print(urllist) 字典推导式 cookie = 'sts=0; UM_distinctid=16797c557a946-0f8967c2c5550c-4947311e-100200-16797c557aa5f8; Hm_lvt_9bb494db4665e401