反转Python中的函数集

时间:2017-02-27 04:03:52

标签: python function set variable-assignment

我在功能集上需要帮助。 我应该创建一个方法,它将采用函数集并返回为反函数集。

功能集:

f = [[1,4],[2,5],[3,6]

应该返回:

fInv = [[4,1],[5,2],[6,3]]

这是我的代码:

def inverse(f):
  fInv = []
  for i in range(len(f)):
    count = len(f[0])
    for j in range(len(f[0])):
      fInv[i][j] = f[i][count]
      count-=1
    return fInv
  return None

f = [[1,4],[2,5],[3,6]]
print(inverse(f))  

运行时,显示:

Traceback (most recent call last):
File "python", line 11, in <module>
File "python", line 5, in inverse
IndexError: list index out of range

我仍然不熟悉python编码,所以请理解问题可能是一个简单的逻辑错误。

2 个答案:

答案 0 :(得分:1)

尝试list.reverse()方法:

  

在适当的位置反转列表的元素。

f = [[1,4],[2,5],[3,6]]
for i in f:
    i.reverse()

print f

输出:

[[4, 1], [5, 2], [6, 3]]

答案 1 :(得分:0)

最简单的解决方案是使用列表解析来解包每对,然后以相反的顺序重新打包:

>>> f = [[1,4],[2,5],[3,6]]
>>> [[b, a] for [a, b] in f]
[[4, 1], [5, 2], [6, 3]]