我需要编写一个python、hacker和wow这些单词的加密文本,并且使用不包括使用RAW_INPUT的python中的凯撒密码,距离为3。这是我到目前为止,但我不断得到一个错误消息,我不知道如何修复它。
>>> plainText = input("python: ")
python: distance = int(input("3: "))
>>> code = ""
>>> for ch in plainText:
ordValue = ord(ch)
cipherValue = ordValue + distance
if cipherValue > ord('z'):
cipherValue = ord('a') = distance - \
(ord('z') - ordValue + 1)
SyntaxError: can't assign to function call
您似乎将此代码输入到交互式提示符中,而不是将其保存为文件并运行。如果是这种情况,那么当您使用input
时,窗口将在允许您继续输入代码之前提示您输入。
plainText = input("python: ")
输入此行后,键入要加密的单词并按enter键。只有到那时,你才应该写这一行:
distance = int(input("3: "))
在下一行开始之前,您应该输入所需的距离,code=“”
。
作为一个文体技巧,我建议将提示文本从“Python:”
和“3:”
更改为类似于“text to encrypt:”和“distance:”,这样用户就可以清楚地看到他应该输入什么。
接下来,这里有一个缩进错误:
if cipherValue > ord('z'):
cipherValue = ord('a') = distance - \
if
条件后面的行应该缩进一级。
if cipherValue > ord('z'):
cipherValue = ord('a') = distance - \
接下来,在这些线路上有两个问题。
cipherValue = ord('a') = distance - \
(ord('z') - ordValue + 1)
\
后不应有空格。在任何情况下,最好将整个表达式写在一行上,因为这一行并不长,不能分成两行。-
cipherValue = ord('a') + distance - (ord('z') - ordValue + 1)
plainText = input("text to encrypt: ")
distance = int(input("distance: "))
code = ""
for ch in plainText:
ordValue = ord(ch)
cipherValue = ordValue + distance
if cipherValue > ord('z'):
cipherValue = ord('a') + distance - (ord('z') - ordValue + 1)
code = code + chr(cipherValue)
print(code)
#to do: write this to a file, or whatever else you want to do with it
结果:
text to encrypt: hacker
distance: 13
unpxre
问题内容: 我通过java进行了凯撒密码,它可以运行,但是在用户输入密钥后不对任何内容进行加密! 这是我的代码 跑: 问题答案: 使用效率不是很高…您可以对值进行整数运算以获得其索引。 我在代码中添加了注释以解释更多信息,但这就是我想出的。 输出应该是这样的
我想知道如何限制加密的ASCII范围从32-126。 这个是用来解密的 我的加密工作得很好(当我引用解密函数时),但我的解密并不像它应该的那样工作。 额外注意:我们只需要在编码时进行右移,给出一个字符串供整个程序加密和解密(“这是C++”) 注意:在添加更多代码描述的过程中
示例:返回。如果给定的整数值小于0或大于26,则应返回空字符串。 我的问题是,作为回报,它只给我真或假。如何解决这个问题:该方法应该返回一个字符串,其中每个字符都是根据指定的整数值移动的。
首先,我是编程的新手,所以要温柔。而且,我一直在做这个任务,但没有任何结果。任务是创建一个凯撒密码程序,它加密或解密一个段落最多100个字符。实际上是两个独立的实验室。第一个实验是加密,然后第二个实验是解密。一旦我弄清楚了如何创建加密程序,解密程序应该很简单,因为我可以只进行语义更改来解密而不是加密。无论如何,这是我到目前为止的代码。它通过了他们给我们的5个测试中的4个,但出于某种原因,有一个测试
我在做凯撒密码,这是我的密码 我尝试使用%来解决这个问题(我也不是100%确定如何使用模运算符),但我没有成功。 文本文件的内容是: