如何在此代码中包含白色 space 和 n\
How to include white space and n\ in this code
我正在制作凯撒密码程序。我导入了一个txt文件,结果都是一个大句子。我如何在其中获取空格和换行符?
with open("output.txt", "r") as results:
data = results.read().replace("\n", "").lower()
alphabet = "abcdefghijklmnopqrstuvwxyz"
key = 0
cipher = ""
for c in data:
if c in alphabet:
cipher += alphabet[(alphabet.index(c) + key) % (len(alphabet))]
print("Your encrypted message is:" + cipher)
Your encrypted message is:firstcustomerwhatwillyoubeusingtheaccountforpersonaluseexistingcustomernotitlemrlastnamealrfirstnamenamenameingson
不要把"\n"换成""",那样就可以了。
问题:
当您在循环中使用 replace("\n", "")
时,它会将换行符 (\n) 替换为非 space 字符。
with open("output.txt", "r") as results:
data = results.read().replace("\n", "").lower()
如果您不想删除换行符,则需要跳过 replace
部分。
更正:
with open("output.txt", "r") as results:
data = results.read().lower()
您的代码中没有任何内容可以替换任何空白,您可以尝试添加一些 space 并进行测试。
问题
您在代码中使用以下行明确地从读取数据中删除了换行符,
data = results.read().replace('\n','').lower()
此外,为了在您的代码中包含 space 和换行符,您必须将换行符和 space 个未修改的字符添加到代码中。
解决方案
如果您想保留 space 和换行符,只需按如下方式修改您的行:
with open("output.txt", "r") as results:
data = results.read().lower()
alphabet = "abcdefghijklmnopqrstuvwxyz"
key = 0
cipher = ""
for c in data:
if c in alphabet:
cipher += alphabet[(alphabet.index(c) + key) % (len(alphabet))]
elif c in [' ', '\n']:
cipher += c
print("Your encrypted message is:" + cipher)
我正在制作凯撒密码程序。我导入了一个txt文件,结果都是一个大句子。我如何在其中获取空格和换行符?
with open("output.txt", "r") as results:
data = results.read().replace("\n", "").lower()
alphabet = "abcdefghijklmnopqrstuvwxyz"
key = 0
cipher = ""
for c in data:
if c in alphabet:
cipher += alphabet[(alphabet.index(c) + key) % (len(alphabet))]
print("Your encrypted message is:" + cipher)
Your encrypted message is:firstcustomerwhatwillyoubeusingtheaccountforpersonaluseexistingcustomernotitlemrlastnamealrfirstnamenamenameingson
不要把"\n"换成""",那样就可以了。
问题:
当您在循环中使用 replace("\n", "")
时,它会将换行符 (\n) 替换为非 space 字符。
with open("output.txt", "r") as results:
data = results.read().replace("\n", "").lower()
如果您不想删除换行符,则需要跳过 replace
部分。
更正:
with open("output.txt", "r") as results:
data = results.read().lower()
您的代码中没有任何内容可以替换任何空白,您可以尝试添加一些 space 并进行测试。
问题
您在代码中使用以下行明确地从读取数据中删除了换行符,
data = results.read().replace('\n','').lower()
此外,为了在您的代码中包含 space 和换行符,您必须将换行符和 space 个未修改的字符添加到代码中。
解决方案
如果您想保留 space 和换行符,只需按如下方式修改您的行:
with open("output.txt", "r") as results:
data = results.read().lower()
alphabet = "abcdefghijklmnopqrstuvwxyz"
key = 0
cipher = ""
for c in data:
if c in alphabet:
cipher += alphabet[(alphabet.index(c) + key) % (len(alphabet))]
elif c in [' ', '\n']:
cipher += c
print("Your encrypted message is:" + cipher)