Python - 如何向文本文件添加偏移因子?

时间:2015-05-17 11:37:17

标签: python encryption ascii offset

我有代码将文本文件转换为ASCII字符,并通过8个生成的数字创建随机偏移因子。我现在需要使用该偏移因子来转换文件并对其进行加密。我的问题是如何?

1 个答案:

答案 0 :(得分:3)

您可能应该在问题中添加更多信息,但这可能会让您入门。要将字母转换为ASCII整数值,请使用ord:

print ord('a')

要将整数转换为相应的ASCII字母(如果整数在ASCII范围内),请使用chr:

print chr(97)

一个例子可能是:

def GetOffSet(letter):
    return 17  # we don't know how you are creating your offset

message = 'i like turtles'
encrypted_message = ''.join([ chr(ord(letter)+GetOffSet(letter)) for letter in message ])
decrypted_message = ''.join([ chr(ord(letter)-GetOffSet(letter)) for letter in encrypted_message ])
print decrypted_message

但是存在一个危险,即你的偏移会将整数推到ASCII范围之外,你需要在某种程度上防止/处理它。