【发布时间】:2021-05-20 09:37:07
【问题描述】:
我有一个关于这样的列表的任务,
创建一个名为 myUniqueList 的全局变量。它应该是一个空列表开始。
接下来,创建一个允许您将内容添加到该列表的函数。传递给此函数的任何内容都应添加到 myUniqueList,除非其值已存在于 myUniqueList 中。如果该值不存在,则应添加该值并且该函数应返回 True。如果该值确实存在,则不应添加,该函数应返回 False;
最后,在你的函数下面添加一些代码来测试它。它应该添加一些不同的元素,展示不同的场景,最后它应该打印 myUniqueList 的值以表明它有效。
添加另一个函数,将所有被拒绝的输入推送到名为 myLeftovers 的单独全局数组中。如果有人尝试向 myUniqueList 添加值但被拒绝(因为非唯一性),则应将其添加到 myLeftovers 中。”
这是我为创建列表和向列表添加值而编写的代码,但我没有从该代码中得到我想要的输出,有人可以帮我解释我做错了什么,我该如何编写以便我的列表被填满与元素?我现在从代码中得到的输出,你可以在下面看到。
myUniqueList = []
myLeftovers = []
def addList(newThing):
if newThing in myUniqueList:
myLeftovers.append(newThing)
return False
else:
myUniqueList.append(newThing)
return True
print(myUniqueList) # []
print(addList("Meliodas")) # returns 'True' since it's a new item
print(addList("Escanor")) # returns 'True' since it's a new item
print(addList("Meliodas")) # returns 'False' since it's already been added
print(myUniqueList) # This includes the new entries
print(myLeftovers) # This includes any repeated entries
我明白了
[]
False
False
False
[]
[]
你能解释一下为什么列表没有添加单词以及为什么我在 else 语句中出现语法错误
【问题讨论】:
-
请更新您帖子中的代码缩进,以便我们了解发生了什么
-
通过适当的缩进,代码可以正常工作。 ideone.com/JdfVJO
-
旁注:作业说:添加另一个函数,将所有被拒绝的输入推送到名为 myLeftovers 的单独全局数组中您尚未创建该函数。
-
谢谢我最后得到的一切,所以现在我的代码可以工作了:)
标签: python-3.x list function