Python: reemplaza elementos mayores que K

Lista de elementos dada, reemplace todos los elementos mayores que K con el carácter de reemplazo dado.

Entrada : test_list = [3, 4, 7, 5, 6, 7], K = 5, repl_chr = Ninguno
Salida : [3, 4, Ninguno, 5, Ninguno, Ninguno]
Explicación : los caracteres se reemplazan por Ninguno, mayor que 5.

Entrada : test_list = [3, 4, 7, 5, 6, 7], K = 4, repl_chr = Ninguno
Salida : [3, 4, Ninguno, Ninguno, Ninguno, Ninguno]
Explicación : los caracteres se reemplazan por Ninguno, mayor que 4.

Método #1: Usar bucle

En esto, buscamos elementos mayores que K, si los encuentra, se reemplazan por el carácter de reemplazo; de lo contrario, se conserva el valor anterior.

Python3

# Python3 code to demonstrate working of 
# Replace Elements greater than K
# Using loop
  
# initializing list
test_list = [3, 4, 7, 5, 6, 7, 3, 4, 6, 9]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing K 
K = 5
  
# initializing repl_chr 
repl_chr = "NA"
  
res = []
for ele in test_list:
      
    # replace if greater than K
    if ele > K :
        res.append(repl_chr)
    else :
        res.append(ele)
  
# printing result 
print("The replaced list : " + str(res))
Producción

The original list is : [3, 4, 7, 5, 6, 7, 3, 4, 6, 9]
The replaced list : [3, 4, 'NA', 5, 'NA', 'NA', 3, 4, 'NA', 'NA']

Método #2: Usar la comprensión de listas

Esta es una forma lineal de resolver este problema. Método similar al anterior, solo usando un delineador.

Python3

# Python3 code to demonstrate working of 
# Replace Elements greater than K
# Using list comprehension
  
# initializing list
test_list = [3, 4, 7, 5, 6, 7, 3, 4, 6, 9]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing K 
K = 5
  
# initializing repl_chr 
repl_chr = "NA"
  
# one liner to solve problem
res = [repl_chr if ele > K else ele for ele in test_list]
  
# printing result 
print("The replaced list : " + str(res))
Producción

The original list is : [3, 4, 7, 5, 6, 7, 3, 4, 6, 9]
The replaced list : [3, 4, 'NA', 5, 'NA', 'NA', 3, 4, 'NA', 'NA']

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *