Med Python kan du manipulera strängar på ett antal sätt. Python erbjuder olika funktioner, operatörer och metoder som kan användas för att manipulera strängar. Du kan skära en sträng, gå med i två eller flera strängar, interpolera variabler i en sträng och många fler.

Strängar i Python kan definieras som en sekvens av tecken. De är oföränderliga, vilket innebär att de inte kan modifieras när de förklarats. Istället skapas en kopia av strängen för manipulationsändamål.

Hur man skapar strängar i Python

Att skapa strängar i Python är lika enkelt som att tilldela värde till en variabel i Python. Du kan använda enkla citat (''), dubbla citat ("") eller tre enkla () / dubbla citat () för att skapa strängar.

str1 = 'Hej!'
str2 = "Hej!"
str3 = Hej!
str4 = Hej!
skriva ut (str1)
skriva ut (str2)
skriva ut (str3)
skriva ut (str4)

Produktion:

Hallå!
Hallå!
Hallå!
Hallå!

Fördelen med att använda ett dubbelt citat för att skapa en sträng är att du kan använda ett enda citattecken inuti det dubbla citatet. Python behandlar karaktären med enstaka citat som en del av strängen.

instagram viewer
s = "Använda" enkel offert "i dubbla citat"
tryck

Produktion:

Använda "enkel offert" inuti dubbla citat

Om du vill skapa en sträng med flera linjer är det bästa valet att använda tre enkla citat () / tre dubbla citat (). När du skapar strängar med enkla citat ('') eller dubbla citat ("") måste du använda \ n fly karaktär för en ny rad (radbrytning). Men genom att använda tre citat behöver du inte göra det.

s1 = Detta är en multilinje
sträng med tre dubbla citat
s2 = "Detta är en multilinje
sträng med dubbla citat "
tryck (s1)
skriva ut (s2)

Produktion:

Detta är en multilinje
sträng med tre dubbla citat
Detta är en multilinje
sträng med dubbla citat

Så här får du tillgång till strängtecken

Om du vill komma åt enskilda tecken, då Indexering är använd; om du vill komma åt en rad tecken, då Skivning är använd.

Strängindexering

Precis som alla andra Python-datatyper börjar strängindex med 0. Indexområdet är från 0 till strängens längd - 1. Python-strängar stöder också negativ indexering: -1 poäng till strängens sista tecken, -2 poäng till strängens 2: a sista tecken och så vidare.

s = "MAKEUSEOF"
# Skriver ut hela strängen
tryck
# Skriver ut första tecknet
tryck (s [0])
# Skriver ut 2: a karaktären
tryck (s [1])
# Skriver ut sista tecknet
tryck (s [-1])
# Skriver ut 2: a sista tecknet
tryck (s [-2])

Produktion:

ANVÄNDA
M
A
F
O

Du måste använda heltal för att komma åt tecken annars får du en Skrivfel. Detta kommer också att hända om du försöker komma åt element som ligger utanför räckvidden.

Skrivfel:

s = "MAKEUSEOF"
# TypeError kastas om du inte använder heltal
tryck (s [1.5])

Produktion:

TypeError: strängindex måste vara heltal

Indexfel:

s = "MAKEUSEOF"
# IndexError kastas om du försöker använda index utanför intervallet
tryck (s [88])

Produktion:

TypeError: strängindex måste vara heltal

Strängskivning

Du kan komma åt ett antal tecken med hjälp av kolonoperatören ( : ).

s = "MAKEUSEOF"
# Utskrifter från 0: e index (ingår) till 4: e index (exkluderat)
tryck (s [0: 4])
# Utskrifter från tredje sista indexet (ingår) till det sista indexet (uteslutet)
tryck (s [-3: -1])
# Skriver ut från andra index till sista strängen
tryck (s [2:])
# Skriver ut från strängens början till sjätte index (exkluderas)
tryck (s [: 6])

Produktion:

GÖRA
EO
KEUSEOF
GÖR OSS

Hur man använder operatörer på strängar

Använda + -operatören

+ -Operatören används för att sammanfoga / sammanfoga två eller flera strängar. Den returnerar den resulterande sammanhängande strängen.

s1 = "GÖR"
s2 = "ANVÄND"
s3 = "OF"
s = s1 + s2 + s3
# Skriver ut den sammanhängande strängen
tryck

Produktion:

ANVÄNDA

Använda * operatören

Detta används för att upprepa en sträng ett visst antal gånger.

str = "MUO-"
# Skriver ut str 5 gånger
skriva ut (str * 5)
# Skriver ut str 2 gånger
tryck (2 * str)
x = 3
# Skriver ut x gånger
# Här, x = 3
skriva ut (str * x)

Produktion:

MUO-MUO-MUO-MUO-MUO-
MUO-MUO-
MUO-MUO-MUO-

Använda in-operatören

Detta är en medlemsoperatör som kontrollerar om den första operanden är närvarande i den andra operanden eller inte. Om den första operanden är närvarande i den andra operanden återgår den Sann.

Annars återvänder den Falsk.

str = "MAKEUSEOF"
# Returnerar sant eftersom MAKE finns i str
skriva ut ("MAKE" i str)
# Returnerar falskt eftersom H inte finns i str
tryck ("H" i str)

Produktion:

Sann
Falsk

Använda not in Operator

En annan medlemsoperatör, inte i fungerar mittemot in-operatören. Om den första operanden finns i den andra operanden återgår den Falsk. Annars återvänder den Sann.

str = "MAKEUSEOF"
# Returnerar sant eftersom Hello inte finns i str
skriva ut ("Hej" inte i str)
# Returnerar falskt eftersom M finns i str
skriva ut ("M" ej i str)

Produktion:

Sann
Falsk

Escape sekvenser i strängar

Med hjälp av escape-sekvenserna kan du placera specialtecken i strängen. Allt du behöver göra är att lägga till en backslash (/) precis före karaktären du vill fly. Om du inte flyr från karaktären kastar Python ett fel.

s = 'Vi använder apostrof' i vår sträng '
tryck

Produktion:

Vi använder apostrof i vår sträng

Hur man sätter in variabler i strängar

Variabler kan användas inuti strängarna genom att interpolera variabler i lockiga hängslen. Du måste också lägga till gemener f eller versaler F precis innan du öppnar strängens offert.

s1 = "Piper"
s2 = "a"
s3 = "inlagd"
str = f "Peter {s1} plockade {s2} plock av {s3} paprika"
# s1, s2 och s3 ersätts av deras värden
skriva ut (str)
a = 1
b = 2
c = a + b
# a, b och c ersätts med deras värden
skriva ut (f "Summan av {a} + {b} är lika med {c}")

Produktion:

Peter Piper plockade en bit med inlagda paprika
Summan av 1 + 2 är lika med 3

Hur man använder inbyggda strängfunktioner

len () Funktion

Denna funktion används för att hitta strängens längd. Det är en av de mest använda funktionerna i Python.

str = "MAKEUSEOF"
# Skriver ut antalet tecken i "MAKEUSEOF"
skriva ut (len (str))

Produktion:

9

ord () -funktion

Under tiden används denna funktion för att hitta ett helhets värde för ett tecken. Python är ett mångsidigt språk, det stöder ASCII samt Unicode-tecken.

c1 = ord ('M')
c2 = ord ('a')
c3 = ord ('A')
c4 = ord ('$')
c5 = ord ('#')
skriva ut (c1)
skriva ut (c2)
skriva ut (c3)
skriva ut (c4)
skriva ut (c5)

Produktion:

77
97
65
36
35

chr () -funktion

Använd chr () för att hitta teckenvärdet för ett heltal.

i1 = chr (77)
i2 = chr (97)
i3 = chr (65)
i4 = chr (36)
i5 = chr (35)
skriva ut (i1)
skriva ut (i2)
skriva ut (i3)
skriva ut (i4)
skriva ut (i5)

Produktion:

M
a
A
$
#

Relaterad: Vad är ASCII-text och hur används den?

str () Funktion

Använd den här funktionen för att konvertera alla Python-objekt till en sträng.

num = 73646
# Konverterar num (som är heltal) till sträng
s = str (num)
# Skriver ut strängen
tryck
# Typfunktioner returnerar typen av objekt
# Här, returneras
skriva ut (typ (er))

Produktion:

73646

Hur man går med och delar strängar i Python

Dela en sträng

Du kan använda metoden split () för att dela strängen i en lista med strängar baserat på en avgränsare.

str1 = "Peter-Piper-plockade-en-plock-av-inlagda paprika"
splitted_list1 = str1.split ('-')
# Skriver ut listan med strängar som delas med - avgränsare
skriva ut (splitted_list1)
str2 = "Vi kommer säkert att se solen skina snart"
splitted_list2 = str2.split ('')
# Skriver ut listan över strängar som delas med ett enda mellanslag
skriva ut (splitted_list2)

Produktion:

['Peter', 'Piper', 'plockade', 'en', 'peck', 'av', 'inlagd', 'paprika']
['Vi', 'säkert', 'ska', 'se', 'den', 'solen', 'skina', 'snart']

Gå med i strängar

Du kan använda metoden join () för att sammanfoga alla element i ett iterabelt objekt. Du kan använda vilken avgränsare du vill gå med i elementen.

list1 = ["Jag", "tänkte", "jag", "tänkte", "av", "tänkte", "av", "tackar", "du"]
# Går med i listan som en sträng med - som avgränsare
str1 = "-". gå med (list1)
skriva ut (str1)
list2 = ["Ed", "hade", "redigerat", "it"]
# Går med i listan som en sträng genom att använda ett enda mellanslag som en avgränsare
str2 = "". gå med (list2)
skriva ut (str2)

Produktion:

Jag-tänkte-jag-tänkte-att-tänka-att-tacka dig
Ed hade redigerat det

Nu förstår du strängmanipulation

Att hantera strängar och texter är en integrerad del av programmeringen. Strängar fungerar som ett medium för att kommunicera information från programmet till användaren av programmet. Med Python kan du manipulera strängarna som du vill.

E-post
Hur man skriver eller skriver ut till en fil i Python

Om du kommer igång med Python måste du veta hur du skriver ut till en fil. Följ den här korta handledningen för att lära dig hur.

Relaterade ämnen
  • Programmering
  • Pytonorm
Om författaren
Yuvraj Chandra (1 artiklar publicerade)

Yuvraj är en doktorand vid datavetenskap vid University of Delhi, Indien. Han brinner för Full Stack webbutveckling. När han inte skriver utforskar han djupet i olika tekniker.

Mer från Yuvraj Chandra

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e-böcker och exklusiva erbjudanden!

Ett steg till…!

Bekräfta din e-postadress i e-postmeddelandet som vi just skickade till dig.

.