Python – 列表中两个元素之间的最近出现

pythonserver side programmingprogramming更新于 2025/10/20 2:20:17

当需要显示列表中两个元素之间的最近出现时,会定义一个带有三个参数的方法。它使用‘not in’运算符和列表推导来确定结果。

下面是相同的演示 −

示例

def nearest_occurence_list(my_list, x, y):
   if x not in my_list or y not in my_list:
      return -1
   x_index = [index for index in range(len(my_list)) if my_list[index] == x]
   y_index = my_list.index(y)
   min_dist = 1000000
   result = None
   for element in x_index:
      if abs(element - y_index) < min_dist:
         result = element
         min_dist = abs(element - y_index)
   return result
my_list = [12, 24, 15, 17, 28, 26, 13, 28, 14, 12, 20, 19, 24, 29, 14]
print("列表为:")
print(my_list)
x = 14
print("x 的值为 ")
print(x)
y = 26
print("y 的值为 ")
print(y)
print("结果为:")
print(nearest_occurence_list(my_list, x, y))

输出

列表为:
[12, 24, 15, 17, 28, 26, 13, 28, 14, 12, 20, 19, 24, 29, 14]
x 的值为
14
y 的值为
26
结果为:
8

解释

  • 名为‘nearest_occurence_list’的方法定义了一个带有三个参数的方法。

  • 如果第一个参数中没有第二个或第三个参数,则返回 -1。

  • 如果列表包含第一个参数,则使用列表推导式迭代元素并获取列表的长度。

  • 这被分配给变量一。

  • 确定第二个参数的索引。

  • 迭代变量一中的元素,并将元素和 y 的索引之间的差异与特定值进行比较。

  • 根据此情况返回结果。

  • 在方法之外,定义一个列表并显示在控制台上。

  • 定义 x 和 y 的值并显示在控制台上。

  • 通过传递必需参数。

  • 这是控制台上显示的输出。


相关文章


有用资源