【发布时间】:2015-01-12 15:03:33
【问题描述】:
我最初尝试使用= 运算符来赋值,但它返回了错误,
然后我尝试使用 string.replace():
encrypted_str.replace(encrypted_str[j], dec_str2[k], 2)
和
encrypted_str.replace(encrypted_str[j], unichr(ord(dec_str2[k]) - 32), 2)
但它正在返回原始值。
帮助了解如何正确使用替换 API 以提供正确的结果
还有其他 API 可以用来代替 unichr()。
encrypted_str 正在被encrypted_str = raw_input() 从用户那里取走
dec_str2 是用户输入的频率字符串。
这个问题几乎不涉及变量
我想知道我是否错误地使用了replcae() API,因为它为encrypted_str 提供了不变的输出
我们可以使用encrypted_str[j] 从字符串中返回一个字符 来定义replace() API 的子字符串。
我用encrypted_str.replace(encrypted_str[j], unichr(ord(dec_str2[k]) - 32), 1) max replace 1
而不是 2(因为我只需要一个替换)。
我需要做的实际操作将在 C 中如下:
encrypted_str[j] = dec_str2[k] -32。
由于我是 python 新手,我正在尝试寻找替代品。
【问题讨论】:
-
您认为我们如何在不了解
encrypted_str和dec_str2的情况下为您提供帮助,实际上您的代码背后的逻辑是什么? -
我认为这并不重要,但逻辑是使用解密的频率字符串来解密 Ceaser Cipher
-
请将您的描述添加到问题中,以及您的数据或其中的一部分!