Förstå delsträngar i Python med exempel

Den här artikeln syftar till att ge eleven en bättre förståelse av delsträngar i Python.

Den kommer att lära dig hur du skapar en delsträng, extraherar olika delar av den från en sträng och hur delsträngar i Python fungerar genom att använda flera exempel för att implementera detta. Vi kommer vidare att kontrollera om delsträngen finns i en sträng.

Innan vi börjar är det viktigt att veta vad en sträng och delsträng är. En sträng är en sekvens av Unicode-tecken som består av alfanumeriska tecken och/eller specialtecken. Vi kan definiera en delsträng som en del av teckensekvensen i en sträng.

Vi kommer att diskutera följande:

  • Skapa en delsträng.
  • Sätt att skära en delsträng.
  • Antal förekomster av en delsträng
  • Hitta närvaron av en delsträng i en sträng.

Låt oss börja!

Skapa en delsträng

En delsträng skapas huvudsakligen med hjälp av skivningstekniken. Denna teknik tillåter extrahering av delsträngen genom att definiera avgränsare för start-index, end-index och steg. Dessa avgränsare möjliggör extrahering genom att ange det exakta indexet för de tecken du vill erhålla.

Syntaxen ser ut så här:

string[begin-index: end-index: step]

Observera att indexvärdet i valfri sträng börjar från noll.

Parametern begin-index indikerar delsträngens startindex. Därför, om du utelämnar det här elementet när du skär, antar Python automatiskt att dess indexvärde är noll.

End-index är delsträngens sista index. När du inte nämner det, antar skivning att dess värde är lika med strängens längd.

Steg: Det indikerar nästa tecken att överväga efter det nuvarande tecknet. Värdet på denna parameter är vanligtvis ett. När stegparametern utelämnas under skivning, antas dess värde fortfarande vara ett.

Sätt att skära ett snöre

Det finns flera sätt vi kan få en delsträng från en sträng. Dessa inkluderar:

#1. Skiva med start-index och end-index.

String = string[begin-index : end-index]

I ett fall du vill få förnamnet på en person från deras fullständiga namn, kommer du att implementera det så här:

string = 'Michael Doe'

print(string[0:7])

Utgången blir:

Michael

#2. Skiva med startindex utan slutindex.

String= string[begin-index:]

Här anger vi bara från vilket index vi vill börja extrahera våra delsträngstecken från strängen—slicing-extrakt till det sista indexet av hela strängen som vanligtvis har ett index på -1.

Exempel:

string = 'This is to demonstrate slicing of a string using the begin-index without the end-index'

print(string[7:])

Produktion:

to demonstrate slicing of a string using the begin-index without the end-index

#3. Skiva med hjälp av slutindex utan start-index.

String = string[:end-index]

Här anger vi det sista tecknet som delsträngen ska inkludera, med undantag från var den ska börja. Därför kommer slicing att visa delsträngen med starttecknet index noll för strängen.

Exempel:

string = 'This is to demonstrate slicing of a string using the end-index without the begin-index'

print(string[:9])

Produktion:

This is t

#4. Skiva hela snöret.

String = string[ : ]

I det här fallet identifierar vi inte någon av avgränsningarna; därför returneras hela strängen.

Exempel

string = 'This is to demonstrate slicing of the entire string'

print(string[:])

Produktion:

This is to demonstrate slicing of the entire string

#5. Skiva ett enstaka tecken från en sträng.

String = string[index]

Ett exakt indexvärde för ett tecken i strängen delas ut här.

Exempel:

string = 'This is to demonstrate slicing of a single character from a string'

print(string[8])

’t’ i ’to’ skrivs ut eftersom dess indexvärde är 8.

#6. Skiva med hjälp av start-index, end-index och steg.

Exempel

string = 'This is to demonstrate slicing of the string using the begin-index, step, and end-index'

print(string[11:24:1])

När stegvärdet är inställt på 1 sker normal skivning, och följande matas ut här.

demonstrate s

Med samma exempel, låt oss ställa in stegvärdet till 2.

string = 'This is to demonstrate slicing of the string using the begin-index, step, and end-index'

print(string[11:24:2])

Skivning av karaktärerna kommer att göras i steg om 2 så här.

dmntaes

Slicing extraherar det andra tecknet efter det nuvarande. Därför demonstrerar Python-skivor s’ till Dmntaes.

#7. Vända en sträng med ett negativt steg.

I det här exemplet kommer hela strängen att visas från det sista tecknet i strängen till det första.

string = 'This is to demonstrate reversing string using the negative step'

print(string[::-1])

Produktion:

pets evitagen eht gnisu gnirts gnisrever etartsnomed ot si sihT

Det negativa steget fungerar så här:

R
E
V
E
R
S
E
0
1
2
3
4
5
6
-6
-5
-4
-3
-2
-1

Startindexvärdet för den omvända strängen ovan börjar från 0 som standard och slutar på 6. Det negativa steget vänder på indexvärdet för det sista tecknet och tillämpar det på det första tecknet och negerar detta värde.

Fler exempel på skivning

Få de första fyra delsträngstecken i en sträng.

string = 'characters'

print(string[0:4])

Kommer att mata ut:

char

Hitta närvaron av en delsträng i en sträng

Python använder antingen funktionen find() eller operatorn ’in’ för att kontrollera om det finns en delsträng i en sträng.

Med hjälp av ”in”-operatorexemplet

string = 'this is to demonstrate that a particular substring is found in a string '
if 'find' in string: 
    print('The substring is found') 
else: 
    print('Could not find the substring defined')

Produktion:

Could not find the substring defined

Exemplet ovan kontrollerar om delsträngen ’find’ finns i den deklarerade strängen. Eftersom delsträngen inte hittas i strängen är utdata som visas ovan.

Att ersätta delsträngen ’hitta’ med delsträngen ’det’ och kontrollera om den finns i strängen eller inte skulle returnera ’understräng hittas’ istället eftersom den finns i strängen.

Använda funktionen find() exempel:

string = 'using string to find if a substring is present in a string'

if string.find('found') != -1:

    print("The substring 'found' exists")

else:

    print("The substring 'found' does not exist")

produktion:

<code class="language-python">The substring 'found' does not exist

I exemplet ovan försökte vi hitta en delsträng som inte är en del av vår sträng. Som vi har sett ovan, funktionen find() kontrollerar hela strängen och hittas inte just den här ’hittade’-delsträngen, den returnerar utdata ’Den understräng som hittades finns inte’ som utgång.

Hitta antalet förekomster av en delsträng

Python använder funktionen count() som implementerar detta villkor, som i exemplet nedan.

string = " Counting the number of occurrences of 'o' in this string "

print("The 'o' substring count is: ",string.count('o'));

Produktion:

The 'o' substring count is:  5

Slutsats

Den här artikeln bör ge dig en bättre förståelse för vad en delsträng är i Python, hur man skapar den och har tydligt förklarat idén med skivning och hur man implementerar den. Använd exemplen ovan som riktlinjer, öva på fler exempel för att förstå konceptet bättre.

Du kan också lära dig hur du skapar ett talgissningsspel med Python eller hur du får JSON-data i Python.

Glad kodning!