
>>> type({/}) <class 'set'> >>> {/} == set() True 感觉好奇怪的语法,,为啥非要引入一个空 set 语法??有啥特别大的好处吗?? set() 也挺短的啊??
1 iorilu 128 天前 就是感觉空 set 缺一个字面量写法呗, 别的都有, 唯独这个没 想起来了, 空 tuple, 也没, 要不弄个(/) |
3 XIVN1987 OP 这个 {/} 大概是 python 首创语法了吧 |
4 Vegetable 128 天前 你是用多了不觉得奇怪吧 pep 开头已经说的很清楚了,我认为理由很充分。 > This complements the existing notation for empty tuples, lists, and dictionaries, which use (), [], and {} respectively. { i for i in range(10) }是 set { i: i for i in range(10) }是 dict 你习惯了觉得正常,反正我一直认为 set 和 dict 的符号设计缺乏一致性,打个补丁虽然解决不了,但是能好一些。 |
5 XIVN1987 OP @Vegetable 空 set 用 {},空 dict 用 {:} 最符合直觉,,但空 dict 已经用了 {},,为了兼容性不可能用这个方案。。 既然符合直觉的方案已经没了,,那就没必要硬凑一个不符合直觉的方案来用,,毕竟 set() 本身也挺短的。。 |
6 iorilu 128 天前 |
7 keakon 128 天前 其实这样也行: >>> {*()} set() |
8 carlojie 128 天前 这他吗有意义吗? 都 ai 时代了 |
9 ershierdu 127 天前 via Android 踩过这个坑好多次了,经常以为{}是空集合 |