提问人:fronthem 提问时间:4/17/2018 更新时间:4/17/2018 访问量:545
如何在 Python 中从 '[1, 1, 0, 0, 0] == [0, 0, 1, 1, 0]' 中获取“True”?
How can I get `True` from `[1, 1, 0, 0, 0] == [0, 0, 1, 1, 0]` in Python?
问:
例:
我有一个解决方案列表:a
a = [1, 1, 0, 0, 0]
和输入列表:b
b1 = [1, 1, 0, 0, 0]
b2 = [0, 1, 1, 0, 0]
b3 = [0, 0, 1, 1, 0]
...
bn = [1, 0, 0, 0, 1]
如果我与任何一个进行比较,我希望从比较中获得价值。当然,这个简单的表达式是行不通的:a
b1, b2, ..., bn
True
if a == b:
...
因为在 Python 中,只有相同的列表才能相等。
有没有什么漂亮的数学可以让我在编程语言中轻松实现它?现在我正在考虑构建一些哈希函数,但我仍然不确定如何?
注意 1) 只需使用 for 循环即可轻松实现,但我需要一些更强大的东西。2)这可能也与这个帖子循环组的问题有关
答:
0赞
Allan Cao
4/17/2018
#1
一个简单的解决方案是调整 a 和 b 值:
a_original = [5, 2, 3, 1, 4]
a_formatted = sorted(a_original)
然后,您可以只使用格式化的变量。一个简单的“for”循环可用于格式化所有变量。
希望这有帮助!
评论
0赞
xxxxxxxxx
4/17/2018
所以这会对条目进行排序?但是,这难道不会给出与 [1,1,0,0,0] 和 [1,0,1,0,0] 相同的结果吗(这不是循环偏移,因此您不想在这里认为它们相等)?
0赞
Allan Cao
4/17/2018
这个答案是基于我对这个问题的理解。此函数将条目从小到大排序。我不确定这是否是原始海报想要的。
评论
a
b
a
b