6

私のコードは次のようになります。

class myClass(cmd.Cmd):

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

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

コマンドラインでこれを使用し、最後に空白を含む行を入力すると、cmdloop() readline は自動的にそれらを削除するように見えるので、印刷する代わりに:

myline !

それは印刷します:

myline!

誰もこれを回避する方法を知っていますか? 前もって感謝します!

4

2 に答える 2

2

この質問を「未回答」フィルターから削除するために、コメントから回答をコピーします。

「メソッドをオーバーライドし、parseline()本質的に現在と同じことを行っているように見えますが、呼び出しを削除すると.strip()、モジュール全体を書き直す必要なく修正されます...」

~ Woobleの厚意による回答

于 2013-09-25T05:24:59.563 に答える
0

次のように、4 行目にスペースを空ける必要があります。

print line+' !'

それ以外の:

print line+'!'

文字列内の余分なスペースは、! を「プッシュ」します。残りの文字列から離れます。これがお役に立てば幸いです。

于 2014-11-08T14:55:54.347 に答える