线性搜索不返回预期输出
Linear search not returning expected output
我正在 python 中尝试简单的线性搜索,但它不起作用,我找不到我的代码有什么问题!!!
n = input("enter a number: ")
arr = [1,42,3,45,5]
count = 0;
for i in range(0, len(arr)):
if(arr[i] == n):
count = count + 1
if(count>0):
print("found")
else:
print("not found")
问题是这一行 if(arr[i] == n):
:n
的类型是 str
,因此与 int
的比较总是会失败。
尝试:
if arr[i] == int(n):
在这里,您在比较之前将 n
转换为整数。请注意,如果您无法转换为 int
,这将引发错误。您可以按如下方式解决此问题:
n = input("enter a number: ")
arr = [1, 42, 3, 45, 5]
try:
if int(n) in arr:
print("found")
else:
print("not found")
except ValueError:
print("Not an integer")
我正在 python 中尝试简单的线性搜索,但它不起作用,我找不到我的代码有什么问题!!!
n = input("enter a number: ")
arr = [1,42,3,45,5]
count = 0;
for i in range(0, len(arr)):
if(arr[i] == n):
count = count + 1
if(count>0):
print("found")
else:
print("not found")
问题是这一行 if(arr[i] == n):
:n
的类型是 str
,因此与 int
的比较总是会失败。
尝试:
if arr[i] == int(n):
在这里,您在比较之前将 n
转换为整数。请注意,如果您无法转换为 int
,这将引发错误。您可以按如下方式解决此问题:
n = input("enter a number: ")
arr = [1, 42, 3, 45, 5]
try:
if int(n) in arr:
print("found")
else:
print("not found")
except ValueError:
print("Not an integer")