Dada una lista de enteros, realice la unión con el delimitador, evitando el delimitador adicional al final.
Entrada : test_list = [4, 7, 8, 3, 2, 1, 9], delim = “*”
Salida : 4*7*8*3*2*1*9
Explicación : El “*” posterior que suele aparecer en concatenación, se evita.Entrada : test_list = [4, 7, 8, 3], delim = “*”
Salida : 4*7*8*3
Explicación : se evita el “*” posterior que suele aparecer en la concatenación.
Método n.º 1: usar el corte de strings
En esto, usamos string slice para cortar el último carácter de la string después de formar.
Python3
# Python3 code to demonstrate working of # Avoid Last occurrence of delimiter # Using map() + join() + str() # initializing list test_list = [4, 7, 8, 3, 2, 1, 9] # printing original list print("The original list is : " + str(test_list)) # initializing delim delim = "$" # appending delim to join # will leave stray "$" at end res = '' for ele in test_list: res += str(ele) + "$" # removing last using slicing res = res[:len(res) - 1] # printing result print("The joined string : " + str(res))
The original list is : [4, 7, 8, 3, 2, 1, 9] The joined string : 4$7$8$3$2$1$9
Método #2: Usando map() + join() + str()
En esto, evitamos por completo el método de bucle para resolver este problema y empleamos map() para convertir a string y join() para realizar la tarea de unir.
Python3
# Python3 code to demonstrate working of # Avoid Last occurrence of delimiter # Using map() + join() + str() # initializing list test_list = [4, 7, 8, 3, 2, 1, 9] # printing original list print("The original list is : " + str(test_list)) # initializing delim delim = "$" # map extends string conversion logic res = delim.join(map(str, test_list)) # printing result print("The joined string : " + str(res))
The original list is : [4, 7, 8, 3, 2, 1, 9] The joined string : 4$7$8$3$2$1$9
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