如果列表中输入了任何值,则会打印它们。
如果列表中未输入任何值,则应打印出-1
v = [13,26,27,29,59,62]
def search_list(v,n):
if n ==v:
print(n)
else:
print(-1)
print(search_list(v,13))
我写了这样的代码。但结果如下所示
-1
None
答案 0 :(得分:0)
您想要in
运营商:
v = [13,26,27,29,59,62]
def search_list(v, n):
if n in v:
print(n)
else:
print(-1)
search_list(v, 13)
# 13
备注强>:
in
操作员检查项目是否在列表中。用法:
>>> v = [13,26,27,29,59,62]
>>> 13 in v
True
>>> 5 in v
False
print(search_list(v, 13))
没有任何回报。默认情况下,如果没有返回,Python
返回None
。因此,您在结果的末尾得到None
。
只需拨打电话search_list(v, 13)
即可。你在里面打印
功能。答案 1 :(得分:0)
正如我所看到的那样,您要么在列表中搜索给定值然后打印它,那么您可以这样做:
v = [13,26,27,29,59,62]
def search_list(v,n):
if n in v:
print(n)
else:
print(-1)
search_list(v,13)
无需再次打印 - 您已经在上面的函数中执行了该操作,但是如果您希望函数返回它,那么只需简单:
v = [13,26,27,29,59,62]
def search_list(v,n):
if n in v:
return n
else:
return -1
print(search_list(v,13))
否则,如果你这样做
v = [13,26,27,29,59,62]
def search_list(v,n):
if n in v:
print(n)
else:
print(-1)
print(search_list(v,13))
输出将包含None
,因为您没有定义任何返回类型,因此Python使用默认值,设置为None
答案 2 :(得分:0)
你应该使用in运算符作为对等运算符,如下所示。
v = [13,26,27,29,59,62]
def search_list(v, n):
if n in v:
print(n)
else: print(-1)
search_list(v, 13) # 13
在运算符中检查列表中是否存在项目,而等于运算符检查单个项目是否等于始终为false的列表。
希望有所帮助