在没有 [ ] 括号的情况下将项目附加到列表
Appending an item to a list with out the [ ] brackets
我正在尝试编写 Vigenere 密码。我正在构建一个二维列表
[[a,b,c,d], [b,c,d,a], [c,d,a,b], [d,a,b,c]]
除了我从前面切片并移动到后面的部分以 [ ]
括号结尾外,我可以正常工作。例如
[[a,b,c,d], [b,c,d,[a]], [c,d,[a,b]], [d,[a,b,c]]
我的代码:
维吉尼亚密码
alphabet = ['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']
vigenere = []
for letter in alphabet:
if letter == 'a': #ie if its the start, no need for anything fancy
vigenere.append(alphabet[alphabet.index(letter):len(alphabet)])
else:
slicer = alphabet[alphabet.index(letter):len(alphabet)]
slicer.append(alphabet[0:alphabet.index(letter)])
vigenere.append(slicer)
print(vigenere)
在您的 else
块中,slicer.append(alphabet[0:alpha.index(letter)])
将在 slicer
列表中附加一个列表,这是您 运行 进入问题的地方。请改用 slicer.extend(...)
。
我正在尝试编写 Vigenere 密码。我正在构建一个二维列表
[[a,b,c,d], [b,c,d,a], [c,d,a,b], [d,a,b,c]]
除了我从前面切片并移动到后面的部分以 [ ]
括号结尾外,我可以正常工作。例如
[[a,b,c,d], [b,c,d,[a]], [c,d,[a,b]], [d,[a,b,c]]
我的代码:
维吉尼亚密码
alphabet = ['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']
vigenere = []
for letter in alphabet:
if letter == 'a': #ie if its the start, no need for anything fancy
vigenere.append(alphabet[alphabet.index(letter):len(alphabet)])
else:
slicer = alphabet[alphabet.index(letter):len(alphabet)]
slicer.append(alphabet[0:alphabet.index(letter)])
vigenere.append(slicer)
print(vigenere)
在您的 else
块中,slicer.append(alphabet[0:alpha.index(letter)])
将在 slicer
列表中附加一个列表,这是您 运行 进入问题的地方。请改用 slicer.extend(...)
。