WEB开发网
开发学院软件开发Python 使用 Python 创建 UNIX 命令行工具 阅读

使用 Python 创建 UNIX 命令行工具

 2008-05-31 12:48:48 来源:WEB开发网   
核心提示: 问题定义:我希望创建一个命令行工具,默认打印 Hello World,使用 Python 创建 UNIX 命令行工具(2),并提供用于打印不通人的姓名的选项, 基于上述说明,那么您可能会惊讶于 Python 让一切变得如此简单,“XKCD”网站发表了关于&ldquo

问题定义:我希望创建一个命令行工具,默认打印 Hello World,并提供用于打印不通人的姓名的选项。

基于上述说明,可以提供一个包含少量代码的解决方案。

Hello World 命令行接口 (CLI)

     #!/usr/bin/env python
     import optparse
    
     def main():
      p = optparse.OptionParser()
      p.add_option('--person', '-p', default="world")
      options, arguments = p.parse_args()
      print 'Hello %s' % options.person
    
     if __name__ == '__main__':
      main()

如果运行此代码,预期的输出如下:Hello world

但是,我们通过少量代码所能做到的远不止于此。我们可以获得自动生成的帮助菜单:python hello_cli.py --help 
     Usage: hello_cli.py [options]
     
     Options:
     -h, --help      show this help message and exit
     -p PERSON, --person=PERSON

从帮助菜单中可以了解到,我们可以使用两种方法来更改 Hello World 的输出:python hello_cli.py -p guido
Hello guido

我们还实现了自动生成的错误处理:python hello_cli.py --name matz
Usage: hello_cli.py [options]
     
hello_cli.py: error: no such option: --name

如果您还没有使用过 Python 的 optparse 模块,那么您刚才可能会大吃一惊,并思忖使用 Python 可以编写的所有这些不可思议的工具。如果您刚开始接触 Python,那么您可能会惊讶于 Python 让一切变得如此简单。“XKCD”网站发表了关于“Python 是如此简单”主题的非常有趣的漫画,已包括在参考资料中。

上一页  1 2 3 4 5 6 7  下一页

Tags:使用 Python 创建

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接