How do you keep a double quote in a string in python?

In Python, a string [str] is created by enclosing text in single quotes ', double quotes ", and triple quotes [''', """]. It is also possible to convert objects of other types to strings with str[].

  • Built-in Types - Text Sequence Type — str — Python 3.10.0 documentation

This article describes the following contents.

  • Single quotes: '
  • Double quotes: "
  • Difference between single quotes and double quotes
    • Both values are equal
    • Quotes in strings are handled differently
  • Triple quotes: ''', """
    • Multiple lines
    • Single and double quotes
    • Indentation
  • Convert other types to strings: str[]
    • Convert numbers to strings
    • Convert lists and dictionaries to strings

Single quotes: '

Enclose the text in single quotes ' to make it a string [str].

s = 'abc'
print[s]
# abc

print[type[s]]
# 

Double quotes: "

Also, enclose the text in double quotes " to make it a string [str].

s = "abc"
print[s]
# abc

print[type[s]]
# 

Difference between single quotes and double quotes

Both values are equal

Whether you use single quotes ' or double quotes ", created strings are equal.

s_sq = 'abc'
s_dq = "abc"

print[s_sq == s_dq]
# True

Quotes in strings are handled differently

In a string enclosed in single quotes ', double quotes " can be used as is, but single quotes ' must be escaped with a backslash and written as \'. There is no problem if you write \" for double quotes ".

s_sq = 'a\'b"c'
print[s_sq]
# a'b"c

s_sq = 'a\'b\"c'
print[s_sq]
# a'b"c

In a string enclosed in double quotes ", single quotes ' can be used as is, but double quotes " must be escaped with a backslash and written as \". There is no problem if you write \' for single quotes '.

s_dq = "a'b\"c"
print[s_dq]
# a'b"c

s_dq = "a\'b\"c"
print[s_dq]
# a'b"c

Since it is just a difference in writing, values are equal in both cases.

s_sq = 'a\'b"c'
s_dq = "a'b\"c"

print[s_sq == s_dq]
# True

Triple quotes: ''', """

Triple quotes [''', """], that is, three single quotes ' or double quotes ", also make a string [str].

Multiple lines

An error occurs when a newline is inserted in a string enclosed in single or double quotes. To insert a newline, you need to use \n.

  • Handle line breaks [newlines] in Python

# s = 'abc
# xyz'
# SyntaxError: EOL while scanning string literal

s = 'abc\nxyz'
print[s]
# abc
# xyz

Within a string enclosed in triple quotes, line breaks can be written as they are.

s_tq = '''abc
xyz'''

print[s_tq]
# abc
# xyz

print[type[s_tq]]
# 

Of course, it does not have to contain line breaks.

s_tq = '''abc'''
print[s_tq]
# abc

Single and double quotes

You can use " in three single quotes ''' and ' in three double quotes """. Values are equal in both cases.

s_tq_sq = '''\'abc\'
"xyz"'''

print[s_tq_sq]
# 'abc'
# "xyz"

s_tq_dq = """'abc'
\"xyz\""""

print[s_tq_dq]
# 'abc'
# "xyz"

print[s_tq_sq == s_tq_dq]
# True

Indentation

If spaces are inserted at the beginning of a line to match the indentation, created string includes spaces.

s_tq = '''abc
          xyz'''

print[s_tq]
# abc
#           xyz

There is a way to write the following using line feed and parentheses.

s_multi = ['abc\n'
           'xyz']

print[s_multi]
# abc
# xyz

See the following article for details.

  • Handle line breaks [newlines] in Python

Convert other types to strings: str[]

You can use str[] to convert objects of other types to strings [str].

  • Built-in Types -str[] — Python 3.10.0 documentation

str[] returns the result of the __str[]__ method of the target object. If its type has no __str[]__ method defined, it returns the result of repr[].

The following are some examples of typical types.

Convert numbers to strings

Integers int and floating point numbers float can be converted to strings str with str[].

i = 100

s_i = str[i]
print[s_i]
# 100

print[type[s_i]]
# 

f = 0.123

s_f = str[f]
print[s_f]
# 0.123

print[type[s_f]]
# 

For example, int can be written in hexadecimal, float in exponential, and so on, but when converted to a string with str[], they are converted to standard decimal strings.

i = 0xFF
print[i]
# 255

s_i = str[i]
print[s_i]
# 255

f = 1.23e+10
print[f]
# 12300000000.0

s_f = str[f]
print[s_f]
# 12300000000.0

Use the built-in function format[] to convert it to a string of the desired format.

  • Built-in Functions - format[] — Python 3.10.0 documentation

s_i_format = format[i, '#X']
print[s_i_format]
# 0XFF

s_f_format = format[f, '.2e']
print[s_f_format]
# 1.23e+10

If you want to convert a string of numbers to numeric values, see the following article.

  • Convert a string to a number [int, float] in Python

Convert lists and dictionaries to strings

Lists list and dictionaries dict can also be converted to strings str with str[].

l = [0, 1, 2]

s_l = str[l]
print[s_l]
# [0, 1, 2]

print[type[s_l]]
# 

d = {'a': 1,
     'b': 2,
     'c': 3}

s_d = str[d]

print[s_d]
# {'a': 1, 'b': 2, 'c': 3}

print[type[s_d]]

You can use pformat[] of the pprint module of the standard library to convert it to a well-formed string.

import pprint

dl = {'a': 1, 'b': 2, 'c': [100, 200, 300]}

s_dl = str[dl]
print[s_dl]
# {'a': 1, 'b': 2, 'c': [100, 200, 300]}

p_dl = pprint.pformat[dl, width=10]
print[p_dl]
# {'a': 1,
#  'b': 2,
#  'c': [100,
#        200,
#        300]}

print[type[p_dl]]
# 

For more information about pprint, see the following article.

  • Pretty-print with pprint in Python

How do you put quotes in a string in Python?

Python does have two simple ways to put quote symbols in strings..
You are allowed to start and end a string literal with single quotes [also known as apostrophes], like 'blah blah' . Then, double quotes can go in between, such as 'I said "Wow!" to him. ... .
You can put a backslash character followed by a quote [ \" or \' ]..

How do you put a double quote in a string?

To place quotation marks in a string in your code In Visual Basic, insert two quotation marks in a row as an embedded quotation mark. In Visual C# and Visual C++, insert the escape sequence \" as an embedded quotation mark.

How do you append a double quote to a variable in Python?

Use a formatted string literal to add double quotes around a variable in Python, e.g. result = f'"{my_var}"' . Formatted string literals let us include variables inside of a string by prefixing the string with f . Copied!

Chủ Đề