Python - 制作矩阵但先填充列 - ADFGVX
Python - Make a matrix but fill the columns first - ADFGVX
我正在做一个 ADFGVX 密码解码器,我需要从文本制作一个矩阵,但我希望矩阵按列而不是按行制作,但要保持相同的长度。
我有这段文字:XXVFVAGFFGXD
矩阵的长度由 len("testes") 设置。
我可以创建这个矩阵:
x
x
v
f
v
a
g
f
f
g
x
d
但我想要的是:
x
v
v
g
f
x
x
f
a
f
g
d
我不知道怎么可能这样做。
让我知道是否解释了它的错误。
我的第一个想法是使用 numpy
:
import numpy as np
x = 'XXVFVAGFFGXD'
matrix = np.array(list(x)).reshape((6, 2)).transpose()
print(matrix)
给出
array([['X', 'V', 'V', 'G', 'F', 'X'],
['X', 'F', 'A', 'F', 'G', 'D']], dtype='<U1')
这里的关键是要先填充列而不是行,transpose
有交换行和列的效果,所以我们只需要添加reshape命令就可以完成结果。
我正在做一个 ADFGVX 密码解码器,我需要从文本制作一个矩阵,但我希望矩阵按列而不是按行制作,但要保持相同的长度。
我有这段文字:XXVFVAGFFGXD
矩阵的长度由 len("testes") 设置。
我可以创建这个矩阵:
x | x | v | f | v | a |
---|---|---|---|---|---|
g | f | f | g | x | d |
但我想要的是:
x | v | v | g | f | x |
---|---|---|---|---|---|
x | f | a | f | g | d |
我不知道怎么可能这样做。
让我知道是否解释了它的错误。
我的第一个想法是使用 numpy
:
import numpy as np
x = 'XXVFVAGFFGXD'
matrix = np.array(list(x)).reshape((6, 2)).transpose()
print(matrix)
给出
array([['X', 'V', 'V', 'G', 'F', 'X'],
['X', 'F', 'A', 'F', 'G', 'D']], dtype='<U1')
这里的关键是要先填充列而不是行,transpose
有交换行和列的效果,所以我们只需要添加reshape命令就可以完成结果。