Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在编写消息时对其进行加密_Python_Encryption - Fatal编程技术网

Python 在编写消息时对其进行加密

Python 在编写消息时对其进行加密,python,encryption,Python,Encryption,我用python编写了一个简单的脚本,它接受一个字符串,并通过在1到10之间随机移动每个字母对其进行加密: from random import randint n = input('>>') for i in n: print(chr(ord(i) + randint(1,10)), end = '') 比如我写了“七”,它给了我“yh~gx”。我想知道的是,在您编写字符串时,是否有可能实现这一点。例如,如果我想写“七”,它会显示“yh~gx”。我知道这是C++中可能

我用python编写了一个简单的脚本,它接受一个字符串,并通过在1到10之间随机移动每个字母对其进行加密:

from random import randint

n = input('>>')

for i in n:
    print(chr(ord(i) + randint(1,10)), end = '')

比如我写了“七”,它给了我“yh~gx”。我想知道的是,在您编写字符串时,是否有可能实现这一点。例如,如果我想写“七”,它会显示“yh~gx”。我知道这是C++中可能的,但是我不知道如何在Python中做。

< Python是<强>不< /强>非常适合这类工作。我能找到的最好的解决方案只能在Windows上运行,并且除了关闭终端窗口之外,没有办法退出程序(或者,如果您愿意,您可以添加对某些字符的检查)


已找到此解决方案。

为什么要这样做?这不是加密,只是。。。我猜是乱七八糟的。我甚至不知道该怎么称呼它。如果这是为了好玩,那太好了。如果不是,就弃船。@LukePark是的,这不是为了任何实际目的,只是为了好玩。这有点像维格纳密码,虽然它的移位是26模,而不是10模。您正在使用
randint
生成密钥流,而不是固定的重复密钥。看看Vigenere密码的Python实现可能会有一些想法。具体来说,您需要了解如何解密加密流。
import msvcrt
from random import randint

while True:
    msvcrt.putch(chr((ord(msvcrt.getch()) + randint(1, 10)) % 128).encode('ascii'))