You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS Code终端中sys与sys.argv无响应问题求助

解决sys.argv调用脚本的参数传递问题

已验证的正确调用方式

作为编程新手,我此前错误使用终端和代码,现已解决问题并吸取经验。若你遇到类似情况,请按如下方式调用代码:
Python filename.py 1 4 5 67
将数字/参数与调用命令输入在同一行,即可正常运行。

原问题分析

原帖中遇到的问题,核心是对sys.argv的用法理解有误:

我在通过终端运行脚本时遇到问题。输入单个整数时仅输出该整数,输入多个数字时仅输出数字而不执行乘法,且其他代码中也无法正常使用sys相关功能。预期是终端输入的数字与total变量相乘后输出,后续输入的数字继续与更新后的total相乘,无需逗号分隔多个数字,但实际无法实现。

你的代码逻辑本身是正确的:

import sys

total = 1
del(sys.argv[0])
for argument in sys.argv:
    try:
        number = float(argument)
        total *= number
    except Exception as e:
        print(e)
        print("Only numbers can be provided")
        sys.exit(1)

print(total)

问题出在调用方式上:sys.argv是用来读取启动脚本时在命令行附带的参数,不是运行脚本后再交互式输入的内容。如果先运行Python filename.py,之后再输入数字,这些数字不会被sys.argv捕获,自然无法执行乘法逻辑。

内容的提问来源于stack exchange,提问作者wannabeunstuck

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 04:09:52