Python list comprehension conversion
本问题已经有最佳答案,请猛点这里访问。
如何使用列表理解重新编写此函数?结果函数应该只有两行:定义行和包含列表理解表达式的返回行。
1 2 3 4 5 6 7 8 | def processList(listOfNumbers): result = [] for i in listOfNumbers: if i<0: result.append(i*i) else: result.append((i*i)+1) return result |
您可能试图这样做:
1 2 | def processList(listOfNumbers): return [i ** 2 if i < 0 else i ** 2 + 1 for i in listOfNumbers] |