我正试图编写一个程序,以随机顺序从1到26的数字生成一个列表,然后使用该列表'加密'给定的单词,以便字母的第n个字母是映射到随机列表中的第n个数字。例如:与加密混淆
随机列表是:
[8,2,25,17,6,9,12,19,21,20,18,3,15,1,11,0,23,14,4,7,24,5,10,13,16,22]
这意味着字act
变得[8,25,7]
和字xyzzy
变得[13,16,22,22,16]
。
我有下面的代码,但我不知道如何着手:
#8a
def randomalpha():
a=[0]*26
count = 0
while count < 25:
r = randrange(0,26)
if r not in a:
a[count] = r
count += 1
return(a)
print(f())
#8b
ls=['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
def encrypt(alphabet):
a=randomalpha()
count=0
b=input('enter a word')
for i in b: #not sure if i am ok up to here but this is when i got really confused
print(encrypt(ls))
所以后来我在输入LS接下来的代码是一个字母表,所以说第一个随机列表开始[3,8,10 ... 3 = a 8 = b 10 = c所以如果我然后把我的输入放入第二个代码'abc'它会返回[ 3,8,10] –
如果'encrypt()'遇到非小写和/或非alpha字符会发生什么?你使用的是什么版本的Python? – martineau
你的问题似乎不完整和/或真的很模糊。请以某种方式重写您的问题,以便每个人都能理解您正在努力实现的目标以及问题所在。 – KennyV