如何解决"Type error: linear_search() missing two required positional arguements":'item'和'item_to_sear



线性搜索尤其是导致这个问题的原因,尽管我甚至在谷歌上搜索并浏览了stackoverflow之后也不知道该怎么办。有什么想法吗?很抱歉,如果这是格式错误,这是我第一次发帖。

def menu():
print("Option a: Use a linear search")
print("Option b: Use a binary search")
print("Option c: Use a bubble sort")
print("Option d: Use a merge sort")
print("Option e: Quit")
menu()
def linear_search(items,item_to_search):
i = 0
while i < len(items):
if list_of_numbers[i] == item_to_search:
return i
i = i + 1  
return -1
list_of_numbers = [21, 34, 5, 47, 11]
number_to_search = int(input("Enter number you want to search:"))
search_result = linear_search(list_of_numbers, number_to_search)
if search_result == -1:  
print("Given number is not found in the list")
else:
print("Given number is found in the list at position:", search_result + 1)
def binary_search(item_list,item):
first = 0
last = len(item_list)-1
found = False
while( first<=last and not found):
mid = (first + last)//2
if item_list[mid] == item:
found = True
else:
if item < item_list[mid]:
last = mid - 1
else:
first = mid + 1
return found
choice = input("Please choose an option ie a")
if choice == 'e':
print("Program ended")
elif choice == 'a':
linear_search()
elif choice == 'b':
print(binary_search([1,2,3,5,8], 6))
print(binary_search([1,2,3,5,8], 5))

这是我收到的错误:

类型错误:linear_search((缺少两个必需的位置参数:"item"one_answers"item_to_search">

在代码的底部,您可以调用搜索函数,但不传递任何参数。

elif choice == 'a':
linear_search()

最新更新