Dada la Lista de elementos, extraiga todos los elementos que tengan dígitos que aumenten en orden.
Entrada : test_list = [1234, 7373, 3643, 3527, 148, 49]
Salida : [1234, 148, 49]
Explicación : Todos los elementos tienen dígitos crecientes.
Entrada : test_list = [12341, 7373, 3643, 3527, 1481, 491]
Salida : []
Explicación : ningún elemento tiene todos los dígitos crecientes.
En esto, convertimos cada elemento en string y luego verificamos si cada dígito es mayor que el anterior usando bucle.
Python3
# initializing list test_list = [1234, 7373, 3643, 3527, 148] # printing original list print("The original list is : " + str(test_list)) # loop to check for each element res = [] for ele in test_list: flag = True for idx in range(len(str(ele)) - 1): # checking for each next digit if str(ele)[idx + 1] <= str(ele)[idx]: flag = False if flag: res.append(ele) # printing result print("Extracted increasing digits : " + str(res))
Producción:
The original list is : [1234, 7373, 3643, 3527, 148] Extracted increasing digits : [1234, 148]
Método 2: Usar sorted() , lista de comprensión y str()
En esto, probamos que cada dígito de un elemento aumente clasificando cada elemento y comparándolo con la versión original. Si son iguales, el elemento se agrega a la lista deseada.
Python3
# initializing list test_list = [1234, 7373, 3643, 3527, 148] # printing original list print("The original list is : " + str(test_list)) # sorting and comparing for equality res = [ele for ele in test_list if ''.join(sorted(str(ele))) == str(ele)] # printing result print("Extracted increasing digits : " + str(res))
Producción:
The original list is : [1234, 7373, 3643, 3527, 148] Extracted increasing digits : [1234, 148]
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