可変個数の引数について

pythonでは、*argsという書式を使うと関数へ可変個数の引数を渡すことができます。

def function(arg1, arg2, *args):
    print "arg1:", arg1
    print "arg2:", arg2
    for arg in args:
        print "arg:", arg

function(0, 1, 2 , "aaa", "bbb")


arg1: 0
arg2: 1
arg: 2
arg: aaa
arg: bbb

キーワード引数

関数にキーワード = 値という書式の引数を渡すことも可能です。

def eat(price, food='potato', mode='quickly'):
    print "price:",price,"yen"
    print "food:",food
    print "mode:",mode
    

eat(10000, food='tofu', mode='deliciously')


price: 10000 yen
food: tofu
mode: deliciously

可変個のキーワード引数を関数に渡すには、**keyworgsという書式を利用します。

def function(arg1, **keywords):
    print "arg1:", arg1
    for key in keywords:
        print "keywords:",  key, keywords[key]

function(arg1=1, arg2="aaa", arg3=9)


arg1: 1
keywords: arg2 aaa
keywords: arg3 9