Dada una string, conviértala en enteros de K dígitos
Entrada : test_str = ‘457336’, K = 2
Salida : [45, 73, 36]
Explicación : Dividido en números enteros de 2 dígitos.Entrada : test_str = ‘457336’, K = 3
Salida : [457, 336]
Explicación : Dividido en enteros de 3 dígitos.
Método #1: Usar int() + slice + loop
En esto, iteramos por string y realizamos cortes hasta K dígitos y luego realizamos la tarea de conversión a entero usando int().
Python3
# Python3 code to demonstrate working of # Split Numeric String into K digit integers # Using int() + slice + loop # initializing string test_str = '457336842' # printing original string print("The original string is : " + str(test_str)) # initializing substring K = 3 res = [] for idx in range(0, len(test_str), K): # converting to int, after slicing res.append(int(test_str[idx : idx + K])) # printing result print("Converted number list : " + str(res))
Producción
The original string is : 457336842 Converted number list : [457, 336, 842]
Método n.º 2: Usar comprensión de listas + int() + corte
Método similar al anterior, solo una abreviatura para resolver este problema.
Python3
# Python3 code to demonstrate working of # Split Numeric String into K digit integers # Using list comprehension + int() + slicing # initializing string test_str = '457336842' # printing original string print("The original string is : " + str(test_str)) # initializing substring K = 3 # one liner to solve problem res = [int(test_str[idx : idx + K]) for idx in range(0, len(test_str), K)] # printing result print("Converted number list : " + str(res))
Producción
The original string is : 457336842 Converted number list : [457, 336, 842]
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