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

Python如何提取单条用户输入的第二个参数存入指定变量供函数调用

问题解决

原有代码核心错误点

  • argparse 是用于解析程序启动时传入的命令行参数(即 sys.argv 内容)的工具,不适合直接解析运行时通过 input 获取的单行输入字符串,原有使用方式完全不符合该库的设计用途
  • 原代码调用 requests 时取状态码的属性错误,正确属性为 status_code 而非 status
  • 未对输入做分割处理,无法分离命令前缀和后续参数
修正后可运行代码
import requests

def test(url):
    try:
        bb = requests.get(url, timeout=10)
        if bb.status_code == 200:
            return "Success"
        else:
            return False
    except Exception as e:
        print(f"请求出错:{e}")
        return False

def main():
    x = input("Choose: ").strip()
    # 最多分割1次,避免参数本身携带空格时被错误切割
    parts = x.split(maxsplit=1)
    if len(parts) < 2:
        print("输入格式错误,示例:check-status https://example.com")
        return
    cmd, dd_dest = parts
    if cmd == "check-status":
        res = test(dd_dest)
        print(res)

if __name__ == "__main__":
    main()
关键修改说明
  • 直接对输入字符串做分割处理,拿到的第二个元素就是你需要存入 dd.dest 的目标参数,直接传递给 test 函数即可
  • 增加了输入合法性校验,避免用户输入参数不足导致索引报错
  • 给 requests 请求增加了超时设置和异常捕获,避免网络问题导致程序直接崩溃
  • 修复了状态码获取的属性错误

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 04:27:05