(Python 3.5)有没有办法将字母(从用户输入)更改为另一个字母?这可以像加密程序一样工作。用户会写“你好”,程序会打印出来,“Gwkki。”
H = "G"
e = "w"
l = "k"
o = "i"
q = input("Message: ")
print (q[0:4])
答案 0 :(得分:1)
是的,你可以像这样使用str.translate
text = input('Enter your text: ')
_in = "helo"
out = "Gwki"
print(text.translate(text.maketrans(_in, out)))
就像名称所说的那样,"将_in
中文字中的文字中的每个字母翻译成out
答案 1 :(得分:0)
如果你有一套固定转换字母的方法,你可以很容易地创建一个转换函数,你将输入输入,它将转换为必要的字母并返回它。
前:
Hello传入函数成为Gwkki Olleh将成为ikkwg等等。
答案 2 :(得分:0)
假设输入字符串存储在inputs
中并且您想要在没有内置和字符串方法的情况下对其进行编码?
transl = {'a':'W', ...}
encryp = ''
for e in (transl[c] for c in inputs): encryp += e
如果允许字符串方法(不直接应用于inputs
)
transl = {'a':'W', ...}
encryp = ''.join(transl[c] for c in inputs)
在这两种情况下,我们使用dict
进行翻译,构建一系列编码字符;要加入这些字符,我们可以使用for
循环和字符串连接(+
运算符),或者以更惯用和有效的方式,使用空字符串及其方法.join()
<连接它们/ p>
当然,正确的方法是使用.translate()
,如danidee's answer所示。