【发布时间】:2023-04-02 06:06:01
【问题描述】:
我正在寻找一个函数,它接受一个列表和一个整数作为参数,并以小于第二个参数中的值的非常值的升序输出列表。
然后,如果整数(第二个参数)的值小于列表中的每个值,则该函数返回一个打印语句,例如“这里什么都没有。”
def thisFunction(mylist=[], *myNum):
print(mylist)
print(*myNum)
for x in list(int(mylist[0])):
if x > myNum:
mylist.remove(x)
mylist.sort()
elif x < myNum:
print(f"There are no values less than numbers{myNum}")
thisFunction([12,4,5,6,7,11,56],5)
现在,我得到一个 TypeError: 'int' object is not iterable。我不知道我做错了什么!
【问题讨论】:
-
你想用
list(int(mylist[0]))
完成什么? -
def thisFunction(myList, myNum): ...
有什么问题? -
在
list(int(mylist[0]))
你尝试做list(12)
并且它给出了错误。你为什么不使用for x in mylist:
-
顺便说一句:从与
for
一起使用的列表中的remove()
元素不是一个好主意。它可能会跳过一些元素。更好地使用您想要保留的元素创建新列表。 -
请分享整个错误信息。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:如何在 Python 中创建一个接受数字列表和整数的函数? - Python技术站