python - 'type' 类型的对象没有 len()
问题描述
'type' 类型的对象没有 len()
这是我的代码:
def search(li,n):
l = 0
u = len(li)-1
while l <= u:
mid = (l + u) //2
if li(mid) == n:
return True
else :
if li(mid) < n :
l = mid
else:
u = mid
调用函数search()
这是清单:
li = [5,2,8,4,6,3,7,9]
n = 3
if search(list,n):
print("Found")
else:
print("Not Found")
解决方案
这
if search(list,n):
应该读
if search(li,n):
list
是内置类型的名称。
另外,索引到列表中的正确方法是使用方括号,而不是括号。
最后,为了使二分搜索算法起作用,需要对列表进行排序。
推荐阅读
- mysql - 如何限制 Laravel 中特定外键值的行数
- c# - 路径几何中的圆
- c# - 如何在 c# 上提高 Casting Object 的性能 toList
- ajax - Ajax表单在ASP.NET MVC中两次提交调用方法
- scala - 可变参数函数编译成什么?
- css - Angular Material mat-menu-item 与 mat-menu 按钮的大小相同
- java - 自定义 Junit 4 XML 报告
- c# - JWT Authentication 参数错误
- c# - 如何在gridview中更改组合框的可见性
- c# - ASP.NET Core 2.1 Swagger(swashbuckle) Url 模板可选参数