首页 文章

构建Python命令提示符接口

提问于
浏览
-1

有没有办法构建一个简单的Python命令提示符接口 . 它只需输入文本和输出内容 .

最后接口看起来应该是这样的:

sample

从Pycharm 2017我得到这些错误 .

Traceback(最近一次调用最后一次):文件“C:/ Users / Main / Desktop / Py Sandbox / Keylogger / test.py”,第4行,在user_input = prompt('>')文件“C:\ Users \ Main \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ prompt_toolkit \ shortcuts.py“,第548行,在提示eventloop = eventloop中)文件”C:\ Users \ Main \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ prompt_toolkit \ shortcuts.py“,第576行,在run_application output = create_output(true_color = true_color))文件”C:\ Users \ Main \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ prompt_toolkit \ shortcuts.py“,第118行,在create_output中返回Win32Output(stdout)文件”C:\ Users \ Main \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ prompt_toolkit \ terminal \ win32_output.py“,第80行,在init info = self.get_win32_screen_buffer_info()文件”C:\ Users \ Main \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ _mextra_toolkit \ terminal \ win32_output.py“ ,第172行,在get_win32_screen_buffer_info中引发NoConsoleScreenBufferError提示t_toolkit.terminal.win32_output.NoConsoleScreenBufferError:找不到Windows控制台 . 你在运行cmd.exe吗?

从默认的Python IDLE我得到这个eroor:

回溯(最近一次调用最后一次):文件“C:/Users/Main/Desktop/adusgisdhui.py”,第4行,在user_input =提示符('>')文件“C:\ Users \ Main \ AppData \ Local \程序\ Python \ Python35 \ lib \ site-packages \ prompt_toolkit \ shortcuts.py“,第548行,在提示eventloop = eventloop中)文件”C:\ Users \ Main \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site -packages \ prompt_toolkit \ shortcuts.py“,第576行,在run_application output = create_output(true_color = true_color))文件”C:\ Users \ Main \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ prompt_toolkit \ shortcuts.py“,第118行,在create_output中返回Win32Output(stdout)文件”C:\ Users \ Main \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ _mextra_toolkit \ terminal \ win32_output.py“,第80行,在init info = self.get_win32_screen_buffer_info()文件“C:\ Users \ Main \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ prompt_toolkit \ terminal \ win32_output.py”,第162行,in get_win32_screen_buffer_info self.flush()文件“C:\ Users \ Main \ AppData \ Local \ Progr ams \ Python \ Python35 \ lib \ site-packages \ prompt_toolkit \ terminal \ win32_output.py“,第288行,在flush self.stdout.flush()中:AttributeError:'NoneType'对象没有属性'flush'

2 回答

  • 0

    非常基本的代码

    while 1:
        userinput = input(">>")
    
    if userinput == "help":
        print("You asked for help")
    elif ...
    
  • 0

    这是一篇关于为python程序CLI Python构建命令行界面的精彩文章 . 其中一种方法是使用 prompt_toolkit

    from prompt_toolkit import prompt
    
    while 1:
        user_input = prompt('>')
        print(user_input)
    

    然后,这将不断询问用户输入 . 它还具有命令历史记录和自动建议等功能 .

相关问题