大家好,我正在使用 Python,我正在尝试编写一个接受列表和选项(1 或 0)的函数。如果选项为 0,则返回一个新列表,其中包含绝对值大于 5 的所有数字;如果选项为 1,则返回所有奇数。
我几乎可以使用 0 选项,但是当我尝试取回列表时,它只是保持空白,我想知道是否有人可以帮助我找出我在附加列表元素时做错了什么。
到目前为止我的代码:
def splitList(myList, option):
myList = []
myList2 = []
if option == 0:
for element in myList:
if abs(element)>5:
myList2.append(element)
print(myList2)
最佳答案
您想返回函数的结果;在末尾添加return
语句:
return myList2
此外,您将 myList
重新绑定(bind)到函数开头的空列表;一起删除该行;否则你将忽略传递给函数的 myList
参数:
def splitList(myList, option):
myList2 = []
if option == 0:
for element in myList:
if abs(element)>5:
myList2.append(element)
return myList2
您可以将循环简化为使用列表理解:
def splitList(myList, option):
if option == 0:
return [el for el in myList if abs(el) > 5]
关于python - 绝对值并添加到列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19321816/