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

如何在Python中根据命令行参数控制本地专属资源声明

命令行传参控制本地模式代码执行

你可以通过读取命令行参数来判断是否启用本地模式,仅在传入local参数时初始化EC2客户端,具体实现如下:

1. 读取命令行参数

用Python内置的sys模块获取命令行传入的参数,判断第一个参数是否为local。

2. 条件执行EC2初始化逻辑

把EC2客户端的初始化代码包裹在条件判断里,仅当检测到local参数时才执行;同时建议将boto3的导入放在条件内部,避免非本地环境加载不必要的依赖。

完整示例代码

from elasticsearch import Elasticsearch
import sys

if __name__ == "__main__":
    # 判断命令行是否传入local参数
    if len(sys.argv) > 1 and sys.argv[1] == 'local':
        # 仅本地模式执行
        import boto3
        ec2 = boto3.Session(profile_name='dev', region_name='eu-west-1').client('ec2')
        # 这里可以添加EC2相关的业务逻辑
        print("本地模式已启用,EC2客户端初始化完成")
    
    # 所有环境通用的代码(比如ES连接逻辑)
    es = Elasticsearch(...)
    print("通用业务逻辑执行中")

运行方式

  • 本地环境(需要EC2客户端):
    python main.py local
    
  • 测试/生产环境(跳过EC2初始化):
    python main.py
    # 或传入其他环境标识,比如 python main.py prod
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 07:45:51