解码过程中保留空格
Retaining spaces in decoding process
我需要编写一个程序来获取编码后的消息,翻转它,删除任何不是字母或 space 的字符,然后输出隐藏的消息。
示例输入:
d89%l++5r19o7W *o=l645le9H
预期输出:
Hello World
我的输出:
HelloWorld
如果我使用白色 space 作为分隔符,它 returns
H e l l o w o r l d
我的代码:
decode = [ch for ch in input() if ch.isalpha()]
print("".join(decode[::-1]))
space 字符不是字母数字字符。
在您的原始代码中,使用:
decode = [ch for ch in input() if ch.isalpha() or ch == ' ']
相反。
如果要保留 space 字符以外的其他类型的白色 space(例如制表符、换行符),请使用:
decode = [ch for ch in input() if ch.isalpha() or ch.isspace()]
这是一个正则表达式方法:
inp = "d89%l++5r19o7W *o=l645le9H"
output = re.sub(r'[^A-Z ]+', '', inp, flags=re.I)[::-1]
print(output) # Hello World
inp = 'd89%l++5r19o7W *o=l645le9H'
decode = []
for i in inp[::-1].split():
decode.append("".join([ch for ch in i if ch.isalpha()]))
print(" ".join(decode))
我需要编写一个程序来获取编码后的消息,翻转它,删除任何不是字母或 space 的字符,然后输出隐藏的消息。
示例输入:
d89%l++5r19o7W *o=l645le9H
预期输出:
Hello World
我的输出:
HelloWorld
如果我使用白色 space 作为分隔符,它 returns
H e l l o w o r l d
我的代码:
decode = [ch for ch in input() if ch.isalpha()]
print("".join(decode[::-1]))
space 字符不是字母数字字符。
在您的原始代码中,使用:
decode = [ch for ch in input() if ch.isalpha() or ch == ' ']
相反。
如果要保留 space 字符以外的其他类型的白色 space(例如制表符、换行符),请使用:
decode = [ch for ch in input() if ch.isalpha() or ch.isspace()]
这是一个正则表达式方法:
inp = "d89%l++5r19o7W *o=l645le9H"
output = re.sub(r'[^A-Z ]+', '', inp, flags=re.I)[::-1]
print(output) # Hello World
inp = 'd89%l++5r19o7W *o=l645le9H'
decode = []
for i in inp[::-1].split():
decode.append("".join([ch for ch in i if ch.isalpha()]))
print(" ".join(decode))