要解决的需求:给定一个数字列表和一个目标数字,在此列表中查找此数字所在的位置,返回此位置,比如列表 a = [1,2,3], 目标数字是2,那么返回它在列表中的位置是1.
我的思路是,在while循环中,用pop方法去挨个查找比对,但是输出结果要么是空的,要么是pop index out of range,请帮忙看一下。
代码如下:
def num_pos(num_list,target_num):
list_len = len(num_list)
num_list2 = num_list[:]
i = 0
while i <= list_len:
get_num = num_list.pop(i)
if get_num == target_num:
return i
else:
num_list = num_list2
i += 1
alist = [1,2,3,4,5,6,7,8,9]
num = 9
num_pos(alist,num)