Dada una lista, calcule el porcentaje de elementos positivos en la lista.
Entrada : test_list = [4, 6, -2, 3, -8, -9, -1, 8, 9, 1]
Salida : 60.0
Explicación : 6/10 elementos son positivos.Entrada : test_list = [-4, 6, -2, 3, -8, -9, -1, 8, 9, 1]
Salida : 50.0
Explicación : 5/10 elementos son positivos.
Método #1: Usando len() + comprensión de lista
En esto, construimos una lista de elementos positivos usando la comprensión de listas y luego calculamos la longitud de las listas usando len(), ambas longitudes se dividen y multiplican por 100 para obtener el recuento porcentual.
Python3
# Python3 code to demonstrate working of # Positive values percentage # Using len() + list comprehension # initializing list test_list = [4, 6, -2, 3, -8, 0, -1, 8, 9, 1] # printing original list print("The original list is : " + str(test_list)) # getting filtered list using comprehension and # division to get fraction res = (len([ele for ele in test_list if ele > 0]) / len(test_list)) * 100 # printing result print("Positive elements percentage : " + str(res))
Producción:
The original list is : [4, 6, -2, 3, -8, 0, -1, 8, 9, 1] Positive elements percentage : 60.0
Método #2: Usar filter() + lambda + len()
En esto, realizamos tareas para obtener elementos positivos usando filter() y lambda, el resto de las tareas se realizan de manera similar a los métodos anteriores.
Python3
# Python3 code to demonstrate working of # Positive values percentage # Using filter() + lambda + len() # initializing list test_list = [4, 6, -2, 3, -8, 0, -1, 8, 9, 1] # printing original list print("The original list is : " + str(test_list)) # getting filtered list using filter(), lambda and # division to get fraction res = (len(list(filter(lambda ele: ele > 0, test_list))) / len(test_list)) * 100 # printing result print("Positive elements percentage : " + str(res))
Producción:
The original list is : [4, 6, -2, 3, -8, 0, -1, 8, 9, 1] Positive elements percentage : 60.0
Método n.º 3: usar lista(), mapa(), encontrar()
Inicialmente, convierta cada elemento de la lista en una string y compruebe si hay una string de inicio de sesión, si no hay un signo y la string no es ‘0’, entonces los elementos son positivos. Agregue todos esos elementos a la lista de salida
Python3
# Python3 code to demonstrate working of # Positive values percentage # initializing list test_list = [4, 6, -2, 3, -8, 0, -1, 8, 9, 1] # printing original list print("The original list is : " + str(test_list)) res=[] x=list(map(str,test_list)) for i in x: if(i.find("-")==-1 and i!="0"): res.append(int(i)) re=(len(res)*100)/len(test_list) # printing result print("Positive elements percentage : " + str(re))
The original list is : [4, 6, -2, 3, -8, 0, -1, 8, 9, 1] Positive elements percentage : 60.0
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA