我一直在尝试使用.upper和.replace将非标准输入(如“helLo woRLD”)转换为“HELLOWORLD”,以便于处理。
这看起来很简单,它可以很好地将它变成大写,但它根本不会删除空格。
代码:
cmd = input("Please input a command: ")
cmd = cmd.upper()
cmd.replace(" ","")
print("%s" % (cmd))
有了这个,如果我进入“Hello World”,它会打印出“HELLO WORLD”,但仍有空格,我不知道为什么它不起作用。
编辑:这很令人尴尬,我只是意识到要做的事情cmd = cmd.replace(" ","")
而不是我所拥有的,标记这个因为我想出来
答案 0 :(得分:8)
python中的字符串是不可变的。而不是
cmd.replace(" ","")
说
cmd = cmd.replace(" ","")
您还可以组合这两个命令:
cmd = cmd.upper().replace(" ", "")
答案 1 :(得分:0)
cmd = input("Please input a command: ")
ans = cmd.upper().replace(" ","")
print("%s" % (ans))
答案 2 :(得分:0)
这也有效,但不是最佳解决方案。
cmd="hello world"
print("%s" % ("".join(cmd.upper().split(" "))))
答案 3 :(得分:0)
while True :
Word = input('enter string?')
word = Word.strip()
print(word)
#this is the best option as far i am concerned to take input and
#removing whitespaces
#you can use this if you do not want to take any input
#Word = 'string of a thing funny ? '
#word = Word.strip()
#print(word)