![](/img/trans.png)
[英]How do I use the elements of a list as inputs in my function definition?
[英]How do I make it so I can add multiple inputs to a function and those inputs are added to a list as separate elements?
到目前為止,這是我的代碼。
myUniqueList = []
def myFunction(input):
if input in myUniqueList:
return False
else:
myUniqueList.append(input)
print(myUniqueList)
return True
print(myFunction(2))
我希望能夠將多個輸入輸入到 myFunction 中,如果其中一個輸入等於另一個輸入,則首先檢查整個列表中的輸入,如果是,function 應該返回 false。 如果沒有,function 應該將這些輸入添加到列表中,每個輸入都作為一個單獨的元素,打印列表並返回 True。 我嘗試過使用 *args 之類的東西,但我只是卡住了。
第一個input
是內置的 function,我不會覆蓋內置的。 至於檢查包容性,您可以在if
語句中使用in
關鍵字。 至於傳遞多個 arguments ,您可以使用星形打包,然后使用any
if True 檢查包容性,只需使用 args 擴展列表並刪除重復項,只需使用dict.from_keys
:
myUniqueList = []
def myFunction(*args):
if any(n in myUniqueList for n in args):
return False
else:
myUniqueList.extend(dict.from_keys(args))
print(myUniqueList)
return True
也不是使用任何你可以使用的集合,它更有效:
if set(args) <= set(myUniqueList):
...
myUniqueList = [1 , 2]
def myFunction(*argv):
for input in argv:
if input in myUniqueList:
return False
else:
myUniqueList.append(input)
print(myUniqueList)
return True
print(myFunction(2)) # False
print(myFunction(0, 4, 6)) # True
您可以使用 python 集來比較數組中是否包含重復值,如果其中不存在,則稍后將其添加到myUniqueList
中。
myUniqueList = []
def myFunction(arr: list):
if len(arr) != len(set(arr)):
return False
else:
[myUniqueList.append(i) if i not in myUniqueList else None for i in arr]
print(myUniqueList)
return True
此更新后的代碼可讓您決定輸入列表的長度
myUniqueList = []
def myFunction(lst):
for i in range(len(lst)):
if lst[i] in myUniqueList:
return False
else:
myUniqueList.append(lst[i])
print(myUniqueList)
return True
inputList = []
l = int(input("length of list: "))
for i in range(l):
inputList.append(input(f"Enter element {i+1}: "))
print(myFunction(inputList))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.