随便改就行了 发表于 2023-2-22 16:36

python 为什么字典中 0 会被强行合并

本帖最后由 13265148589 于 2023-2-22 17:29 编辑

digg = 0
      comment = 0
      views = 0
      print({digg, comment, views})
                              

输出为 {0}

我理解的是{0,0,0}

用元组倒是可以解决问题

cflying 发表于 2023-2-22 17:05

你确定{digg, comment, views}是字典?你可以用type看一下类型

woaixue 发表于 2023-2-22 17:06

本帖最后由 woaixue 于 2023-2-22 17:08 编辑

楼上正解,你那个是集合。
字典的key是不允许重复的

醉红尘0 发表于 2023-2-22 17:13

字典是键值对,1个key,对应1个value,中间“:”连接,你这“,”号格式就不是字典。{0:0}这样才对,意思是一个key是0的值是0。

QingTianGG 发表于 2023-2-22 17:14

digg = 0
comment = 0
views = 0
a = {digg, comment, views}
print(type(a))
print(a)

a =
print(type(a))
print(a)

a = (digg, comment, views)
print(type(a))
print(a)

saszznz 发表于 2023-2-22 17:15

随便改就行了 发表于 2023-2-22 17:26

saszznz 发表于 2023-2-22 17:15
因为 {} 在python 中表示字典 也表示 集合
字典在3.6 以后是有序的, 且重复key会被覆盖
集合的特征是无 ...

正解。忘了还有集合。js写多了现在经常py的知识和js的知识冲突

随便改就行了 发表于 2023-2-22 17:27

QingTianGG 发表于 2023-2-22 17:14
digg = 0
comment = 0
views = 0


很棒的案例 运行下即可

bj201809 发表于 2023-2-22 19:27

字典内部是以键值对形式进行存储的,{}包裹的不一定就是字典

luoyulong 发表于 2023-2-22 21:05

集合可以重复?
页: [1] 2
查看完整版本: python 为什么字典中 0 会被强行合并