0

在 Python3 中,我可以*用来接受任意数量的位置参数。

一个例子证明了这一点:

def a(*args):
    for argument in args:
        print(argument)
a(1,2,3,4)

因此将打印:

1
2
3
4

我不确定的是,如果args实际保证保存存储的位置参数的顺序?

我可以相信如果我调用a(1,2,3,4)then argsis always (1,2,3,4)或者这只是实现细节的副作用?


在尝试对此进行调查时,我看到 in 的顺序**kwargs被保留了,并且在PEP-468Python 3.6中对此进行了指定,但是我在这方面没有发现任何提及。*args

4

1 回答 1

1

当然,它保留了 Order 因为 *args 将参数视为元组数据类型。

在 Python 中,元组总是有它的顺序。

只有字典是一种不遵循python顺序的数据类型

于 2018-07-20T05:57:48.600 回答