为什么以下元组具有不同的哈希值

时间:2019-01-31 19:25:33

标签: python hash tuples

我有2种不同的方法 func1返回哈希(元组) 主返回哈希值(t)

但是散列不同而元组相同 下面的代码:

def func1(n):
    list11 = []
    [list11.append(input('Enter a value: ')) for i in range(0,n)]
    t = tuple(list11)
    print(hash(t))

if __name__ == "__main__":

    n = int(input())
    integer_list = map(int, input().split())
    t = tuple(integer_list)
    print(hash(t))
    func1(2)

1 个答案:

答案 0 :(得分:1)

不考虑代码的质量,问题是您忘记了 在函数中将input()强制转换为int,但是您对__main__中的元组执行了此操作,因此它们不是同一元组。

[list11.append(int(input('Enter a value: '))) for i in range(0,n)]