【发布时间】:2020-03-22 14:11:19
【问题描述】:
我正在为背包算法创建一个解密函数。我是 Python 编程的新手。我需要找到一个数组中的值出现在另一个数组中的位置,索引这些值,将索引值设置为“1”,并将另一个列表中没有等效值的其他值设置为“0”。
假设:
privkey = [2,3,6,13,27,52]
searchList = [3,6]
由于 searchList 中的 [3,6] 出现在位置 privkey[1] 和 privkey[2] 我希望代码将这些索引设置为新列表中的二进制“1”。所以新的值应该是 newList= [0,1,1,0,0,0]。
到目前为止我尝试过的是:
newList = []
for i in privkey:
if (privkey[i]==searchList[i]):
newList = append(privkey.index(i)) # should yield newList = [1,2]
print(newList)
else:
print("none")
我真的不知道如何使用索引将 privkey 中的值设置为“1”值。任何帮助将不胜感激。谢谢。
【问题讨论】:
标签: python list encryption indexing knapsack-problem