How to skip providing default arguments in a Python method

前端 未结 3 1925
抹茶落季
抹茶落季 2020-12-16 22:08

I\'m calling this method from the Python boto2 library:

boto.emr.step.StreamingStep(name, mapper, reducer=None, combiner=None, action_on_failure=\'TERMINATE_         


        
3条回答
  •  隐瞒了意图╮
    2020-12-16 22:37

    There are two ways to do it. The first, most straightforward, is to pass a named argument:

    boto.emr.step.StreamingStep(name='a name', mapper='mapper name', combiner='combiner name')
    

    (Note, because name and mapper were in order, specifying the argument name wasn't required)


    Additionally, you can pass a dictionary with ** argument unpacking:

    kwargs = {'name': 'a name', 'mapper': 'mapper name', 'combiner': 'combiner name'}
    boto.emr.step.StreamingStep(**kwargs)
    

提交回复
热议问题