在python console中怎么传递argv
本文介绍了在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屋!
查看全文