函数调用的Python编码样式有多个参数

时间:2013-01-02 17:11:13

标签: python

这可能听起来像是一个新手问题,但我真的需要一些帮助。我甚至不知道如何标记它,但我认为只是一个Python问题。我需要使用一个接收5个参数并返回5个值的函数:

a, b, c, d, e = function (input1, input2, input3, input4, input5)

问题在于,当我使用完整的变量/函数名称时,行太长了,代码看起来很难看,我想在这里使用一个更奇特的解决方案,我正在考虑使用dict或list这样我可以这样做:

input_dict['param1'] = input1
input_dict['param2'] = input2
input_dict['param3'] = input3
input_dict['param4'] = input4
input_dict['param5'] = input5
ret_dict = function(input_dict)

是否有更好或“pythonic”的方式来提高此类通话的代码质量?

提前致谢!

1 个答案:

答案 0 :(得分:10)

您可以嵌套这样的行

my_function(test, this, out, like, so,
                   something, indent)

您可以将列表扩展为args,如此

a = [1,2,3,4,5]
my_function(*a)

你甚至可以这样做

result = my_function(big, long, list, 
                      of, args)
a,b,c,d = result
  

此外,PEP-8在处理行长度方面有很好的建议。 - Lattyware 5分钟前