鱼C论坛

 找回密码
 立即注册
查看: 2237|回复: 4

[已解决]字典

[复制链接]
发表于 2020-11-2 22:15:43 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
Screenshot_20201102-213630.jpg dict3这里为啥用的都是小括号
最佳答案
2020-11-2 22:47:32
# 创建字典的几种方式
# 一、{key: value}
dic1 = {'one': 1, 'two': 2, 'three': 3}
print(dic1)

# 二、dict()
k = ['one', 'two', 'three']
v = [1, 2, 3]
dic2 = dict(zip(k,v))
print(dic2)

dic3 = dict([('one', 1), ('two', 2), ('three', 3)])
print(dic3)
#或
dic4 = dict((('one', 1), ('two', 2), ('three', 3)))
print(dic4)

# 三、dict(key=value)
dic5 = dict(one=1, two=2, three=3)
print(dic5)

# 四、fromkeys()
dic6 = dict.fromkeys(['one', 'two', 'three'], '值') # 若不指定值,值默认为None
print(dic6)

# 还有字典推导式
ls1 = ['one', 'two', 'three']
ls2 = [1, 2, 3]
dic7 = {ls1[i]: ls2[i] for i in range(len(ls1))}
print(dic7)

应该是比较全的了吧,若有遗漏,欢迎补充。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-11-2 22:27:41 | 显示全部楼层
外层:dict函数的括号
中层:包裹参数成迭代器,这里迭代器是元组,你也可以改成列表,如>>> d3 = dict([(1,2),(3,4),(5,6)])
内层:迭代器元素是元组,是元组的括号。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-11-2 22:32:44 From FishC Mobile | 显示全部楼层
suchocolate 发表于 2020-11-2 22:27
外层:dict函数的括号
中层:包裹参数成迭代器,这里迭代器是元组,你也可以改成列表,如>>> d3 = dict([( ...

键和值的对应  不是用  :  的吗  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-2 22:47:32 | 显示全部楼层    本楼为最佳答案   
# 创建字典的几种方式
# 一、{key: value}
dic1 = {'one': 1, 'two': 2, 'three': 3}
print(dic1)

# 二、dict()
k = ['one', 'two', 'three']
v = [1, 2, 3]
dic2 = dict(zip(k,v))
print(dic2)

dic3 = dict([('one', 1), ('two', 2), ('three', 3)])
print(dic3)
#或
dic4 = dict((('one', 1), ('two', 2), ('three', 3)))
print(dic4)

# 三、dict(key=value)
dic5 = dict(one=1, two=2, three=3)
print(dic5)

# 四、fromkeys()
dic6 = dict.fromkeys(['one', 'two', 'three'], '值') # 若不指定值,值默认为None
print(dic6)

# 还有字典推导式
ls1 = ['one', 'two', 'three']
ls2 = [1, 2, 3]
dic7 = {ls1[i]: ls2[i] for i in range(len(ls1))}
print(dic7)

应该是比较全的了吧,若有遗漏,欢迎补充。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-3 08:13:56 | 显示全部楼层
本帖最后由 suchocolate 于 2020-11-3 08:24 编辑
小可爱. 发表于 2020-11-2 22:32
键和值的对应  不是用  :  的吗


迭代器每个元素只要是能拆包成2个值,dict就能转化成字典。你的例子里使用的是第3个方式迭代器,实际就是k/v循环迭代器。
详情参考help:
2.png

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-18 00:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表