在数组中用0替换空格(Python)

时间:2013-11-25 18:00:00

标签: python spaces zero

晚间/上午

过去两天我一直试图制作一个山地密码的程序。到目前为止我只有问题,而且我找不到将空格替换为0的方法。我尝试过可能(或者在我的情况下没有)工作的不同条件,我要么在屏幕上显示任何内容,要么从空间-96中显示ascii值。这是我到目前为止所得到的:

import math
import sys
import string
import numpy as np
from numpy import matrix

msg = sys.argv[1]
key1 = sys.argv[2]
key2 = sys.argv[3]
key3 = sus.argv[4]
key4 = sys.argv[5]
base = sys.argv[6]

key_matrix = np.matrix([[int(key1), int(key3)], [int(key2), int(key4)]])
lettconv = [ord(lett) - 96 for lett in msg]

代码可能有点讨厌,对不起,我仍然是一个python和编程一般的菜鸟。 任何事情都会很棒,我宁愿对如何做到这一点做出解释,因为这是我的大学要做的事情,我很遗憾,可以使用一些指导。

干杯!

1 个答案:

答案 0 :(得分:2)

因此,如果我正确理解了这一点,那么在列表推导中,如果字母是空格,则要使用值0,否则您希望使用ord(lett) - 96。您可以使用conditional expression表达此逻辑,如下所示:

0 if lett == ' ' else ord(lett) - 96

理解这一点:

lettconv = [0 if lett == ' ' else ord(lett) - 96 for lett in msg]