Sådan fjerner du citater fra strenge i Python

Introduktion

Der er flere måder, du kan fjerne citater fra en streng i Python. Du skal muligvis fjerne alle citater eller kun dem, der omgiver en streng. Du skal muligvis også fjerne enkelte eller dobbelte anførselstegn.

I denne korte artikel har vi samlet en omfattende liste over metoder, du kan bruge til at fjerne citater fra en streng i Python. Det er helt op til dig, hvilken du vil bruge. Bemærk venligst, at de løsninger, vi har listet her, ikke er sorteret fra bedst til værst. Hver løsning er god, så længe den opfylder dine behov i en konkret sag.

Sådan fjerner du alle citater fra en streng i Python

Først og fremmest, lad os tage et kig på, hvordan du fjerner alle citater fra en streng. Løsninger, der er anført i dette afsnit, kan ændres, så de fungerer med både enkelte og dobbelte anførselstegn. Men med henblik på denne artikel, lad os sige, at vi har en eksempelstreng, der har tre dobbelte anførselstegn:

example_str = '"This is a string" with quotes"'

I dette afsnit vil vi tage et kig på flere måder, hvordan du fjerner alle " fra example_str.

str.replace()

Den første tilgang, vi vil diskutere, er at bruge str.replace() metode til example_str. Den accepterer to argumenter - strengen, vi ønsker at erstatte, og erstatningsstrengen. I dette tilfælde erstatter vi et dobbelt anførselstegn (") med en tom streng:

new_str = example_str.replace('"', '')
print(new_str) 

str.replace() brugt på denne måde vil fjerne alle dobbelte anførselstegn fra example_str.

Regelmæssige udtryk

Denne tilgang bruger regulære udtryk for at fjerne alle citater fra en streng. Før vi begynder at bruge regulære udtryk i Python, skal vi først importere re modul:

import re

Derefter kan vi bruge re.sub() metode til erstatning alle forekomster af anførselstegn med den tomme streng:

new_str = re.sub('"', '', example_str)
print(new_str) 

Dette vil give os example_str uden citater i det.

str.join()

str.join() er en anden metode, vi kan bruge til at fjerne alle citater fra en streng i Python. Denne løsning har en lidt mere kompleks syntaks end andre løsninger, hvis du ikke allerede er bekendt med join() metode. Vi vil i det væsentlige gennemgå example_str tegn-for-tegn og føj hver, som ikke er et anførselstegn, til den tomme streng. På den måde får vi example_str uden citater i det:

new_str = ''.join(c for c in example_str if c not in '"')
print(new_str) 

Sådan fjerner du citater omkring en streng

Indtil videre har vi diskuteret flere tilgange til, hvordan man fjerner alle anførselstegn fra en streng i Python. Det er kun én måde at se på at fjerne citater fra en streng. Det mere almindelige problem er formentlig, hvordan man fjerner kun citater omkring en streng. str.strip() metoden er beregnet til at gøre netop det. Derfor vil vi diskutere str.strip() metode i dette afsnit.

Sig, at vi har præcis det samme example_str som i det foregående afsnit, og vi ønsker kun at fjerne det første og det sidste anførselstegn:

example_str = '"This is a string" with quotes"'

Brug af str.strip() med et dobbelt anførselstegn, som dets argument vil fjerne foranstående og efterfølgende anførselstegn fra example_str:

Tjek vores praktiske, praktiske guide til at lære Git, med bedste praksis, brancheaccepterede standarder og inkluderet snydeark. Stop med at google Git-kommandoer og faktisk lærer det!

new_str = example_str.strip('"')
print(new_str) 

Bemærk: Uanset hvor mange førende og/eller førende anførselstegn, der er i strengen, str.strip() vil fjerne dem alle.

Ud over det sædvanlige str.strip() metode, er der også to af dens derivater – str.lstrip() , str.rstrip(). Den første fjerner alle førende citater, og den anden fjerner alle efterfølgende citater:

new_str = example_str.lstrip('"')
print(new_str) 

new_str = example_str.rstrip('"')
print(new_str) 

Konklusion

I denne korte artikel har vi taget et omfattende kig på, hvordan man fjerner citater fra en streng i Python. Først og fremmest har vi forklaret, hvordan man fjerner alle citater fra en streng ved hjælp af flere forskellige metoder – str.replace(), str.join()og re.sub(). Bagefter har vi taget et kig på str.strip() metode, såvel som dens derivater str.lstrip() , str.rstrip().

Tidsstempel:

Mere fra Stablemisbrug