Python 从整数列表返回元素的索引值
python新手,因此容易出错,我的问题是: 整数的排序数组旋转了未知的次数 给定这样一个数组,以比线性时间更快的速度找到数组中元素的索引。如果数组中不存在该元素,则返回null 例如,给定数组[13,18,25,2,8,10]和元素8,返回4(数组中的索引值8) 可以假定数组中的所有整数都是唯一的 我已经尝试过的代码:Python 从整数列表返回元素的索引值,python,python-3.x,list,indexing,Python,Python 3.x,List,Indexing,python新手,因此容易出错,我的问题是: 整数的排序数组旋转了未知的次数 给定这样一个数组,以比线性时间更快的速度找到数组中元素的索引。如果数组中不存在该元素,则返回null 例如,给定数组[13,18,25,2,8,10]和元素8,返回4(数组中的索引值8) 可以假定数组中的所有整数都是唯一的 我已经尝试过的代码: def find_index(x, a): x = input("Enter number wish to be found: ") a = [13, 18,
def find_index(x, a):
x = input("Enter number wish to be found: ")
a = [13, 18, 25, 2, 8, 10]
for element in a:
if x not in a:
return None
else:
print(a.index(x))
print(find_index())
我希望能够让用户输入一个数字,并接收回索引位置的值或None
。我遇到了困难,不知道该往哪里走。有什么想法吗
编辑:我把错误和另一个错误混在一起了。真正的给定错误是:find_index()缺少两个必需的位置参数:“x”和“a”
input
返回一个字符串。您必须将x
转换为整数。索引:
def find_index():
try:
x = int(input("Enter number wish to be found: "))
except ValueError:
return 'You have to input an integer'
a = [13, 18, 25, 2, 8, 10]
try:
return a.index(x)
except ValueError:
return None
该代码给出了一个不同的错误:TypeError:find_index()缺少两个必需的位置参数:“x”和“a”
。请做一份报告