logo

Cadena de Python

Una cadena és una estructura de dades a la programació Python que representa una seqüència de caràcters. És un tipus de dades immutable, és a dir, una vegada que hàgiu creat una cadena, no la podeu canviar. Python String s'utilitza àmpliament en moltes aplicacions diferents, com ara emmagatzemar i manipular dades de text, representar noms, adreces i altres tipus de dades que es poden representar com a text.

Taula de contingut

Què és una cadena en Python?

Python La programació no té un tipus de dades de caràcter, un únic caràcter és simplement una cadena amb una longitud d'1. Vegem el Sintaxi de cadena de Python :



Sintaxi del tipus de dades de cadena a Python

string_variable = 'Hello, world!'>

Exemple de tipus de dades de cadena a Python

Python
string_0 = 'A Computer Science portal for geeks' print(string_0) print(type(string_0))>

Sortida:

A Computer Science portal for geeks>

Creeu una cadena en Python

Cordes en Python es pot crear utilitzant cometes simples o cometes dobles o fins i tot cometes triples. Vegem com podem definir una cadena en Python o com escriure una cadena en Python.

Exemple:

En aquest exemple, demostrarem diferents maneres de crear una cadena de Python. Crearem una cadena utilitzant cometes simples (‘ ‘), cometes dobles ( ) i cometes dobles triples ( ). Les cometes triples es poden utilitzar per declarar cadenes multilínia en Python.

Python
# 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('
String 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('
String with the use of Triple Quotes: ') print(String1) # Creating String with triple # Quotes allows multiple lines String1 = '''Geeks  For  Life''' print('
Creating a multiline String: ') print(String1)>

Sortida:

què és 10 de 100
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>

Accés a caràcters a Python String

Als tutorials de programació de Python, es pot accedir als caràcters individuals d'una cadena mitjançant el mètode d'indexació. La indexació permet que les referències d'adreces negatives accedeixin als caràcters des de la part posterior de la cadena, p. -1 es refereix a l'últim caràcter, -2 es refereix a l'últim caràcter, i així successivament.

Mentre que l'accés a un índex fora de l'interval provocarà un IndexError . Només es permet passar nombres enters com a índex, flotant o altres tipus que provocaran a TypeError .

Indexació de cadenes de Python

Indexació de sintaxi de Python String

Indexació positiva de cadena de Python

En aquest exemple, definirem una cadena a la programació Python i accedirem als seus caràcters mitjançant la indexació positiva. El 0è element serà el primer caràcter de la cadena.

Python
String1 = 'GeeksForGeeks' print('Initial String: ', String1) # Printing First character print('First character of String is: ', String1[0])>

Sortida:

Initial String: GeeksForGeeks First character of String is: G>

Indexació negativa de cadena de Python

En aquest exemple, accedirem als seus caràcters mitjançant la indexació negativa. L'element -3th és el tercer darrer caràcter de la cadena.

Python
String1 = 'GeeksForGeeks' print('Initial String: ', String1) # Printing Last character print('Last character of String is: ', String1[-3])>

Sortida

Initial String: GeeksForGeeks Last character of String is: e>

String Slicing Python

En els tutorials de programació de Python, el Corda de corda s'utilitza per accedir a un rang de caràcters a la cadena. El tall en una cadena es fa mitjançant un operador de tall, és a dir, dos punts (:). Una cosa a tenir en compte quan s'utilitza aquest mètode és que la cadena retornada després de tallar inclou el caràcter de l'índex inicial però no el caràcter de l'últim índex.

En aquest exemple, utilitzarem el mètode string-slicing per extreure una subcadena de la cadena original. El [3:12] indica que el tall de la cadena començarà des del tercer índex de la cadena fins al dotze índex (el dotze caràcter no inclòs). També podem utilitzar la indexació negativa en el tall de cadena.

Python
# Creating a String String1 = 'GeeksForGeeks' print('Initial String: ') print(String1) # Printing 3rd to 12th character print('
Slicing characters from 3-12: ') print(String1[3:12]) # Printing characters between # 3rd and 2nd last character print('
Slicing characters between ' + '3rd and 2nd last character: ') print(String1[3:-2])>

Sortida:

Initial String: GeeksForGeeks Slicing characters from 3-12: ksForGeek Slicing characters between 3rd and 2nd last character: ksForGee>

Cadena de Python invertida

En els tutorials de programació de Python, accedint a caràcters des d'una cadena, també podem cadenes inverses en Python Programació. Podem revertir una cadena utilitzant el mètode String slicing.

En aquest exemple, invertirem una cadena accedint a l'índex. No hem especificat les dues primeres parts de la porció indicant que estem considerant tota la cadena, des de l'índex inicial fins a l'últim índex.

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

Sortida:

skeegrofskeeg>

Funció inversa BuildIn a Python

També podem invertir una cadena mitjançant l'ús incorporat uneix-te i invertit funcions i passant la cadena com a paràmetre a la funció reversed().

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

Sortida:

skeegrofskeeg>

Esborrar/Actualitzar des d'una cadena

A Python, no es permet l'actualització o la supressió de caràcters d'una cadena. Això provocarà un error perquè l'assignació d'elements o la supressió d'elements d'una cadena no són compatibles. Tot i que la supressió de tota la cadena és possible amb l'ús d'una paraula clau del integrada. Això es deu al fet que les cadenes són immutables, per tant, els elements d'una cadena no es poden canviar un cop assignats. Només es poden reassignar cadenes noves al mateix nom.

Actualització d'un personatge

Un caràcter d'una cadena es pot actualitzar a Python convertint primer la cadena en a Llista de Python i després actualitzar l'element de la llista. Com que les llistes són de naturalesa mutable, podem actualitzar el caràcter i després tornar a convertir la llista a la cadena.

Un altre mètode és utilitzar el mètode de tall de cadena. Talleu la cadena abans del caràcter que voleu actualitzar i, a continuació, afegiu el nou caràcter i, finalment, torneu a afegir l'altra part de la cadena tallant la cadena.

Exemple:

En aquest exemple, estem utilitzant tant la llista com el mètode de tall de cadena per actualitzar un caràcter. Vam convertir String1 en una llista, canviem el seu valor en un element concret i després el vam tornar a convertir en una cadena utilitzant Python unió de cadena () mètode.

En el mètode de tall de cadena, hem tallat la cadena fins al caràcter que volem actualitzar, hem concatenat el caràcter nou i, finalment, hem concatenat la part restant de la cadena.

Python
# 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('
Updating character at 2nd Index: ') print(String2) #2 String3 = String1[0:2] + 'p' + String1[3:] print(String3)>

Sortida:

patrons de disseny java
Initial String: Hello, I'm a Geek Updating character at 2nd Index: Heplo, I'm a Geek Heplo, I'm a Geek>

S'està actualitzant la cadena sencera

A la programació de Python, com que les cadenes de Python són de naturalesa immutable, no podem actualitzar la cadena existent. Només podem assignar un valor completament nou a la variable amb el mateix nom.

Exemple: En aquest exemple, primer assignem un valor a 'String1' i després l'hem actualitzat assignant-li un valor completament diferent. Simplement hem canviat la seva referència.

Python
# 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('
Updated String: ') print(String1)>

Sortida:

Initial String: Hello, I'm a Geek Updated String: Welcome to the Geek World>

Esborrar un personatge

Les cadenes de Python són immutables, això vol dir que no podem eliminar-ne cap caràcter. Quan intentem suprimir el personatge amb el del paraula clau, generarà un error.

Python
# Python Program to delete # character of a String String1 = 'Hello, I'm a Geek' print('Initial String: ') print(String1) print('Deleting character at 2nd Index: ') del String1[2] print(String1)>

Sortida:

Initial String: Hello, I'm a Geek Deleting character at 2nd Index: Traceback (most recent call last): File 'e:GFGPython codesCodesdemo.py', line 9, in del String1[2] TypeError: 'str' object doesn't support item deletion>

Però utilitzant el tall podem eliminar el caràcter de la cadena original i emmagatzemar el resultat en una cadena nova.

Exemple: En aquest exemple, primer tallarem la cadena fins al caràcter que volem eliminar i després concatenarem la cadena restant al costat del caràcter suprimit.

Python
# 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('
Deleting character at 2nd Index: ') print(String2)>

Sortida:

Initial String: Hello, I'm a Geek Deleting character at 2nd Index: Helo, I'm a Geek>

Esborrant la cadena sencera

A la programació Python, la supressió de tota la cadena és possible amb l'ús de la paraula clau del. A més, si intentem imprimir la cadena, això produirà un error perquè la cadena s'elimina i no es pot imprimir.

Python
# 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('
Deleting entire String: ') print(String1)>

Error:

Traceback (most recent call last): File '/home/e4b8f2170f140da99d2fe57d9d8c6a94.py', line 12, in print(String1) NameError: name 'String1' is not defined>

Seqüenciació d'escapament en Python

Mentre s'imprimeixen cadenes amb cometes simples i dobles, provoca Error de sintaxi perquè String ja conté cometes simples i dobles i, per tant, no es pot imprimir amb l'ús de cap d'aquestes. Per tant, per imprimir aquesta cadena s'utilitzen cometes triples o seqüències d'escapada per imprimir cadenes.

Les seqüències d'escapada comencen amb una barra invertida i es poden interpretar de manera diferent. Si s'utilitzen cometes simples per representar una cadena, s'han d'escapar totes les cometes simples presents a la cadena i el mateix es fa amb les cometes dobles.

Python
# 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('
Escaping Single Quote: ') print(String1) # Escaping Double Quotes String1 = 'I'm a 'Geek'' print('
Escaping Double Quotes: ') print(String1) # Printing Paths with the # use of Escape Sequences String1 = 'C:PythonGeeks' print('
Escaping Backslashes: ') print(String1) # Printing Paths with the # use of Tab String1 = 'Hi	Geeks' print('
Tab: ') print(String1) # Printing Paths with the # use of New Line String1 = 'Python
Geeks' print('
New Line: ') print(String1)>

Sortida:

vb i vb net
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:PythonGeeks Tab: Hi Geeks New Line: Python Geeks>

Exemple:

Per ignorar les seqüències d'escapada en una cadena, r o R s'utilitza, això implica que la cadena és una cadena en brut i les seqüències d'escapament que hi ha al seu interior s'han d'ignorar.

Python
# Printing hello in octal String1 = '110145154154157' print('
Printing in Octal with the use of Escape Sequences: ') print(String1) # Using raw String to # ignore Escape Sequences String1 = r'This is 110145154154157' print('
Printing Raw String in Octal Format: ') print(String1) # Printing Geeks in HEX String1 = 'This is x47x65x65x6bx73 in x48x45x58' print('
Printing in HEX with the use of Escape Sequences: ') print(String1) # Using raw String to # ignore Escape Sequences String1 = r'This is x47x65x65x6bx73 in x48x45x58' print('
Printing Raw String in HEX Format: ') print(String1)>

Sortida:

Printing in Octal with the use of Escape Sequences: Hello Printing Raw String in Octal Format: This is 110145154154157 Printing in HEX with the use of Escape Sequences: This is Geeks in HEX Printing Raw String in HEX Format: This is x47x65x65x6bx73 in x48x45x58>

Format de cadena de Python

Les cadenes en Python o el tipus de dades string en Python es poden formatar amb l'ús de format () mètode que és una eina molt versàtil i potent per formatar cadenes. El mètode de format a String conté claus {} com a marcadors de posició que poden contenir arguments segons la posició o la paraula clau per especificar l'ordre.

Exemple 1: En aquest exemple, declararem una cadena que conté les claus {} que actua com a marcadors de posició i els proporcionarem valors per veure com importa la posició de la declaració de la cadena.

Python
# 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('
Print String in Positional order: ') print(String1) # Keyword Formatting String1 = '{l} {f} {g}'.format(g='Geeks', f='For', l='Life') print('
Print String in order of Keywords: ') print(String1)>

Sortida:

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>

Exemple 2: Els nombres enters com ara binaris, hexadecimals, etc. i els flotants es poden arrodonir o mostrar en forma d'exponent amb l'ús d'especificadors de format.

Python
# Formatting of Integers String1 = '{0:b}'.format(16) print('
Binary representation of 16 is ') print(String1) # Formatting of Floats String1 = '{0:e}'.format(165.6458) print('
Exponent representation of 165.6458 is ') print(String1) # Rounding off Integers String1 = '{0:.2f}'.format(1/6) print('
one-sixth is : ') print(String1)>

Sortida:

Binary representation of 16 is 10000 Exponent representation of 165.6458 is 1.656458e+02 one-sixth is : 0.17>

Exemple 3: Al tipus de dades String a Python , una cadena pot estar alineada a l'esquerra, a la dreta o al centre amb l'ús d'especificadors de format, separades per dos punts (:). El () indica que la cadena ha d'estar alineada a la dreta i (^) indica que la cadena ha d'estar alineada al centre. També podem especificar la longitud en què s'ha d'alinear. Per exemple, (<10) significa que la cadena s'ha d'alinear a l'esquerra dins d'un camp d'amplada de 10 caràcters.

Python
# String alignment String1 = '|{:<10}|{:^10}|{:>10}|'.format('Geeks', 'for', 'Geeks') print('
Alineació esquerra, centre i dreta amb Formatting: ') print(String1) # Per demostrar alineació d'espais Cadena1 = '
{0:^16} es va fundar a {1:<4}!'.format('techcodeview.com', 2009) print(String1)>

Sortida:

Left, center and right alignment with Formatting: |Geeks | for | Geeks| techcodeview.com was founded in 2009 !>

Exemple 4: El format d'estil antic es va fer sense utilitzar el mètode de format mitjançant l'ús el % operador

Python
# 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('
Formatting in 3.4f format: ') print('The value of Integer1 is %3.4f' % Integer1)>

Sortida:

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

Lectures similars - Mètodes de cordes

Operacions útils de cadena de Python

Constants de cadena de Python

Funció integrada

Descripció

cadena.lletres_ascii

Concatenació de les constants ascii_lowercase i ascii_uppercase.

string.ascii_minúscula

Concatenació de lletres minúscules

string.ascii_majúscula

Concatenació de lletres majúscules

cadena.dígits

Dígit en cadenes

cadena.dígits hexadecimals

Hexadígit en cadenes

cadena.lletres

concatenació de les cadenes en majúscules i minúscules

cadena.minúscula

Una cadena ha de contenir lletres minúscules.

cadena.octdígits

Octadígit en una cadena

corda.puntuació

Caràcters ASCII amb caràcters de puntuació.

cadena.imprimible

Cadena de caràcters que es poden imprimir

String.endswith()

Retorna True si una cadena acaba amb el sufix donat, en cas contrari retorna False

String.startswith()

Retorna True si una cadena comença amb el prefix donat, en cas contrari retorna False

String.isdigit()

Retorna True si tots els caràcters de la cadena són dígits, en cas contrari, retorna False.

String.isalpha()

Retorna True si tots els caràcters de la cadena són alfabets, en cas contrari, retorna False.

cadena.isdecimal()

Retorna true si tots els caràcters d'una cadena són decimals.

creació de taules d'oracle
str.format()

un dels mètodes de format de cadena de Python3, que permet múltiples substitucions i format de valors.

String.index

Retorna la posició de la primera ocurrència de subcadena en una cadena

cadena.majúscula

Una cadena ha de contenir lletres majúscules.

cadena.espai en blanc

Una cadena que conté tots els caràcters que es consideren espais en blanc.

string.swapcase()

El mètode converteix tots els caràcters en majúscules a minúscules i viceversa de la cadena donada i la torna

substituir ()

retorna una còpia de la cadena on totes les ocurrències d'una subcadena es substitueixen per una altra subcadena.

Funcions de cadena obsoletes

Funció integrada

Descripció

cadena.Isdecimal

Retorna true si tots els caràcters d'una cadena són decimals

String.Isalnum

Retorna true si tots els caràcters d'una cadena determinada són alfanumèrics.

cadena.Títol

Retorna True si la cadena és una cadena amb majúscules i minúscules

Cadena.partició

divideix la cadena a la primera ocurrència del separador i retorna una tupla.

String.Isidentifier

Comproveu si una cadena és un identificador vàlid o no.

String.len

Retorna la longitud de la cadena.

String.rindex

Retorna l'índex més alt de la subcadena dins de la cadena si es troba una subcadena.

Cadena.Màx

Retorna el caràcter alfabètic més alt d'una cadena.

Cadena.min

Retorna el caràcter alfabètic mínim d'una cadena.

String.splitlines

Retorna una llista de línies de la cadena.

ordres sql ddl
cadena.majúscules

Retorna una paraula amb el seu primer caràcter en majúscula.

string.expandtabs

Amplieu les pestanyes en una cadena substituint-les per un o més espais

cadena.trobar

Retorna la indexació més baixa d'una subcadena.

cadena.rfind

trobar l'índex més alt.

cadena.compte

Retorna el nombre d'ocurrències (no superposades) de la subcadena sub a la cadena

corda.inferior

Retorna una còpia de s, però amb majúscules, lletres convertides en minúscules.

corda.partida

Retorna una llista de les paraules de la cadena, si el segon argument opcional sep està absent o Cap

Python Docstrings
  • Permutació d'una cadena determinada mitjançant la funció incorporada
  • Trobeu la freqüència de cada paraula d'una cadena a Python
  • Programa per acceptar les cadenes que conté totes les vocals
  • Compteu el nombre de caràcters coincidents en un parell de cadenes
  • Compteu tots els prefixos de la cadena donada amb la major freqüència
  • Programa per comprovar si una cadena conté algun caràcter especial
  • Generant cadenes aleatòries fins que es genera una cadena determinada
  • Programa Python per comptar caràcters en majúscules i minúscules sense utilitzar funcions incorporades