【发布时间】:2014-01-24 16:20:14
【问题描述】:
我有一个数字列表,我想用一个键将其洗牌并重做。我将其用作小型加密算法,因此我需要重新洗牌或从洗牌列表中获取原始列表。
original = [10, 20, 30, 25, 45, 68, 25]
shuffled = shuffle(original, key=10)
print shuffled
# >>> [25, 30, 25, 10, 20, 45, 68]
print re_shuffle(shuffled, key=10)
# >>> [10, 20, 30, 25, 45, 68, 25]
这就是我想要的想法。有没有这方面的库或算法?
【问题讨论】:
-
key与您的随机播放算法有何关系? -
如果没有键,那么如何重新洗牌?算法必须有一些参数,以便它可以追溯到原始列表。
-
您可以在 python 中播种您的改组,请参阅:stackoverflow.com/questions/4557444/… - 请注意,自行发明的加密算法几乎总是不好的。适合尝试和玩弄,但除非您是加密专家,否则您永远不应该依赖这些东西
-
@kratenko 它是一个学生项目,所以算法很好。
-
@kratenko 链接的问题重复