Python: agregue espacio entre palabras potenciales

Dada la lista de Strings, la tarea es agregar un espacio antes de la secuencia que comienza con letras mayúsculas.

Entrada : test_list = [“gfgBest”, “forGeeks”, “andComputerScienceStudents”] 
Salida : [‘gfg Best’, ‘for Geeks’, ‘and Computer Science Students’] 
Explicación : palabras segregadas por mayúsculas.

Entrada : test_list = [“ComputerScienceStudentsLoveGfg”] 
Salida : [‘Computer Science Students Love Gfg’] 
Explicación : palabras segregadas por mayúsculas. 
 

Método #1: Usar loop + join()

 Esta es una de las formas en que se puede realizar esta tarea. En esto, realizamos la tarea de iterar todas las picaduras y luego todos los caracteres antes de agregar espacio usando bucle en forma de fuerza bruta. El isupper() se usa para verificar el carácter de mayúscula.

Python3

# Python3 code to demonstrate working of
# Add Space between Potential Words
# Using loop + join()
 
# initializing list
test_list = ["gfgBest", "forGeeks", "andComputerScience"]
 
# printing original list
print("The original list : " + str(test_list))
 
res = []
 
# loop to iterate all strings
for ele in test_list:
    temp = [[]]
    for char in ele:
         
        # checking for upper case character
        if char.isupper():
            temp.append([])
             
        # appending character at latest list
        temp[-1].append(char)
     
    # joining lists after adding space
    res.append(' '.join(''.join(ele) for ele in temp))
 
# printing result
print("The space added list of strings : " + str(res))
Producción

The original list : ['gfgBest', 'forGeeks', 'andComputerScience']
The space added list of strings : ['gfg Best', 'for Geeks', 'and Computer Science']

Método #2: Usar regex() + comprensión de lista

La combinación de las funciones anteriores también se puede utilizar para resolver este problema. En esto, empleamos el código regex para verificar las letras mayúsculas y realizar la adición de espacios y la unión mediante la comprensión de listas.

Python3

# Python3 code to demonstrate working of
# Add Space between Potential Words
# Using regex() + list comprehension
import re
 
# initializing list
test_list = ["gfgBest", "forGeeks", "andComputerScience"]
 
# printing original list
print("The original list : " + str(test_list))
 
# using regex() to perform task
res = [re.sub(r"(\w)([A-Z])", r"\1 \2", ele) for ele in test_list]
 
# printing result
print("The space added list of strings : " + str(res))
Producción

The original list : ['gfgBest', 'forGeeks', 'andComputerScience']
The space added list of strings : ['gfg Best', 'for Geeks', 'and Computer Science']

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 *