Python中文
首页
教程
问答
标签
搜索
登录
注册
使用选项中的一些参数运行python脚本
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我已经阅读了<code>sys</code>文档,但是有些东西我仍然不清楚。我已经在stackoverflow上寻找了一些类似的问题,但是我没有发现任何有用的问题(显然,任何参考都是值得赞赏的!)。</p> <p>我想创建一个脚本,比如<code>foo.py</code>,其中我想从3个参数传递到6个参数:</p> <pre><code>$ python foo.py arg1 arg2 arg3 </code></pre> <p>在任何情况下都必须给出前3个参数;如果未传递任何内容,则在具有默认参数值的函数中使用后3个参数。</p> <p>问题是我该怎么做?到目前为止,我正在考虑编写如下<code>foo.py</code>(这是一个简单的示例集,只是为了有一些具体的东西来支持我的问题):</p> <pre><code>import sys def example(credit_mom, credit_dad, debt_mom, debt_dad = 1000, salary = 2000, bonus = 0): total_gain = salary + credit_dad + credit_mom + bonus total_loss = debt_dad + debt_mom return total_gain - total_loss if __name__ == '__main__': if len(sys.argv) < 4: sys.exit('Need at least 3 arguments. The order is as follows:\n\ 1.credit_mom;\n\ 2.credit_dad;\n\ 3.debt_mom;\n\ 4.others') else: sys.exit(example(sys.argv[1], sys.argv[2], sys.argv[3], sys.argv[4], sys.argv[5], sys.argv[6])) </code></pre> <p>如果运行此脚本,显然会出现<code>IndexError</code>异常:</p> <pre><code>$ python foo.py 110 110 220 Traceback (most recent call last): File "foo.py", line 19, in <module> sys.argv[4], IndexError: list index out of range </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>除了使用<code>argparse</code>(我推荐使用),这可以通过切片和展开来解决:</p> <pre><code> sys.exit(example(*sys.argv[1:7])) </code></pre> <p>切片将只包含实际存在的元素,即使没有足够的元素来满足请求的切片大小。</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
当启用身份验证时,超过一定大小的http发布失败
7 回答
当呈现Flask温度时,bokeh图为空
8 回答
当呈现模板时,如何引用sqlalchemy中的自定义字段?
4 回答
当周围有更多相同类型的标记时,如何从一个标记中提取数据
6 回答
当周数跨越多个y时,如何使用Pandas groupby week
2 回答
当呼唤django和python提示时
10 回答
当命令`Brew installPython@2`然后出现错误“Theme error”。如何解决?
10 回答
当命令[1]不存在时,用户输入命令以列出超出范围的索引
5 回答
当命令/启动被发送到bot时,bot应该删除发送给组的标签;但是bot没有
2 回答
当命令lin执行时,导入datetime会在Python脚本中引发ModuleNotFound“math”
9 回答
当命令中提到Bot时,Bot发送其前缀
7 回答
当命令位于DM中时,Python Discord.py bot将角色分配给服务器中的用户
7 回答
当命令在discord.py中缺少必需的参数时,如何显示消息
1 回答
当命令在多个不同的服务器上处于活动状态时,如何在discord.py上使用while循环
6 回答
当命令在提示符下成功运行时,Python subprocess.check_输出产生错误
7 回答
当命令提示时自动按键按回车键
1 回答
当命令提示符意外关闭时,如何访问python虚拟环境?
3 回答
当命令提示符给出导入错误时,当我尝试运行服务器python文件时,需要进行什么更改?
7 回答
当命令有双引号时,如何从python运行windows命令行命令
2 回答
当命令的一部分来自用户inpu时在linux服务器上执行命令的安全方法
2 回答