Python – 列表中兩個元素之間最近的出現
當需要顯示列表中兩個元素之間最近的出現時,定義一個接受三個引數的方法。它使用“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("The list is :")
print(my_list)
x = 14
print("The value of x is ")
print(x)
y = 26
print("The value of y is ")
print(y)
print("The result is :")
print(nearest_occurence_list(my_list, x, y))輸出
The list is : [12, 24, 15, 17, 28, 26, 13, 28, 14, 12, 20, 19, 24, 29, 14] The value of x is 14 The value of y is 26 The result is : 8
解釋
定義了一個名為“nearest_occurence_list”的方法,它接受三個引數。
如果第二個或第三個引數不存在於第一個引數中,則返回 -1。
列表推導式用於迭代元素,如果列表包含第一個引數,則獲取列表的長度。
這被賦值給變數 one。
確定第二個引數的索引。
迭代變數 one 中的元素,並將元素與 y 的索引之間的差與特定值進行比較。
根據此,返回結果。
在方法外部,定義一個列表並在控制檯中顯示。
定義 x 和 y 的值並在控制檯中顯示。
透過傳遞所需引數來呼叫該方法。
這是在控制檯中顯示的輸出。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP