关键字参数Python

时间:2014-05-14 05:58:00

标签: python python-2.7

def keyword_arguments(**keywords):
    return sorted(keywords.keys())

if __name__ == '__main__':
    print keyword_arguments(arg1 = 1, arg2 = 2, arg3 = 3)

上面的代码正确返回['arg1','arg2','arg3']。但是,如果我像这样替换函数中的return语句:

return keywords.keys().sort()

它返回None。这是为什么?

1 个答案:

答案 0 :(得分:2)

这是因为sort()返回None。它只是对列表进行排序。你应该这样做:

return sorted(keywords.keys())

示范

a = [2,3,1]
>>> print a.sort()
None
>>> print a
[1, 2, 3]

替代

a = keywords.keys()
a.sort()
return a