欢迎访问宙启技术站
智能推送

Python中如何使用cmd模块读取用户输入

发布时间:2023-12-26 02:51:37

在Python中,可以使用cmd模块实现一个命令行应用程序,其中包含了自定义的命令和用户输入的交互。cmd模块提供了一个基类Cmd,我们可以继承这个类,然后自定义我们的应用程序。

下面是一个简单的示例,展示了如何使用cmd模块读取用户输入,并处理用户输入的命令。

from cmd import Cmd

class MyCmd(Cmd):
    prompt = '> '  # 设置命令提示符

    def do_hello(self, line):
        """打印欢迎消息"""
        print('Hello, world!')

    def do_greet(self, name):
        """向指定的人打招呼"""
        print(f'Hello, {name}!')

    def do_quit(self, line):
        """退出程序"""
        return True

if __name__ == '__main__':
    app = MyCmd()
    app.cmdloop()  # 进入命令行循环

在上面的示例中,我们定义了一个继承自Cmd的类MyCmd。我们可以在这个类中定义各种方法来处理用户输入的命令。每个方法都以do_开头,后面跟着命令的名称,参数可以是命令的参数或者剩余的输入行。

do_hello方法中,我们定义了一个简单的命令,用于打印欢迎消息。在do_greet方法中,我们定义了一个带参数的命令,用于向指定的人打招呼。

do_quit方法用于退出程序。返回True将退出命令行循环。

MyCmd类中,我们还定义了一个类属性prompt,用于设置命令提示符。在上面的示例中,我们将命令提示符设置为'> '

__main__条件中,我们创建了一个MyCmd对象并调用了cmdloop方法,进入了一个命令行循环。在这个循环中,我们可以通过输入命令来交互。

运行这个示例程序,你将看到一个命令提示符>,你可以输入命令来和程序交互。例如,输入hello命令会打印出Hello, world!

> hello
Hello, world!
> greet John
Hello, John!
> quit

以上就是使用cmd模块读取用户输入的一个简单例子。你可以根据自己的需求来扩展和修改这个例子,在命令行应用程序中添加更多的命令和功能。