如何读取Python字符串中的空格,存储它们的确切位置,然后在这些位置将它们重新插入新字符串中?

如何读取Python字符串中的空格,存储它们的确切位置,然后在这些位置将它们重新插入新字符串中?,python,cryptography,caesar-cipher,Python,Cryptography,Caesar Cipher,我正在编写一个凯撒密码程序,并且成功地加密了我的字符串,但在这个过程中丢失了空格。我希望能够读取原始明文字符串中的空格,然后将它们重新插入新字符串中 我知道replace方法,但我觉得它限制了用户在选择要使用的键方面的自由(replace方法是静态的) 也许它有用: a=[] for i in range(len(string)): if string(i)==" ": a.append(i) 现在已存储位置,如果要在新文本中的确切位置插入位置,请尝试以下操作: b=list

我正在编写一个凯撒密码程序,并且成功地加密了我的字符串,但在这个过程中丢失了空格。我希望能够读取原始明文字符串中的空格,然后将它们重新插入新字符串中

我知道replace方法,但我觉得它限制了用户在选择要使用的键方面的自由(replace方法是静态的)

也许它有用:

a=[]
for i in range(len(string)):
   if string(i)==" ":
      a.append(i)
现在已存储位置,如果要在新文本中的确切位置插入位置,请尝试以下操作:

b=list(newstring)
for i in a:
   b[i]=" "
这将为第一部分中字符串中的位置添加一个空格,现在再次将其转换为字符串:

c=""
for i in b:
   c=c+i

或者,您可以在密码词汇表中添加空间,并对其进行加密。这将使解密过程变得更加困难。为什么不首先修改你的程序以不删除空格呢?你能提供你的问题吗?调试没有给出的代码是很困难的。