Dada una lista de elementos, adjunte diferentes prefijos según la condición.
Entrada : test_list = [45, 53, 76, 86, 3, 49], pref_1 = “LOSE-“, pref_2 = “WIN-”
Salida : [‘LOSE-45’, ‘WIN-53’, ‘WIN-76 ‘, ‘WIN-86’, ‘LOSE-3’, ‘LOSE-49’]
Explicación : Todos los 50+ tienen el prefijo «WIN-» y otros como «LOSE-«.
Entrada : test_list = [78, 53, 76, 86, 83, 69], pref_1 = “LOSE-“, pref_2 = “WIN-”
Salida : [‘WIN-78’, ‘WIN-53’, ‘WIN-76 ‘, ‘WIN-86’, ‘WIN-83’, ‘WIN-69’]
Explicación : Todos tienen más de 50, por lo tanto, tienen el prefijo «WIN-«.
Método #1: Usar bucle
Esta forma bruta en la que se puede realizar esta tarea. En esto, realizamos la tarea de adjuntar el prefijo usando un operador condicional y un bucle.
Python3
# Python3 code to demonstrate working of # Conditional Prefix in List # Using loop # initializing list test_list = [45, 53, 76, 86, 3, 49] # printing original list print("The original list : " + str(test_list)) # initializing pref 1 pref_1 = "LOW-" # initializing pref 2 pref_2 = "HIGH-" res = [] for ele in test_list: # appending prefix on greater than 50 check if ele >= 50: res.append(pref_2 + str(ele)) else : res.append(pref_1 + str(ele)) # printing result print("The prefixed elements : " + str(res))
The original list : [45, 53, 76, 86, 3, 49] The prefixed elements : ['LOW-45', 'HIGH-53', 'HIGH-76', 'HIGH-86', 'LOW-3', 'LOW-49']
Método #2: Usar la comprensión de listas
Esta es una de las formas en que se puede realizar esta tarea. En esto, realizamos la tarea similar a la anterior como un trazador de líneas utilizando la comprensión de listas.
Python3
# Python3 code to demonstrate working of # Conditional Prefix in List # Using list comprehension # initializing list test_list = [45, 53, 76, 86, 3, 49] # printing original list print("The original list : " + str(test_list)) # initializing pref 1 pref_1 = "LOW-" # initializing pref 2 pref_2 = "HIGH-" # solution encapsulated as one-liner and conditional checks res = [pref_2 + str(ele) if ele >= 50 else pref_1 + str(ele) for ele in test_list] # printing result print("The prefixed elements : " + str(res))
The original list : [45, 53, 76, 86, 3, 49] The prefixed elements : ['LOW-45', 'HIGH-53', 'HIGH-76', 'HIGH-86', 'LOW-3', 'LOW-49']
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA