我有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)
答案 0 :(得分:1)
不考虑代码的质量,问题是您忘记了
在函数中将input()
强制转换为int
,但是您对__main__
中的元组执行了此操作,因此它们不是同一元组。
[list11.append(int(input('Enter a value: '))) for i in range(0,n)]