Dividir cadena por la mitad en Python

Manav Narula 13 julio 2021
Dividir cadena por la mitad en Python

Las cadenas se pueden considerar como una secuencia de caracteres. En Python, tales objetos son inmutables y se pueden operar usando diferentes funciones.

En este tutorial, discutiremos cómo dividir una cadena en dos mitades en Python.

Para lograr esto, usaremos el método de corte de cuerdas.

En cadenas, cada carácter se almacena en una posición particular. Podemos usar estos índices para acceder a los caracteres. La división de cadenas es un método para dividir una cadena en subcadenas utilizando el método de indexación. Podemos usar este método para dividir una cadena por la mitad.

Vea el código a continuación.

s = "string"
s1 = s[: len(s) // 2]
s2 = s[len(s) // 2 :]
print(s1, s2)

Producción :

str ing

En el código anterior, estábamos tratando con una cadena que contenía un número par de caracteres. La función len() aquí se usa para devolver la longitud de la cadena. Dividimos la cadena en una mitad que contiene la primera mitad de los caracteres y la segunda subcadena que contiene la otra mitad.

Usamos el operador // para dividir la longitud de la cadena porque realiza la división de piso y se devuelve un número entero. Cuando trabajamos con una cadena que contiene un número impar de caracteres, tenemos que lidiar con el carácter adicional que resulta en dos subcadenas de longitud desigual.

Por ejemplo,

s = "example"
s1 = s[: len(s) // 2]
s2 = s[len(s) // 2 :]
print(s1, s2)

Producción :

exa mple

También podemos eliminar este carácter extra si queremos. Para lograrlo, solo necesitamos hacer algunos pequeños cambios en el código anterior. Usaremos la instrucción if() para verificar si la longitud de la cadena es par o no. Si es par, lo dividimos entre dos y dividimos la cuerda; de lo contrario, incrementaremos su mitad con uno y saltaremos el carácter adicional en el medio.

Por ejemplo,

s = "example"
s1 = s[: len(s) // 2]
s2 = s[len(s) // 2 if len(s) % 2 == 0 else (((len(s) // 2)) + 1) :]
print(s1, s2)

Producción :

exa ple

También podemos usar el constructor slice() para realizar el corte de cadenas. Para usar este método, necesitamos usar esta función e iniciar un objeto. Usamos este objeto para realizar el corte y dividir la cuerda en dos mitades.

Por ejemplo,

s = "string"
a = len(s)
s1 = slice(0, len(s) // 2)
s2 = slice(len(s) // 2, len(s))
print(s[s1], s[s2])

Producción :

str ing

Tenga en cuenta que este artículo trata sobre cómo dividir una cadena en dos partes iguales. Podemos usar muy fácilmente los métodos anteriores para dividir una cadena en función de algún índice también.

Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Artículo relacionado - Python String