已经写好了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的不一样?
已经写好了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的不一样?
4 回答970 阅读
1 回答713 阅读
1 回答694 阅读
1 回答521 阅读
642 阅读
586 阅读
568 阅读
其实是因为python的shell和bash不同额,其语法规则是不允许这样子的,传参只能通过元祖的形式,而bash是基于字符额,所以支持这种传参方式。python的这一方式也不过是为了调用方便。。。
不过爱玩黑魔法的可以玩这个: