La división de strings siempre se ha discutido en varias aplicaciones y casos de uso. Una de las variaciones interesantes de la división de listas puede ser dividir la lista en el delimitador, pero esta vez solo en la última aparición del mismo. Vamos a discutir ciertas formas en que esto se puede hacer.
Método #1: Usar rsplit(str, 1) La división normal de strings puede realizar la división desde el frente, pero Python también ofrece otro método que puede realizar esta misma tarea desde la parte trasera, aumentando así la versatilidad de las aplicaciones.
Python3
# Python3 code to demonstrate # Split on last occurrence of delimiter # using rsplit() # initializing string test_string = "gfg, is, good, better, and best" # printing original string print("The original string : " + str(test_string)) # using rsplit() # Split on last occurrence of delimiter res = test_string.rsplit(', ', 1) # print result print("The splitted list at the last comma : " + str(res))
The original string : gfg, is, good, better, and best The splitted list at the last comma : ['gfg, is, good, better', 'and best']
Método #2: Uso de rpartition() Esta función también puede realizar la partición inversa deseada, pero los inconvenientes de usar esto son la construcción de un valor delimitador adicional y también la velocidad es más lenta que el método anterior y, por lo tanto, no se recomienda.
Python3
# Python3 code to demonstrate # Split on last occurrence of delimiter # using rpartition() # initializing string test_string = "gfg, is, good, better, and best" # printing original string print("The original string : " + str(test_string)) # using rpartition() # Split on last occurrence of delimiter res = test_string.rpartition(', ') # print result print("The splitted list at the last comma : " + str(res))
The original string : gfg, is, good, better, and best The splitted list at the last comma : ('gfg, is, good, better', ', ', 'and best')
Método #3: Usando los métodos split() y replace() .
Python3
# Python3 code to demonstrate # Split on last occurrence of delimiter # initializing string test_string = "gfg, is, good, better, and best" # printing original string print("The original string : " + str(test_string)) # Split on last occurrence of delimiter p=test_string.count(",") c=0 new="" for i in test_string: if(i=="," and c<p-1): new+="*" c+=1 else: new+=i x=new.split(",") x[0]=x[0].replace("*",",") # print result print("The splitted list at the last comma : " + str(x))
The original string : gfg, is, good, better, and best The splitted list at the last comma : ['gfg, is, good, better', ' and best']
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