如何跳过空关键字参数

2024-05-15 00:06:27 发布

您现在位置:Python中文网/ 问答频道 /正文

有没有更好的方法来避免冗余代码?在本例中,如果storage为0,则我不想将其传递给函数并保持代码整洁,但我必须执行if-else。你知道吗

if storage == 0:
    response_lc = asg_client.create_launch_configuration(
        ImageId=ami,
        InstanceType=instance_type,
        KeyName=keypair
    )
else:
    response_lc = asg_client.create_launch_configuration(
        VolumeSize=storage,
        ImageId=ami,
        InstanceType=instance_type,
        KeyName=keypair
    )

Tags: instance代码clientifresponsecreatestoragelaunch
1条回答
网友
1楼 · 发布于 2024-05-15 00:06:27

如果没有出路,你可以这样做:

kwargs = {
  "ImageId": ami,
  "InstanceType": instance_type,
  "KeyName": keypair
}
if storage:
    kwargs["VolumeSize"] = storage

response_lc = asg_client.create_launch_configuration(**kwargs)

但是我建议您深入研究asg_client.create_launch_configuration方法,看看是否所有的四个参数都可以在所有情况下传递。你知道吗

相关问题 更多 >

    热门问题