Hi people, i am in trouble with python quotes, see this:

string = "qwerty"

when i do a print string it returns:

'qwerty'

how do i replace this singles quotes to double quotes when the value of the variable is returned? there is a way?

thanks in advance! ;)

'qwerty'.join('""')

or

'"qwerty"'

You should post more data of what you want to accomplish if these do not produce what you want.

Edited 5 Years Ago by pyTony: n/a

Why do you need this?
Singel and dobbels quotes dos the same in python.

>>> s = "qwerty"
>>> s
'qwerty'
>>> print s
qwerty
>>> repr(s)
"'qwerty'"

>>> s = 'qwertys'
>>> s
'qwertys'
>>> repr(s)
"'qwertys'"
>>> print s
qwertys
>>>

Confused why you need this. If you need to print with double quotes, do it like this print('"%s"'%"qwerty")

P.S. Bad idea to name your variable "string" as it conflicts with the string module (chant help("string") from the Python prompt)

Edited 3 Years Ago by Dani: Formatting fixed

Thanks, i figured out a way to acomplish what i was trying to do.

It was simple, i was trying to write a python list on a text field with sqlite3:

INSERT INTO table values ('qwerty', 'uiop', '[u'ás', u'és']', 'a');

It was not working, the SQL was getting confused about the single quotes in the python lists. Hopefully, i figured that the SQL language, supports double quotes to add a text on a field of the table:

INSERT INTO table values ('qwerty', 'uiop', "[u'ás', u'és']", 'a');

This worked. =)

thanks for all your help

Hold on for a moment, though; just how are you adding the list to the SQL statement, and how are you vetting the data, if at all? Generally speaking, any data added to a SQL query programatically should be done using a parameterized query:

cursor.executemany("INSERT INTO table values ('?', '?', \"?\", '?');", 'querty', 'uiop', "[u'ás', u'és']", 'a')

The way you describe it, it sounds like you were concatenating the strings together directly, which (unless the data is checked out ahead of time) could leave you open to a SQL injection attack.

Edited 5 Years Ago by Schol-R-LEA: n/a

Comments
Very good point
This article has been dead for over six months. Start a new discussion instead.