停止cmdloop()从python中的输入行剥离空格

时间:2013-09-18 16:52:52

标签: python

我的代码看起来像这样:

class myClass(cmd.Cmd):

  def do_myFunction(self, line):
    print line+'!'

if __name__ == '__main__:
  myClass().cmdloop()

当我在命令行中使用它并在末尾键入一个带有空格的行时,cmdloop()readline似乎会自动剥离它们而不是打印:

myline !

打印:

myline!

有人知道解决这个问题吗?提前谢谢!

2 个答案:

答案 0 :(得分:1)

从评论中复制答案,以便从“未答复”过滤器中删除此问题:

“它看起来像覆盖了parseline()方法,并且基本上做了与现在相同的事情,但删除对.strip()的调用将修复它而无需重写整个模块......”

〜回答Wooble提供

答案 1 :(得分:0)

你应该在第4行间隔一个空格,如下所示:

print line+' !'

而不是:

print line+'!'

字符串中的额外空格将“推”出来!离开形成其余的字符串。我希望这可以帮助你!