Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python float、tuple和frozenset都是可哈希的,为什么frozenset是特殊的_Python_Hash_Frozenset - Fatal编程技术网

Python float、tuple和frozenset都是可哈希的,为什么frozenset是特殊的

Python float、tuple和frozenset都是可哈希的,为什么frozenset是特殊的,python,hash,frozenset,Python,Hash,Frozenset,在Python3.7.4中 当我测试运行此程序时: 哈希((1.000001)) 2305843009025 >>>散列(1.000001) 2305843009025 >>> (1.000001) == 1.000001 真的 >>> [1.000001] == 1.000001 假的 但为什么: >>frozenset({1.000001})==1.000001 假的 >>>散列(frozenset({1.000001})) 8757482414179413028 float、tuple

在Python3.7.4中

当我测试运行此程序时:

哈希((1.000001)) 2305843009025 >>>散列(1.000001) 2305843009025 >>> (1.000001) == 1.000001 真的 >>> [1.000001] == 1.000001 假的 但为什么:

>>frozenset({1.000001})==1.000001
假的
>>>散列(frozenset({1.000001}))
8757482414179413028

float、tuple和frozenset都是可哈希的,为什么frozenset是特殊的

我犯了一个错误。逗号是元组的标识

>>散列(frozenset({1.000001}))
8757482414179413028
>>>散列((1.000001,))
2305846529543933606
>>>散列((1.000001))
2305843009025
>>>散列(1.000001)
2305843009025
>>>类型((1.000001))
>>>类型(1.000001)

这里没有元组,您的问题是什么
frozenset
是可散列的。如果不是,您将得到一个错误。第一个不是元组而是浮点。
(1.000001)
不是元组-
(1.000001,)
是-请注意逗号。欢迎使用StackOverflow!你的问题是什么?与您提到的其他类型相比,您认为frozenset在哪些方面具有特殊性?谢谢大家,现在,我知道我犯了一个愚蠢的错误,稍后我会给出解释