Гарантируется ли 'vars (). Values ​​()' значения в том порядке, в котором они были переданы? - PullRequest
0 голосов
/ 15 марта 2020

Я хочу быть уверен, что vars().keys() и vars().values() возвращают имена и значения входных аргументов в точном порядке, в котором они передаются функции.

Я выполнил следующий тест , который показывает, что ответ «да»:

def testKeys(a,c,b):
    print(vars().keys(),vars().values())

def testVals(a,b,c):
    print(vars().keys(),vars().values())

testKeys(1,2,3) # should print a,c,b,1,2,3
testKeys(1,3,2) # should print a,c,b,1,3,2
testVals(1,2,3) # should print a,b,c,1,2,3
testVals(1,3,2) # should print a,b,c,1,3,2

Но я не уверен на 100% в этом, потому что vars() возвращает словарь, в котором порядок не гарантирован, я полагаю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...