String de python – Part 15

En Python, las strings son arrays de bytes que representan caracteres Unicode.

Ejemplo de string

“Geeksforgeeks” o ‘Geeksforgeeks’

Python no tiene un tipo de datos de carácter, un solo carácter es simplemente una string con una longitud de 1. Los corchetes se pueden usar para acceder a elementos de la string.

Python3

print("A Computer Science portal for geeks")

Producción:

A Computer Science portal for geeks

Crear una string en Python

Las strings en Python se pueden crear usando comillas simples o comillas dobles o incluso comillas triples. 

Python3

# Python Program for
# Creation of String
 
# Creating a String
# with single Quotes
String1 = 'Welcome to the Geeks World'
print("String with the use of Single Quotes: ")
print(String1)
 
# Creating a String
# with double Quotes
String1 = "I'm a Geek"
print("\nString with the use of Double Quotes: ")
print(String1)
 
# Creating a String
# with triple Quotes
String1 = '''I'm a Geek and I live in a world of "Geeks"'''
print("\nString with the use of Triple Quotes: ")
print(String1)
 
# Creating String with triple
# Quotes allows multiple lines
String1 = '''Geeks
            For
            Life'''
print("\nCreating a multiline String: ")
print(String1)

Producción: 

String with the use of Single Quotes: 
Welcome to the Geeks World

String with the use of Double Quotes: 
I'm a Geek

String with the use of Triple Quotes: 
I'm a Geek and I live in a world of "Geeks"

Creating a multiline String: 
Geeks
            For
            Life

Acceder a caracteres en Python String

En Python , se puede acceder a los caracteres individuales de una string mediante el método de indexación. La indexación permite que las referencias de direcciones negativas accedan a los caracteres desde la parte posterior de la String, por ejemplo, -1 se refiere al último carácter, -2 se refiere al penúltimo carácter, y así sucesivamente. 

Al acceder a un índice fuera del rango, se producirá un IndexError . Solo se permite pasar enteros como índice, flotante u otros tipos que causen un TypeError .

String in Python

 

Python3

# Python Program to Access
# characters of String
 
String1 = "GeeksForGeeks"
print("Initial String: ")
print(String1)
 
# Printing First character
print("\nFirst character of String is: ")
print(String1[0])
 
# Printing Last character
print("\nLast character of String is: ")
print(String1[-1])

Producción: 

Initial String: 
GeeksForGeeks

First character of String is: 
G

Last character of String is: 
s

Invertir una string de Python

Con Acceder a Caracteres desde una string, también podemos invertirlos. Podemos invertir una string escribiendo [::-1] y la string se invertirá.

Python3

#Program to reverse a string
gfg = "geeksforgeeks"
print(gfg[::-1])

Producción:

skeegrofskeeg

También podemos invertir una string mediante el uso de funciones de combinación e inversión integradas.

Python3

# Program to reverse a string
 
gfg = "geeksforgeeks"
 
# Reverse the strinh using reversed and join function
gfg = "".join(reversed(gfg))
 
print(gfg)

Producción:

skeegrofskeeg

Cortar cuerdas

Para acceder a un rango de caracteres en la String, se utiliza el método de corte. La división en una string se realiza mediante el uso de un operador de división (dos puntos). 

Python3

# Python Program to
# demonstrate String slicing
 
# Creating a String
String1 = "GeeksForGeeks"
print("Initial String: ")
print(String1)
 
# Printing 3rd to 12th character
print("\nSlicing characters from 3-12: ")
print(String1[3:12])
 
# Printing characters between
# 3rd and 2nd last character
print("\nSlicing characters between " +
      "3rd and 2nd last character: ")
print(String1[3:-2])

Producción: 

Initial String: 
GeeksForGeeks

Slicing characters from 3-12: 
ksForGeek

Slicing characters between 3rd and 2nd last character: 
ksForGee

Eliminar/Actualizar desde una string

En Python, no se permite la actualización o eliminación de caracteres de una string. Esto provocará un error porque no se admite la asignación o eliminación de elementos de una string. Aunque la eliminación de toda la string es posible con el uso de una palabra clave integrada del. Esto se debe a que las strings son inmutables, por lo que los elementos de una string no se pueden cambiar una vez que se han asignado. Solo las strings nuevas se pueden reasignar al mismo nombre. 

Actualización de un personaje: 

Python3

# Python Program to Update
# character of a String
 
String1 = "Hello, I'm a Geek"
print("Initial String: ")
print(String1)
 
# Updating a character of the String
## As python strings are immutable, they don't support item updation directly
### there are following two ways
#1
list1 = list(String1)
list1[2] = 'p'
String2 = ''.join(list1)
print("\nUpdating character at 2nd Index: ")
print(String2)
 
#2
String3 = String1[0:2] + 'p' + String1[3:]
print(String3)

Error: 

Rastreo (última llamada más reciente): 
archivo «/home/360bb1830c83a918fc78aa8979195653.py», línea 10, en 
String1[2] = ‘p’ 
TypeError: el objeto ‘str’ no admite la asignación de elementos

Actualización de toda la string:

Python3

# Python Program to Update
# entire String
 
String1 = "Hello, I'm a Geek"
print("Initial String: ")
print(String1)
 
# Updating a String
String1 = "Welcome to the Geek World"
print("\nUpdated String: ")
print(String1)

Producción: 

Initial String: 
Hello, I'm a Geek

Updated String: 
Welcome to the Geek World 

Eliminación de un personaje: 

Python3

# Python Program to Delete
# characters from a String
 
String1 = "Hello, I'm a Geek"
print("Initial String: ")
print(String1)
 
# Deleting a character
# of the String
String2 = String1[0:2] + String1[3:]
print("\nDeleting character at 2nd Index: ")
print(String2)

Error: 

Rastreo (última llamada más reciente): 
Archivo «/home/499e96a61e19944e7e45b7a6e1276742.py», línea 10, en 
del String1[2] 
TypeError: el objeto ‘str’ no admite la eliminación de elementos

Borrando toda la string:

La eliminación de toda la string es posible con el uso de la palabra clave del. Además, si intentamos imprimir la string, se producirá un error porque la string se elimina y no está disponible para imprimir.  

Python3

# Python Program to Delete
# entire String
 
String1 = "Hello, I'm a Geek"
print("Initial String: ")
print(String1)
 
# Deleting a String
# with the use of del
del String1
print("\nDeleting entire String: ")
print(String1)

Error: 

Rastreo (última llamada más reciente): 
archivo «/home/e4b8f2170f140da99d2fe57d9d8c6a94.py», línea 12, en 
impresión (String1) 
NameError: el nombre ‘String1’ no está definido 

Secuenciación de escape en Python

Al imprimir strings con comillas simples y dobles, causa SyntaxError porque String ya contiene comillas simples y dobles y, por lo tanto, no se puede imprimir con el uso de cualquiera de estas. Por lo tanto, para imprimir una string de este tipo, se utilizan comillas triples o secuencias de escape para imprimir dichas strings. 

Las secuencias de escape comienzan con una barra invertida y se pueden interpretar de forma diferente. Si se utilizan comillas simples para representar una string, todas las comillas simples presentes en la string deben escaparse y se hace lo mismo con las comillas dobles. 

Python3

# Python Program for
# Escape Sequencing
# of String
 
# Initial String
String1 = '''I'm a "Geek"'''
print("Initial String with use of Triple Quotes: ")
print(String1)
 
# Escaping Single Quote
String1 = 'I\'m a "Geek"'
print("\nEscaping Single Quote: ")
print(String1)
 
# Escaping Double Quotes
String1 = "I'm a \"Geek\""
print("\nEscaping Double Quotes: ")
print(String1)
 
# Printing Paths with the
# use of Escape Sequences
String1 = "C:\\Python\\Geeks\\"
print("\nEscaping Backslashes: ")
print(String1)
 
# Printing Paths with the
# use of Tab
String1 = "Hi\tGeeks"
print("\nTab: ")
print(String1)
 
# Printing Paths with the
# use of New Line
String1 = "Python\nGeeks"
print("\nNew Line: ")
print(String1)

Producción:

Initial String with use of Triple Quotes: 
I'm a "Geek"
Escaping Single Quote: 
I'm a "Geek"
Escaping Double Quotes: 
I'm a "Geek"
Escaping Backslashes: 
C:\Python\Geeks\
Tab: 
Hi Geeks
New Line: 
Python
Geeks

Para ignorar las secuencias de escape en una string, se usa r o R , esto implica que la string es una string sin formato y las secuencias de escape dentro de ella deben ignorarse.

Python3

# Printing hello in octal
String1 = "\110\145\154\154\157"
print("\nPrinting in Octal with the use of Escape Sequences: ")
print(String1)
 
# Using raw String to
# ignore Escape Sequences
String1 = r"This is \110\145\154\154\157"
print("\nPrinting Raw String in Octal Format: ")
print(String1)
 
# Printing Geeks in HEX
String1 = "This is \x47\x65\x65\x6b\x73 in \x48\x45\x58"
print("\nPrinting in HEX with the use of Escape Sequences: ")
print(String1)
 
# Using raw String to
# ignore Escape Sequences
String1 = r"This is \x47\x65\x65\x6b\x73 in \x48\x45\x58"
print("\nPrinting Raw String in HEX Format: ")
print(String1)

Producción:

Printing in Octal with the use of Escape Sequences: 
Hello
Printing Raw String in Octal Format: 
This is \110\145\154\154\157
Printing in HEX with the use of Escape Sequences: 
This is Geeks in HEX
Printing Raw String in HEX Format: 
This is \x47\x65\x65\x6b\x73 in \x48\x45\x58

Formateo de strings

Las strings en Python se pueden formatear con el uso del método format() , que es una herramienta muy versátil y poderosa para formatear strings. El método de formato en String contiene llaves {} como marcadores de posición que pueden contener argumentos según la posición o la palabra clave para especificar el orden.

Python3

# Python Program for
# Formatting of Strings
 
# Default order
String1 = "{} {} {}".format('Geeks', 'For', 'Life')
print("Print String in default order: ")
print(String1)
 
# Positional Formatting
String1 = "{1} {0} {2}".format('Geeks', 'For', 'Life')
print("\nPrint String in Positional order: ")
print(String1)
 
# Keyword Formatting
String1 = "{l} {f} {g}".format(g='Geeks', f='For', l='Life')
print("\nPrint String in order of Keywords: ")
print(String1)

Producción: 

Print String in default order: 
Geeks For Life

Print String in Positional order: 
For Geeks Life

Print String in order of Keywords: 
Life For Geeks

Los números enteros, como binarios, hexadecimales, etc., y los flotantes se pueden redondear o mostrar en forma de exponente con el uso de especificadores de formato. 

Python3

# Formatting of Integers
String1 = "{0:b}".format(16)
print("\nBinary representation of 16 is ")
print(String1)
 
# Formatting of Floats
String1 = "{0:e}".format(165.6458)
print("\nExponent representation of 165.6458 is ")
print(String1)
 
# Rounding off Integers
String1 = "{0:.2f}".format(1/6)
print("\none-sixth is : ")
print(String1)

Producción: 

Binary representation of 16 is 
10000

Exponent representation of 165.6458 is 
1.656458e+02

one-sixth is : 
0.17

Una string se puede justificar a la izquierda() o al centro (^) con el uso de especificadores de formato, separados por dos puntos (:).  

Python3

# String alignment
String1 = "|{:<10}|{:^10}|{:>10}|".format('Geeks',
                                          'for',
                                          'Geeks')
print("\nLeft, center and right alignment with Formatting: ")
print(String1)
 
# To demonstrate aligning of spaces
String1 = "\n{0:^16} was founded in {1:<4}!".format("GeeksforGeeks",
                                                    2009)
print(String1)

Producción: 

Left, center and right alignment with Formatting: 
|Geeks     |   for    |     Geeks|

 GeeksforGeeks   was founded in 2009 !

El formato de estilo antiguo se realizó sin el uso del método de formato utilizando el operador  %

Python3

# Python Program for
# Old Style Formatting
# of Integers
 
Integer1 = 12.3456789
print("Formatting in 3.2f format: ")
print('The value of Integer1 is %3.2f' % Integer1)
print("\nFormatting in 3.4f format: ")
print('The value of Integer1 is %3.4f' % Integer1)

Producción: 

Formatting in 3.2f format: 
The value of Integer1 is 12.35

Formatting in 3.4f format: 
The value of Integer1 is 12.3457

Operaciones útiles de strings de Python  

Constantes de string de Python 

Función incorporada Descripción
string.ascii_letters Concatenación de las constantes ascii_lowercase y ascii_uppercase.
string.ascii_minusculas Concatenación de letras minúsculas
string.ascii_mayúsculas Concatenación de letras mayúsculas
string.digitos Dígito en strings
string.hexdigits Hexadígito en strings
string.letras concatenación de las strings minúsculas y mayúsculas
string.minúsculas Una string debe contener letras minúsculas.
string.octdigits Octadígito en una string
string.puntuación Caracteres ASCII que tienen caracteres de puntuación.
string.imprimible String de caracteres que son imprimibles
String.termina con() Devuelve True si una string termina con el sufijo dado; de lo contrario, devuelve False
String.empieza con() Devuelve True si una string comienza con el prefijo dado; de lo contrario, devuelve False
String.isdigit() Devuelve «Verdadero» si todos los caracteres de la string son dígitos; de lo contrario, devuelve «Falso».
String.isalpha() Devuelve «Verdadero» si todos los caracteres de la string son alfabetos; de lo contrario, devuelve «Falso».
string.isdecimal() Devuelve verdadero si todos los caracteres de una string son decimales.
str.format() uno de los métodos de formateo de strings en Python3, que permite múltiples sustituciones y formateo de valores.
String.índice Devuelve la posición de la primera aparición de substring en una string
string.mayúsculas Una string debe contener letras mayúsculas.
string.espacio en blanco Una string que contiene todos los caracteres que se consideran espacios en blanco.
string.intercambiar() El método convierte todos los caracteres en mayúsculas a minúsculas y viceversa de la string dada, y lo devuelve
reemplazar() devuelve una copia de la string donde todas las apariciones de una substring se reemplazan con otra substring.

Funciones de string en desuso

Función incorporada Descripción
string.Isdecimal Devuelve verdadero si todos los caracteres de una string son decimales
String.Isalnum Devuelve verdadero si todos los caracteres de una string determinada son alfanuméricos.
string.Istitle Devuelve True si la string es una string en mayúsculas y minúsculas.
String.partición divide la string en la primera aparición del separador y devuelve una tupla.
String.Isidentifier Compruebe si una string es un identificador válido o no.
String.len Devuelve la longitud de la string.
String.rindex Devuelve el índice más alto de la substring dentro de la string si se encuentra la substring.
String.Máx. Devuelve el carácter alfabético más alto de una string.
String.min Devuelve el carácter alfabético mínimo de una string.
String.splitlines Devuelve una lista de líneas en la string.
string.mayúsculas Devuelve una palabra con su primer carácter en mayúscula.
string.expandtabs Expandir pestañas en una string reemplazándolas por uno o más espacios
string.buscar Devuelve la indexación más baja de una substring.
string.rfind encontrar el índice más alto.
string.count Devuelve el número de ocurrencias (no superpuestas) de substring sub en string
string.inferior Devuelve una copia de s, pero con mayúsculas, letras convertidas a minúsculas.
string.dividir Devuelve una lista de las palabras de la string, si el segundo argumento opcional sep está ausente o ninguno
string.rsplit() Devuelve una lista de las palabras de la string s, escaneando s desde el final.
rpartición() El método divide la string dada en tres partes
string.splitfields Devuelve una lista de las palabras de la string cuando solo se usa con dos argumentos.
string.unirse Concatenar una lista o tupla de palabras con ocurrencias intermedias de sep.
string.tira() Devuelve una copia de la string con los espacios en blanco iniciales y finales eliminados
string.lstrip Devuelve una copia de la string sin los espacios en blanco iniciales.
string.rstrip Devuelve una copia de la string con los espacios en blanco finales eliminados.
string.swapcase Convierte letras minúsculas a mayúsculas y viceversa.
string.translate Traducir los caracteres usando tabla
cuerda.superior letras minúsculas convertidas a mayúsculas.
string.ljust justificar a la izquierda en un campo de ancho dado.
string.rjust Justificar a la derecha en un campo de ancho dado.
string.center() Centrar-justificar en un campo de ancho dado.
string-zfill Rellene una string numérica a la izquierda con cero dígitos hasta alcanzar el ancho dado.
string.reemplazar Devuelve una copia de string s con todas las apariciones de substring old reemplazadas por new.
string.casefold() Devuelve la string en minúsculas que se puede usar para comparaciones sin mayúsculas y minúsculas.
string.codificar Codifica la string en cualquier codificación admitida por Python. La codificación predeterminada es utf-8.
string.maketrans Devuelve una tabla de traducción utilizable para str.translate()

Artículos recientes sobre Python String 

Más videos sobre strings de Python

Programas de Python Strings  

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 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 *