在python console中怎么传递argv

查看:140
本文介绍了在python console中怎么传递argv的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

已经写好了OptionParser

  • 在shell中这样执行ok的

    python too.py -d /usr/src/

    打印len(sys.argv[0:])的值为3

  • 在python终端就出错了

    >>> import too
    >>> too() -d /usr/src/

    打印len(sys.argv[0:])的值为0
    就是说参数没有传递过去

请问大家是怎么处理的 是不是因为__main__的option和module的不一样?

解决方案

其实是因为python的shell和bash不同额,其语法规则是不允许这样子的,传参只能通过元祖的形式,而bash是基于字符额,所以支持这种传参方式。python的这一方式也不过是为了调用方便。。。

不过爱玩黑魔法的可以玩这个:

>>> too = lambda x: lambda y: x+y
>>> too(1)(2)
3

这篇关于在python console中怎么传递argv的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆