logo

Python-snaar

Een String is een datastructuur in Python Programming die een reeks tekens vertegenwoordigt. Het is een onveranderlijk gegevenstype, wat betekent dat als u eenmaal een string hebt gemaakt, u deze niet meer kunt wijzigen. Python String wordt veel gebruikt in veel verschillende toepassingen, zoals het opslaan en manipuleren van tekstgegevens, het vertegenwoordigen van namen, adressen en andere soorten gegevens die als tekst kunnen worden weergegeven.

Inhoudsopgave

Wat is een string in Python?

Python Programmeren heeft geen tekengegevenstype, een enkel teken is eenvoudigweg een string met een lengte van 1. Laten we eens kijken Python-tekenreekssyntaxis :



Syntaxis van het stringgegevenstype in Python

string_variable = 'Hello, world!'>

Voorbeeld van een stringgegevenstype in Python

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

Uitgang:

A Computer Science portal for geeks>

Maak een string in Python

Tekenreeksen in Python kan worden gemaakt met enkele aanhalingstekens, dubbele aanhalingstekens of zelfs drievoudige aanhalingstekens. Laten we eens kijken hoe we een string in Python kunnen definiëren of hoe we een string in Python kunnen schrijven.

Voorbeeld:

In dit voorbeeld laten we verschillende manieren zien om een ​​Python String te maken. We zullen een string maken met enkele aanhalingstekens (‘ ‘), dubbele aanhalingstekens ( ) en drievoudige dubbele aanhalingstekens ( ). De drievoudige aanhalingstekens kunnen worden gebruikt om tekenreeksen met meerdere regels in Python te declareren.

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)>

Uitgang:

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>

Toegang tot tekens in Python String

In Python Programming-tutorials zijn individuele karakters van een String toegankelijk via de indexeringsmethode. Door te indexeren kunnen negatieve adresreferenties toegang krijgen tot tekens vanaf de achterkant van de string, b.v. -1 verwijst naar het laatste teken, -2 verwijst naar het voorlaatste teken, enzovoort.

Terwijl toegang tot een index buiten het bereik een Indexfout . Alleen gehele getallen mogen worden doorgegeven als index, float of andere typen die een TypeError .

Indexering van Python-strings

Indexering van Python String-syntaxis

Positieve indexering van Python-strings

In dit voorbeeld definiëren we een string in Python Programming en benaderen we de karakters met behulp van positieve indexering. Het 0e element zal het eerste teken van de string zijn.

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

Uitgang:

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

Python String negatieve indexering

In dit voorbeeld zullen we toegang krijgen tot de karakters met behulp van negatieve indexering. Het -3e element is het derde laatste teken van de string.

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

Uitvoer

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

String-slicing Python

In Python-programmeertutorials wordt de Snaar snijden methode wordt gebruikt om toegang te krijgen tot een reeks tekens in de String. Het segmenteren van een string gebeurt met behulp van een slice-operator, d.w.z. een dubbele punt (:). Eén ding om in gedachten te houden bij het gebruik van deze methode is dat de string die wordt geretourneerd na het segmenteren het teken bij de startindex bevat, maar niet het teken bij de laatste index.

In dit voorbeeld gebruiken we de string-slicing-methode om een ​​subtekenreeks uit de originele tekenreeks te extraheren. De [3:12] geeft aan dat het segmenteren van de string begint vanaf de 3e index van de string tot aan de 12e index (het 12e teken niet meegerekend). We kunnen ook negatieve indexering gebruiken bij het segmenteren van strings.

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])>

Uitgang:

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

Python-string omgekeerd

In Python Programming-tutorials kunnen we dat ook doen door tekens uit een string te benaderen omgekeerde tekenreeksen in Python Programmering. We kunnen een string omkeren met behulp van de String-slicing-methode.

In dit voorbeeld keren we een string om door toegang te krijgen tot de index. We hebben de eerste twee delen van het segment niet gespecificeerd, wat aangeeft dat we de hele reeks in beschouwing nemen, van de startindex tot de laatste index.

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

Uitgang:

skeegrofskeeg>

Ingebouwde omgekeerde functie in Python

We kunnen een string ook omkeren met behulp van ingebouwde meedoen En teruggedraaid functies en geef de tekenreeks als parameter door aan de functie reversed().

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

Uitgang:

skeegrofskeeg>

Verwijderen/bijwerken van een string

In Python is het bijwerken of verwijderen van tekens uit een string niet toegestaan. Dit veroorzaakt een fout omdat het toewijzen van items of het verwijderen van items uit een string niet wordt ondersteund. Hoewel het verwijderen van de hele String mogelijk is met behulp van een ingebouwd del-trefwoord. Dit komt omdat Strings onveranderlijk zijn, en daarom kunnen elementen van een String niet meer worden gewijzigd nadat ze zijn toegewezen. Alleen nieuwe strings kunnen opnieuw worden toegewezen aan dezelfde naam.

Een personage bijwerken

Een karakter van een string kan in Python worden bijgewerkt door de string eerst om te zetten in een Python-lijst en vervolgens het element in de lijst bijwerken. Omdat lijsten veranderlijk van aard zijn, kunnen we het teken bijwerken en de lijst vervolgens weer naar de String converteren.

Een andere methode is het gebruik van de string-slicing-methode. Snijd de tekenreeks vóór het teken dat u wilt bijwerken, voeg vervolgens het nieuwe teken toe en voeg ten slotte het andere deel van de tekenreeks opnieuw toe door middel van het in stukken snijden van de tekenreeks.

Voorbeeld:

In dit voorbeeld gebruiken we zowel de lijst- als de string-slicing-methode om een ​​teken bij te werken. We hebben String1 naar een lijst geconverteerd, de waarde ervan bij een bepaald element gewijzigd en vervolgens met behulp van Python weer naar een string geconverteerd tekenreeks join() methode.

Bij de string-slicing-methode hebben we de string opgedeeld tot het teken dat we willen bijwerken, het nieuwe teken aaneengeschakeld en uiteindelijk het resterende deel van de string samengevoegd.

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)>

Uitgang:

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

Volledige tekenreeks bijwerken

Bij Python-programmering kunnen we, omdat Python-strings onveranderlijk van aard zijn, de bestaande string niet bijwerken. We kunnen alleen een geheel nieuwe waarde toekennen aan de variabele met dezelfde naam.

Voorbeeld: In dit voorbeeld kennen we eerst een waarde toe aan ‘String1’ en updaten deze vervolgens door er een geheel andere waarde aan toe te kennen. We hebben eenvoudigweg de referentie gewijzigd.

Sridevi
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)>

Uitgang:

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

Een teken verwijderen

Python-strings zijn onveranderlijk, dat betekent dat we er geen teken uit kunnen verwijderen. Wanneer we proberen het teken te verwijderen met behulp van de van de zoekwoord, genereert dit een fout.

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)>

Uitgang:

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>

Maar door middel van slicen kunnen we het karakter uit de originele string verwijderen en het resultaat opslaan in een nieuwe string.

Voorbeeld: In dit voorbeeld snijden we de tekenreeks eerst op tot aan het teken dat we willen verwijderen en voegen we vervolgens de resterende tekenreeks samen vanaf het verwijderde teken.

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)>

Uitgang:

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

Volledige tekenreeks verwijderen

In Python-programmering is het verwijderen van de gehele string mogelijk met behulp van het trefwoord del. Als we de string proberen af ​​te drukken, zal dit bovendien een fout opleveren omdat de string wordt verwijderd en niet meer kan worden afgedrukt.

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)>

Fout:

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

Escape-sequencing in Python

Tijdens het afdrukken van tekenreeksen met enkele en dubbele aanhalingstekens erin veroorzaakt Syntax error omdat String al enkele en dubbele aanhalingstekens bevat en daarom niet kan worden afgedrukt met het gebruik van een van deze. Om een ​​dergelijke string af te drukken, worden er dus drievoudige aanhalingstekens gebruikt of worden er escape-reeksen gebruikt om strings af te drukken.

Escape-sequenties beginnen met een backslash en kunnen anders worden geïnterpreteerd. Als enkele aanhalingstekens worden gebruikt om een ​​tekenreeks weer te geven, moeten alle enkele aanhalingstekens in de tekenreeks worden geëscaped en hetzelfde wordt gedaan voor dubbele aanhalingstekens.

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)>

Uitgang:

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>

Voorbeeld:

Om de escape-reeksen in een string te negeren, R of R wordt gebruikt, houdt dit in dat de string een onbewerkte string is en dat ontsnappingsreeksen daarin moeten worden genegeerd.

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)>

Uitgang:

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>

Python-tekenreeksopmaak

Tekenreeksen in Python of tekenreeksgegevenstype in Python kunnen worden geformatteerd met behulp van formaat() methode, een zeer veelzijdige en krachtige tool voor het formatteren van strings. De formatmethode in String bevat accolades {} als tijdelijke aanduidingen die argumenten kunnen bevatten op basis van positie of trefwoord om de volgorde te specificeren.

Voorbeeld 1: In dit voorbeeld declareren we een string die de accolades {} bevat die fungeren als tijdelijke aanduidingen en geven we deze waarden om te zien hoe de positie van de stringdeclaratie ertoe doet.

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)>

Uitgang:

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>

Voorbeeld 2: Gehele getallen zoals binair, hexadecimaal, enz., en floats kunnen worden afgerond of weergegeven in de exponentvorm met behulp van formaatspecificaties.

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)>

Uitgang:

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

Voorbeeld 3: In het gegevenstype String in Python kan een tekenreeks links, rechts of gecentreerd worden uitgelijnd met behulp van formaatspecificaties, gescheiden door een dubbele punt (:). De () geeft aan dat de string naar rechts moet worden uitgelijnd en (^) geeft aan dat de string naar het midden moet worden uitgelijnd. Ook kunnen wij de lengte opgeven waarin deze uitgelijnd moet worden. (<10) betekent bijvoorbeeld dat de tekenreeks links moet worden uitgelijnd binnen een veld met een breedte van 10 tekens.

Python
# String alignment String1 = '|{:<10}|{:^10}|{:>10}|'.format('Geeks', 'for', 'Geeks') print('
Links, midden en rechts uitgelijnd met opmaak: ') print(String1) # Ter demonstratie uitlijnen van spaties String1 = '
{0:^16} werd opgericht in {1:<4}!'.format('techcodeview.com', 2009) print(String1)>

Uitgang:

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

Voorbeeld 4: Opmaak in oude stijl werd gedaan zonder gebruik te maken van de opmaakmethode door gebruik te maken van de % exploitant

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)>

Uitgang:

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

Soortgelijke lezingen – String-methoden

Handige Python String-bewerkingen

Python String-constanten

Ingebouwde functie

Beschrijving

bash anders als
string.ascii_letters

Aaneenschakeling van de constanten ascii_lowercase en ascii_uppercase.

string.ascii_kleine letters

Aaneenschakeling van kleine letters

string.ascii_hoofdletter

Aaneenschakeling van hoofdletters

tekenreeks.cijfers

Cijfer in tekenreeksen

string.hexcijfers

Hexadigit in tekenreeksen

string.letters

aaneenschakeling van de tekenreeksen kleine letters en hoofdletters

string.kleine letters

Een string moet kleine letters bevatten.

string.octdigits

Octadigit in een string

tekenreeks.interpunctie

ASCII-tekens met leestekens.

string.afdrukbaar

Tekenreeks die afdrukbaar is

String.endswith()

Retourneert True als een tekenreeks eindigt met het opgegeven achtervoegsel en retourneert anders False

String.startswith()

Retourneert True als een tekenreeks begint met het opgegeven voorvoegsel en retourneert anders False

String.isdigit()

Retourneert True als alle tekens in de tekenreeks cijfers zijn. Anders wordt False geretourneerd.

String.isalpha()

Retourneert True als alle tekens in de tekenreeks alfabetten zijn. Anders retourneert het False.

string.isdecimaal()

Retourneert waar als alle tekens in een tekenreeks decimaal zijn.

str.format()

een van de tekenreeksopmaakmethoden in Python3, die meerdere vervangingen en waardeopmaak mogelijk maakt.

String.index

Retourneert de positie van de eerste keer dat een subtekenreeks in een tekenreeks voorkomt

string.hoofdletter

Een string moet hoofdletters bevatten.

string.witruimte

Een tekenreeks die alle tekens bevat die als witruimte worden beschouwd.

string.swapcase()

Methode converteert alle hoofdletters naar kleine letters en vice versa van de gegeven string, en retourneert deze

vervangen()

retourneert een kopie van de tekenreeks waarbij alle exemplaren van een subtekenreeks worden vervangen door een andere subtekenreeks.

Verouderde tekenreeksfuncties

Ingebouwde functie

Beschrijving

string.Isdecimaal

Retourneert waar als alle tekens in een tekenreeks decimaal zijn

String.Isalnum

Retourneert waar als alle tekens in een bepaalde tekenreeks alfanumeriek zijn.

string.Istitel

Retourneert True als de tekenreeks een tekenreeks met hoofdletters in de titel is

String.partitie

splitst de tekenreeks bij de eerste keer dat het scheidingsteken voorkomt en retourneert een tupel.

String.Iidentifier

Controleer of een string een geldige identificatie is of niet.

String.len

Retourneert de lengte van de tekenreeks.

json in json-voorbeeld
String.rindex

Retourneert de hoogste index van de subtekenreeks binnen de tekenreeks als er een subtekenreeks wordt gevonden.

String.Max

Retourneert het hoogste alfabetische teken in een tekenreeks.

String.min

Retourneert het minimale alfabetische teken in een tekenreeks.

String.splitlines

Retourneert een lijst met regels in de tekenreeks.

string.hoofdletter

Retourneert een woord waarvan het eerste teken een hoofdletter is.

string.expandtabs

Vouw tabbladen uit in een tekenreeks en vervang ze door een of meer spaties

tekenreeks.vind

Retourneert de laagste indexering van een subtekenreeks.

string.rfind

Vind de hoogste index.

tekenreeks.telling

Retourneert het aantal (niet-overlappende) exemplaren van subtekenreeks sub in tekenreeks

string.lager

Retourneer een kopie van s, maar met hoofdletters, letters omgezet in kleine letters.

string.split

Retourneert een lijst met de woorden van de tekenreeks, als het optionele tweede argument sep afwezig is of Geen

Python-docstrings
  • Permutatie van een gegeven string met behulp van de ingebouwde functie
  • Vind de frequentie van elk woord in een string in Python
  • Programma om de snaren te accepteren die alle klinkers bevatten
  • Tel het aantal overeenkomende tekens in een tekenreeks
  • Tel alle voorvoegsels in een gegeven reeks met de grootste frequentie
  • Programma om te controleren of een string een speciaal teken bevat
  • Willekeurige tekenreeksen genereren totdat een bepaalde tekenreeks is gegenereerd
  • Python-programma om hoofdletters en kleine letters te tellen zonder ingebouwde functies te gebruiken