Dada la lista de Python, reforme el elemento para tener K dígitos en un solo elemento.
Entrada : test_list = [223, 67, 332, 1, 239, 2, 931], K = 2
Salida : [22, 36, 73, 32, 12, 39, 29, 31]
Explicación : Elementos reformados para asignar 2 dígitos a cada elemento.Entrada : test_list = [223, 67, 3327], K = 3
Salida : [223, 673, 327]
Explicación : Elementos reformados para asignar 3 dígitos a cada elemento.
Método n.º 1: Usar rebanar + unir() + bucle
En esto, realizamos la tarea de unir todos los elementos en una sola string, luego cortamos K dígitos y reconvertimos a la lista.
Python3
# Python3 code to demonstrate working of # Reform K digit elements # Using slicing + join() + loop # initializing list test_list = [223, 67, 332, 1, 239, 2, 931] # printing original list print("The original list is : " + str(test_list)) # initializing K K = 2 # converting to string temp = ''.join([str(ele) for ele in test_list]) # getting K digit slices res = [] for idx in range(0, len(temp), K): res.append(int(temp[idx: idx + K])) # printing result print("Reforming K digits : " + str(res))
The original list is : [223, 67, 332, 1, 239, 2, 931] Reforming K digits : [22, 36, 73, 32, 12, 39, 29, 31]
Método n.º 2: usar la comprensión de listas + unir()
En esto, la tarea de reformar la lista se realiza utilizando la comprensión de listas.
Python3
# Python3 code to demonstrate working of # Reform K digit elements # Using list comprehension + join() # initializing list test_list = [223, 67, 332, 1, 239, 2, 931] # printing original list print("The original list is : " + str(test_list)) # initializing K K = 2 # converting to string temp = ''.join([str(ele) for ele in test_list]) # getting K digit slices # using 1 liner list comprehension res = [int(temp[idx: idx + K]) for idx in range(0, len(temp), K)] # printing result print("Reforming K digits : " + str(res))
The original list is : [223, 67, 332, 1, 239, 2, 931] Reforming K digits : [22, 36, 73, 32, 12, 39, 29, 31]
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