将混合列表转换为字符串,仅为字符串保留引号

时间:2014-09-20 22:38:28

标签: python sql string list methods

我想从这个列表中找到:

my_list = [u'a','b','c',1,2,3]

...到这个字符串,它维护引号(用于创建sql语句):

my_string = "'a', 'b', 'c', 1, 2, 3"

这种方法有效,但确实很难看!

my_string = str(my_list).replace('[','').replace(']','').replace('u','')

有更好的方法吗?堆积替换有什么问题 - 不能正确!?

1 个答案:

答案 0 :(得分:1)

免责声明:您不应该使用普通字符串操作准备SQL!使用适合您正在使用的数据库准备语句的库。

用于您的启发(请注意,这不能正确格式化unicode文字,您可以随意使用具有unicode特殊情况的函数替换repr):

my_string = ', '.join(repr(x) for x in my_list)