python - 如何解决“类型错误:linear_search() 缺少两个必需的位置参数”?:'item' 和 'item_to_search' -
问题描述
线性搜索尤其是导致问题的原因,尽管即使在谷歌搜索和查看 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”和“item_to_search”
解决方案
在代码的底部,您调用搜索函数但不传递任何参数。
elif choice == 'a':
linear_search()
推荐阅读
- mongodb - 使用 mongoexport 导出数据库时必须在 MongoDB 中指定一个集合
- c# - 是否可以使用 C# 修改像参数一样传递给其他线程的对象?
- arrays - 快速有效地获取基于其“值”的字典“键”,它是 Swift 中的字符串数组
- amazon-web-services - 如何调试或修复连接拒绝尝试卷曲 EC2 实例端口?
- r - 优化 R 中散点图生成的代码
- woocommerce - 使用 REST API 更新与产品 SKU 相关的 Woocommerce 产品图像链接
- excel - Excel 帮助:搜索第二次/第三次迭代以查找匹配状态
- java - 摇动设备时计步器活动刷新?
- react-native - 使用 SafeView 时无法更改状态栏背景颜色
- javascript - 表单数据不会通过链接参数自动填充,除非用户输入