如何在python中解除拉伸
因此,我试图制作一个文本加密程序,将文本中的字母更改为不同的有序字母表,但是a=key[1](key是重新排列的字母表的名称),但它不起作用,因为key[1]不能分配给一个普通的字母表,任何关于如何找到它的想法。所以如何在python中解除拉伸,python,Python,因此,我试图制作一个文本加密程序,将文本中的字母更改为不同的有序字母表,但是a=key[1](key是重新排列的字母表的名称),但它不起作用,因为key[1]不能分配给一个普通的字母表,任何关于如何找到它的想法。所以key是你重新排列的字母表,而ALPHA是正常的字母表 ALPHA = 'abcdefghijklmnopqrstuvwxyz' key = 'zwlsqpugxackmirnhfdvbjoeyt' msg = 'secretmessage' code = [] for i in
key
是你重新排列的字母表,而ALPHA
是正常的字母表
ALPHA = 'abcdefghijklmnopqrstuvwxyz'
key = 'zwlsqpugxackmirnhfdvbjoeyt'
msg = 'secretmessage'
code = []
for i in msg:
code.append(key[ALPHA.index(i)])
print(''.join(code))
在编码之后而不是编码期间生成字符串。Python和许多其他语言中的字符串是不可变的 您需要的是创建一个新字符串,根据需要替换字符 对于字节字符串(在Python中是纯字节数组),有。它需要一个256字节的字符串,描述如何替换每个可能的字节 对于Unicode字符串,
.translate
采用了一种更方便但可能更麻烦的映射:
unicode('foo bar').translate({ord('f'): u'F', ord('b'): u'B'})
在一般情况下,类似这样的方法应该有效:
def transform_char(char):
# shift a characte 3 positions forward
return chr(ord(char) + 3)
def transform(source_string):
return ''.join(transform_char(c) for c in source_string)
在转换中会发生什么?它生成一个转换字符列表([transform\u char(c)for c in source\u string]
)称为“列表理解”。此列表包含源字符串中每个字符的转换字符。然后,此列表的所有元素通过在它们之间放置一个空字符串'
有效地连接在一起
我希望现在对您来说已经足够了。如果您提供一些说明问题的代码,我们将更容易帮助您。