【def func(*args, **kwargs)】
仮引数にアスタリスクを1つ付けて「*args」とすると、可変長の位置引数として実引数を受け取ります。
また、仮引数にアスタリスクを2つ付けて「**kwargs」とすると、可変長のキーワード引数として実引数を受け取ります。
【func(*num, **dic)】
実引数にアスタリスクを1つ付けて「*num」とすると、リストやタプルの要素をアンパックして渡します。
また、実引数にアスタリスクを2つ付けて「**dic」とすると、辞書の各キーと値を複数のキーワード引数として渡します。
なお、「args」と「kwargs」は慣例で使われている仮引数の名称のため、他の名称でも問題ありません。重要なのはアスタリスクの数です。