Cadena de entrada

str = "(\"Cardinal\", \"Tom B. Erichsen\", \"Skagen 21\",)"

La cadena de salida debería verse así:

 ("Cardinal", "Tom B. Erichsen", "Skagen 21")

La coma al final debe eliminarse, ayúdame a hacer esto en código python. Intenté con str.rstrip (",") no funciona.

-1
Ranjith N 30 oct. 2017 a las 10:10

5 respuestas

La mejor respuesta

Compruebe este código

str = str.replace('",)', '")')
0
Alkesh Mahajan 30 oct. 2017 a las 07:30

Puedes encadenar diferentes str.replace()

str.replace(", )",")").replace(",)",")")

Eso funcionará para tu cadena

0
Tenoch G 30 oct. 2017 a las 07:20

Podrías usar el módulo regex:

import re
s = "INSERT INTO Customers (CustomerName, ContactName, Address,  ) VALUES (\"Cardinal\", \"Tom B. Erichsen\", \"Skagen 21\",)"
print re.sub(r',(\s+)*\)', ')', s)
0
user5476322user5476322 30 oct. 2017 a las 07:36

Puedes hacer esto de la siguiente manera

str = "(\"Cardinal\", \"Tom B. Erichsen\", \"Skagen 21\",)"

str = str[:len(str)-2] + str[len(str)-1]
0
Saurabh kukade 30 oct. 2017 a las 07:25

Puede usar algunas expresiones regulares, por ejemplo, puede reemplazar (.*),([^,]+)$ con \1\2

result = re.sub(r"(.*),([^,]+)$", r"\1\2", yourstring)

Aquí hay una demostración de expresiones regulares

1
YCF_L 30 oct. 2017 a las 07:23