Python: convierte la lista separada por delimitadores en número

Dada una string con números separados por delimitadores, concatene para formar un número entero después de eliminar el delimitador.

Entrada : test_str = “1@6@7@8”, delim = ‘@’ 
Salida : 1678 
Explicación : elementos unidos después de eliminar el delim “@”
Entrada : test_str = “1!6!7!8”, delim = ‘! ‘ 
Salida : 1678 
Explicación : Elementos unidos después de eliminar el delimitador “!” 
 

Método #1: Usar loop + split() + int()

Esta es una de las formas en que se puede realizar esta tarea. En esto, dividimos la string en el delimitador y luego ejecutamos un bucle para concatenar, al final el resultado se convierte en int().

Python3

# Python3 code to demonstrate working of
# Convert Delimiter separated list to Number
# Using loop + split() + join()
 
# initializing string
test_str = "1@6@7@8@5@8@9"
 
# printing original string
print("The original string is : " + str(test_str))
 
# initializing Delimiter
delim = "@"
 
# spliting to get list of string numbers
temp = test_str.split(delim)
res = ''
for ele in temp:
    res = res + ele
 
# converting result into integer
res = int(res)
 
# printing result
print("Constructed integer : " + str(res))
Producción

The original string is : 1@6@7@8@5@8@9
Constructed integer : 1678589

Método #2: Usando join() + split() + int()

Esta es otra forma en que se puede realizar esta tarea. En esto, realizamos la concatenación final usando join() e int() para obtener el resultado final.

Python3

# Python3 code to demonstrate working of
# Convert Delimiter separated list to Number
# Using join() + split() + int()
 
# initializing string
test_str = "1@6@7@8@5@8@9"
 
# printing original string
print("The original string is : " + str(test_str))
 
# initializing Delimiter
delim = "@"
 
# join used over splitted result
# final result casted using int()
res = int("".join(test_str.split(delim)))
 
# printing result
print("Constructed integer : " + str(res))
Producción

The original string is : 1@6@7@8@5@8@9
Constructed integer : 1678589

Método #3: Usando el método replace().

Reemplazar el delimitador en una string con una string vacía

Python3

# Python3 code to demonstrate working of
# Convert Delimiter separated list to Number
 
 
# initializing string
test_str = "1@6@7@8@5@8@9"
 
# printing original string
print("The original string is : " + str(test_str))
 
# initializing Delimiter
delim = "@"
 
res = test_str.replace(delim,"")
 
# printing result
print("Constructed integer : " + str(res))
Producción

The original string is : 1@6@7@8@5@8@9
Constructed integer : 1678589

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 *