Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Tut] How to Strip One Set of Double Quotes from Strings in Python
1
How to Strip One Set of Double Quotes from Strings in Python

5/5 – (1 vote)

Problem Formulation and Solution Overview

When working with data, you may encounter a string or list of strings containing two (2) double quotes. This article shows you how to remove one set of these double quotes.

[Image: 1f4ac.png] Question: How would we write code to remove the extra set of double quotes?

We can accomplish this task by one of the following options:

Method 1: Use startswith() and endswith()

This method uses
Code:
startswith()
and
Code:
endswith()
in conjunction with
Code:
slicing
to remove one set of double quotes from a string.

Code:
web_name = '""The Finxter Acadcemy""' if web_name.startswith('"') and web_name.endswith('"'): web_name = web_name[1:-1] print(web_name)

The first line in the above code snippet declares a string containing two (2) sets of double quotes and saves this to the variable
Code:
web_name
.

The following line calls the
Code:
if
statement with the
Code:
startswith()
and
Code:
endswith()
functions. Both functions are passed the argument (
Code:
'"'
).

This statement checks to see if
Code:
web_name
starts with and ends with the above argument. If true, the code moves to the next line and, using
Code:
slicing
, removes the specified character.

The results are output to the terminal.

Code:
"The Finxter Acadcemy"

[Image: lyteCache.php?origThumbUrl=https%3A%2F%2...efault.jpg]

Method 2: Use Regex

You can use the
Code:
regex
method
Code:
re.sub()
to remove one set of double quotes from a string.

Code:
import re msg = '""Boost Your Python Skills""' msg = re.sub(r'^"|"$', '', msg) print(msg )

The first line in the above code snippet imports the
Code:
re
library. This allows access to and manipulation of strings to extract the desired result.

The following line declares a string containing two (2) sets of double quotes and saves this to the variable
Code:
msg
.

The next line uses
Code:
re.sub()
to search this string for any occurrences of double quotes, removes the same and saves the result back to
Code:
msg
. This overwrites the original string.

The results are output to the terminal.

Code:
"Boost Your Python Skills"

Another option is to use
Code:
re.sub()
and pass this function two (2) arguments:
  • the string to replace and

  • the string to replace it with.

Code:
msg = '""Boost Your Python Skills""' msg = re.sub('""', '"', msg) print(msg)

Code:
"Boost Your Python Skills"

[Image: lyteCache.php?origThumbUrl=https%3A%2F%2...efault.jpg]

Method 3: Use replace()

This method uses https://blog.finxter.com/python-regex/
Code:
replace()
to remove one set of double quotes from a string.

Code:
mission = '""Boost Collective Intelligence""' mission = mission.replace('""', '"') print(mission)

The first line in the above code snippet declares a string containing two (2) sets of double quotes and saves this to the variable
Code:
mission
.

The following appends the
Code:
replace()
function to
Code:
mission
and is passed two (2) arguments:
  • the string to replace, and

  • the string to replace it with.

The results save back to
Code:
mission
. The results are output to the terminal.

Code:
"Boost Collective Intelligence"

Method 4: Use list()

This method passes a list containing double quotes to the list function. This option differs from the other options as it removes all double quotes.

Code:
user_emails = [""'alice@acme.ca', 'doug@acme.ca', 'fran@acme.ca', 'stan@acme.ca'""] user_emails = list(user_emails) print(user_emails)

The first line in the above code contains a list of Finxter user’s emails with double quotes at the beginning and the end.

This saves to
Code:
user_emails
.

The following line uses a list and passes
Code:
user_emails
to it as an argument. The results save back to
Code:
user_emails
and are output to the terminal.

Code:
['alice@acme.ca', 'doug@acme.ca', 'fran@acme.ca', 'stan@acme.ca']

[Image: 1f4a1.png]Note: Converting a list containing double quotes to a list removes all double quotes.

[Image: lyteCache.php?origThumbUrl=https%3A%2F%2...efault.jpg]

Method 5: Use Pandas

This method uses Pandas to remove all double quotes from a CSV file.

Contents of CSV file

Code:
Store,Category,Product,Number""Toronto"",""Jeans"",""10534"",""15""""Montreal"",""Tops"",""5415"",""32""""Ottawa"",""Coats"",""98341"",""22""

Code:
import pandas as pd df = pd.read_csv('quotes.csv',header=None) df.replace('"', '', inplace=True, regex=True) print(df)

The above example imports the Pandas library. This library allows access to and manipulation of a Pandas DataFrame.

The following line reads in the CSV file, without the header row into the DataFrame,
Code:
df
.

If output to the terminal, the DataFrame appears as follows:

|
0 |
1 |
2 |
3

0 |
Shop |
Category |
Product |
Number

1 |
Toronto”” |
Jeans”” |
10534″” |
15″”

2 |
Montreal”” |
Tops”” |
5415″” |
32″”

3 |
Ottawa”” |
Coats”” |
98341″” |
22″”

[Image: 1f4a1.png]Note: By default, when the CSV file was imported, the beginning double quotes were removed, thus leaving the trailing double quotes.

Next, all occurrences of trailing quotes are replaced (removed) from the DataFrame.

The output of the modified DataFrame,
Code:
df
are output to the terminal.

|
0 |
1 |
2 |
3

0 |
Shop |
Category |
Product |
Number

1 |
Toronto |
Jeans |
10534 |
15

2 |
Montreal |
Tops |
5415 |
32

3 |
Ottawa |
Coats |
98341 |
22

[Image: lyteCache.php?origThumbUrl=https%3A%2F%2...efault.jpg]

Summary

This article has provided five (5) ways to remove one set of double quotes from a string and all double quotes to select the best fit for your coding requirements.

Good Luck & Happy Coding!

Programmer Humor – Blockchain

[Image: image-31.png][i]“Blockchains are like grappling hooks, in that it’s extremely cool when you encounter a problem for which they’re the right solution, but it happens way too rarely in real life.” source – xkcd[/i]
Reply

Users browsing this thread:
1 Guest(s)


Forum Jump: