logo

Python-streng

En streng er en datastruktur i Python-programmering som representerer en sekvens av tegn. Det er en uforanderlig datatype, noe som betyr at når du først har opprettet en streng, kan du ikke endre den. Python String brukes mye i mange forskjellige applikasjoner, for eksempel lagring og manipulering av tekstdata, representering av navn, adresser og andre typer data som kan representeres som tekst.

Innholdsfortegnelse

Hva er en streng i Python?

Python Programmering har ikke en tegndatatype, et enkelt tegn er ganske enkelt en streng med lengden 1. La oss se Python-strengsyntaks :



Syntaks for strengdatatype i Python

string_variable = 'Hello, world!'>

Eksempel på strengdatatype i Python

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

Produksjon:

A Computer Science portal for geeks>

Lag en streng i Python

Strenger i Python kan lages ved å bruke enkle anførselstegn eller doble anførselstegn eller til og med trippel anførselstegn. La oss se hvordan vi kan definere en streng i Python eller hvordan vi skriver streng i Python.

Eksempel:

I dette eksemplet vil vi demonstrere forskjellige måter å lage en Python-streng. Vi vil lage en streng ved å bruke enkle anførselstegn (' '), doble anførselstegn ( ) og trippel doble anførselstegn ( ). De tredoble anførselstegnene kan brukes til å deklarere flerlinjestrenger i 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)>

Produksjon:

minimaks algoritme
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>

Tilgang til tegn i Python String

I Python-programmeringsveiledningene kan individuelle tegn i en streng nås ved å bruke metoden for indeksering. Indeksering lar negative adressereferanser få tilgang til tegn fra baksiden av strengen, f.eks. -1 refererer til det siste tegnet, -2 refererer til det nest siste tegnet, og så videre.

Mens tilgang til en indeks utenfor området vil føre til en Indeksfeil . Bare heltall er tillatt å sendes som en indeks, float eller andre typer som vil forårsake en TypeError .

Python-strengindeksering

Python String-syntaksindeksering

Python-streng positiv indeksering

I dette eksemplet vil vi definere en streng i Python-programmering og få tilgang til tegnene ved hjelp av positiv indeksering. Det 0. elementet vil være det første tegnet i strengen.

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

Produksjon:

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

Python-streng negativ indeksering

I dette eksemplet vil vi få tilgang til tegnene ved hjelp av negativ indeksering. Det -3. elementet er det tredje siste tegnet i strengen.

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

Produksjon

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

String Slicing Python

I Python-programmeringsopplæringen er Skjæring av strenger metoden brukes for å få tilgang til en rekke tegn i strengen. Slicing in a String gjøres ved å bruke en Slicing-operator, dvs. et kolon (:). En ting å huske på når du bruker denne metoden, er at strengen som returneres etter skjæring inkluderer tegnet ved startindeksen, men ikke tegnet ved siste indeks.

I dette eksemplet vil vi bruke strengskjæringsmetoden for å trekke ut en delstreng av den opprinnelige strengen. [3:12] indikerer at strengskjæringen vil starte fra den tredje indeksen til strengen til den 12. indeksen, (12. tegn ikke inkludert). Vi kan også bruke negativ indeksering i strengskjæring.

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

Produksjon:

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

Python-streng omvendt

I Python-programmeringsveiledninger, ved å få tilgang til tegn fra en streng, kan vi også omvendte strenger i Python Programmering. Vi kan snu en streng ved å bruke strengskjæringsmetoden.

I dette eksemplet vil vi snu en streng ved å få tilgang til indeksen. Vi spesifiserte ikke de to første delene av skiven, noe som indikerer at vi vurderer hele strengen, fra startindeksen til den siste indeksen.

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

Produksjon:

skeegrofskeeg>

BuildIn omvendt funksjon i Python

Vi kan også snu en streng ved å bruke innebygd bli med og reversert funksjoner, og sender strengen som parameter til reversed()-funksjonen.

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

Produksjon:

skeegrofskeeg>

Slette/oppdatere fra en streng

I Python er oppdatering eller sletting av tegn fra en streng ikke tillatt. Dette vil forårsake en feil fordi elementtilordning eller elementsletting fra en streng ikke støttes. Selv om sletting av hele strengen er mulig ved bruk av et innebygd del-nøkkelord. Dette er fordi strenger er uforanderlige, og derfor kan ikke elementer i en streng endres når de først er tildelt. Bare nye strenger kan omdisponeres til samme navn.

Oppdaterer et tegn

Et tegn i en streng kan oppdateres i Python ved først å konvertere strengen til en Python-liste og deretter oppdatere elementet i listen. Siden lister er foranderlige i naturen, kan vi oppdatere tegnet og deretter konvertere listen tilbake til strengen.

En annen metode er å bruke strengskjæringsmetoden. Skjær strengen før tegnet du vil oppdatere, legg deretter til det nye tegnet og til slutt legg til den andre delen av strengen igjen ved å skjære i streng.

Eksempel:

I dette eksemplet bruker vi både listen og strengskjæringsmetoden for å oppdatere et tegn. Vi konverterte String1 til en liste, endrer verdien ved et bestemt element, og konverterte den deretter tilbake til en streng ved hjelp av Python string join() metode.

I string-slicing-metoden kuttet vi strengen opp til tegnet vi ønsker å oppdatere, satte sammen det nye tegnet og til slutt satte vi sammen den gjenværende delen av strengen.

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

Produksjon:

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

Oppdaterer hele strengen

I Python-programmering, siden Python-strenger er uforanderlige i naturen, kan vi ikke oppdatere den eksisterende strengen. Vi kan bare tilordne en helt ny verdi til variabelen med samme navn.

Eksempel: I dette eksemplet tilordner vi først en verdi til 'String1' og deretter oppdaterte den ved å tilordne en helt annen verdi til den. Vi endret ganske enkelt referansen.

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

Produksjon:

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

Sletter et tegn

Python-strenger er uforanderlige, det betyr at vi ikke kan slette et tegn fra det. Når vi prøver å slette tegnet ved hjelp av av nøkkelord, vil det generere en feil.

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

Produksjon:

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>

Men ved å bruke slicing kan vi fjerne tegnet fra den opprinnelige strengen og lagre resultatet i en ny streng.

Eksempel: I dette eksemplet vil vi først skjære strengen opp til tegnet vi ønsker å slette og deretter sette sammen den gjenværende strengen ved siden av det slettede tegnet.

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

Produksjon:

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

Sletter hele strengen

I Python-programmering er sletting av hele strengen mulig ved bruk av del nøkkelord. Videre, hvis vi prøver å skrive ut strengen, vil dette gi en feil fordi strengen er slettet og ikke er tilgjengelig for utskrift.

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

Feil:

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

Escape Sequencing i Python

Mens du skriver ut strenger med enkle og doble anførselstegn i den forårsaker Syntaksfeil fordi streng allerede inneholder enkle og doble anførselstegn og kan derfor ikke skrives ut med bruk av noen av disse. Derfor, for å skrive ut en slik streng, brukes enten Triple Quotes eller Escape-sekvenser for å skrive ut strenger.

Escape-sekvenser starter med en omvendt skråstrek og kan tolkes annerledes. Hvis enkle anførselstegn brukes for å representere en streng, må alle de enkle anførselstegnene i strengen escapes og det samme gjøres for doble anførselstegn.

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

Produksjon:

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>

Eksempel:

hva er internett

For å ignorere escape-sekvensene i en streng, r eller R brukes, betyr dette at strengen er en råstreng og escape-sekvenser inne i den skal ignoreres.

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

Produksjon:

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

Strenger i Python eller strengdatatype i Python kan formateres med bruk av format() metode som er et veldig allsidig og kraftig verktøy for formatering av strenger. Formatmetoden i streng inneholder krøllete klammeparenteser {} som plassholdere som kan inneholde argumenter i henhold til posisjon eller nøkkelord for å spesifisere rekkefølgen.

Eksempel 1: I dette eksemplet vil vi deklarere en streng som inneholder de krøllete klammeparentesene {} som fungerer som plassholdere og gi dem verdier for å se hvordan strengdeklarasjonsposisjonen betyr noe.

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

Produksjon:

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>

Eksempel 2: Heltall som binære, heksadesimale, etc., og flyter kan avrundes eller vises i eksponentform ved bruk av formatspesifikasjoner.

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

Produksjon:

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

Eksempel 3: I strengdatatype i Python kan en streng være venstre-, høyre- eller senterjustert med bruk av formatspesifikasjoner, atskilt med kolon(:). () indikerer at strengen skal justeres til høyre og (^) indikerer at strengen skal justeres til midten. Vi kan også spesifisere lengden som den skal justeres i. For eksempel betyr (<10) at strengen skal justeres til venstre innenfor et felt med bredde på 10 tegn.

Python
# String alignment String1 = '|{:<10}|{:^10}|{:>10}|'.format('Geeks', 'for', 'Geeks') print('
Venstre-, senter- og høyrejustering med formatering: ') print(String1) # For å demonstrere justering av mellomrom String1 = '
{0:^16} ble grunnlagt i {1:<4}!'.format('techcodeview.com', 2009) print(String1)>

Produksjon:

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

Eksempel 4: Gammel stilformatering ble gjort uten bruk av formatmetoden ved å bruke de % operatør

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

Produksjon:

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

Lignende lesninger - Strengemetoder

Nyttige Python-strengoperasjoner

Python-strengkonstanter

Innebygd funksjon

Beskrivelse

string.ascii_letters

Sammenknytting av konstantene ascii_små bokstaver og ascii_store bokstaver.

string.ascii_små bokstaver

Sammenkobling av små bokstaver

string.ascii_store bokstaver

Sammenkobling av store bokstaver

string.digits

Siffer i strenger

string.hexdigits

Sekssifret i strenger

streng.bokstaver

sammenkobling av strengene små og store bokstaver

streng.små bokstaver

En streng må inneholde små bokstaver.

string.octdigits

Åttesifret i en streng

streng.tegnsetting

ASCII-tegn med skilletegn.

string.printable

En streng med tegn som kan skrives ut

String.endswith()

Returnerer True hvis en streng slutter med det gitte suffikset ellers returnerer False

sentrere et bilde i css
String.startswith()

Returnerer True hvis en streng starter med det gitte prefikset ellers returnerer False

String.isdigit()

Returnerer True hvis alle tegn i strengen er sifre, ellers returnerer den False.

String.isalpha()

Returnerer True hvis alle tegnene i strengen er alfabeter, ellers returnerer den False.

string.isdecimal()

Returnerer sant hvis alle tegn i en streng er desimaler.

str.format()

en av strengformateringsmetodene i Python3, som tillater flere erstatninger og verdiformatering.

String.index

Returnerer posisjonen til den første forekomsten av delstreng i en streng

streng.store bokstaver

En streng må inneholde store bokstaver.

string.whitespace

En streng som inneholder alle tegn som regnes som mellomrom.

string.swapcase()

Metode konverterer alle store bokstaver til små bokstaver og omvendt av den gitte strengen, og returnerer den

erstatte()

returnerer en kopi av strengen der alle forekomster av en delstreng erstattes med en annen delstreng.

Utdaterte strengfunksjoner

Innebygd funksjon

Beskrivelse

streng.Isdesimal

Returnerer sant hvis alle tegn i en streng er desimaler

String.Isalnum

Returnerer sann hvis alle tegnene i en gitt streng er alfanumeriske.

string.Istitle

Returnerer True hvis strengen er en tittelstreng

String.partisjon

deler strengen ved første forekomst av skilletegn og returnerer en tuppel.

String.Identifier

Sjekk om en streng er en gyldig identifikator eller ikke.

String.len

Returnerer lengden på strengen.

String.rindex

Returnerer den høyeste indeksen til delstrengen inne i strengen hvis delstrengen blir funnet.

String.Max

Returnerer det høyeste alfabetiske tegnet i en streng.

String.min

Returnerer det minste alfabetiske tegnet i en streng.

String.splitlines

Returnerer en liste over linjer i strengen.

string.capitalize

Returner et ord med det første tegnet stort.

string.expandtabs

Utvid faner i en streng og erstatt dem med ett eller flere mellomrom

string.finn

Returner den laveste indekseringen av en understreng.

streng.rfinn

finne den høyeste indeksen.

aryan khan
string.count

Returner antall (ikke-overlappende) forekomster av understrengsuber i streng

streng.lavere

Returner en kopi av s, men med store bokstaver, bokstaver konvertert til små bokstaver.

string.split

Returner en liste over ordene i strengen, Hvis det valgfrie andre argumentet sep er fraværende eller Ingen

Python Docstrings
  • Permutering av en gitt streng ved hjelp av innebygd funksjon
  • Finn frekvensen av hvert ord i en streng i Python
  • Program for å akseptere strengene som inneholder alle vokaler
  • Tell antall samsvarende tegn i et strengpar
  • Tell alle prefikser i gitt streng med størst frekvens
  • Program for å sjekke om en streng inneholder noe spesialtegn
  • Generer tilfeldige strenger til en gitt streng er generert
  • Python-program for å telle store og små bokstaver uten å bruke innebygde funksjoner